Nauka programowania przychodzi falami

Nauka programowania to nie jest coś takiego, że się nauczysz raz i już. No nie. Raczej to przychodzi falami. Nauczysz się czegoś i czujesz się nauczony. A potem się okazuje, że gówno, że nic wcale nie umiesz, więc się douczasz, żeby znowu umieć.

Proces nauki to taka sinusoida, a raczej ileś sinusoid połączonych ze sobą, jednak z tendencją wzrostową. Coś jak ten wykres. Czyli na dłuższą metę czujemy, że nasze umiejętności idą w górę, ale na krótką metę są wzloty i upadki (albo lotki i łopatki). Czasem czujemy, że się cofamy, mimo, że strzałka czasu idzie cały czas do przodu.

Co zrobić w takim razie? Jak zachować normalność i odpowiednią perspektywę?

Oto garść tipów:

  1. Pamiętaj, że twój "upadek" to tylko lokalne minimum. Czyli w dłuższej perspektywie idziesz w górę, a jedynie doświadczasz pewnych fluktuacji skilla. Wyobraź sobie, że to takie kursy walut, że może jakaś waluta iść ogólnie w górę, ale jednak jej kurs będzie się wahać na krótką metę.
  2. Czasem jednak z powodu "łopatku" możesz się spotkać z czyimś negatywnymi opiniami (np. możesz znać technologię dobrze, ale mieć zaćmienie umysłu na rozmowie i ktoś może cię ocenić negatywnie).

    Wtedy warto zwrócić uwagę na to, że ktoś cię ocenia tylko na podstawie bardzo małego wycinka czasowego (np. to, jak ci poszło programowanie podczas 40 minut rozmowy technicznej), więc naturalnie ktoś taki nie będzie mieć całego obrazu (to trochę jak przesądzać o wyniku meczu po tym, że ktoś spudłował w 5 minucie). Nawet światowi programiści z osiągnięciami odpadają na rozmowach, bo ktoś zadał im pytanie, z którego się nie przygotowali.

  3. Wszystko ma dwie strony, więc to, że firmy oceniają kandydata nie po tym, co faktycznie umie, ale jak wyszedł na rozmowie, można wykorzystać na swoją korzyść.

    Można łatwo shakować rozmowy rekrutacyjne po prostu przygotowując się do nich. Tak, by odbywając rekrutację wejść w lokalne maksimum i na czas rekrutacji przejawiać większe skille niż normalnie. Taki turbo mode.

    Np. słabo mówisz po angielsku? To przed rekrutacją przećwicz po angielsku odpowiedzi na typowe rekrutacyjne pytania i potem będzie się wydawało, że lepiej znasz ten język.

    Podobnie z technologiami. Możesz przypomnieć sobie pewne rzeczy z danych technologii (nawet te rzadziej używane), tak, żeby móc odpowiedzieć nawet na te bardziej trudne i podchwytliwe pytania techniczne. Możesz też poćwiczyć opowiadanie o sobie. Tym sposobem zdobędziesz uznanie rekruterów.

  4. Jak ci się wydaje, że nic nie umiesz i że wszystko jest trudne, to możesz nie zdawać sobie z tego sprawy, ale właśnie się uczysz i przekraczasz swoje ograniczenia. Pomyśl, kiedy się więcej nauczysz. Czy jak rozwiązujesz trudny problem i jest ciężko, czy wtedy, kiedy jest łatwo i robisz to, co już umiesz? Robiąc to, co się zna i nie wychodząc poza strefę komfortu nie pójdziesz dalej. Programowanie to walka, a nie siedzenie na kanapie.

  5. Jednak uważaj, żeby się nie wypalić. Jak będziesz się cały czas tylko uczyć, to możesz się zmęczyć. No i nawet nie zrozumiesz tego, czego się uczysz. Dlatego warto po nauczeniu się jakiegoś zagadnienia dać na luz i trochę się pobawić, poeksperymentować na freestyle'u. Programowanie to ma być rozrywka, a nie przymuszona nauka jak w szkole.

I jak ci się podobały moje tipy? Czy chcesz może coś dodać?

Komentarze

  1. Świetnie opisany proces nauki programowania. Często tak jest, że po okresie frustracji zaczyna się wszystko stopniowo układać w głowie.

    OdpowiedzUsuń
    Odpowiedzi
    1. No dzięki :) Czasami też się okazuje, że dopiero teraz się przydają pewne rzeczy, których się uczyliśmy/które robiliśmy wcześniej, bo możemy zobaczyć je w nowym świetle.

      Usuń

Prześlij komentarz

Popularne posty z tego bloga

Ściemy z ogłoszeń o pracę

Zostać programistą (2) - czy się nadajesz?

Czego się nauczyłem w 2021?