Nauka programowania i bycie programistą | Witek Pruchnicki

Zanim zaczniesz programować

Jak uczyć się programowania efektywniej ?

coding for kids 4 1

Nauka programowania ostatnimi czasy jest bardzo modna, każdy chce zostać programistą słysząc o ich świetnych zarobkach i pracy zdalnej. Ja już nim zostałem i przeszedłem przez proces nauki podstaw, które dały mi możliwość znalezienia pracy lecz cały czas uczę się nowych rzeczy bo w tej branży jeśli się nie rozwijasz to się cofasz w rozwoju. 

Wysokie zapotrzebowanie na programistów atrakcyjne warunki pracy sprawiają, że wiele osób chce się przebranżowić i zostać programistami. Gdy wchodzimy do nowej branży to jesteśmy kompletnie zieleni i nie wiemy od czego zacząć. 

Zastanawiasz się czy programowanie jest dla Ciebie, chcesz się uczyć ale nie wiesz od czego zacząć ? 

W tym wpisie podzielę się moimi spostrzeżeniami o efektywnej nauce programowania. Gdybym to wszystko wiedział na początku to wykorzystałbym czas przeznaczony na naukę znacznie efektywniej.  

Chcę żebyś Ty mógł wyciągnąć wnioski z mojego procesu nauki i nie popełniał tych samych błędów, bo po co ? 😉

Pamiętaj, że programowanie to zbiór umiejętności, których zdobycie wymaga dużo czasu i praktyki. Niestety nie ma dróg na skróty. Istnieje jednak wiele przydatnych wskazówek, które mogą znacznie przyspieszyć twoje postępy.

Nie próbuj uczyć się wszystkiego- wybierz to co Cię interesuje najbardziej  

To największy problem, z jakim spotyka się większość początkujących. Na początku wydaje nam się, że jest tyle interesującej wiedzy i skaczemy z kwiatka na kwiatek, nie mogąc się zdecydować, w którym kierunku iść.

Próba uczenia się wielu rzeczy na raz to po prostu strata czasu, która zmniejsza Twoją produktywność. Zamiast tego wybierz coś, czego chcesz się nauczyć i skup się na tym.

Wiem, że na początku trudno jest zdecydować ale dlatego napisałem wpis wyjaśniający czym jest język programowania oraz moje wskazówki na temat wyboru języka programowania 😉

Na przykład, jeśli chcesz zostać programistą JavaScript to nie musisz uczyć się Pythona.  W miarę rozwoju zawodowego, możesz stwierdzić, że chcesz opanować inny język. Nic straconego, to że do tej pory uczyłeś się innego języka na pewno nie pójdzie na marne bo podstawy w wielu językach są bardzo podobne a zrozumienie pewnych koncepcji pozwoli Ci łatwiej przeskoczyć na inny język. 

Natomiast, jeśli chcesz jak najszybciej zostać profesjonalnym twórcą stron internetowych i aplikacji webowych, skup się tylko na nauce Frontendu czyli HTML CSS, JavaScript i wszystkich technologii towarzyszących tej sferze świata IT .

Skupianie się na jednej rzeczy na raz trzyma Cię z dala od tzw. rozpraszajek i maksymalizuje szybkość i jakość uczenia się.

Solidnie przerób podstawy, dopiero po tym idź dalej 

Tak samo jak  w każdej dziedzinie, dobre zrozumienie podstaw ma kluczowe znaczenie dla osiągnięcia długoterminowego sukcesu. Informacje, których uczysz się na początku swojej  przygody z nauką programowania, pozwolą Ci zrozumieć logikę i zależności bardziej skomplikowanych tematów w dalszej nauce.

 Jeśli solidnie nie przerobisz podstaw, to w przyszłości w pewnym momencie się zablokujesz bo nie będziesz wiedział dlaczego kod jest wykonywany w taki a nie inny sposób i stracisz czas bo będziesz musiał cofnąć się do postaw. 

Aby zrozumieć zaawansowane koncepcje programowania, musisz bardzo dobrze znać podstawy programowania. Jeśli w dalszym rozwoju będziesz popełniać ten sam błąd, to prędzej czy później będziesz musiał wrócić do podstaw co tylko spowoduje większą frustrację.  

Ja mam taki charakter, że lubię mieć wszystko wyjaśnione od podstaw, krok po kroku ponieważ nie raz musiałem się cofać bo czegoś nie rozumiałem i strasznie mnie to wkurzało. Dlatego od pewnego czasu, gdy zabieram się za coś nowego, szukam informacji dla kompletnie początkujących i postępuję zgodnie z tutorialem. 

Tak więc, nawet jeśli na początku nauki podstawy wydają się nudne lub nieistotne, to niestety nie masz racji, są one kluczowe dla dalszego rozwoju i przebrnięcie przez nie da Ci sukces w przyszłości.

Przyspiesz naukę przez praktykę

Im szybciej zaczniesz pisać kod i wykonywać zadania praktycznie, tym szybciej przyswoisz tę wiedzę. 

Nawet jeśli przebrniesz przez cały odcinek tutorialu lub przeczytasz pół dokumentacji i wydaje Ci się, że już wszystko wiesz i rozumiesz to jesteś w błędzie. Gdybym poprosił Cię o napisanie tego kodu i uruchomienie na podstawie jakiś wytycznych to mogę śmiało powiedzieć, że dla większości osób będzie to niewykonalne. 

Jak to mówią amerykanie ;D use it or lose it- przy nauce programowania sprawdza się to w 100 %. 

 Ważne jest abyś uczył się poprzez praktykę a nie bierne oglądanie materiałów lub czytanie tekstu. Częstym błędem popełnianym przez początkujących podczas nauki programowania jest po prostu czytanie artykułów, przeglądanie kodu napisanego przez kogoś lub samo oglądanie tutoriali, nawet bez papugowania po prowadzącym i przepisywania kodu samemu. 

Mówi się o takim zjawisku jak “tutorial hell” w skrócie oznacza to przerabianie kolejnych tutoriali i wydaje nam się, że umiemy coraz więcej bo idziemy zgodnie z agendą kursu i zaliczamy kolejne lekcje. W praktyce to tylko powierzchowne zapoznanie się z danym zagadnieniem i dopóki nie napiszesz kodu samodzielnie to nie będziesz w stanie w pełni zrozumieć danego tematu- zwłaszcza na początku nauki. 

Łatwo jest przeczytać o pętlach, zmiennych, funkcjach, obiektach ale prawdziwe programowanie nie działa w taki sposób. Nie ma dróg na skróty,  musisz przysłowiowo ubrudzić sobie ręce podczas kodowania i regularnie je ćwiczyć aby zostać programistą.

Jeśli naprawdę chcesz nauczyć się programować, musisz zrobić coś więcej niż tylko przeczytać książkę i zrobić kilka notatek — Twoje zadanie to wdrożenie w życie informacji, których się uczysz. Możesz być zaskoczony, jak coś,  o czym czytasz, może wydawać się bardzo proste, dopóki nie spróbujesz napisać tego w edytorze kodu i uruchomić tak, żeby działało.

Kolejne słynne amerykańskie przysłowie “ practice makes perfect “- Kiedy uczysz się przez działanie, wiedza z dużo większym prawdopodobieństwem zostanie z Tobą na dłużej. Jedynym sposobem na nauczenie się programowania jest pisanie kodu.

Naucz się szukania informacji i rozwiązań na napotkane problemy 

Umiejętności proszenia o pomoc będziesz potrzebować przez całe życie, nie tylko w karierze programisty. Faktem jest, że nie dowiesz się wszystkiego, zwłaszcza gdy dopiero zaczynasz.

Najszybszym i najłatwiejszym sposobem zdobycia umiejętności i niezbędnej wiedzy jest zapytanie tych, którzy znają odpowiedzi. Gdy sam spróbujesz znaleźć odpowiedź na swoje pytanie to nie stój w miejscu godzinę i nie zastanawiaj się, tylko koniecznie zapytaj kogoś innego.

Zastosuj na przykład taką metodę, że jeśli przez 10 minut nie potrafisz samemu rozwiązać jakiegoś problemu to zaczynasz szukać odpowiedzi tam gdzie jest największe prawdopodobieństwo sukcesu, czyli w Internecie. Na 90 % ktoś przed Tobą miał taki sam problem i uzyskał pomoc, więc ty skorzystaj z tego. 

Niezależnie od tego, czy to online, czy osobiście, ignoruj hejterów i nie bój się prosić o pomoc, ponieważ każdy programista był wcześniej na twoim miejscu. Poza tym większość programistów uwielbia to robić, a więc równie chętnie dzielą się swoją wiedzą z innymi. 

Wiadomo, że nie ma co przesadzać z tymi pytaniami 😉 Zacznij od samodzielnego poszukiwania rozwiązania – Stack Overlfow i Wujek Google to kopalnie wiedzy, jeśli chodzi o pomoc w nauce programowania.

Naucz się programować poprzez ręczne pisanie kodu 

Może się to wydawać starą szkołą, ale jeśli naprawdę chcesz odnieść sukces w nauce programowania, czyli zdobyć pierwszą pracę na stanowisku junior developera to ręczna nauka kodowania jest jedną z ważnych umiejętności. 

Kiedy zaczniesz się uczyć programowania będziesz zastanawiać się, dlaczego powinienem pisać kod ręcznie zamiast użyć do tego komputera, przecież będę programował na komputerze? 

To czasochłonny proces, dodatkowo nie da się uruchomić i sprawdzić kodu na papierze, a jeśli rzeczywiście muszę coś zaimplementować w swoim kodzie, to po co mam używać długopisu  i papieru? 

Jednym z najważniejszych powodów są rozmowy rekrutacyjne. Kiedy będziesz ubiegać się o pracę jako programista, to w niektórych firmach przez większość czasu rozmowy technicznej będziesz proszony o pisanie kodu za pomocą kartki i długopisu lub być może będziesz musiał użyć tablicy. 

Ręczne kodowanie jest techniką staromodną, ​​ale w rzeczywistości wiąże się z testem biegłości programisty. Ręczne kodowanie może dać ci jasne zrozumienie składni i algorytmów, tworzysz głębsze połączenie w swoim mózgu. Nauka programowania w ten sposób ułatwi i przyśpieszy późniejszą pracę.

Szukaj różnych źródeł wiedzy, nie polegaj tylko na jednym 

Nie raz miałem tak podczas nauki, że konkretny prowadzący kurs całkowicie do mnie nie przemawiał, nic z tego nie rozumiałem i tylko się wkurzałem. Postanowiłem poszukać innych źródeł wiedzy na ten sam temat i dzięki temu szybko zrozumiałem o co chodzi. Niby ten sam temat i zagadnienie a inny przekaz i nagle wszystko było już jasne

Nie polegaj tylko na jednym kursie, szukaj alternatywnych źródeł internetowych, aby nauczyć się tej samej treści. Każdy z nas uczy się inaczej i tylko dlatego, że nie jesteśmy w stanie zrozumieć przekazu z jednego źródła, nie oznacza, że jest coś z Tobą nie tak. 

Zasoby do nauki programowania są nieograniczone i zawsze dostępne są samouczki lub artykuły na blogach, które sprawią, że dany materiał będzie przedstawiony w jasny i zrozumiały dla Ciebie sposób. .

Niezależnie od tego, czy zdecydujesz się zapisać na kurs programistyczny, czy po prostu chcesz zapoznać się z bezpłatnymi samouczkami na YouTube lub innymi materiałami video to możesz nauczyć się wiele za darmo, po prostu przechodząc na różne strony. 

Jedną z głównych korzyści płynących z uczenia się w ten sposób jest to, że możesz znaleźć potrzebną Ci wiedzę i materiały w wielu różnych formach przekazu i wyjaśnione przez różnych twórców. 

Dlatego jeśli jedno wyjaśnienie nie ma dla Ciebie sensu, zawsze możesz znaleźć inne, gdzieś indziej.

Naucz się korzystać z debuggera

Popełnianie błędów najogólniej mówiąc jest bardzo powszechne i całkowicie akceptowalne. Na początku znajdziesz wiele błędów w swoim kodzie, więc dobrze jest korzystać z debuggerów, aby znaleźć źródło problemu, czyli miejsce w kodzie gdzie występuje błąd.

Zobaczysz, że szybkie sprawdzenie przy prostych błędach działa ale często nawet bardzo prosty błąd możesz przeoczyć. Z pomocą debuggera zaoszczędzisz dużo czasu bo będziesz mógł przejść linijka po linijce i w końcu odnaleźć gdzie coś nie gra.

Już od początku naucz się korzystać z dobrych technik debugowania lub użyj narzędzi do sprawdzenia swojego fragmentu kodu.

Debugowanie może być jednym z najbardziej frustrujących procesów podczas nauki kodowania bo znalezienie błędu może zająć wiele godzin i łatwo stracić poczucie czasu, gdy próbujesz naprawić problem. Może to prowadzić do uczucia przytłoczenia lub zestresowania, więc musisz nauczyć się, kiedy wrzucić na luz i zrobić sobie przerwę. Spróbuj zrobić coś, co sprawia Ci przyjemność, na  chwilę oderwać się od tego. Wykonanie tego kroku pozwoli ci oczyścić umysł na tyle, aby wrócić do debugowania z nową siłą i energią.

Podsumowanie

Pomimo tych 7 wskazówek, najważniejszym składnikiem do efektywnej nauki programowania jest nieustająca motywacja i konsekwentne dążenie do celu. 

Musisz przygotować się na to, że często nie będzie lekko bo nauka czegokolwiek  wymaga ciężkiej pracy i czasu. A jeśli choć przez chwilę będziesz miał wątpliwości czy to wszystko ma sens, czy poradzisz sobie to pamiętaj że każdy programista był kiedyś na Twoim miejscu i też zaczynał od zera 😉 

Bez względu na to, jak postanowiłeś się uczyć, czy to na studiach, czy na bootcampie programistycznym, jedyną przeszkodą na drodze do sukcesu są twoje myśli o tym, że sobie nie poradzisz. Jeśli z nimi wygrasz i nie zatrzymasz się w drodze do zdobycia pierwszej pracy to sukces gwarantowany. 

Uważam, że branża IT jak i bycie programistą ma wiele zalet i dla mnie właśnie perspektywa rozwoju i ogrom możliwości są najważniejsze. 

Jeśli masz pytania lub wątpliwości to śmiało pisz 😉

Tymczasem pozdrawiam pracując zdalnie znad morza 😉

Z tej samej kategorii
Zanim zaczniesz programować

Jak przygotować środowisko do nauki programowania ?

Zanim zaczniesz programować

Nauka Programowania, jak zacząć od zera ?

Zanim zaczniesz programować

Co to jest język programowania

Zanim zaczniesz programować

Programowanie - Czym jest ?