Potaknut impresivnim razvojem web i mobilne tehnologije, nedavno sam odlučio naučiti programirati. Kao studentu završne godine diplomskog studija na FOI-u programiranje mi nije nepoznat pojam, ali istina je da ga nikada nisam naučio kako se od nas očekivalo. Zapravo, još u osnovnoj školi pisao sam prve linije koda u QBasicu, no u gimnaziji i početkom faksa početna strast izgubila se u nekim drugim granama znanosti. Sa završetkom smjera 'Organizacija poslovnih sustava' na FOI-u, u meni se javila želja da svoje znanje iz područja poslovanja i informatike proširim onim iz programiranja.

U duhu vremena u kojem živimo, zaista je zanimljivo osvrnuti se na rast pojedinih tehnoloških kompanija koje suradnjom sa sveučilištima i stručnjacima nude online obrazovanje dostupno svima.

gamification courseraPrimjerice, Coursera je pokrenuta u travnju 2012. godine, a do danas je više od 2,7 milijuna ljudi vidjelo Courseru kao dodatni izvor znanja. Moja preporuka je kolegij Gamification koji s (ponovnim) izvođenjem kreće 1. travnja, ili Creative Programming for Digital Media & Mobile Apps, koji s izvođenjem započinje nešto kasnije.

No, ovaj puta odluka nije pala na Courseru - već na Codeacademy. Mark Twain jednom je rekao 'Don't let school interfere with your education', i dobrim dijelom složio bi se s njim. U obrazovnim institucijama naučit ćete mnogo korisnog - ali i mnogo bespotrebnih, pa i nesigurnih podataka. Upravo zbog toga pojavu online mjesta za učenje smatram velikim korakom naprijed u obrazovanju pojedinca - gdje imamo priliku naučiti ono što nas zanima, često i na bolji način od uobičajenih. Znanje programiranja danas je zapravo “karta” za budućnost, jer tehnologija koja zahtijeva softver upletena je u gotovo svaki segment našeg života. Uostalom, sa znanjem programiranja najbrže ćete pronaći dobro plaćeni posao.

Everybody in this country should learn how to program a computer... Because it teaches you how to think. - Steve Jobs

Codeacademy.com jedan je od predvodnika u “learn to code” pokretu, a ekipa iza ove odlične stranice neprestano radi kako bi svojim korisnicima omogućila nove i bolje tečajeve. Primjerice, najnovije područje - PHP, dodano je početkom ovog tjedna.

codeacademy web fundamentals

Dolaskom na stranicu, vidjet ćete da su tečajevi podijeljeni u nekoliko kategorija. Osnove weba, PHP, JQuery, JavaScript, Python, Ruby, Projekti i API (application programming interface) odlično koncipiranim zadacima i projektima zaista nude izvrsne mogućnosti učenja i savladavanja gradiva. Codeacademy integrirao je sustav gamificationa u učenje, te ćete za svaki uspješno završen tečaj (i neke druge situacije) dobiti badge - s kojim se možete pohvaliti svojim prijateljima na društvenim mrežama i možda ih potaknuti da i oni pogledaju što zapravo radite.

Krenuo sam ispočetka - od osnova weba, koje su podijeljene u šest manjih tečajeva. U prva tri učit ćete o HTML-u, koji je temelj cijelog interneta i jezik koji se koristi za izradu web stranica. Nakon svakog tečaja slijedi projekt u kojem ćete provjeriti i iskoristiti naučeno. Nakon HTML-a vrijeme je za CSS (Cascading Style Sheets). Zapravo je CSS ono što web stranicama daje sjaj - on je koža koja prekriva kosti HTML-a. Pogađate, način učenja i dalje je isti - izvrsno zamišljen i zabavan.

Drugo poglavlje posvećeno je PHP-u, no ono je predstavljeno početkom ovog tjedna i još nije završeno. No, poglavlje JQueryja već duže vrijeme čeka da naučite kako napraviti interaktivnu web stranicu. Korištenjem JQueryja možete premještati HTML elemente, raditi prilagođene animacije, i dopustiti korisnicima da klikom miša ili tipkovnicom utječu na vašu web stranicu. Naučit ćete o Document Object Modelu, manipuliranju HTML elementima, funkcijama, dinamičkom HTML-u, događajima i efektima u JQueryju.

I ovdje sam stao. Plan mi je ponoviti i znati što više o HTML-u i JQueryju, a nakon toga nastavljam dalje. Prvo s JavaScriptom, programskim jezikom poprilično bliskim početnicima koji se također koristi u izgradnji interaktivnih web stranica, a nakon toga s Pythonom i Rubyjem. Python je objektno-orijentirani interpretirani programski jezik koji možete koristiti za bezbroj samostalnih projekat ili skriptnih aplikacija. Ruby je izvrstan jezik s intuitivnom sintaksom. Koristi se u različitim disciplinama, uključujući aplikacije, igre i web razvoj, a trenutno uživa široku popularnost putem Ruby on Rails web frameworka.

Pisanje koda nam omogućuje nevjerojatne stvari, i do toga je daleki put. Vjerujem da je programiranje umjetnost i pisanje koda nešto posebno, te sam odlučio da ću jednog dana iz hobija izvrsno programirati. No, i najduži put počinje prvim korakom.