Rozwijanie umiejętności do mistrzowskiego poziomu jest celem wielu z nas. Często z podziwem patrzymy na osiągnięcia innych, czasem dopada nas syndrom oszusta a czasem ... po prostu robimy swoje. Tym razem powiem o tym, dlaczego teoria "10000 godzin" nie jest prawdziwa. A przynajmniej nie pełna.
Jeżeli nie słyszałeś jeszcze o wspomnianej teorii, chodzi w niej o to że do osiągnięcia mistrzostwa w praktycznie dowolnej dziedzinie, potrzebujemy około 10000 godzin. Zatem jeżeli pracujesz nad czymś przez 4 godziny dziennie, uwzględniając dni robocze, dojście do mistrzostwa zajmie Ci około 10 lat. I to przynajmniej w teorii ma dużo sensu.
W teorii ponieważ jest tu pewien brakujący element, który jest poruszany niesamowicie rzadko a jego efekty widać na każdym kroku. W końcu gdyby rzeczywiście chodziło tylko o czas, wokół nas chodziliby sami mistrzowie. A tak nie jest. Pytanie dlaczego?
Zanim do tego przejdziemy, powiem Ci dlaczego w ogóle poruszam ten temat.
Po pierwsze skoro czytasz ten artykuł, prawdopodobnie zależy Ci na Twoim rozwoju, poszerzaniu kompetencji i stawaniu się lepszym w tym, co robisz.
Po drugie istnieje duża szansa na to, że poświęcasz na to wiele energii (podobnie jak ja) i być może efekty nie są do końca takie jakie byś chciał a to w dłuższej perspektywie ma na nas negatywny wpływ. Pomijam tutaj tylko to co Ci się wydaje (bo mamy tendencję do umniejszania swoim umiejętnościom).
Zatem o co tutaj chodzi i dlaczego sam czas nie jest wystarczający?
Okazuje się że w rozwijaniu swoich umiejętności i przechodzeniu na kolejne poziomy zrozumienia, kluczowe jest to, aby nieustannie przekraczać granice swoich aktualnych kompetencji.
I to akurat nie jest wyłącznie teoria, ponieważ już teraz mamy bardzo konkretne potwierdzenia naukowe tego faktu. W bardzo przystępny sposób mówi o nich m.in. Andrew Huberman w podcaście Rich Roll. Otóż wbrew popularnej opinii stan "flow" do którego wielu z nas dąży, wcale nie jest dobry to rozwijania swoich umiejętności. Flow jest w porządku gdy chcemy skutecznie realizować zadania w obszarze naszej kompetencji.
Natomiast w procesie nauki kluczowe jest wychodzenie ponad to. Jak się pewnie domyślasz, wiąże się to z koniecznością popełniania błędów, z czego wynika mnóstwo frustracji. I to właśnie sprawia że tak mało osób jest w stanie rozwijać się w ten sposób.
I właśnie popełnianie błędów jest tutaj bardzo ważnym elementem, którego na każdym kroku staramy się unikać za wszelką cenę. Jeżeli chcesz zmienić swój stosunek do popełniania błędów, bardzo polecam Ci dwie książki: Black Box Thinking oraz Think Like a Rocket Scientist.
Warto też dodać że w tym wychodzeniu poza swoje aktualne kompetencje ważny jest pewien balans. To znaczy wychodzenie zbyt daleko sprawi że frustracja powstrzyma nas przed działaniem. Natomiast pozostawanie w swojej strefie komfortu, skończy się brakiem postępów.
Jak to można przenieść na programowanie? Nie wiem czy są to najbardziej skuteczne dostępne metody ale dobrze sprawdzają się u mnie:
- wychodzenie poza obszar tematyczny swojej specjalizacji (np. czytając książki marketingowe, biznesowe czy biografie)
- zmiana nastawienia do popełniania błędów (tutaj pomagają zwykła ciekawość oraz przełączenie się w "tryb ekspoloracji")
- sięganie po technologie i narzędzia, których nie znamy (to pozwala nie utożsamiać się z konkretnym stackiem technologicznym)
- kształtowanie dyscypliny poprzez zwracanie uwagi na małe rzeczy wokół nas (to pomaga w poruszaniu się "poza strefą komfortu", pomimo przeciwności)
Ostatecznie są to sugestie, które świetnie sprawdzają się u mnie ale niekoniecznie muszą u Ciebie. Bardzo zachęcam do tego abyś opracował własny zestaw zasad, który pozwoli Ci zwiększyć efektywność zdobywania nowych umiejętności.
Jeżeli zainteresował Cię poruszony dziś temat, odsyłam po więcej do książki The Outliers, Malcolma Gladwella.