Nie mam talentu do programowania, a na ten projekt brakuje mi motywacji

Nie mam talentu do programowania, a na ten projekt brakuje mi motywacji

Nie mam talentu do programowania – to nie dla mnie. Chciałbym tworzyć bloga, ale brakuje mi motywacji. Nie wyjdę na scenę, bo nie czuję się pewnie. Moja samoocena jest zbyt niska, żeby zostać liderem zespołu. Czekam na przypływ inspiracji – wtedy zacznę działać… Tak się składa, że jestem świeżo po przeczytaniu dwóch książek które przyglądają się takim opiniom jak te, które właśnie wymieniłem. Dzisiaj chciałbym przedstawić wam te książki oraz przekazać kilka najważniejszych wniosków i porad jakie z nich wyciągnąłem.

Na PoznajProgramowanie.pl prowadzimy cykl booksw którym prezentujemy najlepsze książki z którymi spotkaliśmy się na naszej drodze związanej z programowaniem i rozwojem osobistym. Postanowiłem jednak, że dwóm tytułom o których dzisiaj mowa – z powodu wszystkiego czego się z nich dowiedziałem – poświęcę nieco więcej miejsca.

Książki, na podstawie których przygotowałem dzisiejszy wpis, to:

Pierwsza z nich to podsumowanie długich lat badań tematyki uporu i dążenia do celu. W pierwszej części książki autorka na podstawie przeglądu sylwetek znakomitych sportowców, historii drużyn sportowych, biografii znanych naukowców czy jednostek wojskowych stara się odpowiedź na pytanie związane z rolą uporu w naszym życiu. W drugiej części czytamy o tym, jak nad uporem pracować, jak można go kształtować oraz jak pomagać innym (np. własnym dzieciom) w pracy nad tą cechą charakteru.

W drugiej książce znajdziemy natomiast opracowanie tematyki pewności siebie i podejmowania działania szczególnie w kontekście wyzwań i wychodzenia z tzw. strefy komfortu. Co powstrzymuje nas przed realizacją planów? Jakie mity na temat pewności siebie wbija nam do głowy nasze otoczenie? Dlaczego nie istnieje jeden złoty środek rozwiązujący wszystkie problemy związane z brakiem działania? To książka która da wam odpowiedzi na wszystkie te pytania.

W dzisiejszym poście postanowiłem nałożyć pomysły i tezy które znalazłem w obu książkach na świat programowania. Zobaczcie więc co powoduje, że projekt który robiliście przez dwa tygodnie leży nieruszony od miesiąca, dlaczego czasami wolimy “grać w grę” zamiast pracować nad swoimi umiejętnościami i jak błędnie rozumiemy bycie zmotywowanym do pracy.

Brak talentu do…

Zaczynamy od tematu talentu, bo to chyba jeden z najpopularniejszych mitów związanych z programowaniem. ‘Nie jestem fanem matematyki, nie mam talentu do algorytmów – nie ma szans, żebym został programistą.” – słyszałem to wielokrotnie.

Angela Duckworth w swojej książce “Upór” mówi o talencie zaczynając od własnego przykładu związanego z rolą nauczyciela matematyki. W trakcie jej przygody związanej z nauczaniem 12 i 13 latków zauważyła, że najbardziej utalentowani uczniowie na koniec semestrów nie byli tymi, których oceny były najlepsze w danej klasie. Z najlepszymi ocenami kończyli ci, którzy na początku nauki mieli spore problemy z przyswojeniem materiału, ale dzięki godzinom dodatkowych ćwiczeń, pytań i porad ze strony nauczycieli kończyli z lepszymi wynikami. Wysiłek który wkładali w naukę był kilkukrotnie większy niż wysiłek osób “utalentowanych”, którym często brakowało motywacji do podnoszenia swoich kwalifikacji ponad to, co przychodzi im z łatwością. Takich przykładów w tej książce jest jeszcze kilka – wszystkie podsumowane są natomiast następującymi równaniami:

Talent * Wysiłek = Umiejętności, oraz Umiejętności * Wysiłek = Sukces

“Talent decyduje o tym, jak szybko rosną twoje umiejętności, gdy wkładasz w nie pewien wysiłek. Sukces przychodzi wtedy, kiedy zdobyte umiejętności wykorzystujesz w praktyce.”

W prostych słowach – bycie utalentowanym robi różnicę, jednak jeszcze większą różnicę robi wysiłek który wkładasz w szlifowanie umiejętności i wykorzystywanie ich w praktyce. Najlepszym przykładem tego, że ma to sens jestem sam dla siebie – nigdy nie uważałem się za wybitnego matematyka ani programistę – wszystkie umiejętności wypracowałem spędzając długie godziny nad kolejnymi ćwiczeniami, zadaniami i projektami. Nigdy nie skrytykuję kogoś za pomysł zostania programistą pomimo tego, że być może “nie ma talentu”.

Brak pewności siebie

Jeśli zrozumiemy już jakie role w naszym życiu odgrywają talent i umiejętności, to możemy się natknąć na kolejną przeszkodę w naszym rozwoju. Tą przeszkodą jest brak pewności siebie.

Objęcie roli lidera w projekcie? Chciałbym, ale nie mam pewności czy się nadaję. Występ na konferencji? Chciałbym, ale nie mam pewności czy nie zrobię z siebie pośmiewiska. Własny blog i pisanie o swoim spojrzeniu na programowanie? Chciałbym, ale nie mam pewności jak to zostanie odebrane.

W książce “The Confidence Gap” Russ Harris pisze: “Jeśli czekasz na poczucie pewności siebie przed tym, jak zaczniesz robić coś co jest dla ciebie ważne, to masz ogromne szanse na to, że będziesz czekał wiecznie.”. Nie ma możliwości, żebyś już na początku mierzenia się z trudnym, nowym zadaniem czuł się pewnie. Musisz sobie uświadomić, że działanie zgodnie z takim sposobem myślenia nakłada na ciebie na samym początku wręcz niemożliwe do przeskoczenia ograniczenia.

Czy czuliśmy się pewnie startując z blogiem którego właśnie czytasz? Oczywiście, że nie – było mnóstwo wątpliwości, a części z nich nawet do dzisiaj nie udało się pozbyć. Jednak poczucie tego, że być możemy potrafimy to robić przyszło z czasem. Na początku posty były krótkie, a komentarzy nie było wcale. Czy wtedy czuliśmy się pewnie? Oczywiście, że nie! Co zmieniło nasze spojrzenia na to, jak i czy w ogóle możemy prowadzić tego bloga kolejny miesiąc? Działanie.

Pierwszą zasadą gry w pewność siebie jest, jak pisze autor – “the actions of confidence come first, the feelings of confidence come later“.

Jeśli zaczniemy działać, to musimy teraz utrzymać właściwe tempo i regularność. To trudne, ponieważ czasami łapie nas…

Opieranie swoich działań na przelotnej motywacji i inspiracji

Postanowiłeś, że w kontekście budowania swojej pozycji w świecie programowania zaczniesz pracować nad własnym blogiem. Na fali pierwszej “zajawki” pojawił się pierwszy post, po dwóch dniach drugi, ale do trzeciego minął już tydzień. Czwarty czeka od miesiąca w sekcji “wersji roboczych” – na razie nie masz motywacji żeby go dokończyć, a więc czekasz na właściwy moment.

Różnie to nazywamy – dla jednych musi nadejść “ten moment”, drudzy potrzebują motywacji, a jeszcze inni inspiracji. Dopóki tego nie ma, to znajdujemy się w “Poczekalni” – miejscu, gdzie ludzie czekają aż coś się wydarzy i sprawi, że zaczną działać. Niestety – dla ogromnej większości z nas dobry moment nie nadejdzie już nigdy. Zamiast bloga uwagę zwróci nowy projekt, a następnie konkurs programistyczny. Opieranie działania na szybko kończącej się motywacji sprawi, że realizacja każdego z tych celów skończy się tak samo.

Czy istnieje lekarstwo na problem braku motywacji? Co prawda w takim stanie czujemy zazwyczaj chęć działania (chcemy osiągnąć cel, wiemy, że to dla nas ważne), ale czekamy na odpowiedni moment. Odpowiedzią na ten stan jest podejście które Russ Harris nazywa “action first”. Najpierw działanie, potem poczucie odpowiedniego stanu. Działaniem w kontekście pisania bloga może być np. drobna poprawka w wersji roboczej posta, ale mogą to być też czynności niezwiązane z pisaniem, takie jak konfiguracja serwera czy praca przy warstwie graficznej. Najważniejsze, żeby coś robić – nie możemy zakładać, że kiedyś przyjdzie “ten moment” – musimy kierować się podeściem opartym na zaangażowaniu, a nie na czynnikach zewnętrznych.

Nie każda praktyka czyni mistrza

Na pewno znacie to powiedzenie – “praktyka czyni mistrza”. Wiadomo, do bycia najlepszym potrzebne są nam długie godziny spędzone na ćwiczeniach i praktyce. Czasami jednak mamy poczucie niesprawiedliwości – jak to jest, że osoba X wydaje się być o wiele lepszych programistą, pomimo tego, że spędzam na ćwiczeniach i kursach o wiele więcej czasu niż ona?

W “Uporze” możemy poznać odpowiedź na to pytanie. Odpowiedzią jest jakość czasu poświęconego na ćwiczenia, a nie tylko jego ilość. Przykładem który to ilustruje jest historia jednego z europejskich mistrzów olimpijskich w kajakarstwie, który został kiedyś zaproszony do Japonii żeby pomóc tamtejszej reprezentacji przygotowującej się do zawodów. Ku jego zaskoczeniu, Japończycy nie odnosili znaczących sukcesów w tej dyscyplinie pomimo kilkukrotnie cięższych treningów niż te znane z Europy – ćwiczyli ciężko, ale bez odpowiedniego planu treningowego. Ciężki trening przynosił efekty odwrotne do zamierzonych – pojawiło się zmęczenie i zniechęcenie, natomiast medali jak nie było tak nie ma.

Być może sam w swojej historii nauki programowania miałeś poczucie marnowania czasu. Spędzałeś długie godziny przed komputerem, a jednak nie miałeś poczucia “stawania się lepszym”. Tak właśnie wygląda trenowanie bez wcześniej obranego planu treningowego.

Ćwiczeniami które przynoszą najlepsze efekty, są – jak wynika z badań autorki – ćwiczenia celowe (deliberate practice). O co chodzi w ćwiczeniach celowych? W skrócie – o świadome pracowanie nad konkretnie zdefiniowanymi słabościami. Ćwiczeniem celowym w programowaniu nie jest siedzenie przed komputerem. Aby trening przynosił najlepsze korzyści należy rozbić umiejętności potrzebne w danym zawodzie na małe składowe, a następnie doskonalić je jedna po drugiej. W takim podejściu praca nad umiejętnością o nazwie programowanie zamieni się pracę nad logicznym myśleniem, planowaniem projektu, zarządzaniem ryzykiem, złożonością systemów, wykrywaniem błędów czy testowaniem oprogramowania. Zakres ćwiczeń nad lepiej zdefiniowanymi obszarami można dokładnie określić, a postępy mierzyć.

Kawa i ciasto w strefie komfortu

Na koniec jeszcze jedno spostrzeżenie Russa Harrisa odnośnie strefy komfortu, czyli miejsca w którym wiele osób nieświadomie lubi przebywać i nawet nie przechodzi im na myśl opuszczenie jej. Strefa komfortu – dla przypomnienia – to umowny obszar naszego życia w którym czujemy się bezpiecznie, w którym nie musimy podejmować żadnych wyzwań, ponieważ wszystko co znajduje się w tej strefie jest dla nas doskonale znane i rozłożone na czynniki pierwszej z każdej strony. Strefą komfortu może być np. trwanie od kilku lat w tej samej pracy na którą narzekamy i w której się nie rozwijamy, ale którą za to doskonale znamy, brak podejmowania wyzwań bo “dobrze jest tak jak jest”, itd.

Autor którego wspominam zachęca do… przestania używania takiego zwrotu. Określenie “strefa komfortu” kojarzy mu się z przyjazną kawiarnią gdzie podają ciasto, albo salonem piękności w którym chcielibyśmy spędzać jak najwięcej czasu. Zamiast tego zwraca uwagę, że brak podejmowania jakichkolwiek wyzwań, ciągłe szukanie wymówek i zrzucanie odpowiedzialności na czynniki zewnętrzne powoduje, że znajdujemy się w “strefie stagnacji”, “strefie postoju”, “strefie życia na 50%”, “strefie zmarnowanego czasu”, albo “strefie niewykorzystanych szans”.

Strefą komfortu w kontekście programowania może być przykładowo nierozwijająca nas praca której z rozmaitych powodów nie chcemy opuścić. Może nią być też rezygnacja z podejmowania inicjatyw takich jak prowadzenie projektu czy po prostu przyjmowanie na siebie nieco większej odpowiedzialności. Warto w takich sytuacjach rozumieć, że nie jest to dla nas tak neutralne jak się niektórym wydaje – postój i życie na 50% w dłużej perspektywie nam szkodzi – stajemy się mniej konkurencyjni na rynku pracy, mniej przydatni w oczach pracodawcy i podświadomie czerpiemy mniej satysfakcji z tego co robimy – nie jesteśmy przecież w żaden sposób pobudzani niczym nowym.

Co sprawia, że stajemy się lepsi w tym co robimy?

Obie książki na podstawie których stworzyłem dzisiejszego posta wskazują na podobne kwestie:

  • upór i wytrwałość  – talent ma dobry marketing, jednak w dłuższej perspektywie nie jest najważniejszy
  • umiejętność pracy w każdych warunkach – działanie w momentach dobrych i złych, w lecie i na wiosnę, po zamknięciu projektu jak i po tym, kiedy wszystko się posypało
  • odpowiednie zarządzanie stresem – umiejętność wykorzystywania stresu i strachu do pobudzania się i lepszej koncentracji, zamiast prób uspokajania się za wszelką cenę
  • ćwiczenia celowe – jakość czasu przeznaczanego na ćwiczenia, a nie tylko ilość – do tego świadoma praca nad swoimi niedoskonałościami
  • zdefiniowanie własnych wartości – określenie wartości które wskazują nam drogę, są podstawą wszystkiego co robimy i sprawiają, że nie rezygnujemy na pierwszej przeszkodzie

Gorąco zachęcam wszystkich tych, którzy być może walczą z problemami “braku motywacji” albo “odpuszczania w połowie drogi” do przeczytania obu książek które dzisiaj wielokrotnie wspominałem. Porady w nich zawarte są z jednej strony uniwersalne (możliwe do zastosowania w zawodzie programisty), a z drugiej bardzo konkretne – nie znajdziecie w nich pustej motywacji w stylu “jesteś zwycięzcą”. Na początku ich czytania obawiałem się listy banałów, jednak autorzy tych książek przekonali mnie, że nie zmarnowałem wydanych pieniędzy.

Po ich przeczytaniu przyjdzie czas na najważniejszy punkt czyli działanie – dokończ posta który czeka na swoją kolej, stwórz repozytorium na projekt który chodzi ci po głowie, albo podejmij inicjatywę w swojej pracy. A potem daj znać w komentarzach z czym postanowiłeś się zmierzyć 🙂

  • Marika Kowalska

    Co tu dużo pisać.. Trafione w punkt 🙂

    • Przemek Smyrdek

      Dzięki!

  • Adrian Bystrek

    Spostrzeżenie związane ze strefą komfortu dla mnie trafione w dziesiątkę. Kojarzy mi się to ze spojrzeniem od strony biznesowej. Jeżeli ja, czy ogólnie moja działalność się nie rozwija i złudnie wydaje mi się, że doszedłem już do odpowiedniego punktu to tkwiąc w tym miejscu tak naprawdę zostaję w tyle. Choćby tylko z tego powodu, że inni idą do przodu.

    “Repair the roof while there is still sunshine.” – Jack Ma https://www.facebook.com/techinasia/videos/1500917159946692

    • Przemek Smyrdek

      Metafora o naprawianiu dachu wtedy kiedy świeci słońce – 10/10.

  • marcin4511

    Piszę bloga, ale chwilowo nie jest on programistyczny (może za niedługo).
    Co do wystąpień publicznych, to lubię się dzielić wiedzą, ale przy tłumie czuje się taki mały i nie potrafię wydusić wszystkiego tego co chciałbym powiedzieć.

    • Przemek Smyrdek

      Rozumiem to! Kilka tygodni temu napisałem nawet posta, w którym opisuję swoją historię występowania przed publicznością – https://poznajprogramowanie.pl/tworzenie-prezentacji-porady/. Mały spoiler – na początku było ciężko, a teraz jest tylko trochę lepiej 😉 Najważniejsze, to nie poddawać się i od prezentacji do prezentacji walczyć z samym sobą po drodze poprawiając niedoskonałości.

  • Mariusz

    Świetny post, dziękuje za niego 🙂

    • Przemek Smyrdek

      Polecamy się 😉