Motywacja, chaos, satysfakcja, spełnienie

Za każdym razem, gdy uczymy się czegoś nowego, wkraczamy w chaos, który musimy zwalczyć, by był porządek. Porządek w głowie, dzięki któremu wszystko, co było kiedyś trudne, staje się łatwe.

Od jakiegoś czasu uczę się TypeScripta. Sposób pisania kodu i podejście do programowania diametralnie się w nim zmienia (w porównaniu do JS). Kiedy pierwszy raz próbowałem napisać kawałek kodu w TS, doświadczyłem ogromnego chaosu: "tutaj zły typ", "typ nie jest zdefiniowany", "typ zwracanej funkcji nie jest taki, jak powinien". Oprócz tego masa nowej składni, której po prostu nie ogarniałem, bo wcześniej za dużu styczności z typescriptem nie miałem. Wszystko to powoduje, że człowiek się zniechęca, bo dostaję na głowę całkowicie niezrozumiałe dla niego w tym momencie rzeczy, których definicję musi przyswoić i odnaleźć się w morzu typów.

Wkraczając w świat typowanego javascriptu zdałem sobie sprawę, że było tak za każdym razem. Nauka Reacta, Vue, nowych funkcji ES6, webpacka i wielu innych technologii - to zawsze był ten sam schemat. Schemat, na początku którego musiałem mieć ten impuls. Co to właściwie znaczy? Za każdym razem, jak chcemy się nauczyć nowych rzeczy, to potrzebna jest motywacja do tego. Wg mnie, jest to najcięższy czynnik do przejścia. Wracając pamięcią, dużo razy miałem tak, że musiałem się zmuszać do nauki - do odpalenia edytora, uruchomienia runtimu i napisania chociaż paru linijek kodu. Z czego to wynikało? Do końca dziś nie wiem. Może była to obawa, niepewność przed efektywnością nauki lub może poczucie straty czasu na coś, na co nawet nie mam gwarancji, że się długoterminowo opłaci. Więcej razy odpuszczałem sobie, mówiąc, że zrobię to na pewno jutro, niż faktycznie siadałem do nauki. Po wielu miesiącach wyparłem z siebie ten problem i dziś widzę w tym wszystkim konkretny cel. Bo wiem, że wszystko co zrobię, nawet najmniejsza głupota, nauczy mnie czegoś nowego. Motywacja - był to czynnik, który był najtrudniejszy do pokonania. Bo bez tego impulsu, więcej zrobić nie możemy.

Udało się. Zmotywowani usiedliśmy do kodu. Co jednak teraz? Jak odnaleźć się w morzu problemów i errorów wyskakujących co rusz z konsoli?  Ucząc się poprawnego typowania contextu w Reakcie, znajdziesz w internecie na to masę sposobów. Każdy będzie inny. Dodatkowo, nowa wersja typescriptu z zeszłego miesiąca, zupełnie zepsuła to, co ktoś pokazywał w tutorialu. Nic nie działa, wszystko się wywala, a my nabieramy frustracji jak grzyby po deszczu. Czas leci. Spoglądamy na godzinę. "O cholera, już 3 godziny siedzę i nie mogę się z tym uporać".

Dochodzimy wreszcie do rozwiązania. Zwalczamy chaos, odczuwając przy tym satysfakcję. Oczywiście do momentu kolejnego podproblemu, w którym znowu napotkamy chaos, a któremu ponownie dzielnie trzeba będzie stawić czoła. Nieważne jak dotarliśmy do rozwiązania i poradzenia sobie. Mógł to być kurs, wpis na blogu, filmik na YouTube, czy porada znajomego. Ważne natomiast jest to, że poradziliśmy sobie z problemem. Ta wiedza zostanie z nami, na zawsze. I nikt nam tego nie odbierze. Nawet jeśli w przyszłości zapomnimy o szczególe, to szybko sobie o nim przypomnimy.

Po całej sesji nauki, podsumuwujemy ją sobie. "Ile się dziś nauczyłem?". Cholernie dużo. "A ile na to czasu poświęciłem?" - 7 godzin ciągłej nauki. Cholernie dużo. Sobota południe. Słońce świeci, dzieciaki na zewnątrz drą się, bawiąc się co nie miara. Na boisku ktoś rzuca od dwóch godzin do kosza, a ty co? Przy kompie siedzisz, w klawiaturę klikasz. Wymieniłeś swój czas z przyjemności na rozwój i inwestycję w siebie. Pal licho, jeśli sama w sobie nauka programowania sprawia ci przyjemność. Powiedz to ludziom chcącym się przebranżowić, mającym całe rodziny na karku i nie mającym czasu na nic. Czy jest dla nich szansa? Nie wiem. Aczkolwiek gratulacje. Dziś znalazłeś w sobie motywację, odnalazłeś się w chaosie, poczułeś satysfakcję i napoiłeś się spełnieniem. Dziś znalazłeś się kilka kroków bliżej spełnionego celu. Czy to był czas stracony? Odpowiedz sobie sam.

© Damian Kalka 2021
Wszelkie prawa zastrzeżone