Czy do programowania trzeba mieć talent?

Zobaczyłem dziś wypowiedź: „Programista jest jak muzyk. Trzeba się nim urodzić„. Zarówno część o programiście jak i muzyku uważam za nieprawdziwą. 

Beethoven, który jest uważany za muzycznego geniusza przecież nie urodził się znając nuty. Pochodził z rodziny o muzycznym rodowodzie, od małego miał nauczycieli muzyki (później nawet kilka lekcji z samym mistrzem – Mozartem). Czy to nie miało żadnego znacznia?

Michael Phelps, który jest uważany za najlepszego pływaka w historii. W dzieciństwie bał się wody (!). Pływać zaczął w wieku 7 lat. Jak sam wspomina: „W ciągu czterech lat między olimpiadami w Sydney i w Atenach miałem raptem ze cztery czy pięć dni wolnego – i ani jeden z nich nie przypadał w święta.”

Praktycznie od dziecka katowali się treningami, a teraz przychodzi ktoś kto pomija całą ich pracę i zwala to na „talent”. Okej, można mieć predyspozycje do czegoś (np. większe stopy jak Phelpsa, który ma rozmiar buta 48 działające jak płetwy), ale nie zrzucajmy wszystkiego na talent. Za chwilę zabaczysz, że nie mówię o tym bez powodu. Wróćmy do programowania…

Programowanie jest w modzie

Od jakiegoś czasu programowanie robi się „modne”. Wizja kilku tysięcy nawet dla początkujących wydaje się być zachęcająca i przyciąga. Dlatego coraz więcej osób chce na nawet siłe zainteresować się programowaniem. 

Jednkak w parze idzie pytanie, czy w takim razie każdy może być programistą?

Zawód na całą dobę.

Będąc operatorem koparki pracujesz te 8 godzin, po czym kończysz pracę i idziesz do domu. Raczej nie masz w domu drugiej koparki, do której mógłbyś wsiąść, jeździć po podwórku i kopać doły, aby być lepszym operatorem koparki. Nie rysujesz sobie mapki i nie zastanawiasz się „jakby wykopać ten dół jeszcze lepiej… może wejdę na forum i poszukam czy są lepsze łyżki do kopania…”. 

Natomiast w zawodzie programisty to chyba norma, że w wolnym czasie, w domu przeglądasz nowe technologie, uczysz się ich, testujesz. Tak, aby w pracy już wiedzieć co wykorzystać.

Szczególnie na początku, gdy lista rzeczy do nauki jest znacznie dłuższa niż ilość godzin w pracy. To jest często praca całodobowa. Ile razy pod prysznicem, czy leżąc w łóżku myślałem, jak napisać jakąś funkcjonalność…

Dodatkowo zawód programisty jest o tyle specyficzny, że uczyć się trzeba całe życie. Tu nie ma zawsze aktualnej wiedzy, tu codziennie powstają nowe technologie a stare przestają być aktualne. Dlatego pojawia się następujące pytanie..

Czy programowanie trzeba lubić?

Czy myślisz, że Phelps byłby w stanie trenować całymi latami praktycznie codziennie, gdyby nie lubił pływać? Wątpię! 

Czy są osoby, które nie lubią pływać, ale umieją pływać? Z pewnością!

Jak jest więc różnica pomiędzy powyższymi osobami? Obie umią pływać, ale jedna to lubi a druga nie. Już pewnie wiesz do czego zmierzam. Można coś robić nie lubiąc tego, ale raczej nie będziesz w tym, aż tak dobry jak ktoś, kto tę czynność lubi.

Wynika to z prostego faktu: ta pierwsza osoba poświęci więcej czasu na naukę i doskonalenie niż ta druga. Ale może też być odwrotnie, jeśli ta druga osoba nie będzie poświęcała na to czasu – przecież same „lubienie” nie wystarczy.

Pytanie powinno brzmieć, ile musisz umieć żeby pracowć jako programista. Jeśli mimo niechęci do programowania jesteś w stanie osiągnąć taki pułap, to jak najbardziej możesz być programistą nawet jeśli tego nie lubisz. Ale jest jeden haczyk… 

Wypalenie zawodowe

Żeby nie było. To nie jest tak, że ja cały czas uwielbiam kodować. Mam momenty, że nie mogę już patrzeć na monitor, zdażyło mi się też „wyślizgnąć” telefon czy myszkę o ściane… 

Jednak w trakcie przerwy szybko się regeneruję i zwyczajnie zaczyna mi brakować kodowania…. dlatego po odpoczynku nie mogę się wręcz doczekać, żeby znowu programować!

Dla porównania nie lubię księgowości i zdecywanie nie mam do niej „talentu”. Pracowałbym w księgowości gdybym musiał, ale tego nie lubię i nawet gdyby miał roczne wakacje, to na samą myśl o powrocie do takiej pracy wydałbym ziew zniechęcenia „ehhh…”.  Teoretycznie mógłbym pracować w każdej branży, ale nie w każdej chcę.

Nie wiesz co robić? Sprawdź się

Nie czujesz mięty do programowania? To jeszcze nic nie znaczy. Być może jeszcze nie wiesz, że lubisz programować. Ja, np. nie wiedziałem, że lubię jeździć na snowboardzie, dopóki nie zacząłem na nim jeździć. Dlatego wypowiedzi typu „nie jesteś programistą z pasji? eee to nic z ciebie nie będzie…” uważam za bezsensowne. 

Chcesz wiedzieć czy możesz być programistą? Sprawdź i tyle.