Muszę przyznać, że programuje sobie w #rustlang i wygodny ten #bingai. Postanowiłem tez poużywać go do wyszukiwania różnych rzeczy jak "o której skoki narciarskie" itd i muszę przyznać, że wszystko dokładnie wyszukał. Mógłby być trochę szybszy, ale może za kilka lat wyprze to całkowicie wyszukiwarki jakie znamy :)
  • Odpowiedz
#mstarzecnews #webdev #coding #nodejs #javascript #go #rustlang #it #bash #aws #apple #windows #electronics

## JS/Web:
- Copilot for interface design - https://www.usegalileo.ai/
- NestJS: The Good, The Bad, and The Ugly - https://betterprogramming.pub/nestjs-the-good-the-bad-and-the-ugly-d51aea04f267
- 16 bit ANSI C99 x86 compiler, assembler and virtual machine written entirely in TypeScript - https://github.com/Mati365/ts-c-compiler
- Benchmarks of JavaScript Package Managers - https://pnpm.io/benchmarks

## Golang:
- Enforce a stricter format than gofmt - https://github.com/mvdan/gofumpt
-
@Bulldogjob: zobaczymy, z doświadczenia wiem że korpobeton w sprawie electrona jest mocny, i jeśli konkurencja i użytkownicy tego nie wymusza, to nic się nie zmieni w najpopularniejszych aplikacjach jak Teams, Discord, Slack etc...
  • Odpowiedz
#mstarzecnews #webdev #programowanie #nodejs #javascript #go #rustlang #it #bash #aws #apple #windows #elektronika

wersja na prose.sh

https://mstarzecnews.prose.sh/2023-02-10

JS/Web
- Dodatek do przeglądarki pokazujący informacje o stronie oraz użyte technologie - https://ray.st
- 21 best practices dla TypeScript - https://itnext.io/mastering-typescript-21-best-practices-for-improved-code-quality-2f7615e1fdc3
- Dev Tools tips - https://dev.to/lissy93/awesome-dev-tool-tips-32oo
- Uzywanie GPU do obliczeń w JS - https://github.com/gpujs/gpu.js
- Typescript 5.0 beta - https://devblogs.microsoft.com/typescript/announcing-typescript-5-0-beta/

Rust
- Koncepty programowania w Rust, których warto nauczyc sie na początku
zastanawiam się nad wejściem w #rustlang najpierw hobbistycznie, a potem może kto wie zawodowo. jakie macie wrażenia z używania tego języka, wsparcia community, bibliotek i ich dodawania do projektu, wsparcia cross-compile?

do tej pory zawodowo robiłem w C++, dość mnie to zaczęło męczyć pisanie w nim, sporo rzeczy trzeba od zera robić. trochę w pythonie robiłem, ale brak typowania zmiennych czy nawet czasami brak bindingów do bibliotek jest dla mnie nie do
@mapache: piszę w tym zawodowo od pewnego czasu. Na początku trochę zajmuje przyzwyczajenie się do borrow checkera i nauczenie się pewnych charakterystycznych idiomów. Potem idzie już bardzo gładko. Ogólnie na plus: dobry tooling (cargo), całkiem szybki kompilator przyrostowy, chyba najlepsze komunikaty o błędach jakie kiedykolwiek widziałem, bardzo wysoka wydajność generowanych programów, język na tyle wysokopoziomowy, że pisze mi się w nim szybciej i. wygodniej niż w Javie, zwłaszcza biorąc pod uwagę
  • Odpowiedz
@mapache: Rust nie jest OOP w sensie Javy, więc wzorce Javowe / GoF radzę odstawić na półkę. Generalnie kodowanie w Rust w stylu jakby to była Java to proszenie się o bęcki od kompilatora. Projekt nad którym pracuje, to proxy o ultra niskich opóźnieniach na potrzeby rozproszonego systemu baz danych w chmurze, umożliwiające mirroring ruchu.
  • Odpowiedz
@placebo_: ten przełom już nastąpił, Rust jest pierwszym językiem innym niż C który został dodany oficjalnie do kernela Linuksa. Nie udało się to wcześniej ani C++ ani D.
  • Odpowiedz
choćby brakuje mu abstract class/interface i nie jest w ogóle ogarnięty na pracę OO.


@sorek: Że jak? Przecież ma traity, które są o wiele silniejszym mechanizmem abstrakcji niż interfejsy z języków C++ i Java; zwłaszcza że niedawno dodali też generic associated types, przez co Rust jest już prawie jak Haskell / Scala.

Miałeś na myśli może że nie ma dziedziczenia, ale to jest zaleta a nie wada. OO w takiej formie
  • Odpowiedz
: lepiej opakować w Either[Throwable, T]


@farmac: przecież to jest właśnie odpowiednik rustowego Result. Oczywiście są drobne różnice w szczegółach, ale zasadniczo koncepcja jest ta sama. Co do kumulowania errorów to zdaje się anyhow to umie.
  • Odpowiedz
Co do kumulowania errorów to zdaje się anyhow to umie.


@Krolik: tu chodzi o inny rodzaj. Z tego co widzę to anyhow wspiera łancuch errorów przez co dany error trzyma w sobie przyczynę. W przypadku wspomnianego Validated chodzi o operację łączenia błędów w taki sposób, że wystąpienie pierwszego nie prowadzi do short circuitingu tj. kolejne funkcje sprawdzające się nie odpalą.

Rustowy Result ma metodę and_then, która jest operacją monadyczną wymuszającą
  • Odpowiedz
@devopsiarz: każdy testuje dla zabawy, ja też testowałem i wyszło mi że częściej nie działa niż działa, to się tym podzieliłem pod wątkami, gdzie ludzie też się dzielą swoimi opiniami na temat chat GPT. Masz z tym jakiś problem?

że tylko Ty masz tzw. "realne" zadania


Nie, na prostych zadaniach rekrutacyjnych na poziomie stażysty też nie działa dobrze, chyba ze znajdzie gotowca na SO (ale nie daje się na rekrutacji zadań,
  • Odpowiedz
tool ma już komercyjne zastosowania w phishingach

A w to akurat jestem skłonny uwierzyć, bo ten tool to model językowy. On nie rozumie co pisze, nie umie wnioskować, ale pisze tekst tak, aby wyglądał sensownie i pasował tematycznie do zadanego wzorca, a w phishingu właśnie o to chodzi.
  • Odpowiedz
@Ernest_: ta, jasne, "how to fix it" i jak zastosujesz, zwłaszcza jak robisz jakiś stan współdzielony, to masz teraz w prezencie inny error lub nawet całą ich grupę do poprawienia. ( ͡° ͜ʖ ͡°)

Zresztą, gdyby to było takie fajne, to SO, forum rusta i reddit powinno mieć mało postów proszących o wyjaśnienie tych błędów, a takich wpisów i pytań jest cała masa, nawet teraz, kiedy compilator
  • Odpowiedz
#mstarzecnews #webdev #programowanie #nodejs #javascript #go #rustlang #it #bash #aws #apple #windows #elektronika

## JS/Web:
- Czysty kod w TypeScript - https://javascript.plainenglish.io/clean-code-in-typescript-a183d43f3bf0
- Silnik gier - https://github.com/melonjs/melonJS
- Tool wpinany do CI do obliczania rzeczywistego kosztu Twojego JS dla użytkowników końcowych - https://github.com/ai/size-limit

## Rust:
- GUI w Rust - https://kas-gui.github.io/blog/state-of-GUI-2022.html

## Programowanie:
- Refactoring oraz wzorce projektowe - https://refactoring.guru
- Swiss-army knife for developers (Base64 encode/decode, SHA hashing,
via Wykop Mobilny (Android)
  • 4
Bo staram się ograniczyć patrzenie w monitor, wole przerobić rozdział lub dwa z książki i dopiero zabrać się za kodzenie.

@NocJestMistyczna: Masz wydrukuj sobie
Nie wiem czemu Wykop nie pozwala na podanie normalnego linku...
https://doc[kropka]rust-lang.org/book/

EDIT: dobra już wiem, bo jest doc kropka rust, czyli wykop widzi doc kropka ru (°°

@wykop proponuje to poprawić
  • Odpowiedz
@afe1: Nie rozumiem jak to oszukiwanie? To chyba normalne, że korzysta się z gotowych bibliotek, chociaż żeby ich się nauczyć. To nie codewars albo spoj przecierz. ( ͡° ͜ʖ ͡°)
  • Odpowiedz
Eee, to jadro przyspielo czy czas budowania?


@Sibu: Z tekstu chyba wynika, że przytspieszyło to działanie jądra i dla testu z kompilacją jondra dało to zmniejszenie czasu o 40 minut
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@Sibu: to na moim jednordzeniowcu z epoki poczatkow internetu kompiluje jajko 30-40 min
;-)

No ale nie kompiluje wszystkiego co tam jest, tylko to co potrzebuje
( ͜͡ʖ ͡€)

Wiec dla mnie super komputer ktory tobi cos godzine to raczej nie to co ja mysle
( ͡ ͜ʖ ͡)
  • Odpowiedz
@Saly: wniesienie samych struktur i mapowania między jsonami a silnie typowanymi strukturami to już całkiem dużo. Praca ze strukturami jest o wiele wygodniejsza niż praca z dynamicznie typowanym jsonem.
  • Odpowiedz
@jaroslaw-stadnicki: Szanuję za rusta, może i też zacznę, bo skoro to parsowanie to chciałem kiedyś lalrpop ogarnąć. Wiem, że ta biblioteka to jak strzelanie z armaty do kaczek, ale przynajmniej będzie jakiś pożytek.
  • Odpowiedz
Mirki i mirabelki z #programowanie #jezykc i #cplusplus i innych hashtagów które wołam.

Kodzę głównie w C/C++ - w sensie drivery, finalne rozwiązania - nie wiem jak to dobrze określić - po prostu apki nisko poziomowe, blisko sprzętu. Tylko coraz częściej jest tak, że żeby dojść sedna problemu gdzie faktycznie C/C++ jest tym narzędziem, które robi robotę to muszę przejść przez warstwę sieciową, żeby odebrać config, sparsować (np JSON RPC czy dbus)
@BeginEnd: Tylko Rust. Golang ma fatalne powolne FFI (jak Java; spowodowane obecnością GC oraz wątków M:N), więc trochę słabo w zastosowaniach mocno niskopoziomowych gdzie musisz wywoływać kod w C/C++. Poza tym Golang dość mało ekspresywny jest. W Rust takie rzeczy jak serializacja/deserializacja do Jsona robisz dwiema linijkami (derive na struct i potem wywolujesz parse i zrobione), w sumie to w żadnym innym języku nie widziałem tak dobrze rozwiązanej serializacja/deserializacji. Rust ma
  • Odpowiedz
Tylko znajomy powiedział mi, że po dłuższym spotkaniu z tym językiem to poza zastosowaniami sieciowymi to gówno totalne.


@BeginEnd, @patrolez: niepopularna opinia: uważam że do sieci tym bardziej gówno i nie rozumiem co ludzie widzą w tym języku. No dobra, może nie gówno, ale Rust ma obsługę sieci i współbieżności zrobioną pod każdym względem lepiej. Go nie gwarantuje wykrycia wyścigów w danych, gorutyny są znacznie cięższe od korutyn w Rust,
  • Odpowiedz