Voodoo_NBGD je napisao(la):
Šta si sad rekao? Prvo ne treba učiti redom neko samo šta ti treba, a onda "Naucis C++ i na konju si. Nije nego."
Ti i dalje ne razumes izgleda sta sam rekao. Probaj jos jednom sa pasusom gde se pominje "cilj ucenja programerskog zadatka nije nauciti neki jezik, nego nauciti programirati".
Prvo, ja nisam rekao decku da uci "samo ono sta mu treba", jer on ocigledno jos uvek ne zna sta mu treba (a izgleda da nije ni jedini). Ono sta jesam rekao je to da ne smatra da ako nauci c++ kao jezik da je zavrsio posao, jer ucenje jezika nije samo po sebi cilj. A upravo to izgleda zakljucak svog ovog nadglasavanja u topiku "uzmi ovaj, uzmi onaj jezik". To sto ce savladati sintaksu jezika ga nece nauciti da programerske probleme resava, da nalazi nacine da stvari optimizuje, planira, itd. Ima jos milion stvari da nauci pored ucenja nekog od jezika i ucenje nekoliko jezika za redom samo zato sto je "lepo da zna jos i ovaj jezik, jos i onaj" je naprosto gubljenje vremena i resursa. Treba da se koncentrise na srz osnova programerskog znanja uz neki od jezika (
kao alata), a ne na skupljanje jezika, jer nece raditi kao prevodilac.
Voodoo_NBGD je napisao(la):
Uz dužno poštovanje, jel si ti prvo naučio jezik u kome sad radiš, ili si krenuo redom od asemblera i bejzika za spektrum i komodor? I jel sad zarađuješ dobro? Zašto onda odvraćaš ljude od učenja ispočetka?
Uz duzno postovanje, ovakvim pitanjem pokazujes opasne rupe ili u svom znanju ili u svojoj logici.
Ja kada sam ucio programiranje radio sam na bejziku odnosno assembleru na tom C64. Zasto? Ne zato sto je trebalo da "krenem od pocetka", nego
zato sto tada nicega drugog nije bilo dostupno (osim po racunskim centrima gde nije bilo pristupa). Ja (i moji vrsnjaci)
nismo imali izbora, danas pocetnici imaju izbor. Kako smo mi rasli i sazrevali, tako su se pojavljivali novi jezici u praksi. Tacke "pocetka" osamdesetih i danas nisu i ne mogu biti iste. Tako da odvracam ljude od prelazenja mukotrpnog puta da bih im ushparao vreme i nepotrebnu muku. To je kao kada bi sad nekome ko uci da vozi preporucio da prvo kupi ficu, pa tristaca, pa stojadina, pa juga (cisto da stekne osecaj kako je to islo nekad ispocetka) i na kraju da uzme neka aktuelna kola.
Voodoo_NBGD je napisao(la):
I po fakultetima se uči pun q... kojekakvih gluposti koje u većini slučajeva neće trebati u životu i radu, šta fali odvojiti dodatnih par meseci i posle reći "e super, znam i C i C++"?
Ma da, sto ne nauci i Algol, Modulu2, Lisp, php, Javu... pa posle moze reci "e super, znam i ...."? Mislim, na fakultetu se ionako uci gomila gluposti, pa hajde na dodamo odozgo jos jednu.
Prvo, C i C++ su dva odvojena, razlicita jezika. Vec sam na ovom forumu x puta video kako se tvrdi recimo da je C++ objektno prosirenje C-a, sto predstavlja elementarno neznanje (bilo ko ko je stvarno procitao tog Strustrupa ne bi tako nesto rekao). Drugo, sintaksne elemente koji obelezavaju C (strukture, petlje, itd) ce ionako nauciti uceci C++. Trece, ima x slucajeva gde iste sintaksne strukture imaju razlicito semanticko znacenje u C-u i C++u; da li je pametno pocetnika opterecivati takvim stvarima? Cetvrto, C se danas daleko manje koristi nego nekad, a neizbezan je u svega nekoliko oblasti - nesto i ne vidim da je iko pitao uopste ista oko oblasti kojima bi se covek bavio. Mislim, u cemu je neophodnost ucenja C-a danas po tebi? Cisto zbog toga da moze da kaze "znam i to"?!?
Sve u svemu, kao sto sam gore vec naveo, u ovom stadijumu ucenja u kojem se decko nalazi, smatram da tih "dodatnih nekoliko meseci" moze mnogo pametnije da investira - recimo u proucavanju nekog od frameworkova sa kojim bi radio, API-ja ili neceg slicnog, a sto ne predstavlja ucenje jos jednog jezika.
Voodoo_NBGD je napisao(la):
To me nervira što se danas sve gleda kroz pare, programiranje je nekada bila pasija geekova koji nisu žalili dioptrije da bi videli svojih ruku delo na starom televizoru, a danas se sve uči namenski, ljudi koji to inače nikad ne bi pipnuli čuli da je tu kinta pa ajmo (ne mislim na autora topica)... možete reći da sam lud, al ja mislim tako i nikako drugačije
E, pliz, nemoj "o dobrim starim vremenima", jer i sam znas koliko si imao godina kada su ljudi radi bilo sta "na starom televizoru", tako da sumnjam da znas iz prve ruke sta je bilo programiranje tada ljudima licno. Pasija geekova u svakom slucaju nije bila, bar ne tako kako je ti zamisljas. Programiranje je predstavljalo fasciniranost u fazi ucenja dok si bio jos mlad i stalno pomerao granice, ali sve to na putu na kojem si se trudio da postanes pravi programer. Ili hoces da kazes da je nekada neko ulupao silne godine u savladjivanje progamiranja da bi radili nesto samo za svoju dusu?!? Tja, ja ne znam nijednog takvog coveka, znas li ti?
I to za pominjanje kinte si totalno pogresno shvatio; uopste se ne radi o tome da se ne pipa posao ako se ne radi o kinti. Kad sam pomenuo pare, ucinio sam to zbog vrlo konkretnog razloga. Iz istog razloga zasto te firma pri zaposlenju pita kakvo si
komercijalno iskustvo imao do tog momenta. Ako stvar koju si radio ima neku komercijalnu vrednost, znaci da ima i neku
upotrebnu vrednost. Drugim recima, ako ima neko ko hoce da plati za tvoj rad, onda je to nesumnjivo potvrda da radis neke stvari kako treba.
Ovde je ista prica kao i sa hardverom - momak sklopi nekoliko masina i odmah smatra sebe magom za hardver. Tako i kod programiranja; ljudi naprave par seminarskih radova, par programcica/demoa za svoju dusu, mozda i za komsiju i njegov video klub ili nesto slicno i odmah su najveci strucnjaci za programiranje. Kao i obicno, na teoriji smo svi jaki, ali za prakticne savete je ponekad potrebno malo vise godina iskustva u komercijalnoj areni. Zasto? Pa zato sto te tu tempo i dinamika rada, menjanje alata, platformi i biblioteka tera da skupo placas svoje greske u razmisljanju. Sa druge strane, dok si jos uvek na nivou da smisao programiranja idealizujes kao "pasiju geekova", mozes slobodno da filozofiras, pa ako se i zeznes - tja, nikom nista. Neke stvari o kojima smo ovde pricali jednostavno nisu stvar misljenja, nego su ispravne ili neispravne.
U tom smislu, povuci cu (nadam se poslednji put u ovom topiku) paralelu sa hw delom foruma; tamo sam nekoliko puta morao da napomenem ljudima koji pozure da savetuju nekome kupovinu "nemojte se igrati sa takvim stvarima, ljudi su tesko skupili kintu da kupe nesto, savetujte jedino ako ste apsolutno sigurni". Tako izgleda moram i ovde - "nemojte se igrati sa vremenom i planovima ljudi". To su dugorocni planovi; neka neko krene pogresno savetovanim putem i smori se i na kraju batali sve ovo. Zbog cega, necijeg mudrovanja? (generalna opaska, upucena svima)
Dakle:
- nemojte pocetnicima davati pogresan utisak da se ucenje svodi na izbor jezika. Uciti programirati nije isto sto i uciti jezik.
- nemojte pocetnicima davati pogresan utisak da ako nauce C++ da su zavrsili s poslom. C++ nece programirati umesto njih. Savladjivanje samog jezika je mozda desetina posla koji ih ocekuje, a samo ucenje se nikad ne zavrsava.
- jezik je samo alat; ne pasuje svaki alat za svaku primenu i za svakog coveka. Cilj je obaviti posao, a ne koristiti alat. Kinjiti nekoga zato sto radi u VB-u ili php-u, a ne C++u je blago receno seljacki.
BTW, sto ovakva navala ne postoji kod konkretnih pitanja na ovom podforumu, nego samo kod teoretisanja?