[ exesample @ 17.06.2012. 05:09 ] @
Krecem da ucim programiranje pa me zanima koja je razlika izmedju programiranja u Windows-u i Linux-u.
[ Teratron @ 17.06.2012. 05:27 ] @
Razlika je u tome sto pametnijima fale pare !
[ exesample @ 17.06.2012. 05:36 ] @
Ne razumem te sta hoces da kazes?
[ Burgos @ 17.06.2012. 06:20 ] @
Ako tek počinješ da programiraš, još nekoliko meseci/godina nećeš videti nikakvu razliku - ulaz/izlaz, osnovne komponente jezika, strukture podataka, ugrađeni algoritmi, itd - su uglavnom isti.

Razlika nastaje tek kada se dođe do sistemskih poziva (ali ne svih), mrežnog programiranja, konkurentnog programiranja, programiranja grafičkog okruženja (opet, ne u svakom slučaju - postoje rešenja koja su ista na obe platforme), itd.

Postoje i okruženja kao što je Java i koja rade potpuno isto na obe platforme, osim ako ne koristiš specifične usluge operativnog sistema (za čim retko kada imaš potrebu, jer je sama biblioteka Jave ogromna i uglavnom pokriva sve što pruža OS).
[ Nedeljko @ 17.06.2012. 10:31 ] @
Ignoriši Teratrona. Hoće da kaže da na linuksu nema para, što nema blage veze sa realnošću. Najplaćeniji programer koga poznajem ne zna ništa niokakvom programiranju specifičnom za vindouz i radi samo pod linuksom.

No, to ne znači da je linuks leglo para. Naprotiv, to znači da za zaradu trendovi uopšte nisu bitni, nego koliko si dobar u nečemu. Možeš ti da pratiš trendove i učiš .NET, pa da na konkursu budeš jedan od sto kandidata za jednu poziciju. No, to opet ne znači da u .NET-u nema para. Budi prva liga u .NET-u i oduvaćeš sve te kandidate. Onaj najplaćeniji koga znam ne radi ni javu (koja je takođe u trendu) ni C++ koji odavno nije u trendu, nego C koji tek nema blage veze sa trendovima, ali je prvoklasan stručnjak za sistemsko *NIX programiranje. Dakle, to je jedini bitan parametar za zaradu.

Za tebe je najvažnije da odlučiš kojom oblašću želiš da se baviš. To nema nikakve veze sa trendovima, već isključivo sa tobom, tj. gde sebe vidiš. Radi ono u čemu ćeš biti najbolji, bilo da je to programiranje, trgovina, pravljenje sladoleda ili nešto četvrto.
[ Nedeljko @ 17.06.2012. 12:52 ] @
Evo oko čega smo se nedavno Burgos i ja složili:

Citat:
Nedeljko: A što se ozbiljne komercijalne primene tiče, moj stav o jezicima i alatima je da kojoj ovci runo smeta, tu nema ni ovce ni runa. Ko ne može pomoću npr. Lazarusa da zaradi pare, nijedan mu alat neće pomoći. Ako pak može da zaradi pare sa besplatnim alatkama, komercijalne će mu samo unaprediti posao.
[ Au197/79 @ 18.06.2012. 22:47 ] @
Osim ako nećeš biti .Net programer Linux će ti pomoći u profesionalnom razvoju. Svet poslovnih aplikacija je svet unix-a (u šta i linux spada). Najvažniji serveri se vrte na nekom unixoidu u kompanijama reda banaka, mobilnih operatera i slično. Čak i da u firmi razvijaš programe na win-u, taj će program kad dođe na pravo izvršenje ići na unixoid.

S druge strane učenje linuxa će ti pomoći da naučiš programiranje. Recimo u javi postoji klasa System. U njoj postoje 3 objekta: err, out i in. Ko zna unix zna da svaki proces koji se pokrene na sistemu ima 3 toka: izlazni tok za greške (err), izlazni tok (out) i ulazni tok (in). Dalje učenje o paralelnom programiranju ima veze sa operativnim sistemom, šta je daemon, šta je fork procesa...

S treće strane, win u svakoj novoj verziji je sve više unixoid tj. teži da postane isto što i linux. MacOS X je čist unixoid. Jednom rečju unixioidi su prošlost, sadašnjost i budućnost...
[ Ivan Dimkovic @ 18.06.2012. 23:05 ] @
@exesample,

Mislim da je Nedeljko dao najbolji savet - ali evo i ja cu da podvucem par stvari:

1. Razlike izmedju Windows i Linux API-ja su kozmeticke prirode (oba OS-a imaju multitasking, podrzavaju visestruke niti, imaju virtuelnu memoriju i memorijski menadzer sa stranicama, sockete za mrezno programiranje, sinhroni i asinhroni I/O, itd...) - fokusiraj se na osnove programiranja i bice ti potrebno dosta vremena da stignes do razlika izmedju Win32/WinRT i POSIX API-ja,

2. Kreni sa C++ - C++ je moderan objektno orijentisani jezik posle koga neces imati nikakvih problema sa npr. Javom ili C# a imaces vrlo jake osnove i razumevanje mnogih sistemskih stvari

3. Pocni sa konzolnim aplikacijama, one su iste i na Win-u i Linuxu - kada savladas moderne osnove programiranja (logiku, grafove, strukture podataka, fundamentalne stvari OO programiranja, paralelno izvrsavanje itd...) onda mozes da razmislis za sta zelis da se specijalizujes

Danas su velike sanse da ces i ovako i onako programirati za vise operativnih sistema - tako da posle #3 nece biti lose da naucis fundamentalne stvari Linux i Windows i, eventualno, iOS arhitekture paralelno sa necim usko-specificnim sto te zanima (npr grafika, baze podataka, telekomunikacije, masivno-paralelno programiranje ala CUDA/OpenCL itd...)

Dakle, ukratko - fokusiraj se prvo na osnove, koje su iste za sve OS-eve posto bez toga neces biti dobar ni u cemu, a sa dobrim osnovama pitanje OS razlika ti nece predstavljati nikakav problem.
[ Nedeljko @ 19.06.2012. 07:09 ] @
+1

Jedino se ne bih složio sa tačkom 2. Šta ako hoće da se bavi vebom? Može odmah da krene na PHP za šta mu C++ iskustvo ne znači ništa. Takođe, bilo Java, bilo C# može biti prvi jezik. Šta ako ga sistemske stvari uopšte ne interesuju?

A što se tačke 3 tiče, ako nije veb u pitanju, ona stoji.
[ milanche @ 19.06.2012. 22:03 ] @
U zivotu programera postoji jedna neminovnost, a to je neprestana potreba za prilagodjavanjem novim
trendovima koji u principu nailaze vrlo brzim tempom, cesto brzim nego sto je potrebno da se posteno
i temeljno ovlada jednom tehnologijom.

Trziste i lokalne okolnosti nekada zahtevaju ne samo promenu alatke/razvojnog okruzenja, nego i promenu
kompletne delatnosti. Jedini nacin da bi se brzo, lako, bez mnogo stresa prilagodjavalo novim stvarima je da
se bude solidan u fundamentima profesije.

Sta bi po mom misljenju bili fundamenti profesije (koje je bolje ucvrstiti sto ranije to bolje) ?

Iz price moram da izbacim web programiranje (HTML, PHP), za koje naredni saveti verovatno uopste ne vaze:

1) Elementarno poznavanje arhitekture racunara (dakle, onih najprostijih stvari, tipa kako radi CPU, sta je
DMA, sta su interrupt-i, sta je cache, sta su registri, pristup memoriji preko adresa, itd), za sta treba jedno
posteno popodne da se procita iz dobre knjige, za ne-inzenjere mozda i malo duze.

2) Elementarno poznavanje osnova procesa pisanja programa: source -> preprocessor->compiler/asembler ->linker.
Osnove debug-ovanja i koriscenja debugger-a.

3) C programski jezik (intenzivnih nekoliko meseci do godinu dana, sa prolaskom kroz sve do sada pobrojane
delatnosti ("logiku, grafove, strukture podataka, fundamentalne stvari OO programiranja, paralelno izvrsavanje itd..."),
sve to u domenu konzolnih aplikacija (bez GUI-ja).

4) Elementi objektno-orijentisanog programiranja u C-u (izdvajanje funkcionalnosti u modul, pristup preko handle,
instancioniranje, open, init.....deinit, close, uvid u mogucnost enkapsulacije, kao i u mogucnost nasledjivanja,
override-ovanja funkcija itd.

Ovde se odprilike zavrsava zajednicka tacka za masu razlicitih profesionalnih usmerenja.

Izbor platforme za ucenje ?

Odgovor nije sasvim lak ni sasvim jednoznacan.

Linux-u bih dao prednost iz nekoliko razloga:
- tera programera da primenjuje najbazicnije radnje vezane za programiranje, pocevsi od pisanja Makefile-ova,
da jasno razume i razdvaja faze kreiranja programa. Najintenzivnije moguce nateruje programera na sticanje
i odrzavanje najfundamentalnijih programerskih znanja.
- sto munjevitom brzinom postaje sve prisutniji i sve dominantniji
- sto je po default-u podrzan od gomile open source paketa (cije poznavanje postaje izvesna buducnost programerske
struke)
- sto je iskustvo (C + console (command prompt)) odmah primenjivo i na Apple okruzenje
- sto prelaz na Windows nije ni tezak ni mucan, i uglavnom znaci prestanak brige oko nekih stvari.

Windows-u bi dao prednost iz sledecih razloga:
- VisualStudio je jos uvek verovatno najsavrsenija programerska alatka, besprekorno integrise masu stvari, i
nekome ko uci pruza skockano, potpuno uredjeno razvojno okruzenje u kojem moze vizuelno da isprati
i ispita/ispipa gomila toga.
Nedostaci:
- nepotpuna podrska za razne standarde (C99)
- previse 'ususkava' programera oslobadjajuci ga obaveze da vodi racuna o masi stvari (sto se na drugim
platformama zahteva i podrazumeva). Prelazak sa VisualStudio na *nix je daleko tezi nego u obratnom pravcu.
- stvara navike suprotne zahtevima cross-platform programiranja, koje ubrzano postaje trazeni deo opste
programerske kulture.


[Ovu poruku je menjao milanche dana 20.06.2012. u 02:59 GMT+1]
[ milanche @ 19.06.2012. 22:17 ] @
Kuda se profesionalni izbori racvaju dalje ?

Sa solidnim znanjem C (uz dodatka nekog od assembler-a) :
- naucen je jezik u kojem se belezi ogroman procenat algoritama svih vrsta
- sistem programiranje
- ogroman broj drugih scenarija (citavi framework-ci raznih vrsta su i dan-danas pisani kompletno u C-u
da bi bili siroko portabilni, sto znaci direktan i lak ufur na mobile devices koji u ogromnom procentu izvrsavaju
embedded Linux)
- vrlo je lako ukaciti i shell programiranje, perl (pre object-oriented faze) itd).
- vrlo je lako primeniti na Matlab programiranje
- kernel programiranje + low-level device driver-i
- programiranje mikroprocesora raznih namena, koji danas gotovo nikad ne dolaze bez podrske za C (kompajler/linker)
- DSP programiranje je sustinski ili C ili asembler

Objektno orijentisano programiranje (OOP)
- C++ nikako nece da zasmeta, predstavlja sledeci prirodni korak posle C-a.
- objective C - striktni superset C-a sa object-oriented dodacima, otvara masu perspektiva na Mac OS X
- Java (dajem izvesnu prednost nad C#, zbog lake portabilnosti)
- Python - ima prilicno veliku i rastucu popularnost
- C# (uprkos Mono project-u jos uvek je uglavnom primenjiv na Windows-ima).

Graficko okruzenje po izboru
- QT najbolje odgovara cross-platform zahtevima grafickog okruzenja (konkurenti polako gube trku)
- Java Swing, Visual C#,......


[Ovu poruku je menjao milanche dana 20.06.2012. u 02:58 GMT+1]
[ Nedeljko @ 20.06.2012. 13:32 ] @
Citat:
milanche: Linux-u bih dao prednost iz nekoliko razloga:
- tera programera da primenjuje najbazicnije radnje vezane za programiranje, pocevsi od pisanja Makefile-ova, da jasno razume i razdvaja faze kreiranja programa. Najintenzivnije moguce nateruje programera na sticanje i odrzavanje najfundamentalnijih programerskih znanja.

Ma, ne tera ga ništa. I tamo imaš Qt Creator, MonoDevelop, eclipse, pa i Code::Blocks i NetBeans. Naravno, ja sam svoje prve programe pod Linuxom pisao u Midnight Commander-ovom editoru i kompajlirao sa make i ručno napravljenim Makefileom. Prvi IDE pod Linuxom mi je bio eclipse.
Citat:
milanche: - sto munjevitom brzinom postaje sve prisutniji i sve dominantniji

To je opšte poznato. Priča se već 12 godina.
Citat:
milanche: VisualStudio je jos uvek verovatno najsavrsenija programerska alatka, besprekorno integrise masu stvari, i nekome ko uci pruza skockano, potpuno uredjeno razvojno okruzenje u kojem moze vizuelno da isprati i ispita/ispipa gomila toga.

Naročito kada ga ukenjaju ovako.
[ Nedeljko @ 20.06.2012. 14:30 ] @
Citat:
milanche: - sto je po default-u podrzan od gomile open source paketa (cije poznavanje postaje izvesna buducnost programerske struke)

A Windows nije? Od otvorenih biblioteka kojih nema na Windowsu mi jedino pada na pamet Xlib. Dobro, de, u Windows C programima se ne mogu koristiti fork(), getrusage() i još štošta.
Citat:
milanche: - sto je iskustvo (C + console (command prompt)) odmah primenjivo i na Apple okruzenje

Pa konzolni C programi se valjda mogu pisati i pod Windows-om.
Citat:
milanche: Nedostaci:
- nepotpuna podrska za razne standarde (C99)
- previse 'ususkava' programera oslobadjajuci ga obaveze da vodi racuna o masi stvari (sto se na drugim
platformama zahteva i podrazumeva). Prelazak sa VisualStudio na *nix je daleko tezi nego u obratnom pravcu.

Pa, znaš šta, VC++ nije jedini C++ kompajler za Windows (ima i GCC), a postoje i drugi jezici, a što se ušuškavanja tiče, mogao bi da pojasniš na šta konkretno misliš.

Meni se VC++ ne sviđa zato što umesto standardnih rešenja nudi neka svoja polovična (npr. nemam ništa protiv Interlocked funkcija, ali da ima i std::atomic, koga nema) i osim u pogledu optimizacije, gde debelo šije GCC, GCC je kvalitetniji kompajler.

Od dobrih alata, koje ima Linux, a nisu preneseni na Windows istakao bih Valgrind. Postoje još bolja komercijalna rešenja za VC++, ali ona koja su na nivou Valgrinda ili bolja od njega nisu primenljiva na druge kompajlere, a VC++ mi se iz navedenih razloga ne sviđa.

Ja više volim da radim pod Linux-om i ako radim nešto prenosivo, prvo mora skroz da prođe pod njim (zbog Valgrinda), pa se onda testira na Windowsu.
[ milanche @ 20.06.2012. 14:38 ] @
Citat:
Ma, ne tera ga ništa. I tamo imaš Qt Creator, MonoDevelop, eclipse, pa i Code::Blocks i NetBeans. Naravno, ja sam svoje prve programe pod Linuxom pisao u Midnight Commander-ovom editoru i kompajlirao sa make i ručno napravljenim Makefileom. Prvi IDE pod Linuxom mi je bio eclipse.


Tacno je i to - ima na Linux-u svega sto moze da pruzi komfor i to u pristojnoj meri.

Medjutim, dodir sa barebone build sistemom (Makefile itd) je svakodnevna stvar, open source paketi su
opste mesto, i koji god source tarball da skines, svi stizu u formi da mozes da kompajliras sa komandne linije
(slabo ko distribuira source u formi NetBeans projekata koji bi gurali u zapecak bazicnu build strukturu).

Veliki timski projekti (sa po 100+ ljudi u 10+ grupa) - niko i ne pomislja ni na sta osim na goli Make, i osnovni
build sa komandne linije. Kad treba da se doda nesto novo - svi ocekuju da ces da naskrabas svoj Makefile i
da se popnes jos malo gore i editujes top level Makefile da naznacis da build treba rekurzivno da svrati i do
tvoje kapije. Sta ces posle da koristis za sebe da pristupas kodu (edit/debug/itd) je prepusteno licnom izboru.
Tool-specific fajlovi se ne cekiraju u version control system.

Citat:
To je opšte poznato. Priča se već 12 godina.


E, sto kazu babe "prica narod svasta". Prica se svakog trenutka svasta o svacemu. Nema dana da se ne suska i
bruji o bar jedno pet tehnologija koje ce da naprave bum i izmene tehnolosku svakodnevicu, pa nista - tek neka
svaka 30-40-ta zavrede svoj inicijalni hype.

Drugo, o Linux-u se prica intenzivno brat bratu jedno 20 godina. Onaj Holandjanin iz teme o Google-u je jos 94-te
kao clan Philips research instituta napravio elaborat u kojem je prakticno zahtevao ('strongly suggest') da se
Linux kernel obavezno portuje na sve Philips-ove mikroprocesore, i izabere kao OS of choice.

Negde 1999-te iz Philips-a krece spinoff startup koji je od glave do pete koristio Linux za sve proizvode (Win su
imali samo u administraciji), i to je prvi slucaj koji ja znam u okolini da bez Linux-a nisi mogao ni da priviris u firmu.

Tek negde u poslednjih 5-7 godina je Linux u industriji potpuno pregazio bilo kakvu konkurenciju, i postao dovoljno
zreo kao okruzenje da moze da se radi posao bez teskog gubljenja vremena. Cak i tada - u ogromnom broju slucajeva
se cepa na virtualnim masinama, ljudi i dalje preferiraju host OS da bude ili Win 7 ili OS X.

Sve to imajuci u vidu, sugerisati pocetnicima Linux pre 10-12 godina bi zvucalo kao ambiciozna ezoterija, sa malo
dodira sa trzistem poslova, sa velikim potencijalom da nepotrebno gube vreme i nerve na neurednoj/nestabilnoj
platformi, umesto da se mirno fokusiraju na ucenje programiranja.

Danas je vec druga prica - ne valja ne reci eksplicitno da treba da se ide na Linux (i da se razmislja 'cross-platform').

Citat:
Naročito kada ga uk*njaju ovako.


Imaju jos uvek dosta prostora i za promasaje i korekcije. Ranije verzije rade jos uvek jako dobro.
[ milanche @ 20.06.2012. 15:12 ] @
Citat:
A Windows nije? Od otvorenih biblioteka kojih nema na Windowsu mi jedino pada na pamet Xlib. Dobro, de, u Windows C programima se ne mogu koristiti fork(), getrusage() i još štošta.


Meni konkretno padaju na pamet detalji vezani za moju uzu struku.

FFMpeg (koji je prakticno svugde po multimedijalnim projektima) njihov originalni tim glasno i jasno sasvim marginalno
podrzava na Windows-u. Naravno, postoji i ta mogucnost, postoji sajt sa ready made DLL-ovima, ali da kompajliras iz
source-ova (narocito sa VisualStudio u kojem ces najverovatnije da dizajniras i teras sve vezano za DirectX) su jezeve
muke.

Slicna stvar je i sa X264 projektom. Postoje recepti kako sve to uraditi sa MinGW, koji ne stizu u tacnoj i kompletnoj
formi, pa posle perioda zuljanja, na kraju dobijes binaries i to radi, ali sve su sanse da neces moci da prosetas debugger
kroz taj kod.

Dakle, nije nemoguce, ali je nesrazmerno komplikovano. Windows se de facto izbacuje iz podrske.

S druge strane, iz cisto poslovnog ugla:

Ako projekat pristojne velicine kompajlira na Linux desktop-u, vrlo su velike sanse da ce za uvrh glave dan-dva posla da
kompajlira i na Android native strani, kao i na OS-X-u.

Ako projekat pristojne velicine kompajlira na Windows-u, zahtevace minimum par nedelja da bi se portovalo, izuzev ako
nije pisano sa 'cross-platform' pristupom od samog pocetka.

Citat:
Pa konzolni C programi se valjda mogu pisati i pod Windows-om.


Naravno da mogu. Vec si rekao (fork()...) zasto je portabilnost verovatno umanjena.

Citat:
Pa, znaš šta, VC++ nije jedini C++ kompajler za Windows (ima i GCC), a postoje i drugi jezici, a što se ušuškavanja tiče, mogao bi da pojasniš na šta konkretno misliš.


Teoretski, nije VC jedini, ali ako ista ozbiljnije radis sto integrise dve ili vise tehnologije (recimo: media + internet) od kojih
je jedno reseno na vrlo platform-specific nacin (a drugo poprilicno), bez VisualStudio-a neces daleko stici. Sta god pokusas
da radis, sustizu te zezovi oko nerazresenih include-ova, razne nekompatibilinosti (nebitno cije), itd.

Sto se ususkavanja tice:
Pre nekih 15 godina sam bio u timu od nekih 20-tak inzenjera u firmi cija je linija Windows proizvoda drzala 50% planetarnog
marketa u consumer domenu. Negde u cosku, jako povucen bio je i jedan lik za kojeg uopste nije bilo lako provaliti ko je i cime
se bavi. Pitam za ruckom jednog kolegu koji je bio duze u firmi - kaze 'on je nas build inzenjer - dizajnira strukturu build sistema,
razresava dependencies, juri probleme sa simbolima po DLL-ovima, pravi customer/BIOS/...specific builds itd'. Mi ostali, naravno,
bili smo u svojim uzim specijalnostima, i osim najbanalnijeg minimuma (a-ha, to je DLL, treba da se iskopira u post-build step-u
na tu i tu lokaciju), nismo uopste lupali glavu ni sa cime sto nije bila najuza profesija (video/audio/DSP/GUI/stagod).

Danas su stvari dosle do nivoa da se od individualnog developera bez obzira na uzu specijalnost ocekuje da kompletno vlada
svim pitanjima vezanim za build, da neprestano njuska po literaturi vezanoj za linkere, juri missing symbols, trazi pravi flag,
pravi recursive build konfiguracije itd itd.

Na Linux-u je to svakodnevica manje-vise od prvih par meseci. Na Windows-u moze da se jako dugo prozivi bez da ikada moras
da zaviris u taj deo price koji je potpuno pokriven tool/project specificnim fajlovima. O razlikama konfiguracije prakticno nikada ne
mislis.
[ Nedeljko @ 20.06.2012. 15:57 ] @
Dobro, i šta onda rade jadni Windows multimedijaši i kako windows-ovci sastavljaju kraj s krajem?
[ milanche @ 20.06.2012. 18:59 ] @
Nisu uopste jadni.

Windows je i dalje sasvim legitimna platforma u svakom pogledu. Consumer proizvodi sasvim
sigurno medju tri legitimna targeta moraju da imaju i Windows. Pozicija za Windows i dalje ima,
iskustvo je i dalje na ceni, i daleko je od nivoa da moze da ga radi svaki sharan.

Razlika je samo u procentu u ukupnom obimu raspolozivih poslova. Konkretno u Dolini je nekada
na 100 radnih mesta vezanih za multimediju recimo 45% bilo striktno vezano za Windows (2-3% za
Apple, ostatak odlazio na razne real-time embedded kombinacije). Danas je procenat poslova za
Windows na odprilike 15%, ako i toliko, i nivo je odprilike stabilan, bez perspektive da ce potraznja
biti veca.

Za nekoga ko danas i u narednih nekoliko godina ulazi u taj market radne snage, Linux je daleko
trazeniji background.
[ Nedeljko @ 20.06.2012. 20:59 ] @
Ti očigledno nisi na zemlji, nego tamo negde u dolini.

Ko bre priča o dolini? Čovek će najverovatnije prvo da radi poslovne aplikacije i tako to, ako ne bude radio veb.
[ milanche @ 21.06.2012. 00:48 ] @
Neka iskustva pokazuju da se trendovi ipak na kraju dokotrljaju do svih strana sveta, neki pre a neki kasnije.
[ ivan.mojsilovic @ 21.06.2012. 09:01 ] @
Znam ja zasto milanche sve to pise. Zna on koliko bismo voleli da se bavimo takvim inzinjerskim poslovima pa nam udara ceznju. :)

Sva je prilika da ce novi kolega da sklapa web aplikacije (jelte i poslovne ce polako sve preci na web).

Ima sansi da se bavi inzinjeriom u par domacih firmi (3-4 ja znam) ali toje mizeran % svih poslova i mora dobro da se spremi za taj posao jer su tamo cesto uglavne razne tate koje bije da ubiju.
[ milanche @ 21.06.2012. 20:21 ] @
To sa strukom ti je kao autoput - ima milion exit-a, i svako je u principu slobodan da odabere gde ce da se odracva.
Po prirodi stvari, vecina ljudi uglavnom odabere neki najlagodniji put (sredjena platforma u bojicama, vizuelno lagano
i privlacno...).

Ipak, za nekoga ko je na samom pocetku nije lose da zna celu pricu i ceo dijapazon.

Citat:
ali toje mizeran % svih poslova


Prvo - nisam siguran da znas cega sve zapravo ima ni u Novom Sadu, da ne govorim o Nisu, a tek ne o Beogradu.

Sudeci samo po ovom forumu, ljudi koji se aktivno bave programiranjem mimo web-a u raznim nishama ima i od toga
sklapaju solidnu egzistenciju (radeci uglavnom sa stranim klijentima) ima u zadovoljavajucem broju. Licno sam imao
prilike da se profesionalno sretnem sa nekoliko njih koji mogu bez problema koliko sutra da rade u bilo kojoj jacoj
industriji.

Cinjenica je da je i odlazak (fizicki) ili centriranost na druga trzista sasvim dostupna varijanta. Mreze su sve brze,
informacije sve dostupnije, i jedino ogranicenje je u volji i zelji.

Citat:
razne tate koje bije da ubiju


I razni tate su nekad piskile po pesku. Sve se nauci.
[ ivan.mojsilovic @ 21.06.2012. 21:25 ] @
^a jbg sad i ti, da bas ne znam sta ima po Novom Sadu. Valjda to ide s godinama sta li.
[ milanche @ 21.06.2012. 22:04 ] @
Da li stvarno mislis da je sve sto ljudi rade obavezno uokvireno u firme i ofise, kao i da bas nema sanse da ih ne sretnes ?
[ ivan.mojsilovic @ 21.06.2012. 22:15 ] @
Naravno da ne, ali to nema veze sa tvojom izjavom gore. Cak i da ima, % su opet tacni osim ako u svakoj zgradi nemamo nekog milancheta.
[ Nedeljko @ 21.06.2012. 22:33 ] @
milanche

Znam iks ljudi koji se nikada nisu bavili prizmnostima, ali gledati na svet kroz prizmu silikonske doline je smešno.

Da si rekao "ako si u školi bio super sa matematikom i ambiciozan si..." to bi bila druga priča.
[ milanche @ 22.06.2012. 00:49 ] @
Da ne otvaram pandorinu kutiju jos sto tema i pod-tema - ukratko receno: mislim da preuranjeno i dosta
olako dajete prevagu 'laganijim' programerskim disciplinama.

Onome ko ima dovoljno klikera i zelje da programira malo toga je unapred nedostizno.

Prilicno vrednujem formalno obrazovanje (matematika, inzenjering...), ali sam se bezbroj puta uverio da je
najbitniji faktor licni drajv, licna zelja za saznanjem i usavrsavanjem. Bez obzira koliko je skola dobra, do
znanja se stize najpre samoinicijativno - moras sam da osetis da nesto treba i valja da znas. Od te tacke
pocinje traganje za informacijama, 'slaganje kockica' itd.

Nekome ko sada pocinje da se zanima za programiranje, ko je prakticno neispisana knjiga, i vrlo verovatno
ima pred sobom vremena da od sebe napravi sta god mu padne na pamet, ograniti perspektive u startu
mislim da je pogresno i lose.

Na kraju krajeva - iako je neosporno da procentualno veci broj ljudi odabira laksi put u programersku profesiju,
procenti sasvim drugacije izgledaju kad se uporede zbirne zaradjene sume.
[ ivan.mojsilovic @ 22.06.2012. 06:19 ] @
Aman ko je to negirao ovde :) Da ne gnajvimo ljude, ako uspe da nadjei da se bavi time blago njemu. To je cela poenta.
[ Shadowed @ 22.06.2012. 07:50 ] @
Citat:
milanche: Prilicno vrednujem formalno obrazovanje (matematika, inzenjering...), ali sam se bezbroj puta uverio da je
najbitniji faktor licni drajv, licna zelja za saznanjem i usavrsavanjem.

Sa ovim se sasvim slazem, ali ne znamo kako stoji stvar sa tim u ovom slucaju. Razliciti ljudi zele da nauce programiranje iz razlicitih razloga, sa razlicitom kolicinom zelje i razlicitim predispozicijama za to. Tvoj savet je odlican - za manji deo ljudi (oni koji imaju predispozicije, zele da potpuno budu u tome i uporni su).
Za jos jedan mali deo ljudi je savet ok (oni koji se ne uklapaju u ove iznad ali nece odustati kada im ne bude islo nego ce promeniti pristup. Za njih je dobro sto ce usput pohvatati neke bitne stvari).
Veliki broj ljudi jednostavno nema mentalni sklop za bavljenje programiranjem, to hoce da radi jer je solidno placno a ne zato sto ih zanima, jednostavno ne spadaju u gornjih 20% ljudi iz industrije itd. i oni koji nisu u prethodnoj grupi ce jednostavno odustati kada krenu tim nacinom koji si ti predlozio. Neki nece ni krenuti. A zapravo bi mogli da se bave programiranjem i popune neka od gomile mesta koja ne zahtevaju izuzetne programere. Programerski posao zahteva i genije i veoma dobre programere i one koji su "samo" dobri. Znam ja da ti to sve znas :) ali moze nekom drugom koristiti da procita a nekad umes da pustis da svoj licni entuzijazam projektujes i na druge. Nisu svi milanche :)

A svakako ne znamo u koju grupu spada pokretac teme. Zato mislim da tvoj predlog, sam za sebe, nije praktican. Predlog je odlican, samo nije za svakog.
[ milanche @ 22.06.2012. 21:53 ] @
Ma jasno je meni da nije sve za svakoga, sto ljudi - sto cudi, sto zena - dvesta sisa.

Opet, bar gledajuci ES sve ove godine, nisam stekao utisak da je poznavanje C-a, asemblera
i par osnovnih stvari polazni kriterijum za clanstvo u klubu vanzemaljaca na planeti Zemlji.

Samo na ES-u je prodefilovalo bar par hiljada ljudi koji se time bave, jedno 200 njih su odlicni,
od njih bar jedno 30 koji stvari poznaju na ekspertskom nivou.

Hocu da kazem - nisu te stvari tolika eksluziva kako predstavljate, i nisu toliko nesvarljive da
se ne bi smatrale nekom zdravom osnovom.

Evo, slucajno nabasam na ovog lika (pre 8 sati napisao ovo) :

http://www.elitesecurity.org/t451978-0#3127973
Citat:
Mnogo puta sam pokusao uci u programiranje, prije svega jer su me kompjuteri oduvjek privlacili,
isprobavao sam sve i svasta (C++, java, masm, php etc.), ali nije islo. Dok se nisu spojili Linux, assembler i C.
I to bas tim redosljedom i onda se desilo to da sam stvari poceo kontati na nacin na koji sam zelio.
[ labicko1 @ 23.06.2012. 08:41 ] @
Sta je bolje Linux ili windows, Max ili Maya, Cannon ili Nikon ... ne znam zasto se tolko ljudi pale na ove teme.
Na pocetku je dat dobar odgovor od Nedeljka, nije bitna alatka vec kolko si ti dobar sa njom. Pazi cak i Flash-action script, program sto se sve manje koristi, ako si majstor u njemu mozes zaraditi brdo para. Jedina razlika je u ljudima, medju onima koji su spremni da rade po 18 sati dnevno i onih koji to vreme provode u trazenju razlike izmedju dva alata.
[ kkedacic @ 29.06.2012. 20:52 ] @
Evo nesto sto se dotice ove teme i sto me trenutno "muci".
Naisao na netu na neke zadatke i idem ih rjesiti, na windowsu imam PellesC IDE. Program je CMD based i nakon sto se izvrti file bude lockan nekih 30 sec do minute i za to vrijeme nisam u mogucnosti da ga rekompajliram i isprobam, jer ne moze da overwrite stari .exe. Nakon sto CMD prozor nestane program se ne moze naci u task manageru niti u drugim toolovima za nadgledanje procesa. U istom IDE kad se koristi windows API i WM_QUIT ovog problema nema. Neznam dali je od PellesC ili windowsa iako mislim da je do ovoga drugoga, ostali mi u sjecanu neki proces kill time tweakovi u registryu pa cu to isprobati. Uglavnom, mislim da je na linuxu ovo proprilicno nemoguce da se desi, a radi mnogo distrakcije s osnovnog cilja.

Iako su mnogi rekli da je isto na pocetku win ili linux, ja se s time nebi uopce slozio. Razlike su ogromne na svim razinama, naravno vecina je toolova portana i postoji xyz apstraktih layera koji mogu ucinti da jedno lici na drugo i obrnuto, ali cemu to? .NET na linuxu, gcc i ekipa na windowsu i slicne sheme su besmislene.


>Pazi cak i Flash-action script, program sto se sve manje koristi, ako si majstor u njemu mozes zaraditi brdo para.

Ako si majstor u bilo cemu mozes zaraditi brdo para. Sto se tice flash action scripta, samo mu ime kaze da je to skriptni jezik, kao sto je php skriptni jezik, kao sto html-u samo ime kaze da je mark-up language i niti jedan od tih jezika nije programiranje, barem po meni, nego skriptiranje i dizajniranje. Tim tokom ce dizajneri uskoro postati programeri slika i modela.

Treba podvuci crtu izmedju low-level i high-level programiranja. Koliko god zaradjivao netko tko radi iFart applikacije njegova vrijednost nikako ne moze biti jednaka onome tko pise software za stelite, avione, vlakove itd., niti po drustvenoj korisnosti niti po znanju.
[ Nedeljko @ 29.06.2012. 21:19 ] @
Gde si iskopao taj PellesC za koji niko nikad nije čuo?

Pod Windows-om skini Code::Blocks i cepaj. Ima ga i za GNU/Linux.

A čemu sve to, pa eto, neki bi hteli da svoje programe prodaju na više platformi.
[ deerbeer @ 03.08.2012. 22:56 ] @
Citat:

Znam ja zasto milanche sve to pise. Zna on koliko bismo voleli da se bavimo takvim inzinjerskim poslovima pa nam udara ceznju. :)

Vala bas, i to iz teme u temu ista prica. Hebote ja bre na prste ne mogu da nabrojim firme domace koja ce makar da trazi winforms u .net-u
a kamoli embeded linux programiranje, ili bar nesto od cplusplusollikih aplikacija bilo koje vrste .
Web web web i samo web....sumrak braco moja a u dolini non-stop sunce sija :-)

A inace te price pocecu kao fresh junior sa java/.net biznis aplikacijama a zavrsicu kao c/c++/assembler programer na dsp cipovima su smesne makar na brdovitom balkanu.
Prvih par godina u jednoj bransi odredjujes sebi dobro poznatu putanju u karijeri i retko se desi neki iskorak levo desno van koloseka koji si odabrao.

Citat:

Hocu da kazem - nisu te stvari tolika eksluziva kako predstavljate, i nisu toliko nesvarljive da
se ne bi smatrale nekom zdravom osnovom.



Evo, slucajno nabasam na ovog lika (pre 8 sati napisao ovo) :

Kontati i zaradjivati za lebac nije isto.
Ako nista drugo ovde na Balkanu lako spiskas x godina uzalud tj. mnogo brze nego u Ameriki da bi ustanovio kako stvari stoje.
Pogotovu ako si mladoliki vizionar.

Citat:

Licno sam imao
prilike da se profesionalno sretnem sa nekoliko njih koji mogu bez problema koliko sutra da rade u bilo kojoj jacoj
industriji.

Sto bi rekao Rundek: ja bih mog'o da mogu :-)









[ milanche @ 03.08.2012. 23:36 ] @
Nista ondaK.

Evo, ovog leta sam profesionalno saradjivao (Skype + SVN + FTP) s jednim takvim iz
tima od 20-30 njih, i kako je krenulo sve su sanse da cu da ga sretnem za par dana u
zajednickoj nam vukojebini, pa cu tom prilikom da mu objasnim da se mnogo grdno
zeznuo i da je u profesionalnom pogledu zapravo klinicki mrtav (iako mu se mozda
subjektivno cini da na federe skace).

Prepustam pravilno orjentisanim vizionarima da se na trzistu radne snage tuku sa
srednjoskolcima i domacicama, jer je to a) realnost b) nema druge tehnologije mimo
srpske narocito od kad je onaj internet zacario c)mLogo nedostizno a narocito
d) neisplativo.

Dakle: glavu pod rep sto ranije to bolje.
[ HeYoo @ 04.08.2012. 00:55 ] @
Fora je u tome sto se kod web-a vidi jasan put od pelena do "necega" .
Mnogi ljudi znaju ljude koji znaju i koji su uspeli ili "uspeli" (zavisi od ugla posmatranja). Nasuprot tome za ovu pricu u kojoj si ti malo ko uopste cuje.
Toliko je retka da je i sam navodis kao kuriozitet i uveravas masu da toga ima i kod nas.

Mozda bi bilo korisno da napises koji bi to bio optimalan put od solidno tehnicki obrazovanog mladog coveka do embeded programera.
[ milanche @ 04.08.2012. 08:10 ] @
Razmisljam odavno (mozda bi neki blog bio pravi nacin da izbljujem svoj licni traktat
o umetnosti programiranja i svom vidjenju sta je 'pravi put' u tu profesiju), medjutim,
uvek se nadje nesto drugo da me zabavi. Takodje, ostavljati 'bozije zapovesti' je posao
za nepogresive.

Pokusacu ovde ukratko da dam neki odgovor.

Odgovor na sta i kako sam manje-vise dao u nekoliko slicnih tema, pa i u ovoj,
a koliko se secam i Nedeljko je napisao pristojnu kolicinu detalja o tome sta cini solidno
utemeljenog programera.

Odgovor na cemu i zasto se moze jos elaborirati:

Sve 'povrsinske' tehnologije slede slicnu pricu - privlacne su za svakodnevni rad jer se
cesto odvijaju u graficki prijatnom (sarenom) okruzenju, sve je 'na dugme' itd. Po pravilu,
posle izvesnog broja godina, dolazi do tehnoloskog 'zemljotresa' u kojem pomenute
tehnologije odlaze bez traga i glasa, a dolazi nesto novije, drugacijeg izgleda, prepakovano
na drugi nacin, i u svojoj povrsnosti relativno udaljeno od predhodne isto tako povrsnog
okruzenja. Kao spasonosni pojas za programera ostaje sve ono sto je u izletima u dublju
infrastrukturu uspeo da pokupi i shvati, i to poznavanje predstavlja 'relevantno iskustvo'
na osnovu kojeg se cesto prirodno dobija sansa da se bavi i tom narednom tehnologijom.

Kod 'podrumskih/fundamentalnih' tehnologija, promene alatki i filozofije razmisljanja su
znatno redje, menja se 'sirovina' koja se kuje cekicem, ali osnovni set znanja, tehnika,
nacin razmisljanja nije promenio u poslednjih 20-tak godina.

Po pravilu (kao i u svakodnevnom zivotu), pare su obicno tamo gde se zulja mozak, gde
nije prijatno i lagano, a nisu tamo gde u delatnost (kao sto rekoh) mogu da udju dokone
domacice i bistriji srednjoskolci.

Baviti se necim gde se lakse vidi put i ishod je dobra stvar, jer ohrabruje i pozitivno vezuje
osobu za profesiju. Ostati na istom nivou lakoce je ipak pogresna stvar.

Kad je rec o real-time embedded programiranju, od krajnje specificne oblasti u kojoj je
poznavanje mikrokontrolera, asemblerskih jezika, hardvera i logic analyzer-a predstavljalo
'must have', evoluiralo je u poslednjih desetak godina u upravo ono sto sam preporucivao:
C u osnovi, pozeljno neko iskustvo sa asemblerom, vrlo pozeljan C++, tu i tamo neki scripting
language (perl, python), zatim templati (sabloni) narocito STL, poznavanje visenitnog
programiranja, algoritmi.

Sto se background-a tice, desava se interesantan fenomen.

Jedan srednjoskolac je dobio domaci da kontaktira profesionalce i napravi statistiku najcesce
koriscenih scientific formula. Dao mi je praznu listu sa pet mesta da navedem koje su najcesce
formule koje koristim u svakodnevnom radu.

Pao mi je mrak na oci kad sam shvatio da osim proste proporcije (najcesce za izracunavanje
progresa) i obicnih aritmetickih operacija koristim slabo sta drugo (na poslu, privatno sam se
bavio celim opsegom DSP-a, sto je kasnije dobro doslo i davalo neke realne prednosti, ali
nista od toga mi godinama nije bilo u direktnom opisu radnih zadataka).

Takodje, kad pogledam unaokolo, ekipa koja se bavi real-time embedded programiranjem dolazi
iz raznih background-a, i manje-vise svako od njih je u situaciji da efektivno ostavi po strani svoju
originalnu uzu struku (comp sci, math, EE, mech eng, fizika) i da koristi zdrav tehnicki rezon kao i
najbazicnija znanja....

...koja su upravo to sto sam opisao.


Kakve su individualne perspektive ?

Neko ko sada pocinje, krecuci u opisanom pravcu otvara sebi ogroman broj perspektiva u domenu
dobro placenih poslova. Iz opisanog seta (moja dva posta na predhodnoj strani) se lako i bezbedno
moze iskoraciti u masu pravaca i usmerenja.

Za nekoga ko se vec bavi web-om: u poslednje vreme mi je omiljena izreka (ne znam gde sam je
pokupio, ali je smatram tacnom) da se 'zivot zivi unapred, ali razume retrogradno, tj. tek posle'.
Iskoraciti iz svakodnevice nekoga ko pise i debaguje PHP ili JavaScript, ili pokrece FireBug, misli o
performansama browsera, gleda zauzetost resursa (CPU/memory)...moze da izgleda drasticno drugacije
od onoga sto vec radi, ali u sustini - sve je to ista ili slicna prica.

Kljucno pitanje - gde naci poslove - nema jednostavan odgovor, ali siguran sam da nije i neresiva zagonetka.
[ Nedeljko @ 04.08.2012. 09:01 ] @
Ovaj put je Milanče u pravu. Naučite ono što može da radi domaćica ili bistriji srednjoškolac i biće gomila firmi na brdovitom Balkanu koje to traže, slabo plaćaju, gde se na konkurs za jedno mesto prijavi sto kandidata, od kojih će biti primljen onaj ko to ipak zna više od domaćice. Ako vam je to perspektiva zarade novca, onda ste na pravom putu.

Sa druge strane, ako ste vrsni u nečemu što je donekle traženo i što neće skoro prestati da bude traženo, makar donekle, zaposlićete se maltene na prvom konkursu i imaćete odličnu platu.

Nije sve u broju firmi koje traže nešto, nego i u toma kako iste to plaćaju, kakva je konkurencija na tržištu radne snage itd.
[ deerbeer @ 04.08.2012. 09:49 ] @
Ne mora da znaci uopste da ces sa webom da se tuces sa srednjoskolcima za neku smesnu platu. I u tim poslovima imas oblasti koje nisu pokrivene i koje malo ko zna pa ondak debelo naplacujes svoj rad.
Skoro sam se sreo sa webolikim programerom koji tuce 2KEUR mezecno pa vi vidite.
Zatim razni db eksperti (da ne kazem bazadzije) koji samo po pozivu dolaze i masno naplacuju.svoj sat.
Onom ko sada razmislja o emigraciji i ima.malo manje godina stoji sve sto je milanche rekao i tu se uglavnom slazem
[ Nedeljko @ 04.08.2012. 10:50 ] @
Sve je to lepo, ali to nije u skladu sa tvrdnjom "veb, veb, veb i samo veb".
[ deerbeer @ 04.08.2012. 11:50 ] @
Kad sam rekao veb nisam mislio samo na html php i asp vec sve sto cini danasnje biznis enterprise aplikacije koje su ovde zastupljene
[ deerbeer @ 04.08.2012. 12:02 ] @
Da budem precizniji veb se odnosio na sveprisutnu pomamu za web resenjima u biznis enterprise svetu gde cak vise nema ni mesta za klasicne desktop aplikacije.
[ milanche @ 04.08.2012. 12:23 ] @
Web protokoli su odavno prisutni u svakoj nishi, ali ne bih client-server problematiku svrstavao
bas pod 'web'. Ako se napravi video streaming/cloud/transcoding modul, to bas nije isto kao i
napravljena web stranica, servis ili neki GUI. Sockets programiranje spada pod onaj set vestina
koje sam opisao, nije ni nalik HTML-u ili PHP-u.

Fat client aplikacije se jos rade ali uglavnom kao tezak 'cover-up' (front end) za specificne kompanijske
infrastrukture cije uporiste je cesto na serverima. Iskustvo sa framework-cima nastalim na desktop
okruzenjima se cesto sele u domen browser plugin-ova.

Biti specijalista za samo jednu uzu oblast je uvek opasna stvar, utoliko opasnije ukoliko je tehnologija
dalje od fundamenata. Znam jednog iskusnog DBA lika kome je kariera prakticno ugasena, kao i jednog
Java prvoborca zaljubljenog u Swing koji se jos kao batrga jer nije na vreme prosirio delokrug specijalnost.
[ Nedeljko @ 04.08.2012. 13:20 ] @
Citat:
deerbeer: Kad sam rekao veb nisam mislio samo na html php i asp vec sve sto cini danasnje biznis enterprise aplikacije koje su ovde zastupljene

I kakve veze imaju "besne ptice" sa tim?

Pazi, mnoge krštene aplikacije imaju potrebe za internet vezom, ali svoditi ceo svet ili barem brdoviti Balkan na poslovne aplikacije sa brdovitog Balkana i tvrditi da "nema leba bez toga" nije na mestu. Znam lika koji u BG na sistemskom *NIX programiranju uzima 2ke mesečno neto. OK, radi i veb niskog nivoa, ali npr. nema blage veze niočemu specifičnom za vindouz.

Poenta je da nije sve u prebrojavanju oglasa, nego i u sadržaju istih.
[ deerbeer @ 04.08.2012. 14:16 ] @
I takve likove na prste nabrojis. U tome je poenta n brdovitom balkanu i nisam mislio na ostatak sveta.

A takav lik kas bude imao problem bilo koje druge vrste tipa neslaganje sa kolegama konflikt sa gazdom i slicno onda se poprilicno zakovao i u nemogucnosti je da nadje.slican angazman naredni period jer i takve firme na prste nabrojis.

Tako da je to mac sa 2 ostrice ovde a u dolini nadjes vrlo brzo jer postoji industrija, veliko trziste i.sirok spektar pogotovu za ono.cime se milanche bavi
[ deerbeer @ 04.08.2012. 14:34 ] @
I da se razumemo jednu stvar.

Taj lik ili ovaj o kome ja govorim nebitno a drmaju tolike pare ne mora ni da.znaci da su stvarno dobri u poslu jer nemaju konkurenciju pa je lako biti prvi od njih 5 koliko zapravo trziste nudi.

Mnogo teze je biti u vrhu gde je veca konkurencija i biti toliko placen.
To je veci dokaz koliko stvarno vredis u bilo kojoj grani softverske industrije.

[ Nedeljko @ 04.08.2012. 14:59 ] @
Citat:
deerbeer: I takve likove na prste nabrojis.

Naravno. Zato i drmaju pare.
Citat:
deerbeer: A takav lik kas bude imao problem bilo koje druge vrste tipa neslaganje sa kolegama konflikt sa gazdom i slicno onda se poprilicno zakovao i u nemogucnosti je da nadje.slican angazman naredni period jer i takve firme na prste nabrojis.

Već mu se dešavalo i nalazio je posao ko iz pičke.
Citat:
deerbeer: Mnogo teze je biti u vrhu gde je veca konkurencija i biti toliko placen.
To je veci dokaz koliko stvarno vredis u bilo kojoj grani softverske industrije.

Mislio sam da je poenta i zarađivanju hleba, a ne u dokazivanju ko je veća faca, ali ajd. Šta je teže, biti najbolja kasirka ili najbolji nuklearni fizičar?
[ Ivan Dimkovic @ 04.08.2012. 20:19 ] @
Logicno je da ima vise poslova u domenu web aplikacija i web designa, iz prostog razloga sto svaka susa ima web sajt, a svaka susa koja nesto posluje obicno mora da ima i nekakav back-end iza tog sajta.

Sto, naravno, ne znaci da nema posla za druge - i u Srbiji. Ja licno znam dvocifren broj ljudi koji su sw/hw inzenjeri/devovi/arhitekte u Srbiji i rade u firmama koje nemaju veze sa poslovnim aplikacijama ili web sajtovima.

Problem na ovakvim temama obicno nastaje kada neko pokusava da projektuje neke svoje licne zelje i sistem vrednosti na druge - ljudi koji zele da se bave razvojem aplikacija ima koliko hoces, neki od njih samo zele 'lebac na stolu, neki zele da budu jako dobri u onome sto rade, a neki - opet, zele da budu najjace baje u svojoj bransi...

U zavisnosti od toga ce zavisti i razvojni put.

Ali, u svakom slucaju, IMHO, ne skodi ucenje opstih stvari koje spadaju u "Computer Science" iz prostog razloga sto bukvalno svako "programiranje" na kraju jeste samo primenjen oblik opstih principa koji se izucavaju u CS-u.
[ labicko1 @ 05.08.2012. 01:23 ] @
deerbeer pogresno gledas na sve ovo.


Najprostiji banalni primer : ponuda za posao za cistacice ili spremacice je mnogo veca nego za arhitekte, sada ti mozes da budes extra dobar cista i da zaradjujes duplo vise od drugih kolega, to jst citavih 300 evrica, ali tvoja plata nije ni priblizna onome sto arhitekta zaradjuje.

Cisto sam ja nekada razmisljao da predjem sa 3D na PHP jel je razlika u kolicini oglasa 100:1, samo je takodje razlika u plati dosta velika, u PHP treba da odradim pet projekata da bi pokrio jedan projekat iz 3D. Dobar programer uzme za mesec dana kolko ti za pola godine. Znam cisto da jedan od mojih klijenata placa C++ programera preko 7k mesecno, probaj da tolko zaradis sa PHP.
[ 574nk3 @ 05.08.2012. 10:05 ] @
Danas je barem lako početi sa Linuxom. Postoji veliki broj distribucija koje nude ugođaj rada kao u Windowsu.
Nije baš kao ranije da ti ispadnu oči dok ne instaliraš i konfiguršeš sve. Na duže staze rad na Linuxu će te sigurno primorati da čeprkaš po raznoraznim sistemskim stvarima i samim tim te terati da učiš.

Ono što sam ja imao prilike da vidim/čujem jeste da se uglavnom po firmama radi na Windowsu. Kasnije se taj kod naravno vrti na linuxu.

Ako tek počinješ da se baviš programiranjem kreni od bazičnih stvari.
Evo za nekoliko dana na Courseri počinje "Algorithms, Part I" kurs https://www.coursera.org/course/algs4partI

Iznenadio bi se koliko takvo znanje nedostaje čak i programerima koji se godinama bave razvojem "web aplikacija". Jednostavno u njihovom svakodnevnom poslu im to nije potrebno. Ako nekoga i pitaš šta je B* stablo... dobićeš odgovor da nema pojma ali može da pogleda na netu(a svi oni su to učili na faxu pre xyz godina).

Situacija je takva da ćeš na kraju učiti hiljadu frameworka ... Spring, Hibernate, Rails, Django... šta god... osetiš se kao u fabrici margarina i otupljuješ polako :) Model ... View ... Controller ... CRUD ... Mapiraj ovo ovde... Napiši hiljadu testova... Da poludi čovek.

A onda jednom u sto godina desi se situacija da treba uraditi nešto izvan tog svakodnevnog scopea ... i tu onda dolazi do razlike između ovih kojima su te neke fundamentalne stvari kao tablica množenja i ovih drugih koji su skroz otupeli.

p.s
Što se plata tiče mislim da to najviše zavisi od klijenta sa kojom firma posluje.





[ MarkoBalkan @ 05.08.2012. 22:02 ] @
Citat:
labicko1:

Cisto sam ja nekada razmisljao da predjem sa 3D na PHP jel je razlika u kolicini oglasa 100:1, samo je takodje razlika u plati dosta velika, u PHP treba da odradim pet projekata da bi pokrio jedan projekat iz 3D. Dobar programer uzme za mesec dana kolko ti za pola godine. Znam cisto da jedan od mojih klijenata placa C++ programera preko 7k mesecno, probaj da tolko zaradis sa PHP.



sve zavisi u kojoj branši i u kojoj državi radiš, jer se dosta razlikuje.
php senior programer ili arhitekt u boljoj firmi u njemačkoj može bez problema imati 4-5 k eura brutto.
ima firmi koje C++ programere plaćaju 3 k eura brutto, a ima koje ih plaćaju 10 k eura brutto.
možeš raditi i kao php ili ruby freelancer i možeš imati 50 eura/sat, pa ti vidi koliko je to mjesečno.

kao ms sql server db admin, ako se zaposliš u nekoj banci u zapadnoj zemlji, možeš imati od 6 do 12 k eura brutto, sve ovisi o zemlji i banci.

naletio sam na oglas gdje su nudili do $ 360 k godišnje, a radi se o funkcionalnom programiranju (haskell), to je 22 k eura brutto mjesečno
zaposli se kao c++ programer ili perl u nekoj banci u nekoj zapadnoj zemlji pa ceš imati preko 6 k eura brutto.

netko je zadovoljan sa 4000 eura brutto, a nekome nije dosta ni 10 k eura brutto.

tako da sve zavisi o x faktora.

[Ovu poruku je menjao MarkoBalkan dana 05.08.2012. u 23:13 GMT+1]
[ labicko1 @ 06.08.2012. 14:24 ] @
Marko kolko sam shvatio u predjasnjim poslovima se pricalo o freelance ponudama za posao, oglasima, tu je u 90% slucajeva izrada web prezentacija. Slucaj koji sam ja naveo za C++ takodje nije za nekog ko je extra dobra programer, znaci pricao sam o nekoj srednjoj kategoriji programera.

Inace mozes da uradis igricu u Actionscript Flash i da zaradis milione, bitno je da si majstor svog zanata :))))