Ta jedna ZASADA pozwoli Ci wybierać PRZYDATNE materiały!
Postanowiłeś zostać programistą. Wiesz nawet jakie technologie Cię interesują. Zostało tylko zebrać źródła wiedzy i można ruszać do pracy! Ok, ale jak odróżnić przydatne materiały od tych nieprzydatnych na początku nauki? Powiem Ci tą jedną zasadę, która umożliwi szybkie zweryfikowanie wartości kursu w przypadku kiedy musisz go szukać bez pomocy osoby doświadczonej.
Start ma swoje prawa
W przypadku kiedy dopiero rozpoczynasz karierę programisty na pewno nie myślisz o poznaniu każdej zawiłości technologii, która Cię zainteresowała. Na początku musisz przede wszystkim zacząć programować. Jest to sytuacja mocno odmienna od tej kiedy szlifujesz swoją wiedzę dążąc do mistrzostwa danej technologii czy języka.
Kiedy osiągasz szczyt wiedzy w danej dziedzinie jesteś nastawiony na znajdowanie kruczków i rozplątywanie zawiłości struktury wybranych rozwiązań. Dzięki temu jesteś w stanie świadomie dobierać rozwiązania do problemu i zawsze będą to rozwiązania najlepiej dopasowane. Ale kiedy jesteś początkującym to nie zajmujesz się dobieraniem najbardziej optymalnych i idealnie pasujących rozwiązań. W pracy będzie się tym zajmował doświadczony kolega. Ty masz po prostu umieć korzystać z tego co jest. A żeby umieć z czegoś korzystać musisz zacząć z tego korzystać!
Jedna zasada aby zdobyć przydatne materiały
Jaka jest więc ta jedna zasada, która pozwoli Ci odrzucić treści, które na początku nie będą potrzebne? Jest to zasada szukania praktycznych materiałów. Tak jak wspomniałem wcześniej, zaczynając naukę programowania musisz przede wszystkim programować. Dlatego też powinieneś wybierać treści, które są na to programowanie nastawione. Fajnie, że jakiś artykuł przez 4 strony opisuje historię języka i teorię przechowywania wartości liczbowych. Tylko po co taka wiedza w momencie kiedy nie wiesz czy w ogóle ten język czy framework to coś w czym dobrze Ci się pracuje albo co potrafił będziesz użyć? Sprawami teoretycznymi zajmiesz się w następnej kolejności, bo one też są istotne.
Dlatego kiedy po wpisaniu w Google szukanej frazy przeglądasz kursy i artykuły patrz na jedno – czy autor pokazuje omawianą wiedzę na działającym, praktycznym przykładzie. Można opisać całą strukturę frameworka webowego i nie wspomnieć jak całość uruchomić. Taka treść na początku w ogóle Ci się nie przyda. Zwłaszcza w momencie kiedy dopiero pół godziny temu zacząłeś się przebranżawiać, a za tydzień masz już pierwszą rozmowę o nową pracę. Praca na przykładach, przechodzenie krok po kroku wg instrukcji i dopiero po uruchomieniu tego co wg autora jest poprawne modyfikowanie kodu wedle własnej inwencji, to jest działanie nastawione na efektywne wejście w świat programowania.
Jeśli spojrzysz na aktualne strony twórców różnych bibliotek i frameworków to znajdziesz tam prawie na pewno część „Getting started”. Kiedy ją otworzysz to zawsze, ZAWSZE, zobaczysz tam opis uruchomienia prostego przykładu w praktyce. Zawsze będzie to praktyczne przedstawienie podstaw danej technologii. Takie podejście po prostu działa i jest najskuteczniejsze.
„Ale przecież…”
Możesz powiedzieć „ale przecież nawet jak ktoś pokazuje działający program to może mówić bzdury”. Faktycznie temat może być nadal omawiany po łebkach albo nieaktualny. Jednak jeśli ktoś w kursie pokazuje działającą aplikację to znaczy, że to co mówi musi opierać się na faktycznych mechanizmach dostępnych w jakimś języku czy frameworku. Nie da się, przygotowując samemu działające przykłady, użyć czegoś co nie działa. Nawet jeśli będzie to podejście łamiące jakieś dobre praktyki albo odnoszące się do starszych wersji bibliotek to nie jest to coś przez co zmarnujesz czas. Poznasz po prostu jedną z metod rozwiązania jakiegoś problemu.
Przykładowo Microsoft często w swoich materiałach dotyczących ASP.NET pobiera encje bezpośrednio w kontrolerze albo korzysta z ViewBaga, który raczej nie powinien być nigdy używany. Czy w takim razie takie materiały są bezwartościowe bo korzystają ze złych praktyk? Nie, te materiały pozwalają w prosty sposób poznać podstawy danej technologii upraszczając mało istotne w tym momencie kwestie. Tak jak mówiłem, na początku nie będziesz się skupiał na najbardziej optymalnych i „czystych” rozwiązaniach. Na to przyjdzie czas.
Odrocz, nie pomiń
Piszę tutaj, żeby omijać materiały nastawione na teorię. Ale w żadnym wypadku nie wolno Ci tego odebrać jako zachęty do pomijania teorii! Teoria jest bardzo ważna. Ale za chwilę. Nie teraz. Najpierw uruchom przykład, potem zrozum co się w nim dzieje pod spodem. Kiedy człowiek zobaczy, że coś działa to ma ochotę poznać dlaczego tak jest. Jeśli człowiek czyta jak coś działa ale nie widzi tego działania to zaczyna się nudzić tematem. Ale jeśli człowiek zobaczy, że coś działa i całkowicie zignoruje dlaczego tak jest to z początkującego przejdzie to zwykłego klepacza, którego łatwo zastąpić. Pamiętaj o tym – najpierw praktyka, potem teoria, ale zawsze oba te elementy.
Przydatne materiały możesz znaleźć samodzielnie. Ważne jest tylko, żeby wiedzieć jak ich szukać. Powodzenia!
Pingback: Developer czyli ODPOWIEDZIALNY programista - Marek Zając
Pingback: 3 DARMOWE źródła WIEDZY dla programisty - Marek Zając