A to przyszło trochę z zaskoczeniem. Ale po kolei.

Programowaniem zajmuję się, jakby dobrze policzyć, od prawie trzydziestu lat. Za berbecia pisałem proste gierki w Basicu, jeszcze na Atari 65XE. Potem przyszedł assembler 6502c. W ręce wpadła mi Amiga (najpierw 500, potem 1200) gdzie spędziłem sporo czasu zarówno w kolejnych dialektach Basica (Amos, Blitz), natywnym assemblerze 68020, w końcu na C i C++. W międzyczasie liznąłem Pascala i nawet zdarzyło się na tym liźnięciu zarobić. W końcu praca zawodowa pchnęła mnie w stronę aplikacji webowych, więc sporo popracowałem najpierw w PHP, javascripcie (klientowym) by w końcu ostatnio zająć się javą (j2ee, android), C# no i w końcu node.js

Wymieniam tu tylko środowiska, w których coś faktycznie popisałem. Bo jakby jeszcze podokładać te, które tylko liznąłem, to lista miałaby pół ekranu. Ale odbiegam od tematu.

A tematem jest ocena jakości środowiska. Kiedyś oceniałem środowisko (nie tylko język) po tym, co oferuje. Po tylu latach pracy z różnymi wypracowałem jednak lepsze kryterium:

Najlepsze jest to środowisko, które mnie najmniej wkurza.

Bo ficzery na nic się zdają, jak na co dzień coś nas w pracy uwiera. I tutaj node.js stanowczo błyszczy.

Node to serwerowy silnik do javascriptu, oparty na v8. Wiem, większości javascript kojarzy się wyłącznie z pierdołami na kliencie, ale to błędne wrażenie, oparte chyba tylko na natłoku badziewia, którym nas www atakują. Po dokładnym przyjrzeniu javascript okazuje się całkiem przyjemnym językiem prototypowym z elementami funkcyjnymi. Ale node.js nie świeci javascriptem, ale asynchronicznością. Jest od postaw budowany tak, że każda operacja która może zajmować jakikolwiek czas wykonuje się w tle. To wymusza inny sposób pisania i myślenia o kodzie, ale jednocześnie pozwala na osiągnięcie fenomenalnej wydajności.

A przy okazji okazuje się, że javascript jest pełnoprawnym językiem.

No i, co najistotniejsze, wkurza stanowczo mniejszą liczbą rzeczy, niż konkurencja.