05.05.2022. ·
7 min

Kako sam samostalno naučio da programiram?

HelloWorld
1
Kako sam samostalno naučio da programiram?

Da li vam je ikada palo na pamet da biste svoje veštine mogli da iskoristite bolje i postignete više ukoliko biste promenili profesiju?Jednog dana odlučio sam da uradim upravo to. Zovem se Goran i ja sam web developer u Better Collective-u. Najveći deo svog života sam proveo u Nišu. Imam nekoliko hobija koji mi pomažu da se opustim na kraju dana i pronađem balans između poslovnog i privatnog života. Volim da šetam sa ljudima koji su mi dragi, čitam, gledam TV i igram video igrice sa kolegama.

Iako imam diplomu Pravnog fakulteta, danas radim nešto potpuno drugačije.

Kako sam postao web developer?

Kada sam počeo da studiram, nisam znao čime bih se bavio. U to vreme sam se zainteresovao za HTML i CSS i iz zabave sam pravio neke prezentacije.

Ubrzo mi je postalo jasno da karijera u pravu nije ono što sam zamišljao kada sam upisivao fakultet. Uspevao sam da polažem ispite, ali posle druge godine uvideo sam da se ne pronalazim u tome.

Počeo sam da isprobavam druge stvari, čitao o marketingu, SEO-u, i biznisu generalno. Sve to je bilo usko vezano za IT industriju, a pošto sam oduvek voleo rad na računaru, to mi je nekako došlo prirodno.

Tako sam konačno shvatio da je programiranje ono što me čini srećnim.

Sa druge strane, imao sam želju i da završim Pravni fakultet. Pritom, učenje bilo kog programskog jezika je izazovno, pogotovo ako istovremeno i studirate i radite.

Sama ideja da kad jednom izabereš karijeru i to je to mi je bila strana. Nisam našao nijedan valjan razlog zašto ne bih krenuo tim novim putem koji se preda mnom ukazao.

Od tada su studije prava pale u drugi plan, a ispitima sam se bavio u slobodno vreme. Moj glavni cilj bio je da postanem web developer i preusmerim se ka toj novoj industriji, koja pritom trenutno pruža najbolje uslove rada na tržištu.

Interesovanje za IT najpre mi je pomoglo da postanem SEO pisac i to uglavnom o temama vezanim za IT sferu. Počeo sam kao frilenser, ali sam onda odlučio da se oprobam i u korporativnoj sredini.

Prijavio sam se za poziciju “postavljača sadržaja” u Better Collective-u i dobio sam poziv za intervju. Na intervjuu mi je postalo jasno da kompanija traži upravo ove veštine sa kojima sam tada već imao iskustva (marketing, pisanje, poznavanje engleskog jezika, itd.). Čak su tražili nekoga ko poznaje osnove HTML-a i CSS-a.

Nakon što sam dobio posao, nastavio sam sa učenjem programiranja a lista potrebnih veština koje je Better Collective tražio na svom oglasu za poziciju web developer-a je ubrzo postala moja lista stvari za učenje.

Nakon više od godinu dana na toj poziciji i konstantnog učenja programiranja u slobodno vreme, rešio sam da se interno prijavim za poziciju web developera. Bio sam svestan i da, ako želim time da se bavim i postanem ekspert u ovoj oblasti, moram da imam široko znanje o ovim tehnologijama.

Uvek možete da napišete neki kod uz pomoć Internet pretrage. Međutim, potrebno je da tačno znate šta radite ako želite da napišete kod koji je istovremeno i efikasan i lak za održavanje. A to je ono što se zapravo jako ceni u ovoj industriji.

Napravio sam nekoliko projekata koji prikazuju moje znanje progamskih jezika (PHP, JavaScript, CSS, SCSS, kao i same tehnologije na kojima počiva WordPress sistem).

Veoma je važno da imate svoje projekte ako nemate radnog iskustva u ovoj oblasti.

Dobio sam punu podršku tadašnjih menadžera da konkurišem za poziciju u WordPress Development timu. Nakon što sam prošao kroz intervjue i standardni proces zapošljavanja, dobio sam posao i postao web developer asistent.

To je bila odlična početna pozicija za nekoga ko nije imao previše iskustva u programiranju. Uz pomoć mojih novih menadžera, vremenom sam prelazio na sve izazovnije zadatke, polako gradeći svoj put ka programiranju za web.

Kako sam naučio da programiram?

Internet nudi mnoštvo besplatnih načina da savladate ovu oblast. Ja sam počeo na codecademy.com, gde možete učiti koristeći njihovu interaktivnu platformu.

Kada bih danas počinjao, freeCodeCamp.org bi takođe bio dobar izbor za totalne početnike.

Tokom samostalnog učenja, kada god bih osetio da mi je teško i da ne razumem koncept onoga što učim, tražio bih dodatne informacije na Google-u ili gledao YouTube tutorijale.

Na YouTube-u možete pronaći objašnjenja i za neke komplikovanije koncepte vezane za samo programiranje i tehnologiju koju koristite. To je naročito korisno na početku kada još ne možete da vizualizujete ono što učite.

Ako vam je potrebno da se brzo podsetite sintakse vezane za same front-end tehnologije, preporučujem sajt W3Schools.

Stack Overflow je veoma koristan pre svega kada se susretnete sa nekim od čestih problema u programiranju. Čak i ako ne pronađete konkretno rešenje, sama pretraga vas može inspirisati da ga otkrijete.

CSS-Tricks i Smashing Magazine su takođe odlični izvori. Možete da ih čitate tokom pauze za jutarnju kafu i bićete uvek u toku sa novostima iz inustrije.

Možda najbitniji od svih resursa jesu sajtovi sa zvaničnom dokumentacijom programskih jezika i drugih tehnologija koje koristite u svom svakodnevnom radu.

Od trenutka kada sam počeo prvenstveno da se oslanjam na zvaničnu dokumentaciju, počeo sam i više da verujem u svoju sposobnost da rešim bilo kakav problem koji bi mi praksa nametnula. Samim tim postao sam i samostalniji u svom svakodnevnom radu.

Čak i danas, najviše vremena provodim na ovim sajtovima:

Plaćeni ili besplatni kursevi?

Na primer, Introduction to Computer Science by Harvard University je besplatan resurs koji će vam pomoći da razumete kako računari rade s obzirom da kao programer vi pišete instrukcije koje ti isti računari interpretiraju. Meni je bio posebno koristan kao nekome bez predznanja o računarstvu.

Sa druge strane, plaćeni kursevi, poput Javascript: Understanding the Weird Parts, koji objašnjavaju složene koncepte na veoma jednostavan način, odlična su investicija ako već posedujete osnovna znanja o Javascriptu.

Ne treba zapostaviti ni kurseve kao što je Clean Code, jer će vam oni pomoći da pišete kod u standardizovanoj formi koja olakšava kasnije debagovanje i ažuriranje vašeg koda.

Ako želite da naučite više o objektno-orijentisanom programiranju, preporučujem sajt Refactoring Guru. Na tom sajtu možete pronaći jako lepo sortirane informacije o nekim učestalim dizajn patternima i kada da ih primenjujete u praksi.

Ako ste zbunjeni i ne znate odakle da počnete, ovaj roadmap website će vam pomoći da se organizujete i napravite plan učenja. Neka vas ne uplaši ogromna količina informacija na ovom sajtu jer nećete učiti sve odjednom, već korak po korak.

Najveći izazovi

Samostalno učenje programiranja zaista može biti izazovno. Lako se može desiti da skrenete sa puta ili počnete da učite koncepte za koje u tom trenutku još niste spremni. Važno je da to naučite da prepoznate i vratite se korak unazad.

U takvim situacijama možete i da odmorite od učenja na nekoliko dana. Sećam se da sam jednom prilikom nakon neuspešnog debagovanja sopstvenog koda pauzirao programiranje na nedelju dana. Takve situacije ne znače da programiranje nije za vas. U većini slučajeva, to će značiti da ste jednostavno umorni. Ovo je moguće naročito ako uz učenje programiranja paralelno i studirate ili radite. Dobra vest je da ćete posle svega imati samo jedan posao, a to će biti onaj koji volite.

Zašto su mentorstva važna?

Nisam uviđao značaj mentorstva dok nisam počeo da radim u Better Collective-u.

Sada verujem da sam imao sreću što sam dobio mentore od prvog dana na svojoj novoj poziciji.

Ljudi koji programiraju pet ili deset godina imaju ogromno znanje i iskustvo, a neke segmente tog znanja je nemoguće pronaći online. Njihove smernice će vam pomoći da dodatno unapredite svoje znanje. Dobri mentori će umeti da vas stave pred prave izazove i pružiti vam prostor da napredujete.

Kako mentori i sami imaju pregršt obaveza, važno je da im pokažete da ste motivisani za učenje, kao i da će moći da računaju na vašu posvećenost u budućnosti.

Danas i sâm radim sa mlađim programerima, trudeći se da im pružim istu podršku kakvu sam i sâm dobio. Na taj način znanje nastavlja da se deli u okviru tima.

Planovi

Učenje nikada ne prestaje kada radite u IT industriji. Moj cilj je da pronađem balans između trenutnih zahteva mog posla, onoga što je lično meni interesantno i tehnologija koje su trenutno tražene na tržištu.

WordPress kao sistem za organizovanje sadržaja se trenutno kreće u tom smeru gde vam je potrebno i znanje iz oblasti React.js tehnologije, uglavnom zbog razvoja Gutenberg blokova. Iz tog razloga će moj fokus uglavnom biti na toj tehnologiji u narednom periodu.

Za više informacija posetite profil poslodavca BetterCollective.

Oceni tekst

9 osoba je glasalo, prosečna ocena: 5

1 komentar

Milica Milica 06.05.2022.
2

Bravo Gorane, hvala na ovom tekstu i svaka cast Vama na trudu i onome sto ste postigli. Sve najbolje u daljoj karijeri.

Iz ove kategorije

Svi članci sa Bloga