Позивам српски народ да учи програмирање!

Пише: Дамјан Павлица

дамјан павлица

Неки дан сам слушао Барака Обаму како позива америчку омладину да учи програмирање. Каже, будућност света је у рачунарима, па је национални интерес Сједињених Држава да имају што више младих програмера. Иако му не верујем много тога, верујем да уме да препозна сопствени интерес.

На светском тржишту сваки народ граби своје место. Наши политичари често говоре да нам је главни адут пољопривреда. Нисам против и сматрам земљорадњу часним занатом. Мој једини проблем је што немам село.

СРБИЈА, ЗЕМЉА СЕЉАКА И ПРОГРАМЕРА

Нама који немамо привилегију да живимо на селу, не преостаје друго него да се снађемо у граду. Уколико немамо капитала да покренемо сопствени посао, сва је прилика да ћемо радити за другога. Без обзира на наше образовање, посла у струци углавном нема, или се нуде бедно плаћена места.

Постоји један изузетак – програмери. Док сам месецима залуд тражио посао преко Инфостуда, излазили су огласи само програмере и веб дизајнере. Од неколико програмера које познајем, ни један није без посла. Шта више, сви имају натпросечне плате за српске појмове. Изгледа се програмери из Србије добро цене.

ФАКУЛТЕТ НИЈЕ БИТАН, БИТАН ЈЕ ЗАНАТ

Многи наивно верују, као што и ја веровах, да факултетска диплома отвара нека врата. Некад било, сад се приповеда. Факултетски образовани људи раде на пијаци, по трафикама. Факултет је постао комерцијална установа за узимање пара. Битан је занат, а данашњи најтраженији занат је програмерски.

Шта је уопште програмирање? Заправо немам појма. Ја га контам као занат помоћу ког се праве сајтови, игрице, апликације за телефоне и све што има везе са рачунаром. Све програме које користимо на компу (Фотошоп, Мозила, Винамп…), неко је направио.

Ја сам пре неколико месеци почео да учим програмирање и од тада радим вежбе свакодневно. Потребно је бар две године да би нешто научио, а бар пет година интензивног и свакодневног вежбања да би постао добар програмер. Кажу да након десет хиљада сати вежбања постајеш експерт.

БЕСПЛАТНИ САЈТОВИ ЗА УЧЕЊЕ

На нашу срећу, постоји сијасет одличних интерактивних сајтова на којима можемо бесплатно учити програмирање:

Codecademy

codecademy

Codecademy (Кодакадемија), дефинитивно сајт број један за апсолутне почетнике који уче програмски код. Заступљени су углавном HTML, CSS, Ruby, Пајтон и Јаваскрипт, а помало и PHP. Кодакадемија има почетничке, средње и напредне курсеве. Можете научити да правите сајтове и корисне веб апликације. Сајт је урађен минималистички, без икаквих украса, и како уђете одмах почињете програмирање. Кад завршите све понуђене курсеве, додатне курсеве можете пронаћи овде.

Code avengers

codeavengers

Code avengers (Кодни осветници) је платформа која представља добар спој зезања и озбиљног учења. На сваких десет пређених задатака имате кратку игрицу. Заступљени су веб језици HTML, CSS и Јаваскрипт. Можете научити прављење сајтова, игрица и апликација. Ниво учења је прилично озбиљан.

Code School

codeschool

Code School (Школа кода) је мало више академски сајт од претходних и одликује се добрим видео туторијалима са све предавачима. Нажалост, има курсева који се наплаћују, али срећом има и пар бесплатних. Пре свега JavaScript (Џаваскрипт) и jQuery (џејКвери). Школа кода је орјентисана на прављење и одржавање сајтова са подацима који се често мењају (распродаје, распореди лета и сл).

CodeHS

codehs

CodeHS је одличан сајт уколико желите да научите правити игрице. Углавном је заступљен Јаваскрипт (или Џаваскрипт, како вам драже), али уче се и многе ствари о анимацијама које су опште примењиве. Почињете са неким псом којег покрећете да заобилази препреке, па докле догурате. Између задатака имате видео курсеве.

LearnStreet

learnstreet
LearnStreet (Улица учења) је сајт на ком имате почетнички курс из три програмска језика: JavaScript, Python и Ruby. Колико сам стигао да видим, курсеви су солидно обрађени, па чак прелазе са почетничког на средњи ниво на неким местима.

Khan Academy

khanacademy

Khan Academy (Кан академија) је одличан образовни сајт на коме се уче разне науке и вештине (математика, биологија, физика, историја…), између осталог и програмирање. Сви курсеви које сам пробао су им одлични. Kурс програмирања је орјентисан на графику. Прво учите да цртате разне облике и анимације. Такође има и детаљан курс Пајтона, који се налази у одељку наука. Ако сте друштвењак као ја, курс из математике ће вам бити веома користан.

Try Ruby

tryruby

Try Ruby (Пробај Руби) је одличан један интерактивни сајт на ком се учи искључиво Руби. Руби је релативно млад програмски језик, настао у Јапану, али је све популарнији за разне апликације на интернету. На овом сајту нема пуно паламуђења, чим отворите прву страну, одмах почиње вежбање.

Ruby Мonk

rubymonk
Ruby Мonk (Руби монах) је сајт који спаја зен будизам и умеће програмирања. Ти си полазник кога учитељ награђује или кажњава у односу на то како ради задатке. Можеш добити ударац штапом или зделу пиринча. Учи се искључиво Руби на разним нивоима, од почетничког надаље.

The Code Player

thecodeplayer
The Code Player (Кодни играч) је сајт на коме су представљене разне интерактивне графике, анимације и сличне стварчице направљене у веб језицима последње генерације: HTML5, CSS3, Javascript. Овде, између осталог, можете научити да правите чувену матрикс анимацију. Овај сајт оставите за мало касније, прављење ових мрдалица ипак подразумева основно познавање кода.

Ето, доста вам је за почетак, имате наредних годину дана чиме да се забављате. Одох ја да вежбам задатке 🙂

П.С. Нико вам не гарантује да ћете обезбедити егзистенцију ако научите програмирање, али ћете вишеструко повећати своје шансе.

Advertisements

20 mišljenja na „Позивам српски народ да учи програмирање!

  1. Јако корисно,и ја сам од скоро кренуо да учим,гледам туторијале,видећемо ста ће бити,поздрав.

  2. sjajno! Iako malko kasnis sa pozivom 🙂 . Pre upisa na fakultete ove godine, vlada je imala kampanju, reklamu na TV-u kojom je pozivala mlade da upisuju fakultete IT struke.
    Sve u svemu sjajan tekst i odlicni linkovi. Kao vec iskusan programer podrzavam 🙂
    Pozdrav

  3. Diploma je za bacanje, ali znanje koje se dobije na fakultetu nije. Ako samo kodiras bices – koder i nikad nista vise. Kao koder ces misliti da znas sve, ali u stvari neces biti svestan koliko ne znas. Bezvezni fakulteti te ni to ne nauce, samo ti uzmu novac. Ali ko hoce linijom manjeg otpora, moze i da kupi diplomu ili cak da fakultet ni ne vidi u zivotu, jer je kao bezveze.
    U svakom slucaju onaj ko zavrsi moze biti vise od kodera, a onaj ko ne, on moze biti samo koder i da se zavarava da je drugacije.

  4. Свака част факултетима и знању које пружају. Једини је проблем што се то знање, у огромној већини случајева, више не тражи на тржишту. Политиколози, психолози, историчари уметности… гомила „техничких вишкова“. Вероватно су ИТ факултети изузетак, али то је ипак привилегија малог броја људи који успеју да их упишу и имају да плаћају. За мене, ово је добар начин да откључам нека врата које би ми иначе остала затворена.

    1. Greska, znanje se itekako trazi, ali nemamo sta da ponudimo. Vecinom smo zanatlije, poduceni, ucimo na svoju ruku. Cak i poducen programer ce naci posao, ali radice sajtove za zubare, prodavnice. Gde ces nauciti optimizaciju za 20 nitni proces, na distribuiranom sistemu na vise kontinenata, a da baza bude uvek sinhronizovana? Da li je potrebno neko znanje matematike? Sta ako imas 1 milion poseta dnevno, a 10 masina sa duo core procesorima, kako ces rasporediti zahteve a da sve uvek radi? Za buraniju se moze nauciti preko tutorijala, ozbiljne stvari osnova se uci na fakultetu. Ljudi koji idu linijom manjeg otpora blate fakultet, ali ako hoces ozbiljno, onda ga upisi. Uci, upadni na budzet i placaj 10 eura stanarinu, sve knjige su ti dostupne besplatno. Preskupo? Skupo je kad je covek lenj, pa ne uci. Srecno.

  5. Milose, ne zaludjuj Damjana. Covek hoce da bude programer-zanatlija, ne inzenjer. Za pocetak su mu ta uputstva potpuno dovoljna. Za sledeci nivo ce vec sam provaliti gde da trazi. A iskreno, znanje matematike ti treba samo da radis u Guglu i Fejsbuku. Vecina drugih velikih kompanija (na primer, banke) ne zahtevaju nikakvu matematiku sem elementarne. Stavise, znanje knjigovodjstva je mnogo bitnije.

  6. Evo jedna lista za sve koji bi informatikom da se bave ozbiljnije:

    dobar uvod u (objektno orijentisano) programiranje
    touch of class, bertrand meyer
    http://se.ethz.ch/teaching/2010-H/eprog-0001/english_index.html#lectureslides

    Dobar uvod u algoritme i strukture podataka:
    Introduction to Algorithms. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein, MIT Press, Second Edition, 2001. ISBN 0-262-53196-8.

    Predavanje „Software architecture“, isto Meyer:
    http://se.ethz.ch/teaching/2010-S/0050/index.html

    Obavezna knjiga sa često korišćenim receptima: Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides: Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1995, ISBN 0201634988

    Nakon toga slede baze podataka:
    http://infolab.stanford.edu/~widom/cs145/
    A First Course in Database Systems, Third Edition; Database Systems: The Complete Book, Second Edition

    Posle baza podataka, funkcionalno programiranje i formalne metode:
    http://www.infsec.ethz.ch/education/ss06/fmfp
    Richard Bird. Introduction to Functional Programming using Haskell. Prentice Hall Press, 1998

    haskell koristi pretežno američka vojska, ali nije toliko bitan sam jezik koliko koncepti koji se onda provlače i kroz php, javascript, python itd.

    Dobra knjiga o javascript-u:
    http://shop.oreilly.com/product/9780596517748.do

    Dobra knjiga kako se piše kod:
    Clean Code: A Handbook of Agile Software Craftsmanship, Robert C. Marti

    Dobra knjiga o unit testing-u:
    Working Effectively with Legacy Code, Michael Feathers

Ostavi komentar

Molimo vas da se prijavite koristeći jedan od sledećih načina da biste objavili svoj komentar:

WordPress.com logo

Komentarišet koristeći svoj WordPress.com nalog. Odjavite se / Promeni )

Slika na Tviteru

Komentarišet koristeći svoj Twitter nalog. Odjavite se / Promeni )

Fejsbukova fotografija

Komentarišet koristeći svoj Facebook nalog. Odjavite se / Promeni )

Google+ photo

Komentarišet koristeći svoj Google+ nalog. Odjavite se / Promeni )

Povezivanje sa %s