Kako početi s front-end dev-om

Otvorih novu temu koja se odnosi na same početke. Naime, strojarske sam struke, inženjer strojarstva, trenutno sam bez posla a u struci naći posao totalna utopija. Odlučio sam krenuti sa front-end web dev-om u nadi na ću naći posao tako da mogu od nečega živjeti. Učim iz video tutorijala već 6mjeseci (udemy, lynda etc.). Još sam uvijek na HTML-u i CSS-u (flexbox+css grid), prošao sam jedan dio o samom dizajnu i UX. Nakon toga planiram preći na JS i JS frameworks (jQuery). Nije baš da mlavim tu materiju, ide polako i nešto od toga ostane u glavi. Gledam oglase na netu u hr. pa vidim da poslodavci traže sve i svašta u jednom paketu što se meni čini gotovo pa nemoguće to sve naučiti. Što se tiče ove materije koju učim mislim da treba jako puno vremena da bi se time totalno ovladalo a da ne pričam učiti još nešto dodatno uz to, tipa PHP, PYTHON. Imam 46 godina i 0 radnog iskustva u IT-u, ne znam kako poslodavci na to gledaju ali mislim da jedino mogu ostati zatečeni. Uvijek sam imao interes za tu materiju ali nažalost život me odveo u pogrešnom smjeru, kada sam završio srednju školu nije bilo IT tečajeva kao danas. Imam osnovno znanje što se tiče WINDOWS OS-a i PC računalnog hardvera, mreže skoro pa ništa. Unaprijed hvala na savjetu.

2 Likeova

Halo Branko! Sličan put sam i ja prošao i evo par crtica:
imam 42 godine, a zadnjih godinu dana radim kao software developer. Prije toga, baš kao i ti, nisam imao baš nikakvog iskustva u IT-u. Dosadilo mi raditi poslove koji nemaju veze s onim s čim sam se školovao, jer sam po struci profesor ekonomije. Razmišljao sam čime se baviti, a da taj posao bude dugoročno održiv i pruži pristojna primanja. IT se nametnuo sam po sebi.
Za razliku od tebe, ja sam otišao u backend vode. Naučio sam Javu (Udemy, Youtube), a u firmi gdje radim dodatno sam naučio Spring Boot i Angular, jer su potrebni za projekte na kojima radimo. Ako se brineš zbog godina, nemoj. Svakoj firmi je bitan profesionalizam, tvoje znanje, odnosno entuzijazam da ga konstantno proširuješ. Godine su sporedne.
E sad nešto konktretnije za tvoj slučaj.

  1. IT tečajevi koji se nude na svakom uglu tvog grada su beskorisni. To je ista materija koja se uči na Udemy ili Youtube, samo što puno košta i daje puno slabije rezultate.
  2. Nemoj učiti jQuery, nego kreni u modernije JS frameworke kao što su Angular, React ili Vue. jQuery se i dalje intenzivno koristi, ali nabrojana trojka je budućnost.
  3. Rješavaj projekte koje nađeš na netu. Youtube ih ima puno (freeCodeCamp, Web Dev Simplified i slični kanali) i odlično će ti doći za shvaćanje logike programiranja.
  4. Svi oglasi za posao su koncipirani da traže puno, jer poslodavci k’o poslodavci. Tražit će maksimalno, pa što dobiju. Stavi se u njihovu poziciju. Ako znaš HTML, CSS i JavaScript, imaš šansu dobiti posao. To će biti uvjeti za početnike s manjom plaćom i na to budi spreman. S godinama će tvoje znanje i iskustvo rasti, a s time i plaća. Ako već sad očekuješ desetke tisuća kuna, bit ćeš razočaran.
  5. Imaj na umu kako će HTML, CSS i JavaScript biti samo dio onoga što ćeš raditi. Programiranje se generalno dijeli na frontend i backend, ali je sve međusobno jako isprepleteno. Morat ćeš učiti puno stvari za koje prvi put čuješ u životu i učiti brzo, jer će ti biti potrebno za posao. Budi spreman za pravi šok kad se zaposliš u nekoj IT firmi.
    Ja sam nadobudno mislio kako će moje poznavanje Jave riješiti sve probleme svijeta. Već prvi dan na poslu sam se osjećao kao da sam nokautiran, a taj osjećaj imam i evo sada, dok tipkam odgovor na tvoj post.
  6. Ekipa iz IT sektora je, generalno govoreći, vrlo susretljiva i uvijek spremna pomoći. Ali nitko neće rješavati tvoj zadatak i tvoj ticket jer si ti plaćen za to. Imat ćeš problema s rješavanjem dobivenih zadataka jer nećeš znati što trebaš napraviti, a samim time nećeš znati naći odgovor na netu jer ne znaš što tražiš. Budi spreman osjećati se kao ovca na duži vremenski rok.
  7. Pretpostavljam da radiš u Visual Studio Code ili nečem sličnom. To ti je odlična praksa i preporučam ti da malo istražiš tips&tricks s njime. Poznavanje GitHuba je uvijek i svugdje dobrodošlo. Prouči baze podataka i to osnove, jer za više od toga nemaš vremena. Amigoscode na Youtube ima jako dobar i relativno kratak tutorial na tu temu.
    BONUS TIP: budi spreman na konstantni stres. Na poslu, jer ćeš jako dugo biti na kraju reda po znanju. Uopće ne pretjerujem kad kažem da ćeš se osjećati kao ovca.
    Kod kuće, jer ćeš zbog toga stalno osjećati pritisak i truditi se naučiti što više u što kraćem vremenu, a znanje nije nešto što ide na silu. A obitelj iziskuje pažnju i vrijeme, kojeg nećeš imati zbog svega ranije nabrojanog.
    BONUS TIP PRO Naspavaj se. Uvijek.
    Sretno.

P.S. Nisam očekivao ovoliko napisati na ovu temu. #steelmaiden, hoćemo ovo prebaciti u članak :smile:

3 Likeova

Totalno krivo… to se ne uči tako. Prođeš materiju čisto da shvatiš koncept i ideš dalje. Nikakvo pamćenje… nikakav advance.
I to iz više razloga:

  1. Nemozes biti advance dok niti ne razumijes okolinu. Moras graditi sve paralno… tako jedino u konacnici mozes mozda i postati advance.
  2. To sto i naucis… il ces zaboravit, il ti nece ni trebat… jer ces mozda kao frontendas biti bas više na JSu.
  3. HTML/CSS je zapravo mali dio kolača … a opet i samo njih možeš usavršavat čitav život. Drugim riječima… mogao bi čitav život potrošit usavršavajući ništa. Tako da ne gubi vrijeme na usavršavanje… shvati koncept i idi dalje. Konkretni problemi u praksi će te usavršavati… a tada će ti puno više pomoći znanje svega pomalo, nego advance HTML.

Znači, učenje HTML/CSS svedi na:

  1. Pročitaš čitav W3School na tu temu… sve primjere redom i svaki probaš da znaš da si ga shvatio
  2. Nakon točke 1. još jednom samo proletiš kroz sve primjere da nabrzaka rekapituliraš gradivo i prisjetiš se čega je sve tu bilo
    I to je to… gotov si za 7-10 dana.

Onda tek kod konkretnih zadataka vracas se na primjere na w3school po sintaksu dok sama ne sjedne u glavu … pa ce te tako real zadaci natjerat da ono najbitnije naucis i napamet…dok nesto nikad niti neces znati napamet.
3. Nelose je nakon cca 6 mjeseci mjeseci ponovit točku 2. I to onako za cca 2h se to da ponovit. Periodicki valja to odraditi.

I to je to… dovoljno da se shvat koncept HTML/CSS i prelaziš na JS koji je ozbiljnija materija i koji zahtjeva par mjeseci rudarenja po primjerima da sjedne.

JS ti otvara generalno svijet programiranja… bilo kojeg. Bez razumjevanja toga nemaš što tražiti u ovom poslu.

Nakon JSa je već na tebi kako ćeš se dalje usmjerit… tu su sad već opcije.

Uglavnom, batali HTML, to se uči par dana i napadaj JS bez kojeg nemozes nista.

Gledanje/Čitanje svakako nije dovoljno, nego se svaki primjer mora probat. Malo se poigrat… tako da u primjeru nešto izmjeniš po svojoj volji i gledaš jel se izvršavanje program mijenja po očekivanju. Ako da, tek tada vladaš primjerom, tj. razumiješ ga.
Svaki primjer tako trebaš nagaziti do granica svog razumijevanja i u tom spektru ga probavat i dobit da radi što ti želiš.

Mogu biti i video tutorijali, ali obavezno kodiranje pored toga da sve isprobaš.

Kod w3school je praktično što te čeka već primjer na svakoj lekciji koji onda probaš, mijenjaš … igraš se.

S dobrim JS-om i poznavanjem HTMLa već možeš u lov na posao. Onda će te on dalje oblikovati…

Tipa glupo bi bilo učit Angular, a na poslu se radi React.
Ili učit baze, a dobra šansa da nećes imati doticaj s njima…

Naravno, ništa od toga ne škodi u predznanju imati i bolje su sanse uhvatit posao. Mada vjeruj, dobro poznavanje JSa je glavno… tj. generalno koncepta objektnog programiranja. Kad to imaš, imaš temelj… s kojim možeš uhvatit tempo i u firmi koja se bavi programiranjem ali u nekoj skroz desetoj tehnologiji. Ne mora biti ni web programiranje.

Nakon JSa je logičan slijed:
-osnove jQuerya … da bar znaš što je to
-jedan od ove trojke: Angular/React/Vue
-jedan preprocesor CSSa. SASS ili LESS
-upoznat neki GUI framework, tipa bootstrap/semantic

Sad sve zavisi koliko zelis ili moras biti samostalan… treba znati ponesto i od backenda…

  • nakon sto si svladao JS, nije tesko upoznat se malo i s PHPom. (Ili C#)
  • ako krenes malo na backend, onda je i rad s bazama must have. (mySQL)

I to dvoje nakon sto upoznas…kompletiras u nekom backend frameworku po odabiru.

Eto, tu si vec full-stack developer… a posao i konkretni zadaci će te uvijek bacati još malo po svuda. :slight_smile:

Možeš također isprobati i Back-end dev.
Pogledaj si NodeJs s NestJs frameworkom (https://nestjs.com/)

Udemy tečaj => https://www.udemy.com/course/nestjs-the-complete-developers-guide/

Možda ti se više svidi pa se nećeš morati zamarati s HTML i CSS nego odma kreneš s učenjem JS-a.
Ali opet s druge strane ovdje dolaze baze podataka i slično tako da razmisli što ti se svidi.

Odličan post (za nas preko 40 god.) koji bi htjeli ili razmišljaju ući u IT vode. Javite kako napredujete i kako Vam ide. Predlažem da se napravi grupa na fejsu ili negdje gdje bi “početnici” mogli grupno učiti i savladavati materiju do zaposlenja ili do izrade svojeg projekta (npr. imam u planu napraviti web aplikaciju koja će mi pomoći u poslu kojeg radim a kasnije je mogu uz naknadu dati kolegama iz struke da je koriste). Svi tečajevi koji se nude daju temelje za ulazak u IT a kasnije je sve na nama (ovisno koliko ćemo slobodnog vremena odvajati za učenje ako smo negdje zaposleni). Mislim da je uvijek dobro vrijeme ući u IT svijet bez obzira na godine jer ta industrija nikad neće prestati rasti🤗

Branko, sve što sam rekao, rekao sam iz vlastitog iskustva. Počeo sam raditi kao programer s 41. godinom i u mom prethodnom postu sam ti htio dati do znanja kako situacija nije crno-bijela kakvom se čini u početku. Zato sam spominjao da treba učiti druge jezike i/ili tehnologije, ali nemoj skakati na glavu u Javu, Python ili već što si sve spominjao.

@bozoou ti je dao odličan savjet: nauči osnove HTML-a i CSS-a i udri po JavaScriptu. Kroz njega ćeš izbrusiti znanje i staviti se u poziciju da nađeš posao. Isto tako, kad svladaš JS (koji je, btw, najpopularniji programski jezik) relativno brzo ćeš svladati ostale. Prvo dakle JS, sve ostalo će ići prirodnim slijedom. Nemoj skakutati od jezika do jezika i od tehnologije do tehnologije, jer tako nećeš dospjeti nigdje.

@vepar23 >> pusti fb, neki od nas nemaju account tamo. :slight_smile: Možemo ovdje o svemu porazgovarati i podijeliti iskustva. Evo ti komadić iskustva: nakon godinu dana u programiranju teško da bih skuckao web aplikaciju koju si spominjao. :slight_smile: Ili bilo kakvu, a da je funkcionalna i pristojnog izgleda. Za bilo što profesionalnije moraš biti pravi profesionalac, a to znači godine i godine rada. A ako razmišljaš o ulasku u IT, nemoj čekati. Izaberi područje koje ti je zanimljivo i pitaj ovdje kojim putem krenuti. Zapravo, baš pišem članak na tu temu za geek.hr, zato stay tuned. :slight_smile:

@afro >> trenutno koristim excel tablicu za praćenje rokova (ispitivanja strojeva i liječničkih pregleda) pa me zanima u kojem programu složiti web aplikaciju gdje bi mogao dodavati stavke za praćenje rokova te dobivati obavijesti na mail o skorom isteku roka? Htio bi da su mi podaci na webu (u cloudu) i da njima mogu pristupiti sa bilo kojeg računala, mobitela i sl.Trenutno učim html, css pa planiram php za bazu podataka. Ako netko ima kakvu ideju u čemu to složiti ili treba još detalja tu sam:-)

Pogledaj Laravel, PHP framework, jako jednostavan za pocetnike…

Znači frontend ti je HTML/CSS/JS (nemaš drugog izbora, osim ako se radi mobilna aplikacija)
A backend imaš opcija, dvije najčešće su: PHP ili C#.
Ako uzmeš PHP, onda bi bila preporuka ići na neki gotov framework kao što je gore sugestija za Laravel.

I to je kao što vidiš nevezano od tvoje konkretne aplikacije. Uvijek trebaš frontend i backend dio.

Ovo bi radio radi učenja, ili radi aplikacije?
Dosta često vidim da ljudi trebaju ovaj app, pa mi nije jasno što nema takvih kalendara u ponudi od Googlea gdje bi se dodavali reminderi… u obliku web/mobilne aplikacije?

@bozoou app bi složio radi vlastite potrebe a i to bi bilo učenje odnosno jedan primjer gotovog rada. Tražio sam sve moguće po netu, ima dobrih aplikacija ali nisu besplatne i nisam baš pri novcu plaćati nešto mjesečno… Ovako bi napravio app koju bi s vremenom mogao dati kolegama da isprobaju i koriste prvo besplatno pa kasnije možda uz neku naknadu s kojom bi pokrio održavanje web aplikacije:-)

1 Like

Kako sam ja krenuo:
Nisam znao programirati, i na internetu vidio Laravel framework prva verzija…
Malo čitam i gledam, i vidim ja da korisnika iz baze mogu dohvatiti ako napišem User::find(1); kako jednostavno…prije dok bi gledao čisti PHP kod kojeg je gomila zbunio bi se i odma bi odustao…

Probao napisati taj kod da se spojim na bazu, dohvatio korisnika iz baze…zaljubio se i krenuo dalje s Laravelom…Našao na internetu knjigu za početnike o Laravelu i svaki dan radio primjere iz knjige.

Zadao sam si cilj da si zelim napraviti nekakav sajt gdje se mogu registrirati, prijaviti, upisati novi smještaj, prikazati ga na stranici, učitati slike smještaja i sl.

Za to sam našao i nekakav besplatni HTML template i krenuo ga proučavati i modificirati. Tako sam upoznao i bootstrap CSS framework.

Svakim danom vidiš napredak i želiš dalje učiti. Nakon toga me zanimalo kako stranicu objaviti na internetu, pa sam istraživao cPanel, hosting , domene i sl.

Pojavio se Laracasts (stranica s video tutorijalima o Laravelu), pretplatio se i krenuo učiti i vježbati, pa se registrirao i na njihov forum i pitao sve što mi nije bilo jasno.

Nakon nekog vremena napravim osnovnu verziju stranice, onda sam vidio da je malo spora kako dodajem oglase i sl. Pa sam gledao kako optimizirati SQL upite i n+1 problem ako se koristi Eloquent ORM.

Koristeći Eloquent ORM nekada sam trebao i čisti SQL pa sam i njega krenuo istraživati i koristiti.

Došao je dio gdje mi se template više nije sviđao pa sam našao drugi, koji je imao dosta jquery pluginova, bio bogati. Krenuo ubacivati taj novi template, pa bi dobio javascript grešku, istraživao po internetu što i kako dok nisam riješio…

Tako nekako ukratko je bio moj početak programiranja…

Danas, nakon nekoliko godina sam vodeći dev u firmi za razvoj poslovnih aplikacija. Za sebe mogu reći da sam Full Stack Developer…

Prijedlog: Zamisli što si želiš napraviti? Pa istraži kako to napraviti, tutorial neki i sl. Pa onda probaj skužiti kako to radi, pa se upoznaj s tim još više…Kako učiš ono što želiš naučiti to će te vući da naučiš i druge stvari koje nisi planirao naučiti jer ovise jedno o drugom (backend/frontend).

2 Likeova

Bravo. Jesi li u medjuvremenu savladao jos neke php frameworkove kao i nekim dodatnim tulovima koji se mogu koristiti u svrhu php? Da li bi mogao da se snadjes, s obzirom na nekoliko godina iskustva, da radis bez php frameworkova, nego cist php, klase, funkcije?

Jasno da bi. Vise uopće nije stvar frameworka ili jezika, nego nacina razmisljanja i rijesavanja problema

Psr4, neki router, twig , env, doctrine i evo ti mini framework.

Ono što početnicima treba …je da ne moraju raditi sve…trebaju im Doorsi. :smiley: Doors - Google Docs

Štoviše, ovakav pristup treba čitavoj zajednici, ne samo početnicima. :stuck_out_tongue:

1 Like

Imam rodjakinju koja je na fakultetu ftn smer Informacioni Inzenjering.
Sta mislite o tom smeru i da li je to buducnost.
Ja sam “krivac” za to sto je upisala jer je odmalena gledala moje poslove.
Algebra joj je dosta naporna,mehaniku gura,programiranje desetke.

Ne baš.
Svaki app se ne rafi od 0.
Ako se koristi modularni pristup, onda se iskorištavaju postojeće komponente.

A sad su dosta popularni microservice-i.

Postoji problematika i iza toga. Kratko i jasno, čemu?

U duhu postavljenog teksta, to bi bilo kao da radiš aplikaciju za windowse, ali moraš brinuti da kreiraš i windows. Kao ono… hvala Bogu ne moraš ih napraviti iz nule, nego možeš “samo” modularno iz komponenti složiti ih.

Hvala, nebi tako.

Kriva ti je usporedba.

Ako imam microservice za usere, onda koristim taj microservice.

Druga stvar, što sam manje ovisan o drugim alatima to bolje.