Jak znaleźć czas na naukę programowania?

Jak znaleźć czas na naukę programowania?

2 czerwca 2022

Zwłaszcza starsze osoby bardzo często mówią, że chciałyby nauczyć się programowania, ale nie mają na to czasu.

Wiem, że życie wielu osób jest wręcz wypełnione obowiązkami i są tacy, którzy rzeczywiście nie znajdą na dodatkową aktywność nawet przez pół godziny każdego dnia.

Jeżeli obawiasz się, że masz na to zbyt mało czasu, zapraszam Cię do tego wpisu, w którym — całkiem możliwe, że uświadomię Cię, że dasz radę.

Ile czasu powinno się poświęcać na naukę programowania?

Na forach i stronach internetowych spotkasz się z najróżniejszymi opiniami. Jedni powiedzą Ci, że najlepiej będzie gdy będziesz uczył się godzinę dziennie, a inni, że dwie.

Moim zdaniem nie ma większej różnicy. Tak długo jak większość czasu Twojej nauki nie schodzi na otwarcie edytora kodu i robienie wszystkich rzeczy wokół programowania, a nie klepania rzeczywistego kodu — jest okej.

Załóżmy, że masz na naukę programowania 20 minut dziennie. Nie jest to bardzo dużo czasu, bo więcej prawdopodobnie spędzasz m.in. w toalecie. Moim zdaniem w dłuższym okresie czasu i tak powinieneś być w stanie nauczyć się tyle, ile będziesz chciał, ponieważ od samej ilości czasu ważniejsza jest jednak konsekwencja.

Zobacz, 20 minut dziennie. Jeżeli nie będziesz leciał sam ze sobą w kulki, da Ci to średnio 10 godzin w miesiącu, czyli 120 godzin w roku. Znowu, nie jest to nie wiadomo jak dużo czasu, ale moim zdaniem te 120 godzin powinno Ci wystarczyć na nauczenie się podstaw i na to, żebyś był w stanie samodzielnie tworzyć pierwsze projekty i uczyć się poprzez praktykę.

Dla odmiany zapaleniec mający na naukę programowania 4 godziny dziennie, w teorii ma na to 12 razy czasu więcej od Ciebie. Niby mógłby uczyć się 12 razy szybciej, czyli to,co pojmiesz w rok, mógłby pojąć w miesiąc.

Nie wiem jak Ty, ale o ile kompletnie bym się czymś nie zajawił, robiąc to przez 4 godziny każdego dnia, wypaliłbym się najpóźniej po tygodniu. W rezultacie moja nauka programowania potrwałaby więc 28 godzin.

Wolny, acz konsekwentny żółw zwykle prędzej czy później i tak prześcignie zająca mającego słomiany zapał. Nie zniechęcaj się, nawet jeśli masz na to mało czasu. Jeżeli Cię to kręci i wiesz, że nie poddasz się po dwóch tygodniach, moim zdaniem warto.

Jeżeli nie masz tych 20 minut dziennie, nic nie stoi na przeszkodzie, by uczyć się np. tylko w weekendy. Regularność jest ważna, ale nawet jeśli będziesz się uczyć tylko raz, czy dwa razy w tygodniu, wiedza przez kilka dni przerwy i tak nie powinna samoistnie wyparować.

Sposoby na znalezienie czasu na naukę programowania

Wydaje Ci się, że nie masz czasu na programowanie? Nawet 20 minut dziennie?

Być może masz rację… I rzeczywiście tylko Ci się wydaje.

1. Zacznij uczyć się nawet poza domem

Kto powiedział, że programowania można uczyć się jedynie w domu, przed komputerem?

Jeszcze kilkanaście-kilkadziesiąt lat temu w biedniejszych krajach ludzie uczyli się programowania na kartkach papieru nie widząc nawet na oczy prawdziwego komputera.

Czy było to wydajne? Nie. Czy było to wygodne? Cholera, nie. Czy dało się? Jeszcze jak!

Żebyś mnie zrozumiał. Nie chodzi mi o to, żebyś zaczął pisać kod na papierowych kartkach. Po prostu, jeżeli jesteś poza domem, możesz np. ściągnąć sobie na telefon interaktywną aplikację do rozwiązywania zadań w danym języku programowania, nosić ze sobą książkę, czy też przeglądać dokumentacje języka lub jakieś gotowe, proste, napisane w nim programy.

Sam podstaw PHP nauczyłem się na wakacjach, nie mając dostępu do internetu. Wziąłem ze sobą książkę (nomen omen, darmowy dodatek do gazety) i starego, niewydajnego laptopa. Po dwóch tygodniach ucząc się wieczorami w pokoju hotelowym po godzinę/dwie dziennie napisałem swój pierwszy projekt w tym języku. Nie miałem dwóch monitorów, świecących klawiatur, czy wydajnego sprzętu. Nie miałem nawet internetu, a książka była w wydaniu papierowym, więc nie było “CTRL + F” – dało się.

Podejrzewam więc, że Ty, mając np. smartfona, czy nawet papierową książkę, oraz przede wszystkim odrobinę chęci — prędzej czy później będziesz w stanie nauczyć się programowania.

Pamiętaj jednak, by nie zapominać o praktyce. W przypadku programowania, sama teoria bez przelewania jej raz na jakiś czas na kod, może szybko wyparować z głowy.

2. Sprawdź, na co niepotrzebnie tracisz czas

Być może pracujesz na dwa etaty i samotnie wychowujesz trójkę dzieci. Nie jestem tu po to, by Cię oceniać. Możliwe, że faktycznie masz zarąbiście mało czasu.

Ale jeżeli masz czas, by czytać teraz ten wpis, może nie jest aż tak źle?

To, co proponuję Ci zrobić to nagrać cały swój dzień, a przynajmniej tę część, podczas której masz wolny czas. Na komputerze zainstaluj sobie np. RescueTime i następnego dnia podlicz, na co zeszło Ci ile czasu.

W moim przypadku, gdy kiedyś zainstalowałem tę wtyczkę, okazało się, że codziennie spędzam np. ponad godzinę dziennie na Reddicie. Niby lubię przeglądać tę stronę, ale nie jest mi ona niezbędna do życia — gdybym chciał, tę godzinę mógłbym zagospodarować zupełnie inaczej.

Jeżeli Ciebie też za bardzo pochłaniają jakieś serwisy internetowe, możesz zainstalować sobie np. wtyczkę “Block Site” i zablokować do nich dostęp.

Być może i Tobie uda się znaleźć aktywności, które nie są niezbędne i zastąpić je nauką programowania.

3. Nie próbuj zgłębić wszystkiego w jeden dzień

Nauka wymaga cierpliwości. Programowanie to nie jest jazda samochodem — prawdopodobnie nie pojmiesz tego w cztery godziny na tyle, by lepiej lub gorzej być w stanie robić to samodzielnie.

Nie nastawiaj się więc na natychmiastowe efekty, bo nawet jeżeli będziesz uczyć się dwie godziny dziennie, prawdopodobnie nawet po tygodniu czy dwóch, nadal będziesz umieć stosunkowo mało. Nie ma w tym nic złego, chodzi mi tylko i wyłącznie o to, żeby Cię to nie zniechęciło i żebyś się za szybko nie wypalił.

Pod żadnym pozorem nie polecam Ci zmuszania się do programowania. Lepiej ucz się swoim tempem po to, by za szybko nie stracić zapału.

4. Spróbuj zafascynować się programowaniem

Kiedyś, bodajże z ust jakiegoś profesjonalnego sportowca, usłyszałem, że jeżeli coś sprawia Ci frajdę, na pewno znajdziesz na to czas.

Zgadzam się z tym w stu procentach. Pomyśl, oglądasz jakiś serial? Grasz w gry komputerowe? Czytasz książki? A może masz jakiekolwiek inne hobby?

Podejrzewam, że znaczna większość z Was ma przynajmniej jedno i bez większego problemu znajduje na nie choć trochę czasu.

Jeżeli polubicie programowanie, będzie dokładnie tak samo — znajdziecie na to czas mimowolnie, bo będzie sprawiało Wam to przyjemność, a nie będzie jedynie nudną pracą do wykonania, którą będziecie odwlekać w nieskończoność.

Jeżeli nie lubisz programowania:

  1. Być może nie jest to dla Ciebie. Nie każdy jest stworzony do wszystkiego. Osobiście wiem, że fascynująca może być np. medycyna, ale mnie kompletnie to nie kręci — trudno, po prostu nie jest to dla mnie — nie muszę iść w to na siłę, tylko dlatego, że jest to modny i potencjalnie opłacalny kierunek rozwoju.
  2. Możliwe, że zniechęcasz się brakiem widocznych efektów. Jeśli tak jest, czym prędzej zacznij swój pierwszy, prosty projekt (jeśli nie czujesz się na siłach, przerabiaj jakiś istniejący Open Source na odpowiedniej licencji). Nawet jeśli kod będzie fatalny, a projekt pójdzie do śmietnika — czego się nauczysz, to Twoje. A pamiętaj, że nauka na błędach jest bardzo ważna. Tym bardziej że w przypadku programowania tak długo jak kod nie idzie na produkcje — błędy nie są zbyt kosztowne (z reguły nie psujesz żadnych części, ani nie zużywasz drogich materiałów).
  3. Możliwe, że brakuje Ci właściwego otoczenia. Spróbuj poznać się z innymi programistami, np. zacząć udzielać się na różnych forach, czy discordach dla programistów i poznać ludzi o podobnych zainteresowaniach. Gdy ja zaczynałem, żaden z moich kumpli nie programował, przez co nie miałem z kim o tym pogadać. Niemal każdy z nich grał za to w gry komputerowe, więc naturalne jest, że i ja wolałem siąść do wspólnej gry niż do kodu, o którym nawet na koniec dnia nie miałem komu opowiedzieć.

5. Nie zniechęcaj się jeśli masz mało czasu

Zasada jest dość prosta i brutalna.

Masz mało czasu = będziesz robił postępy wolniej.

Nie oznacza to jednak, że nie będziesz robił ich wcale. Będziesz, tylko będzie to przychodziło nieco wolniej, niż by mogło. Kluczem jest to, żeby się nie poddawać.

Postaw sobie za cel np. przerobienie jakiegoś kursu programowania — choćbyś miał robić go pół roku, nie śpiesz się — po prostu zrealizuj cel i nie poddawaj się po drodze.

Mnie programowanie kręciło od 12 roku życia, a swój pierwszy jakkolwiek sensowny kod zacząłem pisać mając jakieś 17 lat. 5 lat zeszło mi na wymówki i wmawianie samemu sobie, że ze względu na szkołę nie mam na to czasu — po szkole musiałem przecież odrabiać zadania domowe (choć zdarzało mi się naprawdę rzadko), no i wypadałoby się zrelaksować np. przy ulubionej grze komputerowej.

O ile jakoś bardzo nie żałuję relaksu, bo on też jest potrzebny, żałuję tego, że nie poświęciłem w tamtym okresie nawet tych 30 minut dziennie na naukę programowania. Przez 5 lat wiedziałem, że jest to coś, co chcę robić w przyszłości, a odmawiałem sobie nauki programowania, twierdząc, że i tak mam na nią zbyt mało czasu, więc “nie warto”.

Gdybym przez 5 lat uczył się programowania po pół godziny dziennie, łącznie przeznaczyłbym na to niemal 1000 godzin — to wystarczająca ilość czasu, by w wieku 17 lat (w którym dopiero zaczynałem uczyć się podstaw) umiał programować już na w miarę zaawansowanym poziomie.

Nie szukaj wymówek. Nawet jeśli masz mało czasu, spróbuj małymi krokami. Choćbyś uczył się mniej niż byś chciał, nawet 10 minut jest lepsze niż 0, a z odpowiednią wytrwałością, prędzej czy później powinieneś dotrzeć do celu.