Dlaczego Twój następny backend powinien wybić Cię z technologicznej strefy komfortu
Wyjście poza językowe schematy
Jeszcze niedawno wybór języka programowania był w dużej mierze narzucony przez system operacyjny. Na Windowsie dominował C++, na innych platformach często C. Było to po prostu oczywiste – nie miało się większego wyboru.
Internet wszystko zmienił.
Dzisiaj kontrolujesz serwery i decydujesz, w jakim środowisku działa twój kod. System operacyjny nie narzuca już ci toolchaina, a konkurencja nie dyktuje, z jakich narzędzi powinieneś korzystać. Ta swoboda jednak rzadko jest w pełni wykorzystywana.
Presja rynku, której nie zawsze zauważasz
Wiele startupów wybiera „bezpieczne” technologie – Go, Node.js czy Java – i nie dostrzega, że właśnie w tym momencie robi się miejsce dla kogoś szybszego. Inny zespół, pracujący inaczej, może dostarczać poprawki i nowe wersje kilka razy szybciej.
Nie chodzi o to, że tamci są lepsi. Oni po prostu korzystają z języka i paradygmatu, który pozwala na szybsze budowanie.
Paul Graham opisywał już dawno, jak Lisp pomagał małym zespołom szybciej reagować na potrzeby rynku. Dziś ta sama Regel dotyczy każdej technologii, która ułatwia ciągłe ulepszanie produktu.
Zalety podejścia iteracyjnego
W 2024 roku rzadko buduje się aplikacje w sposób liniowy – najpierw projekt, potem kod. Zamiast tego często zaczyna się od minimalnego prototypu, który później rozwija się na podstawie realnych danych.
Niektóre języki i frameworki są do tego lepiej przygotowane:
- Szybkie pętle informacji zwrotnej – piszesz kod, od razu testujesz i widziesz wynik, zamiast czekać na długie kompilacje.
- Debugowanie na żywo – możesz na przykład reprodukować błędy w produkcyjnym środowisku bezpośrednio w REPL-u.
- Łatwe refaktoryzacje – metaprogramming i elastyczne struktury pozwalają zmieniać architekturę w<|eos|>