Coraz więcej osób decyduje się podjęcia zawodu programisty. To dobrze płatna, przyszłościowa praca, która niesie ze sobą mnóstwo bonusów. Na dzień dobry płaci się programistom spore pieniądze, kusi ich dodatkami, bonusami, rozwojem zawodowym, itp. Bardzo dobrze, bo to niezwykle trudny i wymagający zawód. Niestety obserwując branżę IT od wielu lat mam wrażenie jakbyśmy trochę powariowali.
Moda na nowe technologie, dynamika zmian w branży, zewnętrzne finansowanie sprawiają, że wiele osób zapomina o najważniejszej rzeczy. Programista to wciąż zawód. Osoba na tym stanowisku ma tworzyć, zarabiać pieniądze i wypuszczać oprogramowanie. Nie chcę mówić, że kiedyś było prościej, bo było po prostu inaczej. Dziś jednak ludzie wchodzący do zawodu spotykają się z hejtem i pogardą “super doświadczonych” programistów z 4-5 letnim stażem. Spotkałem się z sytuacją, w której pewna dziewczyna po kilku dniach nauki HTML i CSS opublikowała swoją stronkę na pewnym forum i zaraz grupa “ekspertów” zjechała ją z góry na dół słowami w stylu: co ona w ogóle robi, że jej strona jest niezgodna ze standardami, że nie przechodzi speed testów z odpowiednim wynikiem i w ogóle powinna sobie dać spokój, bo się nie nadaje.
Fanatycy czy profesjonaliści?
Szczerze mówiąc, dzisiejsi programiści zaczęli przypominać fanatycznych wyznawców. Nie liczy się nic poza postępowaniem zgodnie z wyznaczonymi standardami, zasadami i metodologią. Z mojej perspektywy jest to dość dziwne, kiedyś to było zajęcie dla ludzi którzy lubią eksperymentować, bawić się, popełniać błędy i szukać nowych rozwiązań, ale też zarabiać na tworzeniu oprogramowania. Każdy z nas głowił się kiedyś nad jakimś problemem, starał się go zrozumieć i rozwiązać tak, jak umie najlepiej. Wiadomo, że doświadczenie i tak zwane dobre praktyki przychodzą z czasem. Nie jestem zwolennikiem tworzenia oprogramowania po linii najmniejszego oporu, jednak bądźmy szczerzy: teoria, a rzeczywistość to dwie różne historie. Mam znajomego programistę, który pracował przy pewnym oprogramowaniu przez trzy lata. Używał najnowszej technologii, robili wszystko zgodnie z najlepszymi zasadami aż… skończyło się finansowanie. Projekt upadł, nigdy nie wyszedł poza pokój developerów, ale on i tak jest zadowolony, bo bardzo dużo się nauczył, rozwinął i szybciutko znalazł pracę w innej firmie. Ktoś, kto finansował to przedsięwzięcie jest już znacznie mniej zadowolony.
Nie popadajmy w skrajności
Uważam, że należy przypomnieć wszystkim ludziom w branży IT, kim jest programista. Otóż nie jest to osoba, która zna pięć języków programowania na pamięć, to nie super specjalista od: walidacji, standardów, metodologii, itp. Programista to osoba która rozwiązuje problemy swoich klientów za pomocą nowoczesnych technologii na miarę ich możliwości. Agile, code review, optymalizacja – tak, jak najbardziej, ale wtedy, kiedy klienta będzie na to stać. Problemu nie ma, kiedy zatrudnia nas międzynarodowa korporacja, pieniądze płyną szerokim strumieniem, a my mamy czas żeby “dopieścić” nasze projekty to perfekcji. Jeśli jednak naszym klientem jest mała, średnia czy nawet duża firma z góry ograniczonym, niewielkim budżecie, to zadaniem programisty jest skupienie się na tym, czego potrzebuje dana firma, a nie na perfekcji kodu, czy sposobach prowadzenia projektu. Z biegiem czasu oczywiście możemy poprawiać drobne błędy i wprowadzać ulepszenia, kiedy nasz produkt zacznie przynosić większe zyski. Pamiętajcie jednak, żeby nie popadać w skrajność i nie tworzyć sztuki dla sztuki.
Teoria VS praktyka
Weźmy dla przykładu stronę edutorial.pl. Przepuszczona przez speed test od google daje wynik 72/100 (komputery) czyli ledwo ale ujdzie, oraz 51/100 (urządzenia mobilne) “absolutny skandal” – tak krzyknie każdy “ekspert”, co nie zmienia faktu że strona w 100 proc. spełnia swoje zadanie, posiada interesujące teksty i skutecznie przekazuje wiedzę. Wypuściłem kiedyś, stronę która miała wyniki poniżej 10 punktów w obu kategoriach. Nie przeszkadza jej to być jednym z największych na świecie portali informujących o ochronie środowiska, odwiedzanym codziennie przez tysiące osób i sponsorowanym przez wielkie, międzynarodowe marki.
Moja drobna rada na koniec dla młodych programistów: piszcie, twórzcie, popełniajcie błędy, rozwijajcie się i zwracajcie uwagę tylko na konstruktywną krytykę. Jeżeli dalej was nie przekonałem, to poszukajcie w necie speed testu Google i wpiszcie w nim http://google.pl… aktualnie blokują wynik testu z własnej strony, ale większość czasu sami nie potrafili zdobyć 100 punktów we własnym teście, a kto z Was nie chciałby być właścicielem tej firmy?
PS: Wiecie skąd się bierze taki hejt na ludzi wchodzących do zawodu? Kto miał w szkole prawo popytu i podaży ten doskonale zdaje sobie sprawę z przyczyny. Jednak popyt jest tak duży, że nie da się zapewnić przez następne lata nawet połowy potrzebnej podaży. Dlatego apel do starszych kolegów programistów: trochę więcej wyrozumiałości, mniej strachu przed utratą statusu złotego cielca i dużo więcej merytorycznej, a nie agresywnej krytyki.