Czy tylko ja tak mam? Zadajesz sobie to pytanie ucząc się programowania? W odpowiedzi mam dla Ciebie trzy historie. Przytrafiły mi się one na początku nauki kodowania.
Na podstawie moich historii chcę przedstawić Ci pewne zjawisko, które nas dotyka podczas nauki. Założę się, że spotyka wszystkich. No, prawie wszystkich. A tym zjawiskiem jest nim efekt Dunninga-Krugera.
Historia pierwsza
Kilka lat temu po raz pierwszy zaczęłam myśleć o zmianie branży. Moją uwagę przykuł SQL. Zrobiłam podstawowy i zaawansowany kurs z SQL na codecademy. Zajęło mi to może z dwa dni. Potem przeczytałam książkę Head First “Rusz głową! SQL”. Wydawało mi się, że to wszystko jest takie super proste i że ogarnęłam tego SQLa. Na fali tego uczucia wysłałam CV na stanowisko stażysty z SQLem do jednej firmy. Ku mojemu zdziwieniu, zaprosili mnie na rozmowę jeszcze w tym samym tygodniu.
Przed rozmową zrobiłam raz jeszcze kursy SQL na Codecademy, żeby sobie przypomnieć, czego się tam nauczyłam. Podczas rozmowy dostałam do ręki kartkę, na której miałam pisać zapytania w SQL. Jak pewne nietrudno się domyślić, nie poszło mi zbyt dobrze. Oczywiście miałam zerowe doświadczenie z SQLem, a zrobienie kilkunastu zadań z kursu zupełnie nie odzwierciedlało tego, jak praca z SQLem wygląda. Zadania, które robiłam, zupełnie nie przypominały tych, jakie dostałam na rozmowie kwalifikacyjnej.
Historia druga
Może rok czy dwa lata później niż historia pierwsza. Uczyłam się HTML i CSS już kilka miesięcy. Na kursie programowania, na którym byłam, właśnie zaczęliśmy zadania z JavaScriptu. Szło mi naprawdę dobrze. Przerobiłam sama wszystkie zadania jeszcze przed zajęciami. Dlatego podczas kursu dostałam dodatkowe rzeczy do zrobienia. Moja pewność siebie poszybowała jak szalona, szczególnie, że byłam po poważnej operacji i potrzebowałam czegoś, czym zajmę umysł. Na fali tego pozytywnego uczucia postanowiłam porozsyłać CV na juniorskie stanowiska, żeby zobaczyć, jak tam mój poziom wiedzy sprawdza się w praktyce.
Z jednej firmy odpisali właściwie od razu i przesłali mi link do zrobienia zadań online. Na czas. Z testami. Nie miałam pojęcia, co wyprawia się w tym edytorze, co to są testy, jaki jest cel zadania. A do tego nie zauważyłam, że to zadanie na czas. Nie poszło mi dobrze. Do dzisiaj dziękuję w myślach osobie, która sprawdzała to moje zadanie za to, że napisała mi, że poszło źle, ale widać, że próbowałam i tok myślenia był dobry w niektórych przypadkach. I żebym pouczyła się jeszcze, to na pewno coś takiego rozwiążę.
Historia trzecia
Kilka miesięcy później. Kurs programowania dobiegał końca, więc tym razem chciałam zacząć szukać pracy tak naprawdę, nie tylko wysłać CV, żeby sprawdzić reakcję. Na kursie przerabialiśmy naprawdę bardzo dużo zagadnień, chciałam więc to wszystko umieścić w CV, żeby dobrze zaprezentować swoje umiejętności. Znalazłam wzór, w którym określało się poziom znajomosci danego zagadnienia w skali od 1 do 5 w formie zakolorowanych kulek.
Z radością przyznałam sobie 5 na 5 z HTML i CSS, z JavaScript chyba z 4 na 5 z tego, co pamiętam. Były tam też inne kwiatki. Pracę tym razem dostałam (choć na początek właściwie za bardzo stażową pensję). Ale dzisiaj, z perspektywy, w życiu bym sobie nie przyznała wtedy tylu punktów z HTML, czy CSS, a co dopiero z JS. Dzisiaj nawet bym sobie nie przyznała 4 na 5 z JS. Bo mam wrażenie, że nie znam nawet jednej setnej tego, co potrzeba.
Na czym polega efekt Dunninga-Krugera?
Nie dzielę się z Tobą tymi moimi porażkami bez powodu. Jak pewnie zauważasz, we wszystkich przewija się ten sam motyw przewodni. Ja przekonana o tym, że umiem o wiele więcej niż umiem naprawdę. Ja pewna tego, że po dwóch kursach online nauczyłam się SQL. Twierdząca, że świetnie znam HTML i CSS po zrobieniu kilku prostych stron na kursie. I stająca do zadania rekrutacyjnego z JavaScriptu po dosłownie tygodniu ćwiczenia czegokolwiek w tym języku.
Uwielbiam się uczyć. Szczególnie nowych rzeczy. To uzależniające. Jak nie wiesz nic i nagle umiesz już coś. Nie miałam pojęcia o HTML i CSS, a kilka miesięcy później umiem zakodować proste szablony. Nie wiedziałam, że Java i JavaScript to dwa różne języki, a po dwóch tygodniach umiem napisać pętlę i inne fajne rzeczy. Przyznaję się, łatwo ulegam euforii na początku nauki. I wiem, że nie jestem w tym sama.
Bardzo interesują mnie zjawiska kryjące się za procesem uczenia się. Czytając o uczeniu się trafiłam na opis zjawiska zwanego efektem Dunniga-Krugera. W skrócie – chodzi tu o to, że osoby niebędące biegłe w danej dziedzinie, zawyżają ocenę swoich umiejętności, gdy poznają dany temat. Z kolei osoby, które mają duże doświadczenie w danym temacie, tę wiedzę zaniżają. Po szczegóły odsyłam Cię do hasła na Wikipedii.
Im mniej wiemy, tym wydaje nam się, że wiemy więcej. Im wiemy więcej, tym bardziej wydaje nam się, że wiemy mniej. Jak paradoksalnie to nie brzmi, taka jest prawda. Dopiero osoba znająca dobrze temat wie, ile jeszcze przed nią, jak rozległa jest dziedzina, którą się zajmuje. Właśnie tak jest w programowaniu. Jak nie wiesz nic i piszesz pierwsze linijki kodu, masz wrażenie, że ogarniasz. Właściwie to jest nawet proste! O co tyle krzyku!
Czy na pewno będzie źle?
Świetnie ten stan opisany jest w artykule “Why learning to code is so damn hard” (wiem, że linkuję ten wpis dosłownie wszędzie, ale moim zdaniem powinna go przeczytać każda osoba, która uczy się programowania – uniknie dzięki temu wielu frustracji!). Autor przyrównuje tam początek nauki do miesiąca miodowego.
Tutorial prowadzi nas krok po kroku przez “happy path”, a my z radością kroczymy tą ścieżką ciesząc się z nowych umiejętności. Nie wiemy jeszcze, że za chwilę spadniemy z klifu. Razem z naszą pewnością siebie. I niestety, wiele osób już potem się nie podniesie. Pierwsze trudniejsze zadanie to będzie dla nich koniec przygody z kodem, bo wcześniej szło tak dobrze, a teraz napotykały przeszkodę.
Każdy tak ma!
Piszę dziś do Ciebie właściwie z jednym przesłaniem – każdy tak ma! Nie chcę zabierać Ci radości początków nauki, ale postawiłam sobie za cel pokazanie Ci tego, jak realnie wygląda nauka programowania. I wygląda właśnie tak. Najpierw będzie super, potem trochę mniej. Jak przetrwasz kryzys, znowu będzie fajnie. A potem kolejny kryzys.
Co daje nam ten cały efekt Dunninga-Krugera na początku nauki kodowania? Czy w ogóle coś daje? Moim zdaniem tak! Dzięki temu mamy energię do działania. Może i oceniamy zbyt optymistycznie swoje możliwości, ale to może sprawić, że weźmiemy się za rzeczy, których normalnie byśmy nie tknęli. Wydawałoby nam się, że na pewno nie damy rady. A po kilku podstawowych kursach widzimy, że to w sumie jest możliwe. I nie jest aż tak kosmicznie trudne.
Jeśli jesteś przed swoim pierwszym kursem online, miej to z tyłu głowy. Baw się kodem, ale nie ulegaj złudzeniu, że wszystko jest takie proste. A jeśli już kodujesz, przypomnij sobie to uczucie. Albo zrób tutorial z jakiegoś innego języka, żeby poczuć, jak to jest ogarniać (choćby na hiper podstawowym poziomie) coś, czego się nie umiało jeszcze wczoraj.
Przyznam, że opisanie tu moich porażek to dla mnie wyzwanie. Chcę jednak walczyć z wszechobecną propagandą sukcesu. Dzielimy się, gdy nam się coś udaje, a powinniśmy dzielić się też porażkami. Aby inny wiedzieli, jak faktycznie wygląda nauka kodowania i droga do zmiany branży.
Podobał Ci się ten tekst? Dołącz do mojego newslettera!
Tekst, który właśnie czytasz, to pierwszy mail z serii “Czy tylko ja tak mam?”, którą wysyłam do osób zapisanych na moją listę mailingową. Ty też możesz co tydzień w poniedziałek dostać ode mnie tego typu treści – wystarczy, że dopiszesz się do listy.
A może podzielisz się ze mną swoimi przygodami związanymi z efektem Dunniga-Krugera? Jakieś porażki, które chcesz opisać? A może właśnie sukcesy? Napisz do mnie na Instagramie albo wyślij mi maila na joanna[at]wakeupandcode.pl.