[ stray @ 23.03.2017. 13:58 ] @
Pozdrav ljudi otvaram ovu temu jer jer bih zeleo da ucim programiranje i prekvalifikujem se u programera.

Naime, zivim u inostranstvu gde se programiranje dosta placa, i sanse za posao su ogromne. Nikad nisam imao dodirnih tacaka sa programiranjem, ali sam spreman da opet pocnem da ucim i ako treba opet upisem fakultet kako bi naucio programiranje.

Trenutno imam 27 godina, i voleo bih da svi koji misle da me mogu posavetovati da to i urade. Koje knjige da kupim i sa kojim programskim jezikom da pocnem da se bavim?

Zeleo bih da napomenem da sam vec visoko obrazovan i da se vec bavim "ozbiljnim" poslovima, ali po mojoj licnoj proceni IT je buducnost.

Hvala svima koji zele da pomognu
[ jablan @ 23.03.2017. 14:57 ] @
http://norvig.com/21-days.html

(Nažalost, i srpski i hrvatski prevod ne rade kako treba.)
[ stray @ 23.03.2017. 15:24 ] @
@jablan

Dobar imput, samo nije dao nikakve konkretne smernice koju literaturu da pocnem da izucavam itd. Nasao sam ovde jednu "skolu" koja traje dve godine i MUST je da se posle 6 meseci zaposlis u IT branshi da bi bio u mogucnosti da dobijes diplomu. Koliko je to realno?
[ Rapaic Rajko @ 24.03.2017. 09:10 ] @
stray, ti ces bolje znati sa tom lokalnom skolom kako stoje stvari. Da se nauci za 2 godine, moguce je.

Ali dacu ti dobronameran savet. Programiranje jeste dobro placeno, ali to ima svoju cenu - jako je tezak posao. Kako mi rece davno jedna doktorka na medicini rada: 'programirati je teze nego zemlju kopati' (mada nema dodirnih tacaka ). Tako da. u ovom poslu o(p)staju samo oni koji VOLE programiranje kao zanat (ubrajam tu sebe). Svi koji udju u IT zarad plate, relativno brzo (5-10 godina) se izduvaju i traze 'stranputice' - prelaze u management i slicno. Programiranje je, otprilike, nesto kao pismeni iz matematike 5-6 sati SVAKI DAN; naravno da nije sve matematika, ali potrebna koncentracija je tu negde. Pa ti vidi.

Pozz i svako dobro!
[ since1986BC @ 24.03.2017. 09:46 ] @
Bolji naslov teme bio bi 'wanna be programmer'
Naslov moze i da se gugla.

@jablan, dzaba prevodi - engleski u programiranju je required / mandatory.
I Jablan i Rajko su dobili po +1 za postove.
[ djoka_l @ 24.03.2017. 10:13 ] @
Više puta sam pisao na ovu temu, ali kako mi se čini da si ozbiljan, neće mi biti teško da napišem još jednom.

Prvo, postoji jak razlog zašto je programiranje dobro plaćen posao - ne može svako da bude programer, već je potrebno značajno obrazovanje. Nije to slučaj samo sa programiranjem, recimo kod tebe u CH su verovatno i lekari dobro plaćeni, pa ti ne pitaš kako da postaneš lekar za 6 meseci (ili dve godine). Nije nemoguće, ali je teško. Jedan moj poznanik, koji je bio uspešan programer, u jednom momentu je odlučio da postane advokat, završio pravni fakultet, dao pravosudni ispit i sada mlati pare kao advokat. Kao što vidiš, moguće je ali nema uspeha preko noći.

Zato je velika greška ako misliš da za posao programera postoji neka prečica i da se po tom pitanju razlikuje od neke druge struke koja zahteva univerzitetsko obrazovanje. Naravno, programiranje nije medicina, ali nije nešto što može da ti u kratkom roku donese rezultate.

Ja vidim neke četiri oblasti znanja koja su potrebna programeru:

1. Opšte znanje iz matematike. Matematika nije presudna, ali ljudi koji su dobri u matematici obično su i dobri u programiranju. Obe oblasti zahtevaju sličan način razmišljanja - sposobnost da se problem razloži na jednostavnije probleme (to je generalni inženjerijski pristup rešavanju svakog problema) i da se ti sitniji problemi reše na sistematski način.
2. Opšte znanje iz računarstva - algoritmi, strukture podataka, teorija informacija, računarske mreže, operativni sistemi, kompajleri, baze podataka
3. Programski jezici (da jezici, a ne jezik). Jezici su samo sredstvo da se ideje i algoritmi pretoče u kompjuterski kod.
4. Domensko znanje. Recimo, ako praviš sistem za knjigovodstvo, jako je poželjno da znaš kako knjigovodstvo funkcioniše, ako praviš sistem za on-line prodaju, lepo bi bilo da znaš malo o marketingu, kartičarskom poslovanju itd.

Pa sad, šta kupiti.
Za matematiku, postoje udžbenici koji obrađuju ono što je bitno za programera, oblasti kao što su binarna logika, kombinatorika i verovatnoća, brojni sistemi. Ozbiljni kursevi (na primer na Coursera.org) obavezno daju i neke linkove na literaturu iz matematike koja je potrebna u kursu.
Za opšte znanje iz računarstva biblija je The Art of Computer Programming - ne kažem da moraš da imaš, ali bolje knjige nećeš naći. Poenta nije da znaš sve moguće algoritme napamet, ali će pomoći da ne izmišljaš toplu vodu svaki put kada sedneš da nešto kodiraš.
Što se jezika tiče, za bilo koji ozbiljan projekat nećeš proći samo sa jednim jezikom. Recimo, da želiš da napraviš e-commerce sajt. Trebaće ti prvo da dobro savladaš HTML i CSS. Pa će ti onda biti potrebno da napraviš front-end. Za to će ti trebati poznavanje nekog frameworka, recimo Bootstrap 3, a možda će biti potrebno nešto drugo, recimo poznavanje JavaScript jezika i Polymer ili Angular. Polymer koristi JavaScript, dok Angular koristi TypeScript - što je u principu JavaScript koji liči na C#, pa bi bilo zgodno da znaš i C#. Pa će onda biti potrebno da se napiše serverski deo. A tu će možda biti Java. I to ne "gola" Java nego će se koristiti Spring Boot framework.
Naravno, u nekom momentu će ti biti potrebno da malo proučiš OAuth 2 protokol. Pa će komponente aplikacije da komuniciriaju preko AMQP. Naravno, JSON i YAML su obavezni. Pa onda SQL, ODBC ili JDBC. Možda ti neće trebati SQL ako koristiš neki ORM, ili recimo Linq.

Mogu ovako da ređam skraćenice do sutra. Poenta je da i ljudi koji su dugo u ovim vodama morajiu stalno da uče nove stvari i da ne postoji "univerzalni kit" znanja koji nekoga čini programerom.
[ Rapaic Rajko @ 24.03.2017. 11:35 ] @
Sad me je djoka_I gornjim postom (+1) naveo da se zamislim.

Verujete li da je bilo situacija da na pitanje 'da li sam koristio to i to (skracenica)' nisam bio siguran: poznato mi, al opet... i tek kad sednem za masinu i probam, skontam da sam to koristio, apsolvirao, drljao dok je trebalo, i na kraju - potisnuo u zaborav. Toliko je ucenja 'u hodu' u ovom poslu, da se vise pitam gde je tu smisao. Ili sam ja mozda nerealan, posle 20+ godina programiranja... ko bi ga znao.

Pozz
[ zwischenberger @ 24.03.2017. 12:16 ] @
Citat:
djoka_l:
Više puta sam pisao na ovu temu, ali kako mi se čini da si ozbiljan, neće mi biti teško da napišem još jednom.

Prvo, postoji jak razlog zašto je programiranje dobro plaćen posao - ne može svako da bude programer, već je potrebno značajno obrazovanje. Nije to slučaj samo sa programiranjem, recimo kod tebe u CH su verovatno i lekari dobro plaćeni, pa ti ne pitaš kako da postaneš lekar za 6 meseci (ili dve godine). Nije nemoguće, ali je teško. Jedan moj poznanik, koji je bio uspešan programer, u jednom momentu je odlučio da postane advokat, završio pravni fakultet, dao pravosudni ispit i sada mlati pare kao advokat. Kao što vidiš, moguće je ali nema uspeha preko noći.

Zato je velika greška ako misliš da za posao programera postoji neka prečica i da se po tom pitanju razlikuje od neke druge struke koja zahteva univerzitetsko obrazovanje. Naravno, programiranje nije medicina, ali nije nešto što može da ti u kratkom roku donese rezultate.

Ja vidim neke četiri oblasti znanja koja su potrebna programeru:

1. Opšte znanje iz matematike. Matematika nije presudna, ali ljudi koji su dobri u matematici obično su i dobri u programiranju. Obe oblasti zahtevaju sličan način razmišljanja - sposobnost da se problem razloži na jednostavnije probleme (to je generalni inženjerijski pristup rešavanju svakog problema) i da se ti sitniji problemi reše na sistematski način.
2. Opšte znanje iz računarstva - algoritmi, strukture podataka, teorija informacija, računarske mreže, operativni sistemi, kompajleri, baze podataka
3. Programski jezici (da jezici, a ne jezik). Jezici su samo sredstvo da se ideje i algoritmi pretoče u kompjuterski kod.
4. Domensko znanje. Recimo, ako praviš sistem za knjigovodstvo, jako je poželjno da znaš kako knjigovodstvo funkcioniše, ako praviš sistem za on-line prodaju, lepo bi bilo da znaš malo o marketingu, kartičarskom poslovanju itd.

Pa sad, šta kupiti.
Za matematiku, postoje udžbenici koji obrađuju ono što je bitno za programera, oblasti kao što su binarna logika, kombinatorika i verovatnoća, brojni sistemi. Ozbiljni kursevi (na primer na Coursera.org) obavezno daju i neke linkove na literaturu iz matematike koja je potrebna u kursu.
Za opšte znanje iz računarstva biblija je The Art of Computer Programming - ne kažem da moraš da imaš, ali bolje knjige nećeš naći. Poenta nije da znaš sve moguće algoritme napamet, ali će pomoći da ne izmišljaš toplu vodu svaki put kada sedneš da nešto kodiraš.
Što se jezika tiče, za bilo koji ozbiljan projekat nećeš proći samo sa jednim jezikom. Recimo, da želiš da napraviš e-commerce sajt. Trebaće ti prvo da dobro savladaš HTML i CSS. Pa će ti onda biti potrebno da napraviš front-end. Za to će ti trebati poznavanje nekog frameworka, recimo Bootstrap 3, a možda će biti potrebno nešto drugo, recimo poznavanje JavaScript jezika i Polymer ili Angular. Polymer koristi JavaScript, dok Angular koristi TypeScript - što je u principu JavaScript koji liči na C#, pa bi bilo zgodno da znaš i C#. Pa će onda biti potrebno da se napiše serverski deo. A tu će možda biti Java. I to ne "gola" Java nego će se koristiti Spring Boot framework.
Naravno, u nekom momentu će ti biti potrebno da malo proučiš OAuth 2 protokol. Pa će komponente aplikacije da komuniciriaju preko AMQP. Naravno, JSON i YAML su obavezni. Pa onda SQL, ODBC ili JDBC. Možda ti neće trebati SQL ako koristiš neki ORM, ili recimo Linq.

Mogu ovako da ređam skraćenice do sutra. Poenta je da i ljudi koji su dugo u ovim vodama morajiu stalno da uče nove stvari i da ne postoji "univerzalni kit" znanja koji nekoga čini programerom.


Djoka, odlično si to sintetizovao. Moje nedavno zapažanje je da dosta ljudi relativno lako postaju testeri i da je potražnja za njima velika. Koliko se tester razlikuje od "normalnog" programera i koliko je od programerske baze znanja potrebno testeru?
[ dejanet @ 24.03.2017. 14:15 ] @
Knjiga "The Art of Computer Programming ", ako djoka_l misli na Knuth-a, je overkill.
[ djoka_l @ 24.03.2017. 15:06 ] @
Citat:
zwischenberger:
Djoka, odlično si to sintetizovao. Moje nedavno zapažanje je da dosta ljudi relativno lako postaju testeri i da je potražnja za njima velika. Koliko se tester razlikuje od "normalnog" programera i koliko je od programerske baze znanja potrebno testeru?


Danas se dosta pažnje posvećuje automatskom testiranju. Agilne tehnike programiranja (recimo TDD - test driven development) zahtevaju da se testiranje piše zajedno sa kodiranjem i često broj linija koda u testovima prevazilazi broj linija koda u samom softveru. Zbog toga se zahteva da sada programeri budu i testeri. Naravno, postoje i inženjeri koji se isključivo bave testiranjem, konfigurišu kompletna test okruženja i prave gomilu simulacija koje programer koji piše unit testova uopšte i ne testira. Tester programer se, u principu, ne razlikuje mnogo od programera, ali su neki ljudi bolji od drugih u tome.
Na kraju uvek ostaje i ljudsko testiranje gde je presudno domensko znanje, a programersko znanje može da bude samo plus. Recimo, kod nas u firmi dosta ljudi koji rade testiranje su došli iz biznisa - radili su u nekoj od firmi koje koriste naš ili sličan softver i znaju suštinu posla. Takvi ljudi su često radoznali i pre ili kasnije nauče SQL, pa onda direktno u bazi prate rezultat svog rada u aplikaciji. Razlika između takvog testera i nekog ko ne zna ništa o programiranju je slična kao razlika kada kod automehaničara dođe vikend vozač i profesionalni vozač. Onaj prvi će reći - nešto mi lupa ispod haube, a drugi će reći nešto tipa - pri 2300 obrtaja u 4. brzini čuje se neuobičajen zvuk iz turbine a motor reaguje neuobičajeno sporo na dodavanje gasa.
[ zwischenberger @ 24.03.2017. 20:16 ] @
Ja sam stekao utisak (površan) da je testiranje rudarskiji posao od programiranja, jer sam čuo da se često on outsourcuje, pa je meni testiranje više lopatanje - ne moraš da si kreativan i da smišljaš rešenja za problem nego da buljiš u kod i tražiš tuđe greške (banalizujem). Zbog toga mi se učinilo da za brz ulazak u IT testiranje može da bude "prečica"
[ balavi @ 24.03.2017. 20:31 ] @
@ djoka_l

vala objasnio si ga i mutav bi shvatio, taman si mi dao neke smernice ...
svaka čast bate ...


ovaj, testiranje ili QA, koliko vidim to je sada novo a traže ga dosta
gledan smerove na fakultetima, nigde to nema
jel ima neki kurs negde za to ...
mislim, gledao neku literaturu, sve neka teorija , ništa praktično
mene to zanima, nekako više mi glava preteže na tu stranu ...

vidim da programer može biti i QA, kako kaže se ovde, , jel dovoljno da naučiš programiranje,
pa posle , u kodu, tražiš suprotno od onog što si naučio?
[ Branimir Maksimovic @ 24.03.2017. 21:16 ] @
Eh bas pocetnik na C++ forumu ;p
[ Zlatni_bg @ 24.03.2017. 21:21 ] @
Samo djoki da se javim da je dobio + od mene i iskazem postovanje i ovako. Kao iole iskusan programer sam prosao sve te stvari i potpisujem njegov post i svojim imenom.

Kljucna stvar je da precica nema.
[ Zlatni_bg @ 24.03.2017. 21:23 ] @
Citat:
balavi:
@ djoka_l

vala objasnio si ga i mutav bi shvatio, taman si mi dao neke smernice ...
svaka čast bate ...


ovaj, testiranje ili QA, koliko vidim to je sada novo a traže ga dosta
gledan smerove na fakultetima, nigde to nema
jel ima neki kurs negde za to ...
mislim, gledao neku literaturu, sve neka teorija , ništa praktično
mene to zanima, nekako više mi glava preteže na tu stranu ...

vidim da programer može biti i QA, kako kaže se ovde, , jel dovoljno da naučiš programiranje,
pa posle , u kodu, tražiš suprotno od onog što si naučio?


U nekim vecim firmama Q&A sam video da rade vrlo neiskusne osobe koje samo testiraju razvijen softver na dnevnom nivou i prijavljuju bagove, probleme pri radu i slicno. Mislim da cak nije potrebno programersko znanje za tako nesto, osoba koja te bira za posao ce vise gledati tvoje rezonovanje od svega ostalog.
[ Shadowed @ 24.03.2017. 22:13 ] @
Citat:
zwischenberger: ne moraš da si kreativan i da smišljaš rešenja za problem nego da buljiš u kod i tražiš tuđe greške (banalizujem).

Tester nikad (ili gotovo nikad) nema pristup kodu. Ne proverava on kod vec funkcionisanje aplikacije.
Cak i ako pravis unit testove, sto vec spada u programiranje, nemas pristup kodu vec pozivas odredjene delove.

Kad kazem da nemas pristup, ne mislim da fizicki nemas (mada je to cesto slucaj) vec da se testiranje ne bavi samim kodom vec funkcinalnoscu.

Pregledanje tudjeg koda se zove code review i ne rade ga testeri vec drugi programeri, obicno jednako ili vise iskusni od onog ko je pravio taj kod.


Citat:
Zlatni_bg: U nekim vecim firmama Q&A sam video da rade vrlo neiskusne osobe koje samo testiraju razvijen softver na dnevnom nivou i prijavljuju bagove, probleme pri radu i slicno. Mislim da cak nije potrebno programersko znanje za tako nesto, osoba koja te bira za posao ce vise gledati tvoje rezonovanje od svega ostalog.

To je slucaj zato sto je testiranje obicno cisto manuelno testiranje pa se u nedostatku stvarno strucnog kadra uzimaju ljudi po principu "snaci ce se, nije to bas toliko komplikovano". A cesto i nije :)

Edit:
Za neki osnovni QA, programiranje nije neophodno. Ali je vrlo pozeljno da znas npr. osnovni xml (u novije vreme i json) i sql. Razlog je sto ces cesto trebati neke config fajlove podesavati da bi video rezultat tog podesavanja. Takodje, kao sto je neko pomenuo primer, trebace ti da u sql bazi vidis kakve je podatke napravila aplikacija i da li su oni ispravni.

Medjutim, za napredniji QA je izvesno programersko znanje potrebano jer se mnogi testovi sada automatizuju pa je pravljenje raznih skripti vrlo korisno.
[ balavi @ 24.03.2017. 22:14 ] @
@Zlatni_bg

da, u pravu si za testere, to sam i ja čuo
ali onda naiđem na oglas za

- Test Automation Engineer
- Quality Assurance Engineer

pa mi Engineer u imenu mi asocira da to mora biti neko ko je iznad
testera i da mora da ima debelo znanje ...

[ Zlatni_bg @ 24.03.2017. 22:31 ] @
E jeste Shadowed, toga sam se setio, XML je naveden bio kao zahtev...
[ Branimir Maksimovic @ 25.03.2017. 00:53 ] @
Za te skripte i HTML/XML i ne treba znanje programiranja, to moze svaki skript kidi da odradi... koriscenje gotovih frameworka i to, ne treba nista posebno znati... sto se tice znanja iz domena to ti treba jedino ako soliras... pa nema strucnjaka u datom domenu iz firme.. kolko god sam radio uvek je bilo strucnjaka iz date oblasti koji su mi objasnili sta i kako. Osnovne stvari u programiranju se nauce za metar dana ako je jezik lak. tipovi, petlje i uslovi te pozivi funkcija. Neko dublje razumevanje nije potrebno za pocetak rada.
[ Zlatni_bg @ 25.03.2017. 05:31 ] @
Jasta. Ja sam sa prvom ozbiljnom web aplikacijom za rad sa nekim proizvodima (necu imenovati ovde) i generisanjem faktura, profaktura, 100 nekih gluposti za koje nisam cuo sa 18 godina, pa potom naplatom preko PP i jos nekih servisa, morao vise da se informisem oko toga kako funkcionise naplata firme i ucim ono sto bi neko na ekonomiji recimo ucio nego sto mi je PHP i ostalo bilo problem :) Problemi freelancinga. Ali danas kako nas ubise indijci slaba vajda od istog, bar u web programiranju.
[ Shadowed @ 25.03.2017. 10:54 ] @
Citat:
Branimir Maksimovic: Za te skripte i HTML/XML i ne treba znanje programiranja

Za xml ti ne treba znanje programiranja nego ti treba osnovno znanje xml-a za testiranje.
Za pisanje skripti i automatizaciju testova ti treba osnovno znanje programiranja i tog jezika u kojem to radis.
[ Panta_ @ 29.03.2017. 07:36 ] @
Citat:
Pozdrav ljudi otvaram ovu temu jer jer bih zeleo da ucim programiranje i prekvalifikujem se u programera.

Trenutno imam 27 godina, i voleo bih da svi koji misle da me mogu posavetovati da to i urade.

Zeleo bih da napomenem da sam vec visoko obrazovan i da se vec bavim "ozbiljnim" poslovima, ali po mojoj licnoj proceni IT je buducnost.

Hvala svima koji zele da pomognu


Prijavi se u SNS skolu programiranja, tu ces najlakse i najbrze (3 meseca) da se prekvalifikujes u programera ili bilo sta drugo iz oblasti IT-a. A, imaces i starije i "iskusnije" kolege od kojih ces moci da ucis.

Citat:
Od stotinu njih, 22 je starosti od 22 do 25 godina, 62 kandidata je od 26 do 35 godina starosti, dok je 16 kandidata starijih od 36 godina. Najstariji učesnik ima 56 godina.


100 NAJBOLJIH Odabrani prvi polaznici za prekvalifikacije u IT sektoru
[ balavi @ 29.03.2017. 15:11 ] @
ostavite temu bez mešanja politike

gde odem , učlani se u ovo u ono, političati ovo ono ne rade samo kradu, nakrali se ne misle na narod, ovi se nakrali, oni ... sendvičari .... botovi ....

ne moram to i ovde da čitam i da me smara ... taman krenula tema lepo, javlja se fin i pametan narod, kad dođe neko sa tipom komentara kao na blicovom sajtu
kada se komentariše dnevno politička scena

ništa ne može da prođe bez politike pa i ovo,

a ti panto znaš da prednost imaju SNS-ovci i njihovi sendvičari ...

zahebi molim te


[ Branimir Maksimovic @ 29.03.2017. 16:18 ] @
Ja zaista ne znam nikog ko je fakultetski obrazovan ko se nije lako presaltovao na programiranje. Mislim na ove sto su studirali (elektro)tehniku. Ne mogu danas da zamislim fakultet a da ne nauci bar osnove programiranja. To je danas osnovna pismenost.
[ Rapaic Rajko @ 30.03.2017. 08:10 ] @
Ja, s druge strane, imam kolegu iz gimnazije koji je doktorant matematike, i koji je pre 15-ak godina pokusao da nauci C zarad nekog projekta oko tv box-a. Kad sam ga zadnji put pitao za to (5-6 godina kasnije), projekat je bio 'na ledu'. Nema pravila.
[ Shadowed @ 30.03.2017. 08:43 ] @
Citat:
Branimir Maksimovic: Ja zaista ne znam nikog ko je fakultetski obrazovan ko se nije lako presaltovao na programiranje.

Znam ih ja dosta. Mnogi od njih su nakon neuspelog ulaska u programerski posao otisli u menadzere i testere :]
[ Andreja Dulovic @ 30.03.2017. 09:33 ] @
Nista gore od dev menadzera koji nije tehnicki potkovan.
[ Branimir Maksimovic @ 30.03.2017. 10:30 ] @
Rajko, nisam mislio sad C i embedded ili neko low level programiranje. Za skriptanje i Javu i to sam mislio. Nesto sto zahteva poznavanje hardvera i pogotovo C zahteva disciplinu i znanje koje opet trazi godine ucenja. Recimo iako programiram od 1983. trebalo mi je jedno 5 godina da naucim dobro C++ od 1992. A iznajmljivan sam kao C ekspert vec 1994 ;)
[ keepgoing @ 30.03.2017. 13:00 ] @
@Rapajic
Ne cini ti se da je drugar imao vaznije stvari na listi prioriteta?

Sta je po misljenju ekipe dobar menadzer?
[ Rapaic Rajko @ 30.03.2017. 13:27 ] @
Citat:
keepgoing: @Rapajic
Ne cini ti se da je drugar imao vaznije stvari na listi prioriteta?


Poznajuci ga, nije to gurnuo u zapecak; jednostavno je zapelo. Setih se da sam u startu ponudio pomoc, ali nije me potrazio.
Cinjenica je da programiranje ne lezi svakome.
[ Andreja Dulovic @ 30.03.2017. 13:47 ] @
Citat:
keepgoing:
Sta je po misljenju ekipe dobar menadzer?


Neko ko se brine da tim ima sve sto im treba da rade (cisti zahtevi, jasan put odluke, itd), poznaje tempo i nacin rada svakog clana tima, cesto pita za feedback, ume da stvori odnos poverenja sa klijentom ali i da kaze "ne" kad je potrebno, i drzi u glavi celu strukturu proizvoda/buzeta, itd. Onako generalno, najvaznija osobina bi bila integritet i sposobnost da zaista tehnicki razume projekat.
[ keepgoing @ 30.03.2017. 14:01 ] @
"Ne lezi svakom programiranje" - to je toliko uopsteno da ne vidim smisao iza toga.
Isto kao i "Programiranje je tesko".

@Rapajic
Mislim, kad je nesto vazno, koristis sva raspoloziva sredstva. Kad nije, onda odmahnes rukom i kazes: "mnja".
[ DusanSukovic @ 30.03.2017. 18:13 ] @
Citat:
djoka_l:
Recimo, da želiš da napraviš e-commerce sajt. Trebaće ti prvo da dobro savladaš HTML i CSS. Pa će ti onda biti potrebno da napraviš front-end. Za to će ti trebati poznavanje nekog frameworka, recimo Bootstrap 3, a možda će biti potrebno nešto drugo, recimo poznavanje JavaScript jezika i Polymer ili Angular.
.



Izvint'e gospon Djoka, ali da li za ovo treba bistriti zivotno delo Donalda Knutha, obnoviti ili ako se ne zna i nauciti integrale, plus algoritmi?
[ DusanSukovic @ 30.03.2017. 18:14 ] @
Citat:
Rapaic Rajko:
Ja, s druge strane, imam kolegu iz gimnazije koji je doktorant matematike, i koji je pre 15-ak godina pokusao da nauci C zarad nekog projekta oko tv box-a. Kad sam ga zadnji put pitao za to (5-6 godina kasnije), projekat je bio 'na ledu'. Nema pravila.



Po Djokinoj teoriji onda svi odlicni matematicari su i odlicni programeri? :-D
[ DusanSukovic @ 30.03.2017. 18:16 ] @
Citat:
Zlatni_bg:
Samo djoki da se javim da je dobio + od mene i iskazem postovanje i ovako. Kao iole iskusan programer sam prosao sve te stvari i potpisujem njegov post i svojim imenom.

Kljucna stvar je da precica nema.



Znaci procitao si Donalda Knutha odmah cim si poceo uciti programiranje?
[ DusanSukovic @ 30.03.2017. 18:18 ] @
Citat:
keepgoing:
"Ne lezi svakom programiranje" - to je toliko uopsteno da ne vidim smisao iza toga.
Isto kao i "Programiranje je tesko".

@Rapajic
Mislim, kad je nesto vazno, koristis sva raspoloziva sredstva. Kad nije, onda odmahnes rukom i kazes: "mnja".



Finta je u motivaciji, ako mislis da se domognes para dobrih na brzaka, tesko onda. Jedino ako ti lezi u 1 ujutro da juris neki bug :-D
[ djoka_l @ 30.03.2017. 23:11 ] @
Citat:
DusanSukovic:
Izvint'e gospon Djoka, ali da li za ovo treba bistriti zivotno delo Donalda Knutha, obnoviti ili ako se ne zna i nauciti integrale, plus algoritmi?


1. Nisam pomenuo integrale, čak sam i nabrojao oblasti matematike potrebne programeru.
2. Nemam knjigu The Art... (samo neke delove u kopijama), ali imam gomile knjiga koje pokrivaju većinu stvari koje je Knuth stavio u knjigu.
3. Izvinet gospon Dušane, ali šta Vas kvalifikuje kao eksperta za IT edukaciju? Ovo pitam samo na osnovu napisanog na ovom forumu, prošao sam kroz 26 stranica Vaših postova i osim dve čisto programerske teme u kojima ste učestvovali (i pri tom napravili greške) nisam video ništa drugo. Uzimate za pravo da učestvujete u svakoj diskusiji koja se bavi učenjem programiranja, ali ništa od toga ne videsmo na forumu. Sa druge strane, ja sam svoju IT stručnost pokazao dosta na ovom forumu, pa čak i ako sam slučajno pogodio temu, kako to da se moje mišljenje poklapa sa sadržajem većine ozbiljnih informatičarskih kurikuluma?
[ DusanSukovic @ 31.03.2017. 06:05 ] @
Citat:
djoka_l: 1. Nisam pomenuo integrale, čak sam i nabrojao oblasti matematike potrebne programeru.
2. Nemam knjigu The Art... (samo neke delove u kopijama), ali imam gomile knjiga koje pokrivaju većinu stvari koje je Knuth stavio u knjigu.
3. Izvinet gospon Dušane, ali šta Vas kvalifikuje kao eksperta za IT edukaciju? Ovo pitam samo na osnovu napisanog na ovom forumu, prošao sam kroz 26 stranica Vaših postova i osim dve čisto programerske teme u kojima ste učestvovali (i pri tom napravili greške) nisam video ništa drugo. Uzimate za pravo da učestvujete u svakoj diskusiji koja se bavi učenjem programiranja, ali ništa od toga ne videsmo na forumu. Sa druge strane, ja sam svoju IT stručnost pokazao dosta na ovom forumu, pa čak i ako sam slučajno pogodio temu, kako to da se moje mišljenje poklapa sa sadržajem većine ozbiljnih informatičarskih kurikuluma?



Nisam se proglasio ekspertom za IT edukaciju niti definitivno to jesam. Gresim kao i svi ljudi na svetu. Samo ovako sa skromnim iskustvom vidim da nisi pedagog u oblasti, moguce je da imas veliko znanje u IT oblasti, ali pedagogija ti nije bas jaca strana IMHO.
Na kojem je univerzitetu kod nas "The Art of Computer Programming" deo curriculuma?
Podsecas me na profesora matematike iz jedne provincijalne gimnazije koji na kontrolnom testu dao ucenicima 4 zadatka da rese, gde su svi pali test, da bi posle na diskusiji o ta cetiri zadatka valjda 2 casa na tabli mrljao samo jedan :-D Taj je lik generacijama ucenika zgadio matematiku do kraja zivota :-D E btw, jesi procitao "Art of Computer Programming" od pocetka do kraja ? Za kraj, sta sam pogresio u tim dvema cistim programerskim temama?


Pozdrav,

Dusan

[ Rapaic Rajko @ 31.03.2017. 12:04 ] @
Citat:
keepgoing: "Ne lezi svakom programiranje" - to je toliko uopsteno da ne vidim smisao iza toga.
Isto kao i "Programiranje je tesko".

@Rapajic
Mislim, kad je nesto vazno, koristis sva raspoloziva sredstva. Kad nije, onda odmahnes rukom i kazes: "mnja".


Hocu da kazem da programiranje trazi specifican nacin razmisljanja; potrebne su godine rada da bi se to izbrusilo. Cak i posle ucenja ('suvog') C-a, sledi ucenje/razumevanje koncepta OOP-a. Pa kad se na to nadoveze konkurentno programiranje (multithreading) itd.itd. ... lista je podugacka.

P.S. Ako ne znas sta je 'suvi' C, OOP i multithreading - dalja diskusija je bespredmetna (bez uvrede ).

P.P.S. Prezivam se Rapaic, bez 'j'
[ keepgoing @ 31.03.2017. 13:04 ] @
@Rajko
Izvini, to "j" sam verovatno pretocio iz "Rajko" :)

Izreke tipa "...potrebne su godine rada da bi se to izbrusilo" nekako podsecaju na "special snowflake" sindrom ;).

@Andreja Dulovic
Hvala na odgovoru.

Bilo bi super kada bi jos neko dao odgovor na pitanje "sta je dobar menadzer?".

@stray
Part-time na ZHAW nije skup a ni pretezak pa probaj :)
1000 foruma nije nista u poredjenju s licnim iskustvom.





[ Rapaic Rajko @ 03.04.2017. 09:02 ] @
Citat:
keepgoing: @Rajko
Izreke tipa "...potrebne su godine rada da bi se to izbrusilo" nekako podsecaju na "special snowflake" sindrom .


[ mwac @ 04.04.2017. 08:10 ] @
Postovanje ljudi, vidim da ima dosta kurseva koji uz neke fine cifre obećavaju da će vas naučiti programiranju, koliko je to realno za neki peridod od pola god ?
[ mwac @ 04.04.2017. 08:10 ] @
I da li neko može da preporuči koja je programerska "školica" dobra u NS ?
[ jablan @ 04.04.2017. 09:36 ] @
Citat:
mwac:
Postovanje ljudi, vidim da ima dosta kurseva koji uz neke fine cifre obećavaju da će vas naučiti programiranju, koliko je to realno za neki peridod od pola god ?

Zameni "programiranju" sa npr. "finski jezik", pa proceni sam.
[ Skakawac13 @ 04.04.2017. 12:14 ] @
Svi jezici se sastoje od slova(kodova),naucis slova tj. azbuku,pa krenes da ucis reci pa da sklapas recenice...proste,prosto prosirene,itd...kad to naucis mozes samostalno da krenes u kombinaciju slova,reci ,recenica ,tekstova(metafora)...iskoristis potencijal mozga da razume tj. dekodira nove kodove zavisno koji programski jezik ili jezike ucis jer su svi povezani i onda ce ti biti razumljivo i naucices,samo-motivacija,rad,rad,rad i sve je to moguce. 😆

Potencijal svog intelekta ne potcenjuj ,iznenadices se sta sve moze.
Ja sam upravo krenuo na it ,php web development i kad hoces to i mozes.
[ DusanSukovic @ 04.04.2017. 15:11 ] @
Citat:
mwac:
I da li neko može da preporuči koja je programerska "školica" dobra u NS ?



Ima ona sto je pre imala saradnju sa Levi9. Posto sam imao predavanja na Zapadu i u njoj, mogu da kazem da je na kvalitet na nivou. Predavanja rade profesori sa NS Uni. Imas osnovni (bio sam na ovom da obnovim gradivo ali sam bio pogubljen nekim drugim privatnim problemima, ali su mi rekli kapiram stvari i da mogu da idem dalje) i napredni kurs, kad ta dva zavrsis mislim da 99 % dolazis u obzir za sljaku da pocnes da radis, ne treba ti na ovom stadiju "The Art Of Programming" ;-) Izvini Djoka
[ DusanSukovic @ 04.04.2017. 15:17 ] @
Evo web sitea :-)

http://aleph.rs/osnoveprogramiranja/


Sigurno je jos neko ovde na forumu bio u ovoj skoli, pa neka iznese utiske, da ne ispadne da sam pristrasan :-)
[ djoka_l @ 05.04.2017. 11:47 ] @
Evo mog primera: sa 16 godina sam pomislio da želim da postanem programer, ali nisam ništa znao o tome. Sa 17 sam dobio prvi kompjuter i sve mi je postalo jasnije. Danas, 34 godine kasnije i dalje učim. Trenutno su mi otvorene tri knjige u pdf-u (DevOps, Ansible, Docker).

Kada sam, u jednom momentu, 5 godina nakon fakulteta, napravio rekapitulaciju ispalo je da od konkretnih stvari koje sam naučio na faksu, koristim sam dve stvari i dalje, a sve ostalo što radim sam naučio posle fakulteta.
[ djoka_l @ 05.04.2017. 12:01 ] @
Da to objasnim drugim rečima - posle 6 meseci kursa bićeš bolji programer od većine onih koji su imali kurs od 5 meseci, ali lošiji od skoro svih koji su posvetili više od 7 meseci u tome. A konkurencija za posao će ti biti klinci koji dve ili četiri godine studiraju, a programirnjem se bave od 3 razreda srednje, pa iza sebe imaju po 5 ili više godina iskustva.

Ili zamisli da sada kreneš da učiš da sviraš gitaru/harmoniku/klavir. Moguće je da ćeš da se pojaviš na Pinku, ali je pitanje da li je to za 6 meseci ili ne...
[ DusanSukovic @ 06.04.2017. 17:08 ] @
Citat:
djoka_l:
Evo mog primera: sa 16 godina sam pomislio da želim da postanem programer, ali nisam ništa znao o tome. Sa 17 sam dobio prvi kompjuter i sve mi je postalo jasnije. Danas, 34 godine kasnije i dalje učim. Trenutno su mi otvorene tri knjige u pdf-u (DevOps, Ansible, Docker).

Kada sam, u jednom momentu, 5 godina nakon fakulteta, napravio rekapitulaciju ispalo je da od konkretnih stvari koje sam naučio na faksu, koristim sam dve stvari i dalje, a sve ostalo što radim sam naučio posle fakulteta.




Pa promeni se dosta na polju tehnologije za 32 godine :-)


[ DusanSukovic @ 06.04.2017. 23:03 ] @
Citat:
djoka_l:
Da to objasnim drugim rečima - posle 6 meseci kursa bićeš bolji programer od većine onih koji su imali kurs od 5 meseci, ali lošiji od skoro svih koji su posvetili više od 7 meseci u tome. A konkurencija za posao će ti biti klinci koji dve ili četiri godine studiraju, a programirnjem se bave od 3 razreda srednje, pa iza sebe imaju po 5 ili više godina iskustva.

Ili zamisli da sada kreneš da učiš da sviraš gitaru/harmoniku/klavir. Moguće je da ćeš da se pojaviš na Pinku, ali je pitanje da li je to za 6 meseci ili ne...



Djoka, sto dekuraziras coveka? Koliko znam, nije pitao kako da bude neurohirurg?
[ stray @ 16.04.2017. 21:06 ] @
Ufff promenio sam e-mail, nisam ni skontao da mi ne stizu odgovori na temu. Izvinjavam se na tome.

Hvala svima na odgovorima, hvala vam mnogo jer ste mi dali odgovor koji sam u neku ruku i zeleo da cujem a to je da je moguce, naravno sa velikim trudom, ali sta je inace u zivotu lako...

Od objavljivanja post-a radio sam dosta na ovoj temi, i dosta sam se informisao i kontaktirao par programera itd.

Sastavio sam neku strategiju, budite slobodni da je kritikujete, dodate imput i feedback da date.

Sledece nedelje kontaktiracu Uni SG ili Uni ZH(ZHAW) da upisem ekonomsku informatiku, buduci da imam bachelor i master u ekonomiji sa Swiss UNI "verovatno" ce mi priznati skoro sve ekonomske predmete i ostaviti mi informaticke da polazem da bih dobio diplomu.
Za to ce mi trebati od 1-2 godine da sve polozim i dobijem diplomu. Za to vreme, bih poceo da ucim programske jezike, u zavisnosti od toga cime bih zeleo da se bavim u programiranju.
Tako da bih za dve do tri godine imao diplomu informaticara i nekog iskustva u programiranju.

Moram da napomenem da ja radim 100% i da imam team od 5 ljudi trenutno, koji vecinu posla obavljaju umesto mene, tako da bih dnevno na poslu mogao vezbati oko 2-3 sata dnevno, jel to dovoljno? Ili bih morao min 5 sati dnevno?

Sto se tice matematike, tetka mi je bila profesor matematike na Uni i vezbao sam sa njom math od 7 god, e sad nzm koliko je moja statistika, kombinatorika, slicnost itd povezana sa tom naprednijom matematikom, jer verujem da je to ovde na mnogo vecem nivou.

Da me ne shvatite pogresno, okrecem se programiranju jer je buducnost u koju ja verujem a ne zbog para. Ja trenutno imam lepu poziciju i naravno zaradjujem lepo. Ali jasno vidim da se moja bransha polako gasi, i da cu mozda u buducnosti ostati bez posla ne svojom kruvicom vec zbog stanja na trzistu.
[ djoka_l @ 16.04.2017. 21:41 ] @
Ovo sada već počinje da liči na ozbiljan plan!

Poznajem dosta dobrih programera koji su znanje stekli na ekonomskom fakultetu. Ono što će ti biti plus je to što poznaješ ekonomiju, pa ćeš biti vrlo ozbiljan kandidat za rad na poslovnim aplikacijama. Ono što će ti biti presudno je poznavanje baza podataka, projektovanje poslovnih sistema, sistem analiza, nešto malo matematike koja nije mnogo drugačija od one na ekonomskim studijama. Neki konkretan programski jezik nije tu presudan, nauči ih nekoliko, a velika je verovatnoća da će ti na poslu biti potrebno nešto totalno deseto što nisi ozbiljno ni učio na studijama.

Mislim da je greška da se sada koncentrišeš na konkretan programski jezik, ali ako baš želiš unapred da učiš, mislim da bi ti bilo korisno da kreneš sa web tehnologijama, pa bi možda prvi izbor jezika bio JavaScript. Ono što je zgodno kod njega je što se interpretira, što nema striktnu proveru podataka i što se koristi na klijentskoj strani weba, pa rezultat možeš odmah da vidiš u brauzeru, pa da se ne gnjaviš sa učenjem ogromnog broja biblioteka nekog "ozbiljnijeg" programskog jezika.

Ako budeš stvarno upisao tu ekonomsku informatiku, bolje ti je da se koncentrišeš na to što se tamo uči, a da samostalno samo malo produbljuješ znanje.

Brza rekapitulacija: prvo i osnovno, baze podataka (SQL jezik). po mom iskustvo, za neki početni nivo, treba ti oko 120 sati za ovo (procena se bazira na tronedeljnim kursevima sa 8 sati dnevno, uz predavača, za samostalno učenje možda i više). Drugo, web tehnologije, HTML, CSS, JavaScript, možda PHP. Za ovo računaj bar 300 sati za neki početni nivo.

[Ovu poruku je menjao djoka_l dana 16.04.2017. u 22:56 GMT+1]
[ DusanSukovic @ 18.04.2017. 08:01 ] @
Citat:
stray:
Hvala svima na odgovorima, hvala vam mnogo jer ste mi dali odgovor koji sam u neku ruku i zeleo da cujem a to je da je moguce, naravno sa velikim trudom, ali sta je inace u zivotu lako...

Sto se tice matematike, tetka mi je bila profesor matematike na Uni i vezbao sam sa njom math od 7 god, e sad nzm koliko je moja statistika, kombinatorika, slicnost itd povezana sa tom naprednijom matematikom, jer verujem da je to ovde na mnogo vecem nivou.

Da me ne shvatite pogresno, okrecem se programiranju jer je buducnost u koju ja verujem a ne zbog para. Ja trenutno imam lepu poziciju



"Mozes da mislis da nesto mozes da uradis, a mozes i da mislis da ne mozes da uradis, i oba puta ces biti u pravu" ;-) Ko je to rekao? Ford?

Od autora Kenneth Rosen knjiga "Discrete Mathematics" je udzbenik za Bachelor nivo sto se tice matematike na zapadnim univerzitetima.


http://www2.fiit.stuba.sk/~kva...s_Applications_7th_Edition.pdf


Srecno!


[ sgtalexxx @ 07.05.2017. 18:26 ] @
Drugari,ima li neko ideju kako pronaci prakse u inostranstvu sto se tice ove oblasti? Konkretno Norveska ili Svajcarska u kojoj clan koji je otvorio temu kaze da je veoma velika potraznja za IT sektorom.
[ pl4stik @ 16.05.2017. 09:47 ] @
Off
@sgtalexxx
Google search, kako drugacije?

On
Slazem se da je stavrno tesko nauciti programiranje per se ali nije nemoguce za 1,5-2 godine bar do nekog pocetnickog nivoa da pocnes da zaradjujes ali treba da si bas uporan i da ucis, a jos bitnije da vezbas od jutra do sutra. Sto se tice raznovrsnosti programskih jezika i to se slazem ali na primer za pomenuti e-commerc web site (i ne samo web site) prakticno ti treba HTML/CSS/JS jer u js-u mozes da pises i front-end i back-end, a boga mi i mobile ... Mozes da koristis TypeScript (vremenom hoces jer ce ti olaksati programiranje) a i ne moras ni sa Angularom ni sa bilo kojim js library/framework zatim taj OAuth moze i ne mora al treba da bi standardizovao auth sa velikima, pa lambda isto treba jer ce ti biti lakse al ne mora, etc... Znaci sedi i nauci pure JS i na belom konju si :)

Just my 2c, peace :)
[ sgtalexxx @ 07.06.2017. 16:16 ] @
Mislio sam da li postoje neki specificni sajtovi ili nesto? Ovako je izuzetno tesko. Voleo bih savet nekog ko ima iskustva sa ovim.Hvala
[ mjanjic @ 07.06.2017. 16:42 ] @
Jedan kratak savet: raditi u kontinuitetu, čak i ako se radi o banalnim stvarima.

Ne radiš nešto nekoliko meseci i odmah si "zarđao", počneš da se cimaš oko sitnica...


Najlakše je sređivati sitnice u gotovom kodu.
Uzmimo jednostavniji primer za "programiranje", imaš neki Web sajt sa dosta CSS-a i JS-a, i treba da doradiš neke sitnice, izmeniš funkcionalnosti...
I to nije toliki problem, zar ne.

ALI, kad kreneš od maltene praznog editora, onda odjednom hiljadu problema počinje da se pojavljuje, postane napor da spakuješ najobičniju formu kako treba.
Nađeš neki dobar dizajn forme, ali on ima svoj CSS ili čak više njih, čije ti se deklaracije mešaju sa CSS deklaracijama tvog sajta (imaju npr. neke iste class i id atribute).
Onda kreneš to nešto da budžiš, uzmeš malo CSS-a iz jednog projekta, malo iz drugog, nešto iz trećeg, onda krene glavobolja...

I od najprostije stvar napravi se problem - koji nije nerešiv, nego počneš da se čudiš kako oko banalnih stvari gubiš toliko vremena.

Zato se u Web dizjanu/programiranju često strogo odvajaju poslovi - jedna osoba radi funkcionalnosti, a druga dizajn.
Onaj ko radi dizajn, ne mora da se maltretira oko funkcionalnosti, i obrnuto, tako da je manje glavobolje.



Isto to primeni na neku desktop ili serversku aplikaciju. Čak i da nemaš nekog posla oko dizajna, razlika je ogromna ako radiš na nečemu što već ima poprilično koda i ako krećeš od praznog editora.


To ti je maltene isti efekat kao u osnovnoj/srednjoj školi kad se preslišavaš neki predmet (posebno ako se buba napamet).
Dok bacaš krajičkom oka pogled na knjigu, sve znaš, čim zatvoriš knjigu, odjednom shvatiš da ne znaš ništa.

Tako ti je i u programiranju. Sve dok radiš nešto sa nekim gotovim kodom, čini ti se super i prosto.
Problem je kad treba da kreneš od nule sa bilo čime, tj. od praznog editora...

Onda tek vidiš koliko imaš ili nemaš rutine sa najprostijim stvarima.
A tu je cilj da ono što koristiš 90% vremena znaš vrhunski kako bi na tome gubio najmanje vremena.

Ali, čim napraviš pauzu nekoliko meseci, posebno ako radiš nešto potpuno drugačije, treba ti neko vreme da povratiš staru formu.


Zato sve te "školice" imaju upitnu vrednost ako ne kreneš to znanje odmah da koristiš za nešto konkretno.
[ zimbra @ 10.07.2017. 01:48 ] @
Ja sam cimao par drugara oko ovoga i neki koncenzus je da treba savladati redom

- data tipovi i strukture [detaljno]
- c [detaljno]
- c++ [povrsno ka detaljnom]
- sta de talje zanima (java, swift, php..) do nivoa koji ti je potreban (vrhunski u nekom trenutku) ..

pronasao sam brdo on-line literature za c, c++ i ovo kasnije, ali ono sto mi svi kazu da treba da se prodje pre C-a, ne mogu nigde da nadjem... ne vidim nigde free da mogu da skinem knjigu koja obradjuje osnovne tipove podataka, strukture, racunske operacije u razlicitim osnovama, floating point aritmetiku, relacionu algebru i slicno.. da li neko zna, moze da podeli, neku online knjigu na tu temu?
[ Branimir Maksimovic @ 10.07.2017. 10:56 ] @
Sve to imas na wikipediji sa sve referentom literaturom. Ne djuture, ali ako znas sta da trazis...
[ zimbra @ 10.07.2017. 12:24 ] @
Citat:
Branimir Maksimovic: Sve to imas na wikipediji sa sve referentom literaturom. Ne djuture, ali ako znas sta da trazis...


kad znas sta trazis onda si vec davno preskocio "pocetnicku" poziciju :( tu i jeste problem, savladati te neke osnovne koncepte pre nego se krene sa ucenjem programiranja, a ne mozes da ih trazis na wikipediji pre nego znas sta su, a kad znas sta su onda mozes da se "podsetis" na wikipediji ali tada nisi noob
[ jablan @ 10.07.2017. 13:03 ] @
Po mom mišljenju, nema potrebe da se toliko udubljuješ u podatke i strukture. Te stvari jesu krucijalne, ali možeš ih savladati učeći neki programski jezik. A i mnogo je lakše nego da ih učiš nasuvo.

Još jedan savet: kloni se C++-a, barem dok ne savladaš dobro bar 2-3 jezika (kad kažem dobro, mislim da napišeš ponešto veće u svakom od njih).
[ mjanjic @ 10.07.2017. 17:01 ] @
Programiranje se najlakše uči kroz rešavanje problema, isto kao i matematika ili fizika.

Imaš gomilu primera po raznoj literaturi (nađi npr. knjige 70 ili 150 problema na Google intervjuima i sl., mada je to možda i preteško za početak, ali ima i elementarnih primera), zatim možeš i sam da smisliš problemčiće, kao npr. "naći najmanji i najveći broj od N unetih brojeva" i sl., imaš takvih zadačića u primerima testova/kolokvijuma/ispita iz Uvoda u programiranje i sličnih predmeta na ETF-u i drugim fakultetima koji imaju studijske programe slične Softverskom inženjerstvu.

Iako se primeri čine jednostavni, pokušaj da zapisuješ vreme potrebno za rešavanje. A onda se informiši koliko je nekom iskusnom programeru potrebno vremena za takve "trivijalne" stvari.


Neko pomenu finski jezik, a ja bih pomenuo i sportove kao što su npr. košarka/fudbal/odbojka. Ako nisi dobro savladao elementarne stvari, niko te neće zaposliti niti ozbiljno shvatiti na razgovoru za posao ma koliko poznavao napredne tehnologije i bez obzira koliko ti umeo da radiš neke optimizacije i sl. Jer, jednostavno, u tim naprednim stvarima se sigurno nećeš uvek snaći kako treba ako nemaš odbru osnovu u znanju onoga što se koristi preko 90% vremena.



Dakle, jednostavno odabereš jezik, instaliraš potrebne alate, i kreneš sa jednostavnim primerčićima.
Jeste da neće efekat biti "WOW" kao kad neki "komšijin mali" napravi "web sajt" od gotove bootstrap teme u par klikova, ali tebi nije cilj da radiš za džeparac, već da za nekoliko godina imaš platu bar duplo veću od zvaničnog proseka u Srbiji, zar ne?
[ boguda @ 10.07.2017. 22:46 ] @
Da sad pocnem da ucim programiranje i da razmisljam sta sve treba da naucim poceo bih od oglasa za posao. Npr "Laravel programer sa odlicnim znanjem php-a, phpunit html5 css, sass, Javascript git vagrant itd(to je ono osnovno sto se trazi za programera pocetnika, hehe salim se)".
E onda istrazis sta je svaka od tih stavki, pa naucis da je Laravel ili Yii php framewok, pa vidis koji ima bolji community pa kad sve odaberes nadjes tutorijale sve ih odgledas i tri puta se predomislis, odustanes i vratis se e onda krenes da pravis nesto sto su svi vec pravili i posle par godina tako besumucnog i uzaludnog rada shvatis da ti sad vec gore spomenute tehnike, znas, da mozes da citas i poneki tudji kod ili dokumentaciju i da su ti je vecinom jasani e onda je vreme da trazis posao.
Moze to i lakse, naucis Wordpress(ne omalovazavam samo sam video dosta takvih "programera" ) znas da koristis gomilu plugin-ova napravis nekoliko sajtova koji i ne znas kako rade(a rade) i zaposlis se u nekoj firmi koja stancuje jeftine sajtove i ti si programer.I imas cak i platu. Ali nije fora zapamtiti jednacinu nego je izvesti na tabli pred celim odeljenjem...
[ Bradzorf012 @ 11.07.2017. 12:59 ] @
Prošlo je već tri meseca od kako je postavljena tema, pa autor iste može za početak da dobije i jedan test zadatak. Na primer, da u jednom prolazu prebroji koliko puta se string rec pojavljuje u stringu recenica. Ove nizove karaktera korisnik unosi sa tastature.
[ Branimir Maksimovic @ 11.07.2017. 14:41 ] @
Koji algoritam? boyer-moore, horsepool ili brute force? ;) (a ima i efikasna sse 4.2 instruckija za brute force)
[ Bradzorf012 @ 13.07.2017. 20:51 ] @
Hm, nije poenta naučiti napamet sve poznate algoritme za sortiranje, pretragu, itd, već sa tom osnovom ubaciti mozak u mod koji te tera na razmišljanje i pronalaženje optimalnog rešenja. Recimo, u primeru koji sam naveo u zavisnosti od duzine unetih stringova može se primeniti jedno, drugo ili treće rešenje. Možda je optimalno baš ono koje nije obrađeno u literaturi. Nema recepta za neki problem u praksi, niti postoje gotovi delovi konstrukcije koje slažeš kao lego kockice da bi dobio gotov proizvod. Ok, postoje, ali ako ostaneš samo na tom nivou, nećeš biti u stanju da proračunaš "statiku" objekta, stvari će ti biti jasne samo na površini, a ne i suštinski. Može i to, šta se kome više sviđa i gde se pronalazi. Na kraju, boguda je to bolje objasnio od mene:

Citat:

Ali nije fora zapamtiti jednacinu nego je izvesti na tabli pred celim odeljenjem...
[ Branimir Maksimovic @ 13.07.2017. 22:06 ] @
Problem je u tome sto se ne dolazi lako do tih algoritama inace ne bi dobili imena po svojim pronalazacima ;p
[ Bradzorf012 @ 14.07.2017. 15:54 ] @
Pa čekaj malo, ti se pozivaš na neke algoritme. Kako znaš za njih ako se do istih ne dolazi lako? Imaš love, pa si platio? Šta to nije javno dostupno? Ništa ne shvatam.
[ Branimir Maksimovic @ 14.07.2017. 15:57 ] @
Sto se pravis glup kad nisi ;)
Ti propovedas ovde nekakvu nauku o pametovanju tipa razmisljanja o nekakvim resenjima koje nema u literaturi, umesto da pokupis gotovo resenje i primenis ga shodno.
[ Bradzorf012 @ 14.07.2017. 17:02 ] @
Aham, tako znači. Da li ti čitaš pažljivo ono što sam napisao ili samo kuckaš reda radi? Evo da ti nacrtam, kao arhitekta ili građevinski inženjer bih morao da pogledam(pregledam, naučim) i realizujem bar stotinak različitih planova, projekata kuća pre nego što bih bio u stanju da napravim sopstveni za neki specifičan zahtev kupca. Da li ti je bar malo jasnije? Možeš imati zilion algoritama za sve i svašta, ali konkretni naručilac posla će ti tražiti nešto što nećeš moći da realizuješ samo prepisivanjem iz knjige ili metodom kopiraj i pritisni dugme. Da je tako, niko ne bi učio nikakvu školu, niti bi bilo minimalnog napretka.

Tebi ostaje da nam kažeš do kojih se algoritama ne dolazi lako?
[ Branimir Maksimovic @ 14.07.2017. 17:45 ] @
Jedno je algoritam drugo je implementacija algoritma. Tu imas siroku slobodu i zavisi od toga u kom jeziku radis. E sad retko ko ce i to da radi kad imas vec gotove f-je koje samo pozivas ;)

Implementacija resenja u softverskom svetu zavisi od firme do firme. Osim ako nisi glavni programer u firmi i tek pocinjes posao pa onda biras tehnologije.
Nema tu mnogo mesta za kreativnost ako radis u firmi kao grunt koji treba da dumbara kod koji je neko narucio.
Ne dolazi se lako do novih algoritama za pretrazivanje stringova recimo. Mozes ti da smislis neki pa da kazem koristim Bradzor algoritam ;)
[ Bradzorf012 @ 14.07.2017. 20:53 ] @
Dobro, sve je to lepo, sve se slažem, manje više.

Samo, još uvek mi nije jasan smisao sledećeg:

Citat:
Branimir Maksimovic:
Problem je u tome sto se ne dolazi lako do tih algoritama inace ne bi dobili imena po svojim pronalazacima ;p


Ne dolazi se lako do njih u naučnom smislu? Hm, nešto nisam siguran da će postavljač da radi na nekom institutu ili da vodi doktorante. Zašto bi se on oko toga uopšte potresao? Ne dolazi se lako do dobrih algoritama, zato što nisu svi dostupni javnosti? Ako tako nešto postoji, opet teško da će raditi za ciju ili neku sličnu firmu.

Zaista, šta je poenta citirane izjave, osim da potvrdi očigledno?
[ Branimir Maksimovic @ 14.07.2017. 21:13 ] @
Poenta je da to ne ide tako kako si zamislio ;p
Dakle ima ko da pronalazi algoritme, i ima ko da ih primenjuje. Jedni su naucnici, drugi programeri ;p
Stvar je u tome da naucnik ima oho vremena a programera pritiskaju rokovi ;p
[ Bradzorf012 @ 14.07.2017. 22:27 ] @
Citat:

Poenta je da to ne ide tako kako si zamislio ;p

Kako sam zamislio? Kako ide, objasni mi molim te.

Citat:

Dakle ima ko da pronalazi algoritme, i ima ko da ih primenjuje. Jedni su naucnici, drugi programeri ;p

Ovo nisam znao dok mi ti nisi rekao. Uzgred, do otkrića u nekoj oblasti često dolazi slučajno, do otkrića ne dolazi uvek i samo onaj kome je to posao, tj. naučnik, istraživač, saradnik u institutu.

Citat:

Stvar je u tome da naucnik ima oho vremena a programera pritiskaju rokovi ;p

Ni ovo nisam znao dok mi nisi rekao. Opet, ni naučnik nema sve vreme ovog sveta, ne može ni on baš da digne sve četiri uvis i svirucka, pa ako naiđe inspiracija, naiđe, ako ne nikom ništa. Da, programera pritiskaju rokovi, ali se od njega ne traži da otkrije i uobliči novu naučnu teoriju, ne traži se čak ni da otkrije neki novi algoritam, pa makar ponudio i minimalno poboljšanje. Ne, traži se da bude dobro upoznat sa kretanjima u nauci(oblasti, struci), kako bi sve ono što je do tada otkriveno mogao relativno jednostavno da primeni na konkretan problem koji rešava.

Citat:

Problem je u tome sto se ne dolazi lako do tih algoritama inace ne bi dobili imena po svojim pronalazacima ;p

Zaista, šta je poenta citirane izjave, osim da potvrdi očigledno?