PDA

Prikaži potpunu verziju : Programiranje pocetnici


Neta00
11.4.2018, 2:56
Evo jedna tema koja bi bila dobra za sva pitanja koje imamo mi pocetnici da ne bi morali da otvaramo svaki put novu temu(Ili jos gore da izguglamo nesto :O )

Evo za pocetak par pitanja od mene.
U skoli ucim C++ i sad to je na levelu cmd mene zanima koji library ili framework bi bilo najbolje koristim?
Qt izgleda mi dobro samo ne znam dal je dobar izbor za pocetnike(Pricamo 3. razredu srednje)

I jos jedno pitanje koje jezike pored c++ bi trebao da znam ukoliko bi hteo da se bavim desktop developingom.?
Nekako mi se ovde pored C++ uklapa jedino C# . Ali mozda gresim.

voodoo_
11.4.2018, 14:45
Ako misliš na GUI framework, onda Qt i eventualno wxWidgets, sve ostalo je nepouzdano (u smislu danas postoji, sutra možda ne postoji).

Kao biblioteka opšte namene, dosta se koristi Boost, ali je većina funkcionalnosti sada podržana u C++11 (https://stackoverflow.com/questions/8851670/which-boost-features-overlap-with-c11) pa najčešće nema potrebe dodatno komplikovati projekat ubacivanjem dodatnih zavisnosti (ako se projekat već piše ispočetka).

Za striktno desktop aplikacije C# je jedini logičan izbor. Ostalo (Visual Basic, Delphi) se mahom koristi za održavanje legacy sistema. Teoretski tu je i Java sa svojim Swing i JavaFX bibliotekama, ali primećujem da se to sve više izbegava i da se u tom slučaju ljudi okreću kombinaciji Java backenda i HTML/CSS frontenda.

C++ je odličan za pisanje high-performance biblioteka i rado ga koristim za takve primene, ali lično ne bih pisao GUI aplikaciju u njemu.

Neutrino
11.4.2018, 16:57
Još par opcija.

PyQt (https://riverbankcomputing.com/software/pyqt/intro), PySide (https://wiki.qt.io/PySide) i wxPython (http://docs.wxwidgets.org/3.0/overview_python.html)

Za: Python je izuzetno lak i moćan jezik koji se odlično integriše u pomenute multiplatformske frameworke Qt (https://www.qt.io/) i wxWidgets (http://www.wxwidgets.org/). Uz Qt Designer za vizuelno dizajniranje aplikacija i ekstenzije koje te dizajne pretvaraju u Python kod rad na bilo kakvoj desktop aplikaciji je izuzetno lak i komforan.

Protiv: Python kao interpretirani jezik ima slabije performanse od kompajliranih byte-code aplikacija ali ta razlika se u velikom broju slučajeva ne primećuje i može da se mitigira korišćenjem Cythona (http://cython.org/) koji dodaje statičko tipiziranje Python sintaksi i tako znatno ubrzava izvršavanje.

Isto tako kompanija koja izdaje PyQt ima pomalo nejasne uslove licenciranja pa bilo kakvo zalaženje u LGPL vode može da bude problematično. Recimo, iako sam Qt nudi i LGPL opciju (varijanta GPL-a koja ne zahteva od developera da distribuira kod) PyQt nudi samo GPL i komercijalnu opciju čime se LGPL praktično eliminiše. Zato je sam Qt preuzeo PySide projekat i počeo da radi na PySide 2 (https://wiki.qt.io/PySide2) verziji koji će imati punu podršku za LGPL.

Praktično nepostojanje bilo kakve podrške za mobilne platforme.

JavaFX (http://www.oracle.com/technetwork/java/javase/overview/javafx-overview-2158620.html)

Za: poprilično moćan framework za desktop aplikacije zasnovan na jednom od industrijskih standarda, Javi. Dolazi sa sopstvenim vizuelnim alatom za dizajniranje aplikacija pod imenom JavaFX Scene builder (http://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-info-2157684.html) čije izdavanje binarnih verzija je sada na sebe preuzeo Gluon (http://gluonhq.com/products/scene-builder/).

Protiv: JavaFX se nekako provukao ispod radara, najviše zahvaljući nemarnosti izdavača. Naime, iako nudi poprilično moćan set alata za izradu desktop pa i mobilnih aplikacija Oracle godinama nije dodavao nove funkcionalnosti a da ironija bude veća znatno stariji alati, od kojih su neki već zvanično u deprecated statusu (Swing itd.), imaju neuporedivo bolju dokumentaciju, podršku i kritičnu masu developera.

Electron (https://electronjs.org/)

Za: zagarantovana multiplatformnost sa najvišim stepenom kompatibilnosti između platformi zbog toga što osnovu čini kombinacija Chromium browsera (https://www.chromium.org/) i node.js (https://nodejs.org/en/). Posebno pogodan za aplikacije koje trebaju da obezbedi identičan vizuelni identitet među platformama i timove koji imaju iskustva sa web tehnologijama (JavaScript, CSS, HTML itd.) Nudi izuzetnu brzinu razvoja aplikacija zbog ogromnog repozitorijuma koda i gotovih alata kroz npm (https://www.npmjs.com/) pakete. Za developere koji ne podnose JavaScript postoji opcija transpilovanja koda iz tehnologija koje nude i statičko tipiziranje (TypeScript (https://www.typescriptlang.org/), Coffe script (http://coffeescript.org/) itd.)

Protiv: pomalo kontraverzna tehnologija koju puristi smatraju novom verzijom Flasha jer se web tehnologije koriste za izradu desktop aplikacija. Zahteva distribuciju kompletnog Chromiuma i node.js za svaku aplikaciju (minimum 100MB raspakovano) i performanse generalno ne mogu da se mere sa nativnim aplikacijama. Update i distribucija paketa mogu da budu nešto komplikovaniji od drugih rešenja.

Neta00
11.4.2018, 17:37
Hvala svima dosta ste mi pomogli :D

brano88
13.4.2018, 13:17
Sto se tice JavaFX, imas i biblioteku TornadoFX za Kotlin koja u pozadini koristi JavaFX. Vrijedno da se napomene. :)

Edit: Zaboravio sam takodje da dodam da JavaFX ima fantasticnu podrsku za "touch" uredjaje.

polarnimeda
2.10.2018, 4:14
udjoh u temu posto pise "pocetnici", ali vidim da nije ni blizu za one POTPUNE pocetnike. :(

ako bih hteo da krenem sa ucenjem nekog od jezika koji bi:
- mogao da bude solidna (ali i samodovoljna) baza
- sa kojim bi recimo mogle da se prave samostalne aplikacije, igre i slicno
- koji je relativno jednostavniji za ucenje
- nosi mogucnost samostalnog rada, ali i timskog (odnosno ima buducnost)...
koji bi to jezik bio?

i koji tutorijal bi u tom slucaju preporucili?

ponavljam, bez srama, za potpunog pocetnika (za kompovima sam dannonocno jos od komodora 64, ali nikada nisam zalazio dublje od najosnovnijeg: sklapanja, instaliranja, odrzavanja...). :)

zelim da ulozim vreme u ono sto me zanima, od ovoga cime se bavim (novinarstvo) nema leba, a i da ima - ne osecam da mi lezi.
pomisljao sam na javu, ali vise nisam siguran. :)

mnogo bi znacio predlog nekog iskusnog u ovom polju! spasavajte. :n_klanja:

Mare!
2.10.2018, 11:50
Jezik nije toliko bitan, kad imas osnove onda se snalazis u vecini jezika. Naravno, razumem tvoju potrebu, jer ne zelis da gubis vreme na nesto sto "nema buducnost". Ali opet mislim da nema savrsenog jezika, svi dolaze sa prednostima i manama, to je kao alat koji koristis za odredjenu vrstu posla.. Python mi je prvi pao na pamet, ali on je malo drugaciji od ostalih jezika. Ja bih ti prvo preporucio da savladas osnove dobro, tu je po meni C savrsen, znaci suva logika: if-ovi, petlje, petlje u petlji, rad sa osnovnim strukturama podataka (nizovi), stringovi, funkcije.. Onda savladas osnovne objektnog, npr u javi. I posle vec sam mozes da izaberes jezik koji ces da usavrsis, imas osnove, odmah se bacis na neki "veci" projekat, npr igru (one bas dobro obuhvate sve sto aspekte programiranja) i to je to.

Svako ima drugaciji put, svako ce ti reci neke druge jezike, tako da se ne obaziri previse na to. Treba da imas dobre osnove, a za to treba vremena.. Vezbaj dosta, od lakih do teskih primera iz svake "oblasti". Uveren sam da je pogresan pristup da krenes da radis nesto bez osnova, to je po meni kao da krenes da gradis zgradu po ugledu na neki tutorijal.. bez znanja materijala i svega ostalog. Mnogo ces se lakse snaci kad razumes bolje to sto radis.

Posto kazes da si proveo zivot uz racunare, onda nema previse potrebe da ti pricam sta da radis ako negde zaglavis. Gugl i StackOverflow su tvoji prijatelji.. Drugu stvar koju moram da ti napomenem, tutorijali su u 99% slucajeva jako jako povrsni, objasnjavaju bas najosnovnije stvari, siguran sam da ne mozes preko njih da steknes dobru osnovu, ili naucis jezik. Moras sam da pokusavas neke teze stvari, i sam sebe guras, sto je dosta tesko, jer nemas cilj. Zato nije lose uzeti neki fakultetski program, neku njihovu zbirku zadataka, kniigu, ili vec, pa po tome raditi. Cisto da imas neke teze primere za vezbu.

U svakom slucaju, kad savladas osnove, bacis se na neki veci projekat, i izguras ga do kraja. Gledas da projekat koji radis ima sve ono na cemu bi da radis, od logike, algoritama, struktura podataka, objektnog, baza... Po meni su igre savresene tu, ili neka ful stek aplikacija. Saslusaj sta i ostali imaju da kazu, i srecno. Ako imas neke probleme slobodno kaci ovde (ali opet preporucujem stackoverflow za to).

Ako te zanima mogu da ti opisem nekoliko jezika, mada to mozes i sam da nadjes na netu.

voodoo_
2.10.2018, 13:01
Za suvu logiku ja bih preporučio Pajton, jer u C-u ima dosta rvanja sa low level konceptima (ručno dereferenciranje adresa, pokazivačka aritmetika itd) koji u tom stadijumu baš i nisu poželjni.

Mare!
2.10.2018, 13:35
Ne slazem se. Prvo zato sto pajton nema tipove, ima dosta precica za petlje i nizove i onda se teze kapiraju osnove. C je bas zgodan zato sto sve mora rucno, nauci se lepo baratanje petljama, nizovima, funkcijama, i bas zato sto je nizeg nivoa moze da se skapira kako programiranje funkcionise ispod haube, dosta mi se puta to znanje isplatilo. Takodje, apsolutno ne moraju da se koriste pointeri ili bilo sta "komplikovanije" u C-u. Sam jezik se jako brzo nauci, jer nije sintaksno kompleksan, i onda je akcenat na logici. Samo zato mislim da pajton nije dobar jezik za pocetak, jer mnoge stvari skracuje i onda se slabije skapiraju osnove, sto znaci da se neki drugi jezici dosta teze uce. Mislim da je prelazak sa C-a na pajton neuporedivo laksi nego obrnuto. Zaista ne znam zasto se ljudi toliko plase C-a, ja mislim da se uz njega dosta lako uci.

Podseti se kako izgleda pocetnicki C, nema nikakvih zvezdica i apersendova, a po mom misljenju to low level znanje memorije koje nudi je skroz korisno, stack, heap, nizovi u memoriji itd.. A to sve takodje ne mora da se zna, pricamo o bas bas pocetku ucenja programiranja. Znaci sabiranje brojeva, digitron, sabiranje prvih n brojeva, faktorijal.. za te stvari C je po meni idealan. Naravno, ne pokusavam da nametnem svoje misljenje, vec sam rekao da sam jezik nije toliko bitan, i da ce mu svako reci drugacije. Bitno je raditi redovno, i raditi puno (ako zelis da ti to bude profesija).

water wizard
2.10.2018, 14:09
po meni je važnija produktivnost od znanja kako radi ispod haube...

Mare!
2.10.2018, 14:12
Naravno, ali tesko je imati produktivnost ako se ne savladaju osnove. Nije potrebno znanje ispod haube, predlozio sam C jer je lak jezik za vezbanje osnovnih koncepata programiranja. Naravno moze to i u drugim jezicima. Produktivnost dolazi tek kasnije, programiranje nije nesto sto se moze nauciti preko noci.

Neutrino
2.10.2018, 15:02
Ne slazem se. Prvo zato sto pajton nema tipoveDinamičko tipiziranje ne znači da jezik nema tipove podataka već da se konverzije između tipova rade implicitno po potrebi. Dakle, Python svakako dolazi sa svojim setom tipova podataka (https://docs.python.org/3.6/library/datatypes.html).
ima dosta precica za petlje i nizove i onda se teze kapiraju osnove.Sintaksa je samo vid izražavanja ideje programera i kao takva je praktično nebitna za krajnji cilj.
C je bas zgodan zato sto sve mora rucno, nauci se lepo baratanje petljama, nizovima, funkcijama, i bas zato sto je nizeg nivoa moze da se skapira kako programiranje funkcionise ispod haube, dosta mi se puta to znanje isplatilo.C je mač sa dve oštrice zato što sa jedne strane intiman odnos koji ima sa hardverom daje mnogo veću kontrolu nad njim ali sa druge strane ta sloboda vodi u mnogo komplikovaniji i potencijalno opasaniji kod jer C nije "memory safe" (stack/buffer prekoračenja, dereferenciranja null pokazivača itd.)
Takodje, apsolutno ne moraju da se koriste pointeri ili bilo sta "komplikovanije" u C-u.To stoji ako ne želiš da koristiš C za pisanje bilo čega komplikovanijeg od "Hello world" programa. Za sve ostalo dobro poznavanje svih C elemenata je apsolutno neophodno jer su biblioteke koje se koriste u C programima krcate strukturama, pokazivačima, dinamičkim alokacijama memorije, preprocesorskim direktivama itd.
Samo zato mislim da pajton nije dobar jezik za pocetak, jer mnoge stvari skracuje i onda se slabije skapiraju osnove, sto znaci da se neki drugi jezici dosta teze uce. Mislim da je prelazak sa C-a na pajton neuporedivo laksi nego obrnuto. Zaista ne znam zasto se ljudi toliko plase C-a, ja mislim da se uz njega dosta lako uci.Python ne skraćuje ništa već prosto ima drugačiji pristup, poznatiji u Python zajednici kao The Zen of Python (https://www.python.org/dev/peps/pep-0020/), što je i jedan od glavnih razloga za njegovu popularnost.
Podseti se kako izgleda pocetnicki C, nema nikakvih zvezdica i apersendova, a po mom misljenju to low level znanje memorije koje nudi je skroz korisno, stack, heap, nizovi u memoriji itd.. A to sve takodje ne mora da se zna, pricamo o bas bas pocetku ucenja programiranja. Znaci sabiranje brojeva, digitron, sabiranje prvih n brojeva, faktorijal.. za te stvari C je po meni idealan. Naravno, ne pokusavam da nametnem svoje misljenje, vec sam rekao da sam jezik nije toliko bitan, i da ce mu svako reci drugacije. Bitno je raditi redovno, i raditi puno (ako zelis da ti to bude profesija).Poenta je da posle određenog vremena baby-sitting hardvera postaje jako zamoran i dosadan posao koji bez razloga troši vreme i novac pa prvi kontakt sa managed jezicima izgleda kao LOTO premija.

Za pisanje visoko-performantnih aplikacija za proračune, programiranje embedded uređaja i slične visoko specijalizovane primene (kerneli itd.) C je i dalje poprilično dobar izbor. Međutim, bilo kakva izrada GUI aplikacija u njemu je danas apsolutno besmislena pored daleko boljih opcija koje postoje.

Mare!
2.10.2018, 21:31
Eh, mi programeri moramo uvek da budemo komplikovani i nepotrebno precizni. Sve sto si rekao stoji, ali obojica vec masimo poentu. Covek zeli da pocne, i umesto da ga na jednostavan nacin uputimo, mi ulazimo u detalje koji obicno ubiju svu volju pocetnika. Moj stav je da je C dobar jezik za pocetak, ali definitivno nije jedini. Pricao sam iskljucivo o samom pocetku, i savladavanju osnova. Moja glavna poenta je bila da treba prvo savladati osnove, pa onda na produktivnost. Sto po meni znaci savladati osnovnu sintaksu, logiku, upoznati se sa najpoznatijim paradigmama itd, znaci uopsteno o programiranju bez nekog specificnog jezika. A onda zapoceti neki veci projekat, u jeziku koji te zanima, i na njemu nauciti ostatak. Takodje mislim da su tutorijali previse povrsni, i da treba nabaviti kvalitetnu literaturu.

Nema potrebe da idemo previse u offtopic, probajte da usmerite coveka na jednostavan nacin. Opet ponavljam, ne kazem da je ovo idealan put, samo moj predlog. Pocetak je relativno nebitan (dokaz je to sto smo svi poceli na neke razlicite nacine, pa opet zavrsili na istom), samo uzmi da radis bilo sta, i budi istrajan u tome. Postavi jasne i teske ciljeve, i guraj ka njima, i garantujem da ces napredovati.

Najbolje je da kazes bas precizno sta bi voleo da postignes, pa ti onda mozemo lakse predloziti jezik. Takodje predlazem da prelistas malo net, ove teme se vode od kako postoji programiranja, pa verujem da ces naci jos dosta korisnih saveta.

Neutrino
2.10.2018, 21:49
Covek zeli da pocne, i umesto da ga na jednostavan nacin uputimo, mi ulazimo u detalje koji obicno ubiju svu volju pocetnika.Važno je početi, to stoji, ali je isto tako pre toga bitno steći bar neku predstavu od čega početi. Mesec dana gubljenja vida u "Kerniganu i Ričiju" možda nauči početnika kako se u C-u prave binarna stabla ili ulančane liste (kad malo bolje razmislim i neće) ali onda će se mukica zapitati kakve koristi ima od toga kad ne može da napravi jednu jedinu krštenu aplikaciju koja ima praktičnu vrednost.

Za to vreme neki drugi, manje komplikovan jezik, bi naučio dovoljno dobro da napravi praktične aplikacije bez intimnog ulaženja u to kako računar radi. Kasnije kada mu se apetit pojača tu osnovu može da koristi za nadograđivanje detaljima.

Kod bilo kakvog samostalnog učenja motivacija kroz opipljiv rezultat sopstvenog truda je ubedljivo najbitniji faktor.

Mare!
2.10.2018, 22:25
Pa sad, znam sta hoces da kazes. Ali obicno ko preskoci osnove, nikad se ne vrati na njih. Takodje te osnove su izuzetno bitne i za ostale jezike. Nikakva binarna stabla, samo osnovno. Ne treba ti u sustini jezik za to, pseudo-kod je dovoljan, ali jezik sa kojim mozes testirati i vezbati je koristan. U proslom postu si skroz omasio moju poentu. Nisam predlagao da ozbiljno uci C, daleko bilo. Vec samo platformu za pocetak.

I ne slazem se sa onim sto si rekao, da je sve samo sintaksa. Jeste za programera, ali za nekog ko pocinje nije isto. Jer npr ako izguglujes kako sortirati niz u c-u i u pajtonu, razlika je u minimum 10 linija, i to bitnih linija. Kroz c mozes na jednostavan nacin da prodjes kroz te osnove, kako se barata petljom, nizom, logika, nacin razmisljanja.. C iskljucivo iz perspektive vezbe, i savladavanja osnova. Mozda si zaboravio kako je biti pocetnik, ali vezbanje nacina razmisljanja je osnovno i neophodno za bilo sta. U pajtonu nemas tu priliku da vezbas, jer imas sve gotovo. Sve je na poziv funkcije. A kroz c naucis da pises takve funkcije, to je po meni bitna razlika.

Sad, mozes da kazes da logika moze da se vezba i na drugi nacin, ali kako bi npr napravio neku jednostavnu 2d igru ako ne poznaje kako se radi sa ugnjezdenim petljama (matricama)? Onda ce da dovati neku biblioteku koja ce da uradi vecinu logike za njega, itd.. I onda zapravo napravi neku igru, ali u sustini nista nije naucio, samo jednu biblioteku u jednom jeziku. A ako prodje kroz C logiku, moze da predje na bilo koji jezik ili biblioteku. (ovo je samo primer)

Takodje mislim da su dinamicki tipovi opasni za pocetnika, mogu da prave dosta problema, po meni je jasnije kad su tipovi uvek vidljivi i kad te sam jezik forsira da ih koristis. Doduse moguce da je to samo stvar navike, meni je licno bilo cudno iskustvo kad sam se prvi put susreo sa njima.

U sustini samo sam zato i predlozio C, jer moras sve rucno, i samim tim vezbas logiku. I C se uci na takav nacin da se vezba logika, u pajtonu npr predlozeno resenje je uvek poziv jedne funkcije, ili importovanje odredjenje biblioteke, sto smatram pogresnim nacinom za sa pocetak ucenja programiranja. Cim se savlada logika onda nesto objektno, i posle vec moze sam da odluci sta zeli da radi.

milos86
3.10.2018, 1:11
Pozdrav ljudi, treba mi savet. Zanima me web programiranje i hteo sam da pocnem sa php-om, pocetnik i zanima me koliko je uopste php popularan da li se isplati uloziti vreme u ucenje php?

polarnimeda
3.10.2018, 3:03
hvala svima na odgovorima, vidim da su se predlozi sveli na c (c# ili c++?) i python.
mare je potpuno u pravu da me na startu buni SVAKI pojam iz programiranja koji je vama osnovan onoliko i "hello" u engleskom, a neutrino ima poentu da ce me na putu najbolje odrzati to ako uspem da vidim bilo kakav plod svog rada u iole ranijoj fazi.
blizi sam tome da krenem od pythona, UKOLIKO mi to nece otezati stvari kada budem trebao da predjem na bilo sta komplikovanije ili osnovnije, i ukoliko se python iole trazi kod nas? jer, zelim i da naucim, a zelim i da imam od cega da sutra zivim ovde negde. :D (mada kapiram da se ne mora raditi za firmu u srbiji...)
napisao sam u crticama u prvom postu u ovoj temi sta mi je bitno. znaci svako misljenje, pa da sutra zavrnem rukave. :)
takodje, ako neko zna dobru skolu ili kurs koja nije skup, ima upotrebljivu "diplomu" i mogao bi mnogo da mi znaci na pocetku, recite. pm, stagod! :D
hvalaaaa! znam da ima puno tema po netu, ali ovde sam uvek nalazio resenja. :D nekako verujem ovom forumu iako sam savete uzimao od 100 razlicitih ljudi. :)

voodoo_
3.10.2018, 9:58
Mare, raširio si priču a ne dade ni jedan konkretan uporedni primer gde je C bolji od Pajtona za školske slučajeve.

C nije strogo tipiziran jezik, možeš da kastuješ bilo šta u bilo šta, da dereferenciraš adrese u bilo šta, da sakrivaš logiku typedef-ovima i #define direktivama. Evo divnog primera iz jednog mog programa koji je morao da radi na tri kompajlera i dva operativna sistema bez warninga:

memcpy((void *)((uint8_t *)&channel->devinfo + SZ_4K), (const void*) &packet->content[DATA_OFFSET], sizeof(struct device_status_info) - SZ_4K);

Šta će neko ko počinje a ne zna arhitekturu i organizaciju računara da radi kad naleti na takve stvari? I koliko C programera zna šta je big/little endian i da x86 procesor pristupa memoriji u word-aligned maniru što utiče na podrazumevano pakovanje polja u strukturama.

Pročešljaj baš ovaj forum i gledaj kakvu pomoć traže ljudi koji su počeli da uče C. Čim dođu do implementacije ulančane liste, uvrzu se ko pile u kučine jer ih niko nije učio osnovnu stvar, a to je kako da modularizuju program, apstrahuju logiku i sve organizuju u strukture i funkcije pa tek onda krenu da implementiraju. Umesto toga, imaš sve živo nakarikano u main(), i alokaciju i dodavanje i oduzimanje elemenata, pa teško onom ko mora da nađe gde iskače segfault zbog pogrešnog rada s pokazivačima.

Da se razumemo, ne mislim da je npr. Java išta bolja za početnika jer boilerplate kod lako postane velik da se ne vidi šuma od drveta. Ali ako je Python za nešto odličan, to je prototajping a baš to je ono što početniku treba (a da on to i ne zna).

pmale
3.10.2018, 10:00
@polarnimeda

Ako učiš Python obavezno radi sa Virtual Environments (https://docs.python.org/3/tutorial/venv.html) opcijom. Korišćenje pip ili conde bez VE zna da bude frustrirajuće. Evo ti i tutorijal (https://www.youtube.com/watch?v=MHoG-b96kTw&t=560s) kako da podesiš.

@milos86

meni su rekli da batalim pHp i krenem sa Djangom ili Ruby on Rails

milos86
3.10.2018, 10:23
@pmale

Hvala na odgovoru. Nije mi jasno zasto svi izbegavaju php, zanima me backend i ne znam odakle da krenem.

Mare!
3.10.2018, 12:18
Mare, raširio si priču a ne dade ni jedan konkretan uporedni primer gde je C bolji od Pajtona za školske slučajeve...

Ljudi, predlozio sam C iskljucivo za najosnovnije stvari. Znaci ispisivanje necega na ekran, funkcija koja proverava da li je broj prost.. Nikakve liste, ljudi imaju problem sa njima zato sto imaju ispit iz c-a ili struktura podataka.

Zasto bas C za elementarne stvari? Vec sam obrazlozio, ali da ponovim. U c-u mora sve rucno, i to je dobro za sam pocetak, jer se vezba logika. Konkretnih primera ima koliko hoces. Ako prelistas internet, svaki pajton odgovor je ili koriscenje neke funkcije, ili importovanje neke biblioteke. Sto je normalno jako korisno, jer na brzinu mozes da napravis ono sto zelis, ali ne vezba logiku na nacin na koji to C radi. To je sve. Moze i u pajtonu sve rucno da se radi, ali problem je sto to niko ne radi, i nece se susreti sa takvim stvarima. Koristi se sorted() za sortiranje, koriste se Slicing, Dicing and Splicing za manipulaciju nizom.. itd. Covek moze da se nikad ne susretne sa petljom, a da ne pricam o ugnjezdenim petljama ili slicnim stvarima.. sto znaci da nikad ne vezba logiku, vec uci jezik. Niko nije predlagao da uci C, nego da uci programiranje korz C, zaista ne znam cemu to plasenje ljudi sa memcpy.

Nisam rekao da je pyhton los, svakako treba da nauci osnove, ionako treba vise jezika da zna, a znanje pisanja python skrptica moze da bude jako korisno. Znam takodje da ga mnogi preporucuju za pocetak, jer se jezik brzo uci, ali zato sto daje gotova resenja, umesto da uci pocetnika, mislim da je kontraproduktivno, i zato ga licno ne bi preporucio.

U javi/c# isto moze da se pocne, samo to komplikuje pricu zato sto su skroz objektni jezici, i onda umesto da se baziras na osnovne stvari, ti moras da krenes od toga sta je klasa, sta je public static void main(String[] args), sta su polja, sta su metode, vidljivost, instanciranje objekata, adrese.. itd sto je skroz nepotrebno po meni. Mislim da se uz c lako uce osnove, vezba nacin razmisljanja, posle neka java/c# da se nauci objektni nacin razmisljanja.. To je put koji ja preporucujem ako neko hoce da nauci programiranje generalno, ne kazem da je jedini.

analayzer
4.10.2018, 16:10
Ja sam probao sa C-om ali je sintaxa veoma dalekooooo od C++ sintaxe. Praktično i neliče jedan na drugoga. Niti mi se C nešto dopada previše "kriptografskih" reči. C sam gledao samo zbog Win API-ja i zbog ničega drugog. Lično bih se pre držao C++.

Mare!
4.10.2018, 19:57
Ja bih licno izbegavao i C i C++ kao primarni jezik, ali to je vec subjektivno :D
Da C i C++ ne lice prosto nije istina, c++ je nastao iz c-a i moguce je kompajlovati C sa C++ kompajlerom (uz neke sitne izmene ponekad). Slicni su da slicniji ne mogu biti, sto se sintakse tice.

polarnimeda
5.10.2018, 1:04
poceo sam sa pythonom, ako je vise i bitno, pa cu kada to savladam da vidim za dalje. :)
ali, dobro bi dosla preporuka materijala za potpuno pocetnike?

neko mi rece da krenem sa zvanicnim, sa sajta, ali tu vec predpostavljaju neko znanje.

krenuo sam zato sa knjiogom / websajtom "How to Think Like a Computer Scientist" ( http://openbookproject.net/thinkcs/python/english3e/ ) i ide, ali polako dosta...

i to sam uzeo sa zvanicne strane python-a, na kojoj su preporuke bas za totalne pocetnike ( https://wiki.python.org/moin/BeginnersGuide/NonProgrammers )...

ali na toj strani ima oko 30 linkova i kolko sam bacio pogled yapravo nisu svi za totalne pocetnike, iako se nalaze u tom odeljku.

bas mi je tesko da prelomim. ne mogu uopste da odlucim ni da li knjiga, video tutorijal, interaktivni kurs? konkretan odgovor bi bio vrh. :)

doctor
5.10.2018, 2:34
Pozdrav ljudi, treba mi savet. Zanima me web programiranje i hteo sam da pocnem sa php-om, pocetnik i zanima me koliko je uopste php popularan da li se isplati uloziti vreme u ucenje php?

Javascript, Python ili Golang kao perspektivnu varijantu.
S druge strane malo manje "web" ali svakako "svestrane" varijante: C# ili Java.

galebns
8.11.2018, 15:59
Vecita dilema kako poceti uciti programiranje:) Da li od dna (prvo teorija, matematika itd.) ili sa vrha tj. napisati neki jednostavan programcic pa analizirati.
Prva varijanta je spora i mnogima dosadna pa dok dodjes do ozbiljnijeg programiranja mozda i odustanes, ali ako prodjes sve to, znas u "sitna crevca". Druga varijanta je brža tj. ucis ono sto ti treba a ako zatreba kopas dublje tematiku da bi resio neki problem. Tu je "minus" sto mozda neces znati menadzment sa memorijom i slicne stvari, bar dok ti ne zatreba.
Koji pristup izabrati, zavisi od kolicine vremena, zivaca, volje...

voodoo_
8.11.2018, 16:08
Učite projektovanje softvera, tj. prvo isfilozofirajte šta i kako treba da radi pa se onda bacite na kodiranje.

analayzer
8.11.2018, 20:46
Kaki Pajton??? Uzmi bre muški moj najomiljeniji C++/CLI pa imaš mogućnost da miksuješ sva tri C jezika (C,C++,C++/CLI) ovako. Kaki Pajton.
https://extraimage.net/images/2018/11/08/00d90ec68331b2a91d9c7564194cb271.md.png (https://extraimage.net/image/7HLP)

Mare!
8.11.2018, 22:15
Učite projektovanje softvera, tj. prvo isfilozofirajte šta i kako treba da radi pa se onda bacite na kodiranje.

Problem sa tim pristupom je sto treba dosta iskustva u 'kodiranju' da bi moglo da se planira i projektuje. Cak i za ljude koji vec programiraju to moze da predstavi problem, jer cesto nije logika ta koja ogranicava, vec jezik, frejmvork, biblioteke ili nesto sto prosto neko nedovoljno iskusan nije mogao u startu da predvidi. Jer realizacija plana/ideje zavisi od dosta fizickih faktora. Mada zavisi o kom nivou apstrakcije pricamo u tom planiranju/projektovanju.
Ali ipak mislim da je planiranje dosta zahtevno za nekog ko tek pocinje sa ucenjem programiranja. Planiranje dolazi samo vremenom.. I mislim da se nase definicije pocetnika dosta razlikuju.

Vecita dilema kako poceti uciti programiranje:) Da li od dna (prvo teorija, matematika itd.) ili sa vrha tj. napisati neki jednostavan programcic pa analizirati.

Po mom misljenu ne mora bas da se ide iz jedne krajnosti u drugu. Moze da se napravi neki miks. Na primer, krene se od pocetka, uz knjige, ali istovremeno se pisu jednostavni programcici, isprobava i analizira.. Znaci temeljno, ali opet prakticno i zanimljivo..

analayzer
25.1.2019, 18:08
Oćete programiranje e pa ja sam počeo, ozbiljnije, dobio motivaciju i inat na jednom drugom mestu pa da postavim neki moj rad sa Visual C++ i Visual C#. O detaljima neću ništa reći. Za C++ su potrebna dva dll da bi radila bez Visual Studija...
http://www.mediafire.com/file/jiai73236r62oqn/VC%252B%252B_Dll.rar/file
Programi redom
http://www.mediafire.com/file/okc3ftvhbggs2b6/Selection.exe/file
http://www.mediafire.com/file/p4xc68rcg5u0a97/2.Zadatak.rar/file
http://www.mediafire.com/file/88s43e41vzu5w8k/LotteryAssistant.exe/file
http://www.mediafire.com/file/nsl5nkdy15c4e60/Might_Molly.rar/file
http://www.mediafire.com/file/tss46gbkugbd66s/SwitchboardCalculator.exe/file
http://www.mediafire.com/file/slps2gzzmml12pa/Game_Guess.rar/file

voodoo_
25.1.2019, 19:33
VC++ DLL-ovi se ne isporučuju tako, nego daješ instalacioni run-time paket u odgovarajućoj verziji, npr:

Visual C++ 2015 Runtime
https://www.microsoft.com/en-us/download/details.aspx?id=53587

ili u "Code Generation" izabereš Multithreading umesto Multithreading DLL runtime, kako bi linker napravio integralni EXE koji ne zavisi od spoljne C biblioteke.

https://social.msdn.microsoft.com/Forums/vstudio/en-US/ab187afb-3af0-44ba-a03c-dde9e5208a1a/static-link-to-vc-runtime?forum=vclanguage

zozodev
3.5.2020, 22:04
Da se ukljucim kao novajlija. C je majka svih jezika :-) , i kao sto se u gimnazijama uci Latinski iako ga niko ne govori odavno tako treba uciti C (koji ja inace znam veoma povrsno). Radim sa PHP, Python, C#, Javacscript (i njegove varijacije) a C sam uzeo da citam (citam a ne ucim) naknadno iz radoznalosti a uvek sam znao da je to osnov.
Da nije lako raditi sa C ali mora da bude tesko. Ako ces lako uzmes neki framework, za to ni jezik ne moras da znas a eto nacices posao i bices "programer"

voodoo_
3.5.2020, 22:27
Dok ne kreneš realne projekte u C-u, ne znaš C ma koliko ga čitao :)

C je verovatno jezik sa najvećom razlikom između školskih primera (gde je sve čisto i modularno) i realnih projekata gde sve zviždi od maskiranja koda opskurnim #define-ovima, "opaque" typedef-ova, pointera na pointere, "rizičnih" kastovanja i eksploatisanja nedovoljno definisanih osobina jezika. Ne kaže se džabe da je C u suštini korak iznad makro-asemblera. Plus borba sa određenom verzijom i implementacijom C biblioteke, plus borba sa API-jem samog operativnog sistema (čist POSIX, Linux ekstenzije, Windows API)...

Da se razumemo, i ja volim da pišem manje programe i biblioteke u C-u kada znam na kom tačno procesoru i operativnom sistemu će se izvršavati i kad mogu da kontrolišem verziju dijalekta s kojim će se kompajlirati. Ali ne bih pisao velike projekte za koje nemam predstavu koliko će se funkcionalno dopunjavati tokom godina (zahvaljujući tome što sad svi misle da sve može da bude "agilno").

M@verick
1.6.2020, 21:24
Jel postoje u beogradu neki meetupovi ,konkretno za JS ? To je dobra fora da se stekne neko iskustvo posebno za pocetnike.

Partybreaker
1.6.2020, 21:57
Trenutno ne, zbog situacije, ali inače, da - JS Belgrade Meetup (https://www.meetup.com/JS-Belgrade-Meetup/).

M@verick
1.6.2020, 22:09
5 minuta pre nego sto sam postavio pitanje sam video to na netu al sam nesto bio iz fazona da je to staro par godina i da je bajato :D Hvala u svakom slucaju.

Sto se pocetnika tice,tu ubrajam i sebe,potrebna je praksa ,tako da ne bi bilo lose da stavljamo neke online community gde pocetnici mogu da pristupe nekom "zivom" projektu. Recimo ovo:
https://www.chingu.io/

Ja sam radio c, u srednjoj skoli. Zavrsio sam teslu i koliko se secam to su samo bili "matematicki " zadaci. Ali to je poenta u pocetku,koji god jezik da se izabere. Algoritmi ,strukture podataka...prosto ko zeli da se bavi programiranjem mora da se u pocetku fokusira na naizgled banalne primere.
Sto se front enda tice,svakako preporucujem https://www.freecodecamp.org/learn

polarnimeda
2.6.2020, 6:19
poceo sam sa pythonom, ako je vise i bitno, pa cu kada to savladam da vidim za dalje. :)
ali, dobro bi dosla preporuka materijala za potpuno pocetnike?

neko mi rece da krenem sa zvanicnim, sa sajta, ali tu vec predpostavljaju neko znanje.

krenuo sam zato sa knjiogom / websajtom "How to Think Like a Computer Scientist" ( http://openbookproject.net/thinkcs/python/english3e/ ) i ide, ali polako dosta...

i to sam uzeo sa zvanicne strane python-a, na kojoj su preporuke bas za totalne pocetnike ( https://wiki.python.org/moin/BeginnersGuide/NonProgrammers )...

ali na toj strani ima oko 30 linkova i kolko sam bacio pogled yapravo nisu svi za totalne pocetnike, iako se nalaze u tom odeljku.

bas mi je tesko da prelomim. ne mogu uopste da odlucim ni da li knjiga, video tutorijal, interaktivni kurs? konkretan odgovor bi bio vrh. :)

evo, ja napisao ovo pre godinu i po dana i polako se udaljio od cele price. :(
radio sam neki od materijala sa linkova i presao nesto materije, kada mi je preselo jer su uporno zadavali konkretne zadatke, bez pruzanja resenja sa kojima bi uporedio ono sto napisem. totalno neshvatljivo i neozbiljno.

onda sam krenuo drugi materijal u kojem su iste stvari objasnjene na malo drugaciji nacin, tako da se cinilo kao da krecem iz pocetka. i tu malo po malo, prestadoh.

evo sad ponovo pitam - ima li neko neki materijal koji je provereno dobar za apsolutne pocetnike, za python. spreman sam da ulozim vreme, ali mi se cini da ga bez smernica samo gubim.

a od kurseva zazirem, misleci da ako vec znaju tamo toliko, pre ce programirati nego da se bave predavanjima. mada, mozda gresim. mozda i znaju nesto, ali im je to laksa lova...

water wizard
2.6.2020, 6:29
Evo ja sam pomagao malo informatiku za 5 razred i rekoh da bacim pogled šta se uči u šestom, i vidim Python ni manje ni više, ja sam zadnjih 5-6 godina batalio programiranje ali sam čuo da je dobar pa bih ja isto mogao da pređem to gradivo za 6 razred..

Iskreno malo sam se iznenadio sa tim šta deca uče u osnovnoj, možda je teško za njih ali definitivno korisno, evo par linkova
https://petlja.org/skola/osnovna/sesti
ima i na https://rtsplaneta.rs/ pod škola lekcije na srpskom, za početnike baš kako nama i treba.. :D

Remedy
2.6.2020, 13:03
...evo sad ponovo pitam - ima li neko neki materijal koji je provereno dobar za apsolutne pocetnike, za python. spreman sam da ulozim vreme, ali mi se cini da ga bez smernica samo gubim.

a od kurseva zazirem, misleci da ako vec znaju tamo toliko, pre ce programirati nego da se bave predavanjima. mada, mozda gresim. mozda i znaju nesto, ali im je to laksa lova...
Secam se ove teme od pre par godina ;). Moj savet ti je da das sebi neki cilj, neku aplikaciju koju zelis da napravis. Onda istrazi u kojim jezicima se to moze napisati, kakva je raspolozivost materijala za ucenje. Odaberi neki koji ti deluje privlacno i ima dovoljno raspolozivog materijala za ucenje (za svaki jezik postoji neki pocetnicki kurs), i kreni dok ne zavrsis. Postavi razuman cilj, nemoj da bude nesto previse komplikovano, bitno je da bude zavrseno.

Besmisleno je da ulazis u to da li da ucis jezik koji ima staticko/dinamicko tipiziranje, da li ima automatski menadzment memorije itd. To su izbori cije prednosti i mane sada ne mozes da razumes, to ces nauciti vremenom, principi programiranja su isti u svim jezicima pa ces uciti i druge jezike (kad ti padne na pamet da uradis neki drugi projekat za koji je pogodniji neki drugi jezik/tehnologija). Mnogo je vaznije da imas cilj (da ti se ne desi ovo sto ti se desilo), nije bitno da se knjiga/kurs predju do kraja, nije bitno sto ce programski kod biti daleko od savrsenog. Znanje jezika i programerske vestine se usavrsavaju stalno, nikad nisi naucio jezik, kod uvek moze da bude bolji. Neces sve naci u jednoj knjizi, kursu, trazices kako da resis, zivis u vremenu Google-a. Pusti i to koji jezik ima buducnost, ucices vise jezika.

Ono sto je po meni sustinski bitno je da covek uziva u resavanju problema pomocu programskog koda. Ko se hvata za glavu kada treba sam da napise algoritam, bolje da se bavi drugim stvarima. Nemoj odmah da ti padaju na pamet neke komplikovane formule. Na primer imas red voznje 2 autobusa (kada staju na stanicu) koji u delu svoje trase prolaze istim ulicama. Treba izracunati termine kada je moguce da se presedne sa jednog na drugi bez cekanja vise od 5 minuta. I sad je bitno kako organizovati te podatke, sta i kojim redom izracunati, nije bitan programski jezik. Ili volis takve stvari da radis, ili ne volis.

Sto se tice kurseva, ja mogu da ti preporucim video kurseve. Narocito ako mozes da namestis 2 monitora, na jednom pustis kurs, na drugom kucas dok pratis. Naravno da u knjigama ima vise detalja, ali ovde se brze krene i brze se vide rezultati. Moze da se ispreskace ono sto je vec poznato, moze da se duplira brzina reprodukcije (npr vec si gledao kurs na tu temu, pa samo preletis oblast da vidis jel ces cuti nesto novo). Ima sjajnih video kurseva/predavaca, a ima i dosta krseva, kao i knjiga. Nije svako za predavaca, pisca, programera...

doctor
3.6.2020, 0:22
Ono sto je po meni sustinski bitno je da covek uziva u resavanju problema pomocu programskog koda. Ko se hvata za glavu kada treba sam da napise algoritam, bolje da se bavi drugim stvarima.

Amin.

Što se programiranja tiče uzmeš da radiš algoritme i bilo koji programski jezik - jedini odlučujući faktor može da ti bude popularnost da bi mogao da guglaš kad zaglaviš. Eto odlični primeri su Python, Javascript gde ti ne treba nikakav IDE (kao za Javu i C#) i gubljenje po projektima i menijima da bi nešto napravio već možeš da se fokusiraš na algoritme tj. rešavanje problema i kod.

Posle ćeš krenuti da učiš o tehnikalijama jezika, kako šta radi itd. ali u početku se ne treba opterećivati time.

Program2021
11.5.2021, 6:19
Pozdrav svima,

Imam ideju za jednu mobilnu aplikaciju. Ponajviše bi bila bazirana na slikama, informacijama i dnevnim notifikacijama. Ništa specijalno, ali vremenom bi moglo biti.:) Elektrotehnički sam inžinjer, bio sam u drugim vodama IT-a, imam živaca sediti i raditi. Šta učiti za napraviti aplikaciju? Gde učiti? Mogu izdvojiti 500 evra (a i trostruko više ako vidim da me krenulo), htio bih za šest meseci nešto (a i malo više) vezano za programiranje znati i imati završenu aplikaciju, ne nužno savršenu, ali funkcionalnu. Koje tehnologije, kursevi, YouTube videe preporučujete? Koga pitati za savjet? Možda učenje online, tutor jedan na jedan?

Hvala!

voodoo_
11.5.2021, 7:44
https://developer.android.com/guide/

rakac21
26.5.2021, 22:07
Pozdrav svima,
Studiram racunarstvo i informatiku i vec sam imao predmete:
Algoritmi i programiranje, objektno-orjentisano programiranje, uvod u javu i C#...

Zelim da malo ubrzam proces ucenja da programiram i da se osposobim tako da mogu da se zaposlim dok studiram, pa ako imate neke smernice, sajtove za ucenje, za dobijanje nekakvog sertifikata...

doctor
27.5.2021, 0:05
Mani se sertifikata.

Preporučio bih ti da se držiš toga što radiš na faksu i da lepo i temeljno naučiš strukture podataka i algoritme jer ćeš steći neophodno znanje i naučićeš kako da razmišljaš kao developer i, najvažnije, naučićeš se kako da učiš. Pored toga imaćeš predmete kao što su softversko inžinjerstvo i objektno-orijentisano projektovanje i tu ćeš moći da naučiš još mnogo važnih stvari koje su neophodne za bilo kakav ozbiljan rad. Dalje, učićeš o bazama podataka, imaćeš mogućnost da za izborne predmete uzmeš ono što te zanima (ako si na Elfaku?) kao što su napredne baze podataka, web programiranje itd.

U suštini, istražićeš razne sfere developmenta što je apsolutni must-have čime god se ti kasnije bavio i moći ćeš da "napipaš" šta ti leži i čime bi želeo da se baviš i onda donesi odluku šta želiš da dalje istražuješ i učiš - i tada dođi na forum ponovo da ti preporučimo konkretne materijale.

Što se tiče zaposlenja u toku studiranja ako ti to nije neophodno iz finansijskih razloga topla topla topla preporuka da ne radiš to jer ćeš pucati sebi u nogu. Da vidiš kakvo je znojenje kad treba da se vratiš da polažeš Matematičke metode 7 godina nakon što si ih slušao... Ne pitaj kako znam :D

Ako si baš zapeo - traži praksu u nekoj firmi, teško da će te bilo ko zaposliti tek tako. Praksa je daleko manje obavezujuća stvar i dobićeš priliku da radiš i učiš dok studiraš bez mnogo opterećenja. Napravi CV i šalji svim firmama koje pronađeš, gomila ljudi tako nađe svoju prvu praksu. Možeš i da istražiš firme koje imaju programe prakse, proveriš kad to kreće pa se prijaviš.

Neutrino
27.5.2021, 0:56
Baci pogled i na Infostud. Većina oglašavača jesu teške mutljavine ali možda i ubodeš neku poštenu usputnu praksu od koje neće da ti strada pola vitalnih organa dok ne završiš studije.

rakac21
27.5.2021, 21:38
Hvala na savetima ljudi...

Znaci bas mislite da je losa ideja da probam da naucim da radim nesto i da radim tokom studiranja?

Mada verovatno i ne moze da se dostigne takav neki nivo s kojim bi ja mogao da radim nesto tipa za 6 meseci sto sam ja mislio...

Neutrino
27.5.2021, 23:05
Mani se sertifikata.

Preporučio bih ti da se držiš toga što radiš na faksu i da lepo i temeljno naučiš strukture podataka i algoritme jer ćeš steći neophodno znanje i naučićeš kako da razmišljaš kao developer i, najvažnije, naučićeš se kako da učiš. Pored toga imaćeš predmete kao što su softversko inžinjerstvo i objektno-orijentisano projektovanje i tu ćeš moći da naučiš još mnogo važnih stvari koje su neophodne za bilo kakav ozbiljan rad. Dalje, učićeš o bazama podataka, imaćeš mogućnost da za izborne predmete uzmeš ono što te zanima (ako si na Elfaku?) kao što su napredne baze podataka, web programiranje itd.

U suštini, istražićeš razne sfere developmenta što je apsolutni must-have čime god se ti kasnije bavio i moći ćeš da "napipaš" šta ti leži i čime bi želeo da se baviš i onda donesi odluku šta želiš da dalje istražuješ i učiš - i tada dođi na forum ponovo da ti preporučimo konkretne materijale.

Što se tiče zaposlenja u toku studiranja ako ti to nije neophodno iz finansijskih razloga topla topla topla preporuka da ne radiš to jer ćeš pucati sebi u nogu. Da vidiš kakvo je znojenje kad treba da se vratiš da polažeš Matematičke metode 7 godina nakon što si ih slušao... Ne pitaj kako znam :D

Ako si baš zapeo - traži praksu u nekoj firmi, teško da će te bilo ko zaposliti tek tako. Praksa je daleko manje obavezujuća stvar i dobićeš priliku da radiš i učiš dok studiraš bez mnogo opterećenja. Napravi CV i šalji svim firmama koje pronađeš, gomila ljudi tako nađe svoju prvu praksu. Možeš i da istražiš firme koje imaju programe prakse, proveriš kad to kreće pa se prijaviš.A onda kad izađeš sa faksa i počneš da radiš prva stvar koja ti se kaže je da zaboraviš sve što si naučio na faksu :D

Ti: "Ali gospodine glavni i dogovorni, mene su učili da se strogo držim SOLID-a..."
Ne-Ti: "Slušaj gušteru, ti dam ja SOLID. Radi kako ti se kaže jer su pravila tu da se prekrše kad znaš zašto ih kršiš" :dedica:

doctor
27.5.2021, 23:54
A onda kad izađeš sa faksa i počneš da radiš prva stvar koja ti se kaže je da zaboraviš sve što si naučio na faksu :D

Yes but actually no. :D

Da nisam prošao kroz faks od algoritama i struktura podataka ne bih video ni "a" ni "s" a design patterni i bazična day-to-day terminologija koja mi treba bi mi bila špansko selo.

Faks me ničemu korisnom nije naučio što se praktičnog rada tiče ali jaka osnova je tu, to ne mogu da poreknem. Silom prilika prođeš sve od mikrokontrolera, x86 asemblera, pa C-a i Cpp-a, pa preko Jave i C# pa sve do Javascripta i PHP-a (da, lol) i pokupiš usput gomilu teorije i termina, učiš o jezicima i kompajlerima, dotakneš se veštačke inteligencije (pre-neural nets)... I izađeš totalno nesposoban za rad ali poprilično sposoban za dalje učenje i napredovanje, ako si kroz faks prošao sa ciljem da naučiš a ne da samo ispolažeš ispite. Razumeš strukture, razumeš algoritme, razumeš upravljanje memorijom, garbage collection, osnovne patterne, imaš ideju o tome kako stvari zapravo rade...
I sad iako sam frontend developer nisam tocilo i kapiram kako mnogo toga radi ispod haube i mnogo lakše se šaltam sa FE na BE, sa jezika na jezik, iz paradigme u paradigmu itd.

Čak sam i LISP mukotrpno kucao iz VI na faksu, kakvo je to zlo bilo ali taj shift u načinu razmišljanja je bio neprocenjiv za mene.

Pa onda operativni sistemi i sistemsko programiranje, računarske mreže... Gomila korisnih stvari u day-to-day radu kad negde zapne.

Pele023
28.5.2021, 9:45
Da podelim i svoje iskustvo, mozda ne koristi ali nece valjda ni da steti.

Fax ti pruza dobru osnovu ako se iscimas, koja ce mnogo znaciti kasnije. Ja mislim da sam sve zaboravio sa faxa, posto se stvari koje ne koristis zaborave vremenom, ali se prilicno lako prisetim ako je potrebno. Mnogo je lakse da se prebacujes izmedju tehnologija ako znas osnove koje pokupis tamo. Dok sam ja bio na faxu bili je da ko hoce moze da se provuce a ko hoce moze i da nauci.

Sto se tice nekog rada uz fax, mislim da to nije dobra ideja ako bas nije frka, jer prvi put kada osetis neki ozbiljniji novac fax ce da padne u drugi plan. U sustini to i moze da ispadne dobro, posto ti fax i nije obavezan u ovom poslu, ali ipak mislim da znaci kada imas i diplomu, bar pokazuje u kom si pravcu razmisljao i da si istrajao. Da se razumemo, nisam skroz protiv rada dok si na faxu, i ja jesam radio, ali to su sve bili kratkotrajni poslovi, cisto da se uzme neka kinta za trosak.

Eventualno ako te bas privlaci neka tehnologija i imas vremena, mozes da radis neki pet projekat u slobodno vreme.

U sustini, sve ovo sto su ti vec napisali.