Kadangi programavimo mokausi jau apie 7 mėnesius, per šį laiką esu išbandžiusi nemažai įvairių mokymosi resursų. Kai kurie iš jų išties pasirodė labai naudingi, o kai kurie tiesiog neverti pastangų, lėšų ir laiko.

Pirmiausia, kaip jau minėjau savo pačiame pirmame įraše, įvadą į front-end programavimą (HTML, CSS ir JS pagrindai) gavau iš nuostabiosios Khan Academy. Kadangi kursai skirti vaikams, man, kaip visiškai naujokei, niekada nemačiusiai jokio kodo, tai buvo tikrai puiki ir neišgąsdinanti įžanga. Juo labiau, kad kursas visiškai nemokamas.

Konkretūs kursai, kuriuos čia praėjau:

  1. Intro to HTML/CSS: Making webpages
  2. HTML/JS: Making webpages interactive
  3. Intro to JS: Drawing & Animation

“Drawing & Animation” kursas galbūt aktualesnis tiems, kas nori kurti žaidimus. Bet man jis nepakenkė.

Kuo dar mane sužavėjo šie Khan Academy kursai, yra tai, jog juos vedė moterys. Netgi dvi skirtingos! Tai labai gudrus sprendimas, manau, siekiant pritraukti daugiau merginų į šią sritį.

Po šios gana švelnios įžangos ėmiau mokytis CSS ir giliai. Manau, jog front-endui nepakanka gerai mokėti boostrap, o visgi reikia sugebėti sukoduoti puslapį vien tik su CSS naudojantis ir pažangesnėmis technikomis, tokiomis kaip flexbox bei sass.

Kaip jau rašiau anksčiau, CSS išmokau perskaičiusi ir padariusi visus pratimus 600 psl. knygoje - “CSS: The Missing Manual” (David Saywer McFarland). Tai puiki knyga, joje taip pat susipažinsite su pagrindiniais HTML5 elementais.

Šio autoriaus pakerėta nusprendžiau įsigyti kitą jo knygą, skirtą JavaScript ir jQuery (“JavaScript & jQuery: The Missing Manual”). Deja, šiuo kūriniu likau gana nusivylusi, ir iki dabar ši knyga atversta laukia mano dėmesio. Aš norėjau kur kas gilesnės įžangos į JavaScript programavimo kalbą, tačiau tam skirtas tik nedidelis knygos skyrius. Likusios jos dalys yra apie jQuery biblioteką. Nemanau, jog mokytis pirmiausia programavimo kalbos bibliotekos, o ne pačios kalbos, yra tinkamas kelias į nušvitimą.

jQuery yra viena iš populiariausių bibliotekų, ir aš net neabejoju, jog man jos dažnai prireiks, pavyzdžiui, koduojant puslapio navigaciją, tačiau aš nenoriu, jog mano karjera baigtųsi ties navigacijos kūrimu. Todėl ėmiau ieškoti kitų resursų JavaScript kalbai.

Vienas iš dažnai rekomenduojamų yra Free Code Camp (FCC) puslapis. Jo idėja gana paprasta: atlieki visas užduotis, padarai projektus ir gauni sertifikatą. Gavus visus sertifikatus (front-end, back-end ir dar keletas kitų), gali prisidėti prie “open source” projektų. FCC nemokamai daro projektus nevyriausybinėms organizacijoms. Taigi, prisidėdama prie jų tu ne tik renki karmos taškus, bet ir mokaisi įvairių dalykų, įskaitant ir darbą komandoje.

Tačiau iš savo patirties galiu pasakyti, kad FCC nėra tinkamiausia vieta mokytis. Kadangi tai yra nemokamas resursas, na negali iš jo tikėtis kaži ko. Man labai trūko paties mokymosi ir aiškinimo. Čia nerasi jokių video įrašų ar išsamių komentarų ties sudėtingomis vietomis. Tikimasi, kad šiuos dalykus pati kažkaip išsiaiškinsi. Be to, daug užduočių yra tiesiog algoritmų rašymas, bet realiai programavimas nėra vien tik algoritmų rašymas.

Programavimas yra menas. Kaip sudėlioti gražiai kodą, kaip padaryti jį įskaitomą ir palaikomą. To FCC neišmoksi. Bet, “on the bright side”, jų slack pokalbių kambariuose visada rasi pagalbos. Žmonės ten labai geranoriški ir padės, jei būsi labai užstrigusi. Tai labai vertingas dalykas, jei neturi absoliučiai kieno pasiklausti.

Nusprendusi, kad rašydama atskirus algoritmus aš neišmoksiu, kaip sukurti programą, vėl leidausi į paieškas. Vienoje puikioje naujokų grupėje, apie kurią dar pažadu parašyti, man rekomendavo du kursus: Practical JavaScript bei vieną iš Udemy kursų.

“Practical JavaScript” man labai patiko, kadangi ten iškart mokaisi kurti programėlę ir būtent to proceso metu paaiškinami konceptai. Šio kurso dėka įgavau aiškesnį supratimą, kaip apskritai atrodo programos kūrimas, nuo ko pradėti, kokius žingsius daryti. Be to, tai nemokamas kursas. Baigus jį jau būni užsikabinus ir nori daugiau, todėl užsiregistravau ir į mokamą. Ten šiuo metu mokausi, kaip skaityti kodą. Manau, jog tai yra ypač reikalingas dalykas, nes tikrai realiame programavimo pasaulyje teks dirbti prie jau egzistuojančių programų. Taip pat mokomės “Test Driven Development” - kaip rašyti testus programuojant. Buvau informuota, kad bent jau Lietuvoje tokia praktika front-ende nėra taikoma (mat, kurso dėstytojas dirbo Google, o ten, neabejoju, taikoma geriausia praktika). Bet kuriuo atveju, suprasti, kaip veikia TDD man tikrai nepakenks.

Na, o kitas rekomenduotas kursas buvo Udemy “The Web Developer Bootcamp” (autorius - Colt Steele).
Jo įveikiau jau apie trečdalį, ir iki šiol beveik viskas man buvo jau žinoma (tas geras jausmas!). Tačiau ir čia sužinojau naujų dalykų. Be to, tikiuosi prisiliesti truputį ir prie back-endo, kad bent jau žinočiau, kaip tai veikia.

Tai tokia buvo mano ligšiolinė kelionė į nušvitimą. Dar esu baisiai toli iki jo. O gal ir tu radai kokių naudingų resursų, kuriais norėtum pasidalinti? Pranešk komentaruose!

Na ir kaip neužbaigsi tokio straipsnio paveiksliuku? :)

False joke