Jak skutecznie uczyć się programowania?
W tym artykule postaram się przelać osobiste przemyślenia dotyczące skutecznej nauki programowania. Poruszę tutaj również wiele istotnych spraw, o których być może jeszcze nie miałeś pojęcia. Jestem pewien, że po przeczytaniu tego wpisu rozszerzysz swój punkt widzenia i przełoży się to bezpośrednio na efektywność Twojej nauki.
To nie jest wpis o tym ile masz spać godzin, czy w jaki sposób dbać o koncentrację. Zakładam, że z Twoją organizacją jest wszystko w porządku i chcesz w najlepszy sposób wykorzystać swój czas przeznaczony na naukę.
Zanim jeszcze powiem co należy, wypada mi się przedstawić. Nazywam się Jurek Kołakowski i kończę właśnie studia informatyczne na jednej z krakowskich uczelni. W zawodzie pracowałem już w dwóch firmach lecz nie wytrzymałem w nich dłużej niż po trzy miesiące. Obecnie rozwijam własne projekty i po ponad 3 latach styczności z branżą IT, czuję że w końcu jestem na tyle dojrzałą osobą by wypowiedzieć się w tym temacie. Szanuję Twój czas dlatego przejdę do meritum.
Od początku… Skutecznie, więc mądrze!
Język.
Skup się, przynajmniej na początku, tylko na jednym języku. Jeżeli nie wiesz na którym to wybierz język, który ma przed sobą przyszłość i jest wykorzystywany w wielu firmach. W tym miejscu ważne jest, żebyś nie tracił czasu na przestarzałe technologie, eksperymentuj. Mogę Ci polecić C#, Javę lub Javascript – kwestia gustu.
Środowisko pracy.
Jest to bardzo istotna kwestia, nowoczesne środowiska pracy ogromnie ułatwiają życie programistom. Posiadają np. wbudowane wtyczki, które sprawdzają wpisywany przez Ciebie kod i pomagają Ci na bieżąco. Oznacza to tyle, że unikniesz wielu błędów, a przede wszystkim zaczniesz szybciej pisać kod i wypracujesz sobie własne mechanizmy pisania.
Wtyczki do środowiska.
Tak samo jak środowisko, wtyczki stanowią istotną rolę. Jeżeli środowisko pracy, w którym piszesz nie udostępnia jakiejś funkcjonalności, poszukaj czy nie ma przypadkiem wtyczki, która to oferuje. Dla przykładu wtyczka może dbać o wizualną poprawność kodu i kolorować nam odpowiednio składnię. Visual Studio Code jest jednym z najbardziej znanych darmowych środowisk i oferuje wiele dostępnych wtyczek.
Frameworki I biblioteki
Wiele osób przed Tobą chciało napisać to co planujesz. Poszperaj w internecie, czy istnieją biblioteki lub frameworki, które będziesz mógł wykorzystać. Nie ma co wymyślać koła na nowo – no chyba, że chcesz sobie poćwiczyć.
W tej chwili powstają nowe technologie, zostają wprowadzane ulepszenia do języków, środowisk, wtyczek. Staraj się być na bieżąco i zapamiętaj, że dobry research to podstawa efektywnej nauki i pracy.
Otoczenie.
Pewnie nie zaskoczę Cię mówiąc, że otoczenie ma ogromny wpływ na podejmowane przez nas decyzje. Według mnie jest to jedna z najważniejszych rzeczy, o którą powinieneś koniecznie zadbać. Otaczaj się ludźmi, którzy też się uczą, którzy rozwiązują te same problemy, rozmawiaj, dyskutuj – jak najwięcej. Jeżeli myślisz o pójściu na studia, to jest to świetny pomysł, który zapewni Ci ten fundament. Natomiast nie twierdze, że nauczysz się na nich samych przydatnych rzeczy i są niezbędne żeby zostać programistą.
Umiem to piszę.
Jest to święta zasada, którą praktykuje od samego początku. Chcesz się nauczyć programowania? To pisz, obojętnie co, uwierz mi. Z czasem jak Twoja wiedza się powiększy, projekty same wpadną Ci do głowy! Wiesz już co robić jak umiesz. A co jak nie umiesz? No też musisz pisać. Ale w googlach.. Ważne jest, żebyś prawidłowo szukał interesujących Cie informacji. Najlepiej wpisuj interesujące Cię frazy po angielsku! W dodatku, możesz w opcjach szukania ograniczyć filtorwanie wyników tylko do ostatniego roku. Otrzymasz najświeższe rozwiązania na konkretne problemy. Wszystkie błędy, które napotkasz na swojej drodze, będą rozwiązane na portalach programistycznych. Wszystkie.
Ucz się od najlepszych!
Internet
Gdzie możesz zdobywać wiedzę? Wszędzie! W internecie jest mnóstwo darmowych materiałów, wystarczy wpisać interesujące Cie zagadnienie. Oczywiście za porządnie skondensowaną wiedzę, trzeba czasem słono zapłacić, ale w co najlepiej zainwestować jak nie w siebie? Osobiście wydałem sporo pieniędzy na rozwój i nie żałuję ani złotówki.
Meet-up’y i konferencje
Jak jesteś z większego miasta to na 100% uczelnie organizują darmowe meet-up’y i konferencje. Warto żebyś się na nich pojawiał. Gwarantuje Ci, że poznasz tam bardzo wartościowe osoby, dzięki którym staniesz wkrótce poprzeczkę wyżej.
Ucz innych!
Podziel się zdobytą wiedzą z innymi! Jest to najlepszy sposób na utrwalenie i dogłębne zrozumienie zagadnień. Wytłumacz znajomym jak coś działa, załóż bloga i publikuj posty, pokaż światu swoje wypociny, daj się ocenić, dyskutuj, pomagaj innym w rozwiązywaniu ich problemów.
Wiem, że nic nie wiem – Nie lękajcie się!
Na koniec chciałbym podzielić się z Wami pewną refleksją. “Wiem, że nic nie wiem.” Stale będziesz doznawał tego uczucia, szczególnie na początku. Jest masa rzeczy, które będziesz musiał zrozumieć, za którymi stoją następne i następne. Z każdym rokiem wchodzi na rynek wiele kolejnych rzeczy, które wypadałoby opanować. Mówię Ci o tym ponieważ nie możesz się tego przestraszyć, musisz się do tego przyzwyczaić, bo to uczucie będzie Ci towarzyszyć przez całą karierę programistyczną. A jest to nic innego jak oznaka Twojego rozwoju.
Ciesze się, że przeczytałeś do końca ten material, jestem pewien, że to dobrze zainwestowane pięć minut.
Bardzo dobrze napisane!
Zwłaszcza nauka innych wpływa pozytywnie na nasz własny rozwój 🙂
Pozdrawiam, Mateusz.
Bardzo zwięźle i konkretnie napisane! Przede wszystkim warto zwrócić uwagę na cierpliwość, ciągłą naukę i próbowanie. Bez próbowania i ciągłych ćwiczeń pisania kodu nie ma możliwości rozwoju programistycznego. Tak samo trzeba się zaprzyjaźnić z StackOverflow. W kwestii programowania w kontekście webowym dodałbym jeszcze konieczność minimalnej wiedzy o SEO, bo to się może przydać. Pozdrawiam.