Programiranje za početnike

Prvi u seriji tekstova kroz koje ćemo videti kako samostalno možete naučiti da pišete kod.

Aleksa Vidović - 6. Decembar, 2017.

Postoji mnogo načina da naučite da programirate, i svaki uključuje puno samostalnog učenja i rada.

Motivi su različiti — neko želi da započne programersku karijeru, dok je nekome programiranje samo koristan dodatak veštinama u drugoj oblasti. Ima i onih koji ga uče kako bi mogli da pokrenu onlajn biznis, ili automatizuju neki dosadan posao.

Prikupili smo na jednom mestu resurse koji će vam pomoći u procesu učenja, koji god da je vaš cilj. Pored resursa koji vam mogu biti korisni, trudili smo se da za svaku od oblasti objasnimo i kakvo je stanje u Srbiji, šta poslodavci očekuju, kao i kakve poslove možete da nađete.

Kako koristiti ovaj vodič?

Ovo nije tutorijal. Nećemo pričati o sintaksi u JavaScriptu, kako da napravite petlju u Pythonu, niti kako se dereferenciraju pokazivači u C-u.

Umesto toga, pokazaćemo vam zašto su određene stvari važneodakle da ih naučite i po kojem redosledu, kako da izvučete najviše iz resursa koje korisitite, kako da postavite ciljeve i očekivanja, kako da primenite stečeno znanje i kako da pronađete zaposlenje ukoliko je to vaš cilj.

Kada budete razumeli zašto su određene stvari bitne i na koji način se uklapaju u širu sliku, biće vam lakše i da ih naučite i zapamtite.

Za ovaj pristup smo se odlučili jer na internetu već postoje sadržaji koji odgovaraju na sva vaša pitanja.

Sve je već obrađeno i objašnjeno, na šta ukazuje i broj ljudi koji su pre vas naučili programiranje “preko interneta”. Mi ćemo pokušati da vam pomognemo da taj proces bude organizovaniji, linearniji, i manje haotičan.

Ovaj vodič je dugoročan projekat, pa planiramo da ga vremenom dopunjujemo i obogaćujemo novim sadržajem, delom prema svojoj proceni, delom na osnovu povratnih informacija od vas. Koncipiran je kao serija tekstova, a ostalim tekstovima možete da pristupite putem navigacije na dnu strane.

Svesni smo da se među našom publikom nalaze ljudi sa znanjem i iskustvom mnogo većim od našeg koji bi mogli da napišu mnoge stvari bolje od nas.

Ukoliko želite da doprinesete ovom projektu tako što ćete napisati nešto na temu koja vam je bliska, kontaktirajte nas putem mejla programiranje@startit.rs.

Ukoliko vam ovaj vodič služi kao izvor materijala za učenje, recite nam šta biste želeli da vidite ovde — koju temu, oblast, knjigu, resurs… Ova stranica je napravljena zbog vas, tako da nam se slobodno možete obratiti putem istog mejla.

Staze učenja

  1. Uvod: kako samostalno učiti programiranje?
  2. Osnove računarskih nauka
  3. Front End Web Development
  4. Back End Web Development
  5. Uvod u mašinsko učenje (uskoro)
  6. Game Development (uskoro)
  7. Razvoj Android aplikacija (uskoro)
  8. Ideje za lične projekte (uskoro)
  9. Frilens rad (uskoro)

Kako samostalno učiti programiranje?

Postoje neke stvari kojih bi trebalo da budete svesni pre nego što se upustite u učenje programiranja, a koje važe nezavisno od pravca za koji se odlučite.

Iako se može reći da je moguće besplatno naučiti programiranje, učenje programiranja je ogromna investicija vremena i truda.

Potrebni su disciplina i konzistentnost, i upravo to je ono što sprečava mnoge ljude da nauče programiranje do nivoa na kojem bi sami mogli da naprave nešto korisno.

Iako zahteva dosta ulaganja, programiranje može itekako da vam se isplati na razne načine — od zadovoljstva kada napravite nešto što radi, do jednog od bolje plaćenih zanimanja u Srbiji.

Neophodna oprema

Kada je u pitanju učenje programiranja, od opreme vam nije potrebno ništa spektakularno. Bilo koji funkcionalan računar i internet konekcija trebalo bi da budu dovoljni za većinu neophodnog učenja i rada.

Za neke od oblasti (neke od njih još nismo obradili) biće vam potreban računar boljih performansi ili neka dodatna oprema. Na primer, ne bi imalo mnogo smisla da se bavite iOS developmentom ako nemate Mac računar (ne kažem da nije moguće). Ukoliko je za neku od staza učenja koje smo predložili potrebna neka dodatna oprema ili softver, svakako ćemo vam to naglasiti u delu stranice posvećenom toj obasti.

Opet, kao što rekoh, računar i internet konekcija su sasvim dovoljni za početak.

Engleski jezik

Jednostavno, kao što je latinski univerzalni jezik medicine, engleski je univerzalni jezik tehnologije, i ne biste se usudili da budete lekar a da ne znate latinski.

Ako želite da naučite programiranje bez znanja engleskog jezika, želim vam mnogo sreće, trebaće vam.

Ukoliko vam engleski nije jača strana, ne brinite. Postoji veliki broj aplikacija i kurseva pomoću kojih možete da ga naučite. Takođe, samim izlaganjem velikoj količini sadržaja na engleskom unapredićete svoje znanje tog jezika.

Ali, kako ovo nije stranica “engleski za početnike”, preporučiću vam jedan sjajan sajt koji vam može pomoći.

Mnogo vremena

Da biste naučili da programirate, moraćete da odvojite dosta vremena.

Ovo može biti nezgodno ukoliko imate posao ili studirate, ali trebaju vam barem dva sata dnevno koja ste odvojili samo za učenje.

U zavisnosti od vašeg cilja, može vam trebati od nekoliko meseci do dve godine da se u potpunosti osposobite za oblast koja vas interesuje.

Cilj

Kada ulazite u jedan dug i naporan proces kao što je učenje programiranja, važno je da imate jasnu sliku o željenom ishodu.

Ako ne postavite ciljeve, nikada nećete moći ni da ih ostvarite.

Možda je vaš cilj da nađete programerski posao ili da napravite neku aplikaciju za koju mislite da bi bilo kul da postoji. Ne znam, ali bi vi trebalo da znate.

Zašto je važno da što ranije postavite ciljeve?

Zato što će vam oni pomoći da donosite odluke o tome u šta da investirate vreme. Što pre odlučite, na primer, da ćete se baviti pravljenjem igara za mobilne platforme, ranije možete da se koncentrišete na stvari koje su važne za ostvarenje tog cilja i prestanete da trošite vreme na nerelevantne aktivnosti.