Czas na powrót serii “Jak się uczę”. Pytaliście i pytaliście, i w końcu jest! Post z materiałami, z których uczyłam się (i przez cały czas uczę) JavaScriptu. Od podstaw po bardziej zaawansowane zagadnienia. JavaScript nadchodzi!
Mała uwaga na początek – podane poniżej źródła dotyczą tzw. Vanilla JS, czyli “zwykłego” JavaScriptu. Nie będę tutaj poruszać tematu bibliotek ani frameworków. Wartych uwagi materiałów do nauki JS jest naprawdę sporo, także podejrzewam, iż to tylko pierwsza część wpisu, możecie wypatrywać kolejnych. Wszystkie dzisiejsze materiały są dostępne za darmo.
Od czego zacząć naukę JavaScriptu? Ja niezmienne polecam codecademy. Ich kursy są naprawdę świetne dla początkujących i pozwalają oswoić się z kodem. Z samego JS super jest kurs Introduction to JavaScript. To właśnie od tego kursu rozpoczęłam naukę JS w ogóle. Miałam też swego czasu wykupioną wersję pro platformy, dzięki czemu mogłam zrobić wszystkie projekty przewidziane w programie tego kursu i byłam naprawdę zadowolona. Więcej o tym, czy warto wykupić wersję pro, poczytacie tutaj.
Co wyróżnia ten kurs? Przede wszystkim fajne jest to, iż robi się faktycznie projekty, które pokazują, do czego można wykorzystać JS. Ja po przerobieniu materiału niejednokrotnie w swoim zakresie odtwarzałam te projekty. Tzn. gdy nie miałam pomysłu, jak mam sobie poćwiczyć kodowanie, szukałam inspiracji w zadaniach z codecademy i starałam się je odtworzyć samodzielnie, już lokalnie na swoim komputerze. Uważam, iż to bardzo fajnie działa na początku nauki, bo zawsze mamy możliwość podejrzenia rozwiązania, a jednocześnie uczymy się, jak samemu rozwiązywać problemy.
Drugi kurs, który polecam dla początkujących, to ten dostępny na FreeCodeCamp. Tutaj uczymy się JS równolegle z HTML i CSS, i to naprawdę fajne połączenie. Bardzo przypadł mi do gustu fakt, iż od razu pracujemy z aplikacją, najpierw robimy do niej kod HTML, potem CSS, a potem dodajemy JS. Dzięki temu widać dokładnie, w jaki sposób pracuje się nad projektem.
Jak już jesteśmy przy FreeCodeCamp, to muszę wspomnieć o kolejnym super kursie! Jeden z twórców FreeCodeCamp udostępnił ten darmowy kurs z podstaw JavaScriptu. Dosłownie wszystko, co powinno się wiedzieć na początek. Jego video ogląda się super, a do tego świetnie tłumaczą podstawowe zagadnienia. jeżeli macie chwilę, a niekoniecznie chcecie czytać o danym zagadnieniu, czasem dobrze jest o nim posłuchać. Plusem jest tez tutaj fakt, iż video są krótkie i mają określone tematy, więc łatwo znaleźć interesujący nad fragment. Listę poruszanych zagadnień znajdziecie w podlinkowanym wcześniej artykule, tak samo jak link do samej playlisty na youtube.
I co dalej? Jak macie ochotę sobie trochę poczytać, koniecznie przejrzyjcie artykuł A re-introduction to JavaScript. Ten artykuł jest świetny także dla osób, które już trochę JS znają. Bo, jak sam tytuł wskazuje, tłumaczy JS raz jeszcze. jeżeli w ogóle lubicie doczytywać więcej o danych tematach, odwiedźcie tę stronę z dokumentacją JS przygotowaną przez Mozillę. Znajdziecie tu wiele przydatnych informacji, które pozwolą Wam poukładać sobie podstawy.
Pozostając w temacie artykułów, polecam mocno tekst 16 JavaScript Concepts JavaScript Professionals Must Know Well. Z tym, iż przestrzegam, iż jest to raczej pozycja dla osób, które już poznały podstawy JS (np. przerobiły wyżej podane tutoriale i zrobiły kilka małych projektów samodzielnie). Ogólnie często zaglądam na stronę JavaScript is Sexy, bo zawsze można znaleźć tam jakieś fajne artykuły i dowiedzieć się czegoś nowego.
Ale oczywiście, najwięcej się uczymy po prostu kodując, dlatego warto pamiętać o tym, by nie popaść w pułapkę czytania dokumentacji. Czyta się fajnie i przyjemnie, ale z programowaniem jest tak, iż trzeba sprawdzić w praktyce, czy naprawdę dane zagadnienia rozumiemy. I tu przychodzi niezastąpione JavaScript30, czyli wyzwanie, w którym mamy do zrobienia 30 małych projektów w JS. Od razu uwaga – projekty te nie należą do najprostszych, ale mają świetnie zrobione instrukcje i wiele można się z nich nauczyć. JavaScript30 to moim zdaniem nie jest najlepszy pomysł dla osoby, która nigdy nie napisała żadnej linijki w JS. Ale dla kogoś, kto przerobił kilka tutoriali i szuka większych wyzwań, będzie idealne.
Fajną alternatywą jest też kurs Practical JavaScript, który zakłada, iż najlepiej jest od razu tłumaczyć zagadnienia faktycznie potrzebne do tworzenia stron. Trafiłam na ten kurs całkiem niedawno i z ciekawości przejrzałam kilka filmów i naprawdę bardzo mi się spodobały.
Praktykować JS można także wybierając ten język w Codewars. Tu również poprzeczka zawieszona jest dość wysoko. Czym jest Codewars? To platforma, która pozwala nam wykonywać zadania w wybranym przez nas języku programowania. Mamy przedstawiony problem i należy go rozwiązać. Zadania mają różny poziom trudności, zaczynamy od najłatwiejszych zdobywając kolejne “kata” (wzorowane na japońskich sztukach walki). Rozwiązania sprawdzane są przez odpowiednio napisane testy, dlatego od razu wiemy, czy nasze propozycje są prawidłowe.
A jak trochę popraktykujemy i trochę już wiemy, warto wrócić do oglądania Tutaj video, za pomocą którego można nauczyć się JS w 30 minut. Oczywiście te 30 minut z przymrużeniem oka, ale świetnie zebrano tu podstawy. Ja czasem lubię sobie obejrzeć video poruszające temat, który niby już znam, żeby sobie przypomnieć szczegóły, które wcześniej mi umknęły i utrwalić to, co wiem.
Jeśli interesują Was bardziej zaawansowane zagadnienia, to odsyłam do kanału na YT, który oglądam nałogowo, głównie rano w drodze do pracy. A jest nim Fun Fun Function. Znajdziecie tu filmy tłumaczące średniozaawansowane i zaawansowane zagadnienia JS. Jest i o programowaniu funkcyjnym, i o ES6, trochę też znajdziecie tu video o samej nauce programowania. Jestem wielką fanką sposobu, w jaki prowadzący tłumaczy bardzo trudne kwestie (i te jego notatki!).
Świetnym sposobem nauki jest też oczywiście samodzielne realizowanie projektów. Wystarczy, iż macie pomysł, usiądziecie do kodu i zaczniecie działać. Czeka Was po drodze na pewno wiele wyzwań, bo praca nad własnym projektem bywa zaskakująca, szczególnie jak jesteście początkujący i pierwszy raz robicie coś zupełnie od zera. Jednak satysfakcja po takim projekcie jest murowana. Jak nie macie swoich pomysłów na aplikacje, warto odtwarzać te, które robiliście podczas jakichś kursów czy tutoriali, jak już wspominałam wyżej.
Zapraszam również do zajrzenia do serii JavaScript: Pierwszy projekt tutaj na blogu. Znajdziecie tam pomysły na pierwszą, prostą aplikację w JS oraz instrukcje i podpowiedzi, jak rozwiązać problemy, które możecie spotkać podczas pisania kodu. Chętnie przejrzę Wasze propozycje rozwiązań i pomogę, wystarczy, iż podeślecie mi link do swojego projektu. Jakiś czas temu organizowałam także wyzwanie z podstaw JS i materiały przez cały czas możecie pobrać tutaj.
A jak uważacie, iż potrzeba Wam jednak trochę większej motywacji i najlepiej będziecie pracować w grupie, która spotyka się regularnie, serdecznie zapraszam na moje warsztaty online. Zapisy na marzec realizowane są i zostało już tylko kilka miejsc. Do wyboru zupełne podstawy JavaScript albo trochę bardziej zaawansowane zagadnienia z JS. Spotykamy się raz w tygodniu na 2 godziny. Podczas pierwszej godziny tłumaczę teorię, podczas drugiej pracujecie nad zadaniami, a ja pomagam, w razie problemów. Czyli jest i dawka materiału do opanowania i dawka motywacji, by od razu nowo zdobytą wiedzę wykorzystać robiąc zadania.
Na sam koniec, tak w ramach motywacyjnego kopa, polecę Wam jeszcze przeczytać artykuł o tym, w jaki sposób szybciej uczyć się JS. Mam nadzieję, iż się Wam spodoba. A teraz nie pozostaje Wam nic innego, jak pouczyć się trochę JavaScriptu, materiałów macie pod dostatkiem. Powodzenia!
Chcesz się czymś podzielić? O coś zapytać? Napisz komentarz pod postem, maila do mnie na joanna@wakeupandcode.pl, wiadomość na fanpage Wake up and Code albo post w grupie Programuj, dziewczyno!