@Genesis
Ako ti se da citati sto cu sve sada napisati, moja preporuka je kava jer bi htio napraviti kratak pregled nekih prethodno-napisanih stvari. Osvrnuo bih se na tri stvari:
- konkretan tecaj koji si uzeo,
- odredene smjernice kako uci u programiranje i razvoj,
- buduce poslovne prilike.
1. Tecaj
Nasao sam najpopularniji tecaj Angele Yu na Udemyju pa pretpostavljam da o istome govorimo (The Complete 2023 Web Development Bootcamp). Prosao sam kroz poglavlja, cisto da vidim cime se tocno bavi i potvrdilo je ono sto me najvise zabrinjavalo pa idem redom.
Prva stvar koja mi je upala u oko, nakon sto sam pogledao siroki spektar obradenih tema, je samo trajanje – 62h za toliko sadrzaja je poprilicno malo. Kada na to nadodam da je rijec o 16 projekata koje se prezentira kao materijal za portfelj prilikom prijave za juniorsku poziciju (naglasavam juniorsku, ne pripravnicku), dobivam dojam da je rijec o kuharici koja vrlo povrsno navodi na kodiranje po spranci, a ne konkretno razvijanje nekog projekta.
Zatim su me zabrinule same teme. Mislim da je frontend dobar pocetak za potpune pocetnike. Pritom prvenstveno mislim na HTML/CSS i osnove JavaScripta te nesto jQueryja (kojeg se dan-danas jezim, ali to je za neki drugi razgovor). Rijec je o tehnologijama u kojima nema specificnih inzenjerskih principa koji se prvo moraju razumijeti, a onda primijeniti. Kasnije se tek nadodaju razlicite biblioteke ili frameworkovi poput Reacta, Angulara ili Vuea.
Problem se javlja u prelasku na backend. Ako netko nema iskustva u programiranju, potrebno je prvo proci kroz osnovne principe programiranja kako bi se u nekoga usadio inzenjerski nacin razmisljanja. Za to treba dosta vremena i truda kako bi se razvio dobar smisao za logicko razmisljanje. Nije rijec ni o kakvom cudu za najinteligentnije na svijetu, samo je rijec o nacinu razmisljanja koji, kao i svaki, ne mozes dobiti bez ulozenog vremena. Nadodati odmah na to pricu o REST-u ili API pozivima, a kamoli tek o bazama podataka koje mogu komotno biti jos jedan tecaj od 62h kako bi se ispravno pohvatale osnove i principi ispravnog dizajna, stvara jako veliku mogucnost kontraproduktivnom ucenju – onome koje uci korake, ne obrasce i razloge te to radi povrsno, bez razumijevanja.
U sve to se ubacuje i React.js koji, ponovno, moze biti zaseban tecaj od toliko sati da se pohvataju sve osnove rada s bibliotekom. Tocka na i je prica o blockchainu i NFT-ima koji ostavljaju dojam niceg vise nego bacanje buzzwordova da se nekoga privuce na tecaj.
2. Smjernice na temelju gore-napisanog
Shvacam da ovo sto sam napisao za sada izgleda vrlo demotivirajuce. Medutim, smatram da je potrebno takvo sto izloziti crno na bijelo kako bi se mogli fokusirati na to da izvuces cim vise iz tog tecaja.
Moja preporuka bi bila da se za pocetak fokusiras na frontend. Savladaj HTML i CSS te kreni uciti JavaScript. Osobno mi se JavaScript - The Complete Guide 2024 (Beginner + Advanced), tecaj koji je napravio Maximillian Schwarzüller, odlican predavac i poznavatelj frontenda, cini kao odlican pocetak. Osim ucenja JavaScripta, upoznat ces se i s osnovnim pristupom programerskoj logici te konceptima poput objektno-orijentiranog programiranja.
Nakon toga se mozes posvetiti jednoj od sljedece tri tehnologije: React.js, Angular, Vue.js. Za sva tri mozes naci predavanja od istog covjeka, Maximilliana Schwarzüllera, s time da bih osobno preporucio da krenes od Reacta, cisto jer je jednostavniji od potonja dva.
Na sve to nadodaj osnovno znanje Gita (to je nesto sto ces sigurno i kroz tecajeve proci i poprilicno je lagano za razumijeti jer se sve da vizualizirati) i imas spremno sve za razvoj prvog frontend projekta.
Tek onda bih preporucio da se bacis na backend. Najprakticnije ce vrlo vjerojatno biti ono sto je i u tecaju Angele Yu – Node.js – no to ce trebati ici u puno vece detalje od onoga sto mozes dobiti u tih nekoliko sati. Kao prvo, prolazak kroz osnove Nodea, zatim razumijevanje toga sto je API, sto je REST, kako primijeniti sve to na Nodeu i sl. Paralelno s time ces raditi i baze podataka. Najvjerojatnije ces zavrsiti na PostgreSQL-u jer je jedan od najkoristenijih DBMS-a. Na temelju njega ces nauciti osnove SQL-a, kako dizajnirati bazu, kako normalizirati bazu, kako raditi optimizacije u upitima, kako zakljucati bazu i mrziti se, kako otkljucati bazu i voljeti se i jos mnogo toga.
Ovo sto Angela Yu radi je jako povrsan pregled i mislim da nije dovoljan cak ni da te usmjeri u specificnom smjeru jer te baca u more i more informacija koje treba upiti i potom se odluciti za sto se opredijeliti bez da se zna dovoljno da se donese informirana odluka. Stoga bih preporucio da krenes od njenog frontenda i potom trazis specijalizirane tecajeve za isti prije nego sto uopce nastavis s njenim tecajem.
Vizualiziraj si da nije poanta imati projekte, vec znati ih napraviti.
3. Buducnost u struci
Na kraju bih se osvrnuo na potencijal za zaposljavanje, pogotovo jer si i sam spomenuo buduci rad od doma. Kao prvo, ljudi poput tebe, koji pokusavaju samouko uci u struku, ima stvarno jako puno i automatski ste u nepovoljnom polozaju naspram nekoga tko je zavrsio fakultet. Svi su navalili na IT jer dobro stoji po pitanju financijske sigurnosti i prakticnosti rada. Medutim, da bi se do toga doslo, potrebno je jako puno ucenja, potencijalno godina do dvije, ako ne i vise, ovisno koliko se uci i koliko se brzo upija znanje, i jos godina do dvije radnog iskustva. Tek onda odredene stvari pocnu sjedati na mjesto te se prilike pocnu otvarati.
I opet, shvacam da ovo mozda zvuci demotivirajuce, ali htio bih da svatko tko ulazi u ovo ude s jasnim ocekivanjima, da budu svjesni da je ovo visegodisnje ulaganje u sebe za koje ce trebati vremena da se isplati.
Naravno, ovo je sve moj pogled na stvari koji ne da moze, vec sigurno unutar struke varira do odredene mjere od covjeka do covjeka.