[ owim @ 04.06.2009. 23:50 ] @
Postaviću najnezahvalije pitanje za svog druga: on je završio saobraćajni faks, radi u državnoj firimi, mala plata, bistar dečko -- u slobodno vreme koje ima želeo bi da nauči da programira.

Nikad ništa nije programirao, ali ima dara, brzo i fino snalazi se sa Excel-om. Problem je što ne zna šta hoće, niti zna šta postoji. Njegova ograničenja: ne govori engleski. Otuda, preporučio bih mu nešto iz čega postoji dobra knjiga na srpskom jeziku. Međutim, ja čitam samo englesku literaturu i nisam u toku.

Lično bih mu savetovao da uđe u .NET svet -- Visual Studio, SQL Server, C#... ali ako za to nema knjiga - badava.

Ima li ko mudrijaški savet? :)
[ ventura @ 05.06.2009. 00:08 ] @
Ne znam koliko se takva osoba može snaći sa C-om kao prvim jezikom... Ja ipak mislim da bi trebalo da počne sa nečim poput VB-a da stekne neke osnove, generalnu ideju i koncept svega toga, pa tek onda da se prebacuje na C..
[ Goran Rakić @ 05.06.2009. 00:13 ] @
Možda za početak neko RAD okruženje za male poslovne programe (MS Access - ima literature koliko ti volja, OpenOffice.org Base,...)?

Ako mu dobro krene kasnije će sam da pređe na C# / C++ / Java okruženja i sve radosti koje uz to idu.

Sa druge strane nije ni veb programiranje loše za početak, mnogi ovde su tako počeli. Prvo osnove HTML-a, malo JavaScript-a, pa posle PHP, SQL,... U odnosu na pomenuta RAD okruženja veća je raznolikost, delovi slagalice nisu toliko dobro spojeni i trebaće mu više knjiga da dođe do upotrebljivih rezultata. Takođe ima dosta naslova, na žalost ja nemam neke preporuke.


[Ovu poruku je menjao Goran Rakić dana 05.06.2009. u 01:25 GMT+1]
[ Mister_rap @ 05.06.2009. 02:35 ] @
Neka prvo nauci engleski pa onda neka krene sa ucenjem programiranja...
[ Goran Rakić @ 05.06.2009. 02:38 ] @
To uopšte nije neophodno, možda čoveka ne zanima da uči engleski.
[ owim @ 05.06.2009. 05:20 ] @
Hvala svima. Znam da sam postavio najnezahvalnije pitanje i dosta sam
razmišljao u kom forumu ću da postavim, a da bude neutralno (u Delphi
forumu, znamo šta bi "delfisti" odgovorili). Opet, siguran sam da se
*ne* možemo složiti koji alat / jezik ima bolju budućnost: jedni će se
držati Majkrosofta, drugi open source rešenja, treći... recimo
BrainFuck jezika (http://en.wikipedia.org/wiki/Brainfuck). Podeljeni
smo u tabore i to je dobro.

Momak je sam meni rekao da želi C#. A zašto? Jer naziv tog jezika
najviše puta došao do njegovih ušiju. Pošto je tabula raza, a to je
dobro, može da napravi dobru odluku -- možemo da mu je nametnemo.

Evo uslova koji limitiraju izbor:

a) obavezna kvalitetna knjiga na srpskom iz koje može da uči (znate li neku?)
b) ne zna engleski, verujem da bi se teško snašao i u Help-u (sem oko
opisa sintakse)
c) ne može sebi da priušti tutora ili kurs

Pošto *ne zna šta hoće*, možemo za njega da izaberemo da li će biti
opšti jezik (npr. Visual Basic), nešto bliže bazama ili pak web
razvoju.

Kako sam uduvek bio hobista-programer (od C-64), linearno sam
programirao u Fortranu, proceduralno i objektno u TurboPascal-u,
umereno znam C++, Visual Basic sam lako skapirao kad koristio Access.
Za sobom imam i FoxPro, Modulu 2, Clipper, Cobol, SQL... -- a danas
bez helpa ne bih napisao pravilno ni liniju koda. :) Hoću da kažem da
je to sve povezano.

Možda bi mu najjednstavnije (i najkorisnije) bilo da nauči da osmisli
bazu podataka (recimo, relacionu, kroz ER-model i normalizaciju), i
SQL jezik za upite. To se provlači kasnije svuda kroz biznis
aplikacije. A može da vežba baš u Access-u kojeg već ima unutar
Office-a. I da povezuje sa Visual Basic-om. Dao bih mu sjajnu Oralce
literaturu za učenje (Oracle na VMS-u, na tome sam radio, hehe), koja
je na engleskom, sad sam se setio, otpada.

Kao što vidite, ja nisam pametan, a više glava zna bolje od jedne zbunjene! :-)
[ deerbeer @ 05.06.2009. 08:50 ] @
Engleski jezik je preko potreban jer tutorijala i primera na internetu ima mnogo vise nego na srpskom jeziku.
Cak i ako nadje neku dobru knjigu ili tutorial na srpskom to mu svakako nece biti dovoljno u daljem radu i napredovanju.
Za pocetak je sasvim dovoljan MS Access sa VBA jezikom koji ide uz njega (pravljenje relacionih baza ,SQL upiti i jednostavne VBA forme) .
Kasnije nek nadogradjuje znanje u zavisnosti od njegovih afiniteta (sql server,c#,vb.net itd.)
[ ventura @ 05.06.2009. 09:20 ] @
Engleski nije apsolutno neophodan... Mnogo pomaže ali nije neophodan... Ja znam čoveka koji je dobar programer a ne zna reč engleskog... I što je najcrnje 'čita' help, al nemam pojma kako ukapira šta piše tamo...
[ deerbeer @ 05.06.2009. 09:38 ] @
Citat:

I što je najcrnje 'čita' help, al nemam pojma kako ukapira šta piše tamo...

Mozda koristi Google-translator

U sustini nije potrebno neko prefektno znanje engleskog vec je dovoljno ono iz srednje skole
i pomalo programerske terminologije zbog lakseg snalazenja oko pretrage na googlu .
[ misk0 @ 05.06.2009. 12:24 ] @
Citat:
ventura: Engleski nije apsolutno neophodan... Mnogo pomaže ali nije neophodan... reč engleskog... I što je najcrnje 'čita' help, al nemam pojma kako ukapira šta piše tamo...


Vjerovatno kopira primjere i probava, ali objektnu filozofiju nije sigurno naucio citajuci literaturu na engleskom :)
[ Mister_rap @ 05.06.2009. 15:44 ] @
Znam da ja licno (a verujem ni pojedinici i firme sa kojima saradjujem) ne bih nikada zaposlio nekoga ko ne zna engleski ma koliko on dobar programer bio...

Razloga za to ima milion, kao prvo ko da mu prevodi specifikaciju na srpski!? Da pise kod sa non-english varijablama i komentarima....
Mozda zaista nije neophodno, ali...
[ owim @ 05.06.2009. 16:26 ] @
Slažem se s tobom, mislim da varijable i dokumentacija koja prati kod
mora da bude na engleskom (ali ne i nužno!), ali hajde da ne ubijemo
čoveka u pojam, danas je otišao do Mikro knjige i kupio Access '07
"Sve što mi trebalo da znate" (ili tako nešto). Inače, dao sam mu URL
ove teme i čita vaše savete, ali ne piše.

Dakle, angažovao se samo 1 dan nakon što smo pričali u vezi sa time --
to govori da je zainteresovan i treba to ceniti, zar ne? :)

Hvala svima!
[ savkic @ 06.06.2009. 11:24 ] @
Kasno sam video temu, i moja preporuka je Access, lako se radi jer je pre svega vizuelan alat i za nešto osnovno ne mora ni programirati. Ako se snalazi i sa Excelom (i ostalim Office programima) to je plus jer se programi dopunjuju. Treba da pogleda i praktimu na webu, tu ima dosta rešenja i saveta za Access.
Što se tiče samog učenja nekog konkretnog jezika, to i nije toliko bitno, ako nauči da razmišlja pravilno i kako se rešava problem, kodiranje je samo pitanje tehnike. Dobar programer za dva, tri meseca može solidno savladati novi jezik.

Inače Engleski i programiranje su usko povezani, kao što je za šah i matematiku poželjno znati ruski, tako je i sa programiranjem danas, na engleskom mora paralelno da radi.
[ dragancesu @ 07.06.2009. 22:44 ] @
Lepo si napisao da je nezahvalno pitanje.

Dobra volja je samo pocetak i bez toga ne moze. Bilo bi dobro da zna sta bi radio, ali otom potom.

Za pocetak bi trebalo izabrati nesto jednostavno i relativno lako. S druge strane trebalo bi da je popularno, tj da to vec koristi neko u okolini, pa se moze dobiti pomoc u vezi nekih problema i dilema. Pozeljno je da ima literature za to.

Za sta god da se odluci treba procitati knjigu da se vidi sta je to, koje su mogucnsoti, za sta je namenjeno, uraditi primere.

Za uvod u programiranje bi najbolji izbor bio neki interpreter, BASIC je napravljen namenski, a ne slucajno. Madjutim, danas situacija nije da se sa tim pocinje. Vizuelni alati mnogo olaksavaju i dosta skrivaju.

Prethodni saveti vode ka access-u. Po onome sto sam napisao mogao bi da zadovolji, ima literature, ljudi koji znaju, verovatno i da pomognu. Postoje kursevi, mada je pitanje sta se nauci na pocetnim. Postoji knjiga za ECDL kurs koji je lepo uradjen za pocetnike.
[ EArthquake @ 07.06.2009. 23:07 ] @
zlocin je nekome preporucivati BASIC , ako nista drugo , zlocin prema njegovom mozgu
[ momsab @ 08.06.2009. 01:09 ] @
ako je Visual Basic 6 neka, bolje ne :)

sta znam, mislim da je dobro poceti python obzirom da moze odmah da vidi sta kako radi

npr napise ( u tri reda)
Code:
x=24
y=35
x+y

i python mu odmah ponudi resenje :)
pa onda se zapita da li moze neki tekst tu da dodje i sazna u doumentaciji da se ispisuje ovako nekako (python 3, da ne bude zabune)
Code:
print ( "x+y=" + str (x+y) )

str(neki broj) je da broj prebaci u string,kako bi se ispisalo bez problema
[ owim @ 08.06.2009. 15:24 ] @
Drugar o kojem pričamo kupio je Access 07 u uzdanju Mikro knjige i vredno čita, jako mu se dopada i poslao mi je sadržaj:

1deo: smestanje podataka u tasbele
2deo: obrada podataka pomocu upita
3 : stampanje izvestaja
4 : izrada korisnickog interfejsa pomocu obrazaca
5 : programiranje accessa
6 : deljenje accessa sa ostatkom sveta (tu je povezivanje sa SQL i SharePointom)


Kao što vidite, nedostaje deo o modelovanju baza podastaka. Šta je entitet? Kakve veze postoje? Blabla, pa tek onda "smeštanje podataka u tabele".

Šta vi predlažete kao dopunsku literaturu?
[ dragancesu @ 08.06.2009. 22:26 ] @
Sta god da se preporuci postoji ZA i PROTIV. Napisao sam da bi za pocetka bio dobar neki interpreter, ali danas situacija nije tako jednostavna.

U neku ruku je interesantan excel. To nije programiranje (mada moze i tamo), ali za pocetak nije lose. Unese se formula, i odma vidi rezulat ili dobije poruka o gresci.

Interpreter je PHP.
Potrebno predznanje je poznavanje HTML-a. Problem moze biti podesavanje okruzenja, tipican primer su globalne varijable. U novijim instalacijama su iskljucene, a knjigama se koriste. Procitao sam nekoliko knjiga o PHP i moram priznati da su dobre, sa stanovista pocetnika. Prvo ide jezik sa primerima. Onda dodje bar jedno poglavlje o MySQL i jeziku SQL, pa se onda prelazi na komplikovanije primere sa bazama. Problem je sto nema neki debager pa se neke greske tesko otkrivaju. Ova varijanta je potpuno besplatna. I nije namenjeno za pravljeneje aplikacija kakve se prave u access-u.

Access
Nekad su ga zvali baza za dokone sluzbenike. Kakav god da je mnogi su napravili dobre programe koristeci access. Potrebno predznanje su baze i SQL, i za to postoje knjige. Radi se sa wizardima, sto mnogo olaksava, ali i mnogo sakriva. Lako je napraviti nesto jednostavno, ali kad treba komplikovanije onda se koristi VBA. Deo je MS office-a i nije besplatno.


A da napomenem da ima jedna odlicna stvar, koja i jeste i nije za preporuku, ali sto da se ne pomene, ORACLE. Osnov za baze je poznavanje SQL. Vidis, taj uvodni kurs za SQL je odlican. Koriste se dve-tri tabele i nauci sve u vezi komandi i funkcija. To je interpreter i radi se u text rezimu. Ukucas komandu i vidis rezultat. Odlicno za pocetnike. Kad se to prodje sledeci korak je forms i reports (ima jos gomila stvari, ali nisu bitne za ovu pricu). To je vec dosta komplikovano dok se ne udje, ali je odlicno. Baza i developer mogu da se skinu i probaju. A cena, mozda i nije tako strasna koliko je dobro.


I koliko god da se ima volje treba imati i strpljenja. Programiranje ipak nije jednostavno kako se cini na pocetku.





[ Danijel Krmar @ 08.06.2009. 23:32 ] @
Ljudi su već uglavnom rekli šta misle, tako da neću tupiti nepotrebno. Jedino ću dati par linkova sa tekstovima na našem jeziku, tako da možda i tu može pronaći zanimljive tekstove:
http://grdelin.phy.hr/~ivo/Nastava/Baze_podataka/index.php
http://web.studenti.math.hr/~manger/bp/ (oba sajta su sasvim ok, pri čemu mi se čini da su na prvom sajtu objašnjenja nešto manje detaljna, ali zato jasnija)
http://www.baze-podataka.net/ (zanimljiv blog)
http://www.acs.ns.ac.yu/sr/node/59 (materijali sa FTN-a, isto veoma dobri)


Naravno neki kraći tutoriali postoje i na sajtovima:
http://www.puskice.org
http://www.puskice.info
http://tutoriali.org

Inače solidna knjiga za učenje teorije baza podataka je "Organizacija datoteka i uvod u baze podataka" Pavla Mogina, ali nisam siguran da li je ima svuda za nabaviti, mislim da je ima na FTN.

Nadam se da sam bar malo pomogao.
[ anon68680 @ 14.06.2009. 14:01 ] @
Vecito pitanje... Gde poceti? :)

Vidim da se on vec odlucio za Access s obzirom da je kupio knjigu, pa srecno mu bilo :) Iako su mnogi rekli ovde da poznavanje engleskog nije neophodno, po meni je poznavanje nekih elementarnih pojmova tipa "procedure", "class", "object", "function" i sl jako bitno razumeti sustinski, kako ne bi ucio napamet tu sintaksu vec i razumeo njeno znacenje. Necu da predlozim da sedne prvo da nauci engleski pa da se onda baca na programiranje, ali bi mogao da pored sebe drzi neki recnik engleskog jezika pa kad god naidje na neku sintaksnu rec koja ga buni, da pogleda tu sta znaci :) Poznavanje engleskog bi mu pomoglo i kad trazi savete i pomoc pri resavanju problema na nekim stranim forumima... Koliko se puta desilo da meni neki kod ne funcionise, pa bih samo izguglao o tome i naisao na nekog ko je vec resio isti taj problem. Verujem da ce tvoj drug, vremenom kako bude napredovao u programiranju, shvatiti koliko mu engleski moze pomoci.
A i engleski jezik u principu treba da zna covek 21. veka, postao link u internacionalnom svetu...
[ Sapphire @ 14.06.2009. 15:37 ] @
Članak na mom blogu: http://theloneprogrammer.wordp...kako-postati-programer-part-1/
[ owim @ 14.06.2009. 18:49 ] @
^ Odgovor na mestu. Za ucenje prograranja uopste ne treba sesti za
PC/Mac. Papir i olovka. Ima toliko stvari koje ja ne znam, i ne ucim
ih tako sto otvorim "example" (ok kad poredis dva jezika, pa na brzaka
pohvatas razliku). Kada sam ucio sta su entiteti, relacije, objekti...
za to su mi bili potrebni olovka i papir.

Ja sam hobi-programer, i to ex, i sve sto radim crtam na papiru (ili u
Case) alatu. Tek kad "vidim" ceo koncept u glavi, trudim se da sto
jednostavnije i brze dodjem do resenja, pozeljno sa sto vise wizard-a.
Naravno, to nailazi na kritiku, ali za hobiru-programera je ok. :)
[ mmix @ 14.06.2009. 19:52 ] @
Citat:
owim: ^ Odgovor na mestu. Za ucenje prograranja uopste ne treba sesti za PC/Mac. Papir i olovka.


E ovo objasnjava mnoge stvari na beogradskom i slicnim univerzitetima.
Kao kontrast, u petak bas bejah poslom u Berkeley Institutu ovde na Bermudama, sto je malo tripozno ime za srednju skolu, ali ono sto je poenta price je da su svi "klinci" imali laptopove i da niko nije nosio ni sveske ni udzbenike i da im je sav materijal bio dostupan u elektronskom obliku. Mislim da treba i njih da obavestite o tome da ne odrastu deca u pogresnom smeru. Nalazimo se na korak od StarTrek uredjaja a vi o papiru i olovci.

To sto ti radis te ne cini programerom, cak ni hobi-programerom, eventualno nekim hobi-analistom ili hobi-arhitektom, programeri ne prave case dijagrame, programeri implementiraju case dijagrame koje dobiju od analista i arhitekata i to uz nadzor/peer review team leadera i/ili senior kolega. I ako se programerom danas prihvata neko ko isklikce par puta na wizard dugmice onda se i prosecnom kuvaru sa mikrotalasnom na dugmice isto mora priznati zvanje programer, zar ne, jos ako isprogramira kuvanje pa pauzu pa kuvanje, eto senior programera

Manite se corava posla, ako hocete da postanete efikasni programeri, bar u onom smislu da budete komercijalno korisni i da vas neko placa pristojne pare za to, potrebne su godine truda i godine realne prakse i (bar za sada) poznavanje engleskog zbog daljeg usavrsavanja; apsolutno je nevazno od cega cete poceti dok god ste u KODU, ne u autogen wizardima i u kontrolama i u formama koje ce posao da odradjuju umesto vas, ako nemate pojma sta je i kako je wizard uradio to sto je uradio i ako ne znate kako to da uradite sami onda je to ispod pocetnickog nivoa; a ako znate kako funkcionisu koncepti programiranja u jednom jeziku prelazak na drugi u istoj paradigmi je daleko laksi, kao sto je lakse i usvajanje sekundarnih tehnologija kao sto su gotove biblioteke i frameworci. Wizardi su tu da skrate vreme onima koji ZNAJU sta wizardi tacno rade, oni nisu alat za neuke i to sto je par takvih "programera" uspelo da progura par "aplikacija" na trziste vise govori o trzistu, koliko para toliko muzike.

Znam da zvuci elitisticki, ali ako niste spremni za taj trud i to ucenje onda bolje usmerite svoju energiju u nesto drugo sto ce vam pare doneti brze, jednostavno ne znam zasto svako ko ima malu platu i ne zna sta ce sa sobom odjednom hoce iz korena da promeni svoju karijeru, baci sve sto ja naucio do tada i da postane programer? Zar je moguce da jos vlada fama da je to posao za koji dobijas debele pare posle dvonedeljnog kursa?
[ Nedeljko @ 14.06.2009. 21:42 ] @
Ja mislim da onaj ko želi da postane programer treba prvo da završi muzičku školu. Kakav je to programer koji nije muzički obrazovan!
[ anon68680 @ 14.06.2009. 22:02 ] @
Decko nije reko da zeli da od toga napravi karijeru, mozda hoce u slobodno vreme da se igra malo sa programicicima.. Bolje to nego da provodi vreme za kompom igrajuci igrice..
[ mmix @ 15.06.2009. 03:23 ] @
Pa nije bas tako receno, tema je pocela sa "on je završio saobraćajni faks, radi u državnoj firimi, mala plata, bistar dečko"; da lova nije u igri i da se trazi hobi sto bi se pominjala losa finansijska situacija. Fora je sto nije on ni prvi ni poslednji i ovoga cujem sve vise cak i u sopstvenoj familiji, besparica je velika i sve je teze izdrzati mesec i ljudi traze alternativne ili potpuno drugacije izvore prihoda i to je sasvim ok i ja ne sumnjam ni u njegove intelektualne kapacitete da postane programer niti mislim da je defetizam bolje resenje, ali mislim da je nezahvalno osobi koja razmatra programiranje kao potencijalno resenje finansijskih problema govoriti "ma samo ti instaliraj Access i bices programer dok kazes keks"; bas me interesuje gde ce da se zaposli kao 'Access programer', sto je oksimoron samo po sebi, i to za vece pare nego sto dobija kao saobracajni inzenjer i kako ce od toga da napravi visegodisnju karijeru. U ovom poslu nema leba bez motike i bez ozbiljnog truda i nijedna knjiga "nauci XXX za 21 dan" nece od nikoga napraviti dobro placenog programera, ako uopste napravi ikakvog. I mislim da je iskrenije i bolje reci to coveku da moze da donese informisanu odluku o svojim koracima dok jos ima izbor, jer kad on potrosi vreme a resenje se ne materijalizuje, sta onda?
[ owim @ 15.06.2009. 04:14 ] @
^ Odlichan komentar mmix. However, moj drug nije programer,
saobracajni je inzenjer, bavi se projektovanjem ruta javnog prevoza.
On je entry-level PC user. Ja sam psiholog. Nama i slichnima,
"programiranje" u DANASHNJE VREME vise je "vizuelno" povezivanje
elemenata, dakle koristeci neki alat i skript jezik tog alata. Nije li
to pseudo-programiranje, na visini zadatka posla kojim se bavimo?

Kao klinac odrastao sam na Borland-ovom TurboPascal-u i C-u (ko se
toga seca?), i to sa nekada sjajnim dibager znanjem, kada se sve
radilo rucno, ili sa malo napisanih biblioteka. Tu je bio i Fortran,
Modula 2, hrpa Oracle-ovih knjiga za VMS. Od neke '97 prestao sam da
pisem kod. Da li sam programer? NE. Medjutim, drugima resavam
kompleksinije probleme tako sto im resenje napisem u pseduo-jeziku,
koji nalikuje na TurboPascal + nekoliko slicica. Zasto? Jer nemam
nikakav razvojni alat. "Papir i olovka" su metafora za razumevanje
toka, procesa, promene, uticaja (matematike, logike, statistike).

Koliko vi, i ljudi kraj vas, povezujete Office aplikacije? Koliko
"iskoriscavate" Word, Publisher, Excel...? Da li materijal delite tako
sto imate "share folder" na nekoj mrezi? Koliko ima "smart"
kolaboracije, koja je vec u Office paketima? Krecem se po dobrim
SRB-exYU-EU biznis mestima, ono sto vidim u SRB je i dalje na nivou
Notepad-a. Dakle, osnovni alati su dobili izuzetno sofisticirane
mogucnosti, za koje nije potrebno programiranje per se (kao takvo),
ali jeste percepcija procesa u celini -- i povezivost elementa.
Medjutim, prolaze godine, a vodeci ljudi SRB biznisa "nisu u tome", ni
poslovno, ni privatno.

Prvo, naucite da koristite Office, povezite entitete koristeci
Wizard-e, VB script, osetite se da ste nadvaladi konja na kojem jasete
i koji lipsava -- onda sledi "Hello World" aplikacija :).

Drugo, kao sasvim drugi pristup, ne mora se biti "u alatu" da bi se
razumeo proces, moze se ostati u svetu apstraktnih kategorija koji
daje obuhvatnost (ako se bavimo malim stvarima, ne vidimo veliku
sliku), i dok umemo to da interpretiramo, postojace neko ko ce ideju
za novce da ovaploti. I tu nastupa profi-programer, cija je "velika
slika" duboko ispod GUI-a, s rukama "masnim od motora", kako je to
mmix vec opisao. Medjutim, ako ste u tome ne mozete biti i u necemu
drugom. Toliko duboko.
[ owim @ 15.06.2009. 04:25 ] @
U opis svog prijatelja uneo sam sopstveni sadrzaj: ja ga dozivljavam
kao nekoga ko se mnogo cima u drzavnoj firmi i radi za male novce;
vidim da resava kompleksne zadatke a nema na poslu prilagodjen alat da
to resi, a nema znanje o drugim alatima (razvojnim okruzenjima).

Tu nastupam i ubacujem mu ideju da bi mogao da bude vise od "entry
level" korisnika, i nazivam to "programiranjem". On grize.
Savetovanjem na ES-u zakljucujemo da bi Access znanje moglo odmah da
bude korisno, a sve sto tu nauci -- kasnije ce vredeti. Ne zanimaju ga
sertifikati, ne ide prica u tom smeru.
[ owim @ 15.06.2009. 05:29 ] @
> U opis svog prijatelja uneo sam sopstveni sadrzaj: ja ga dozivljavam
> kao nekoga ko se mnogo cima u drzavnoj firmi i radi za male novce;
> vidim da resava kompleksne zadatke a nema na poslu prilagodjen alat da
> to resi, a nema znanje o drugim alatima (razvojnim okruzenjima).
>
> Tu nastupam i ubacujem mu ideju da bi mogao da bude vise od "entry
> level" korisnika, i nazivam to "programiranjem". On grize.
> Savetovanjem na ES-u zakljucujemo da bi Access znanje moglo odmah da
> bude korisno, a sve sto tu nauci -- kasnije ce vredeti. Ne zanimaju ga
> sertifikati, ne ide prica u tom smeru.
Jedan mali "p.s."

Gimnazijalci koji danas koriste laptopove imaju, u proseku, istu
kolicinu vremena i uslova kao isti gimnazijalci pre 10 ili 20 godina.
U svakom od tih vremena, normalna je raspodela (Gausova kriva)
instrumenata, kognitivnih kapaciteta, motivacije. "Svi" klinci pre 20
god imali su bicikle, pre 10 skejtove i Sega/Sony konzole, danas
giga-tera brzinu na svakom uredjaju. Bitno je: uslovi su (skoro) isti
za sve u toj populaciji u jednom vremenu: danas je borba za mesto u
e-svetu, pre 20 god za mesto u lokalnom gengu: pritisak je isti za
sve.

Ako svima date laptop,definisali ste artmeticku sredinu normalne
raspodele: ako svima date dostupnost svemu, opet je to aritmeticka
sredina. Ljudska populacija uvek je normalno raspodeljena, i mirne
duse mozemo da kazemo da ce 68% populacije imati zajednicki ishod
(izmedju +- 1 sigme). Ako je nekada 68% razreda te gimnazije
zavrsavalo u zatvoru zbog nasilnistva, to je zajednicki ishod jer su
im dati jednaki uslovi (besparica, role-modeli, buntovnishtvo...)

Kada danas postavimo da je zajednicka stvar laptop + odredjeni SW +
... --> za par godina 68% ljudi imace slican nastavak svog puta --
bice prosecni, zivece prosecno. Ako bi im dali WARP-speed i kosmicke
mape, opet bi ih svi imali i koristili na prilicno slican nacin, pod
istim uslovima kompeticije, stresa, straha, iscekivanja, promasaja,
pogodaka, i 68% bi se naslo na slicnom mestu, recimo, progovorili bi
klingonski i bili u shemi sa vulkancima :).

68% ljudi, pod relativno slicnim okolnstima, odrazi se malo manje ili
malo vise od proseka.

Medjutim, najbitnije pitanje je: sta je sa ostalima?

27% (izmedju prve i druge sigme) pokazace znacajno zaostajanje ili
znacajno napredovanje. To su oni koji ne zele, ni mogu -- ili zele i
mogu -- da budi izvan datih okvira i postavljanju svoje, nize ili
vise. Prvi su balast za okolinu koja ih vuce, drugi vuku napred. Tih
sto vuku je 14% --> to su buduci spretni korisnici prilika koje im se
otvaraju, i koji zaradjuju vise ili sta god da je merilo (politicki
uspeh, liscna satisfakcija...)

Konacno, ostaje nam 4%. Polovina njih su ometeni ili negativni heroji
za koje ljudi misle da ce ziveti u "trejleru" (prikolici), opijati se
i tuci zenu i slicni stereotipi. Onih 2% su najsposobniji,
super-kapirajuci pokretaci, koji vide sta ce se desavati za dve, pet
ili sedam godina; mogu biti laboratorijski streberi ili bogati
biznismeni, politicari -- grupacija koja utice na buduce formiranje
normativa za mlade.

Isti je bio slucaj pre 50 god, jer su dati:
a) relativno slicni uslovi za sve (laptop, bajk, basket lopta, knjige...);
b) jednak pritisak na sve
c) nepromenljivost kognitivnog kapaciteta i vremena za usvajanje
tehnika/gradiva.

Dakle, ZA DRUSTVO, ako svima damo laptope, necemo dobiti super-klince
u drugacijem procentu nego ranijih (i buducih godina). Sva ta
planiranja vrsi 2% najnaprednijih iz prethodnih godina, oni uticu na
to kakav prosek zele da proizvedu za 10 godina. I opet ce tu biti 2%
onih koji ce kasnije "menjati svet".

ZA POJEDINCA, od njega zavisi na koju stranu ce se odmaci od
aritmeticke sredine svoje generacije -- shodno kognitivnom kapacitetu,
posebnoj motivaciji, sklopu srta licnosti, i drugim faktorima.
Svakako, to nije racionalna odluka, vec vidimo samo krajnji rezultat
za nekoliko godina.

Za kraj, ne potcenjujete moc "papira i olovke" i zdrave pameti!

Jako sam umoran, i tek sutradan videcu kakva sam dosadna filosofiranja
izneo i mozda sve pobrisati :). Izvinjavam se na uzurpiranju foruma.
Hvala! :)
[ owim @ 15.06.2009. 13:06 ] @
Ok, zbog "spamovanja" ove teme mozete da me izbacite.

Ako ste profi programer koji naplacuje svoj rad i zivi samo od toga,
ne citajte dalje. Ako ste usput ovde, ne citajte dalje.

Ovim smo eliminisali sve sto je levo i desno od dva sigme u raspodeli.
Ostalo je nas nesto vise od 85%: koji imamo drugo zanimanje, a racunar
nam je bitan alat, nismo "programeri", "hardverashi", "softverashi",
ali smo upuceni. Neko je napisao neku liniju koda. Neko postavio web
server povezan sa udaljenom bazom. To smo mi, sarena vecina. Sta mi
radimo? Moramo li biti deo neke "grupe"?

Moj drugar nekompjuterash-navucen-na-Access bavi se jednim od
matematickih problema, koji moze iz razlicitih disciplina matematike
da se resava, recimo kao teorija igara :). Dakle, on moze 1/5 svog
vremena da posveti ucenju drugih stvari: stranog jezika,
specijalizovane racunarske aplikacije, Access-u, i to vreme da
rasporedi. Ako tako posmatramo, ispred njega su svetlosne godine
ucenja, jer mu je jedini neobnovljivi resurs limitiran (vreme). I dok
uci jednu tehnologiju, druge vec izlaze da je zamene.

Ili moj, drugaciji slucaj. Imam rano i kvalitetno polu-programersko
iskustvo i onda veliku pauzu; bavim se kreiranjem posebnih testova
procene za biznis korisnike (da, sve se svodi na velike brojeve,
faktorsku analizu i statistiku). Poceo sam od skriptova za SPSS. Onda
sam to importovao u Access bazu, potpom automatizovao proces; kasnije
napravio aplikaciju da se testovi ne bi radili na papiru i skenirali.
Klijent-server aplikacija (Flash/HTML unos, sa merenjem vremena ili
bez, slanje transakcije sa udaljenog klijenta na IIS Webserver i upis
u bazu preko ODBC-a).
Nisam napisao liniju koda i to sam uradio u svojoj 1/5 slobodnog
vremena (Flash verziju napisao je neko drugi).

Koji je izbor za nas, vecinu? Da sami, u okviru malo vremena koje
imamo istrazujemo, procenjujemo i odabiramo alate i preko foruma, neta
resavamo probleme, i na najjednostavniji i najbrzi nacin dodjemo do
iole zadovoljavajuceg resenja (koristeci i wizard-e). Ili: da platimo
nekoga da nam sve to napravi. Ili: da kupimo gotovo resenje.

Imao sam dosta iskustva sa ERP-ovima koji se _nisu_ mogli
kastumizovati za potrebe klijenta ili je to nevidjeno puno kostalo,
ili programere koji bi odradili deo posla i ostavili kod u kojem nisam
mogao da se snadjem jer je bio bez komentara, uputstva, a oni se
prebacili na drugi projekat. Sebe smatram mesavinom advanced/power
user-a i zelim da znam sta je i kako programer uradio i kako je
dokumentovao. U SRB s time imam problema, jer zelim da mogu da nasvim
rad samostalno ili dopunim neki deo, dakle, moram da razumem sta je
programer uradio u nacelu. Avaj, dobijao sam kod bez komentara i bez
ijedne strane dokumentacije.

Kako sam u situaciji da ne mogu da kupim preskupi softver od par
tisucica jura (da ne kazem desetina), moram da se snalazim s tom
jednom petinom vremena koje imam za to.

A ponuda: ogromna. Svako svoga konja hvali. Ako pitam na Delphi forumu
- naravno, Delphi je prava stvar za mene: na Java forumu - nema boljeg
resenja od Jave, itd.

Znamo gde prica vodi. Sta bi trebalo da bude moj pametni korak, sta
mog drugara, a sta tvoj/vash?

(Hvala vam na paznji za ovoliko teksta koji sam otkucao.)
[ vlaiv @ 15.06.2009. 13:28 ] @
Uzmite Delphi.

Paskal je fino strukturian proceduralni jezik, bez preteranih komplikacija.

Objektni paskal je objektna nadgradnja, taman koliko treba da bi se unelo OOP funkcionalnosti
bez preteranog filozofiranja.

Delphi je kvalitetno IDE koje je stvarno RAD. Ima dobar debugger, ima jednostavan
interaface editor, princip gradjenja aplikacije je jednostavan i intuitivan. Gomila
dostupnog add-on koda u vidu komponenti i paketa za delphi. Ima pregrsht literature
sto u elektronskom formatu sto po knjizarama.

Jedini minus, nije besplatan. Ali postoje alternative u vidu free-pascal i Lazarus
(google search tih termina za pojasnjenje) - open source projekti.

Svojevremeno je jedan moj prijatelj na gradjevini trazio alat kojim bi napravio
program za proracun neke statike svernih konstrukcija (ili konstrukcija koje se
dobijaju rotacijom jednostavnih profila oko ose, disk, cilindar, kupa, kalota, prsten i slicno,
za silose i slicne objekte). Napisao je diplomski u Delphiju, usao je u fazon za samo par meseci.
[ mmix @ 15.06.2009. 13:36 ] @
Citat:
owim: On je entry-level PC user. Ja sam psiholog. Nama i slichnima, "programiranje" u DANASHNJE VREME vise je "vizuelno" povezivanje elemenata, dakle koristeci neki alat i skript jezik tog alata. Nije li to pseudo-programiranje, na visini zadatka posla kojim se bavimo?

Zato sam i pomenuo kuvara i mikrotalasnu, ako se programiranje svede na puko izdavanje vizuelno distinktnih komandi uredjaju onda mnoge ljudske aktivnosti danas podpadaju pod programiranje, jer i to je neka vrsta pseudo-programiranja, cak se moze i prethodno modelovati . Ako cemo vec da ulazimo u filozofiju softverske industrije, ti kao psiholog i on kao public transportation planer ne biste trebali da pridjete nigde blizu programiranju u sopstvenoj profesionalnoj sferi iz vise razloga.
Za pocetak vi jednostavno nemate pojma sta radite sa kodom i drasticno povecavate sansu da softver koji napravite ima kriticne bagove, u tvom slucaju mogao bi da napravis gresku u statistickoj obradi neke populacije (ne znam kojom vrstom psihologije se bavis), u njegovom slucaju bug bi mogao da dovede do lose isplanirane rute i suboptimalnog iskoriscenja resursa (autobusa, npr).

Citat:
Moj drugar nekompjuterash-navucen-na-Access bavi se jednim od matematickih problema, koji moze iz razlicitih disciplina matematike da se resava, recimo kao teorija igara

U konceptu izrade softvera za vase branse, vi ste ono sto ameri nazivaju "subject matter expert" i vi ako ste zaista dobri u svom poslu mozete da izmodelujete svoje aktivnosti i procese "na papiru" i to samo znaci da ste vas dvojca u tim aktivnostima u grupi iznad μ+σ (da se nadovezem na tvoju gausovu distribuciju, godine skolovanja i prakse u vasoj bransi su vas tu unapredile). Ali u svetu softverske industrije ti pocinjes u μ±σ jer si imao logiku i nekad kodirao, on pocinje jos nize. To ne znaci da ste vi mediokriteti, ali znaci da je vas softverski proizvod na ovom nivou mediokritetski. I obrnuto isto vazi, ja imam nekog blagog kontakta sa psihologijom posto mi je sestra pedagog, ali kad bih ja sad seo i resio da uradim predskolsko testiranje klinaca, na sta bi to licilo i koje bi posledice bile (mozda bi mi promaklo dete kojem su potrebne specijalne mere?).

Citat:
U SRB s time imam problema, jer zelim da mogu da nasvim rad samostalno ili dopunim neki deo, dakle, moram da razumem sta je programer uradio u nacelu. Avaj, dobijao sam kod bez komentara i bez ijedne strane dokumentacije.

To je sad druga strana medalje, ali tu treba da pogledas sebe kao uzrocnika. Video sam dosta domaceg softvera u praksi (daleko od toga da sam video sve, ali par desetina jesam) i ono sto je karakteristicno za veliku vecinu (68% ) je da su bagoviti, tesko prilagodljivi ili autor trazi jaku kintu za prilagodjavanje, napisani losim kodom bez komentara, lose projektovani sa stanovista resursa i brzine, i sto je simptomaticno radili su ih ljudi kao ti , ljudi koji su dobri u svojoj bransi pa su iznervirani zbog loseg ili nepostojeceg softvera u svojih 1/5 vremena napravili nesto i onda to krenuli da prodaju da uzmu neku kintu kad vec moze, al posto imaju samo 1/5 vremena za taj posao onda traze puno para da tamo nekom liku koji ima fiks ideje prilagodjavaju softver ili uopste ne mogu da ga prilagode jer su ograniceni host platformom (access npr). Na stranu to sto uzimate leba iz usta onima kojima je to posao, sto zaista jeste nevazno u ovoj prici, vi zapravo produzavate taj ciklus i stimulisete proizvodnju sledeceg mediokritetskog proizvoda.
I nije to samo Srbija, ima toga i na zapadu, mada ne toliko na javnom nivou, ima recimo da u vecim firmama poslovne jedinice izradjuju svoj softver za sopstvene potrebe jer ne mogu da dodju do R&D slot-a i onda kad R&D na kraju dodje saceka ih par desetina nepovezanih access/excel aplikacija


Za hobi programiranje, samo napred i dobrodosli u svet programiranja, to sto trenutno proizvodite los software je nevazno jer je to hobi. Ali za profesionalnu primenu prvo malo prst na celo. Sanse su da vec postoji gotov proveren software koji ce vam pomoci u vasem poslu, a uz opensource mozda cak i nadjete besplatan software ako je kinta problem.

Citat:
Ako svima date laptop,definisali ste artmeticku sredinu normalne raspodele: ako svima date dostupnost svemu, opet je to aritmeticka sredina.


Ziva istina sve sto si napisao odavde na dole sem jedne stvari. Da bi drustvo napredovalo μ treba da raste vremenom, a to izmedju ostalog ukljucuje i efikasnije metode savladjivanja vestina i znanja bas zbog nasih kognitivnih ogranicenja, a to je nesto cemu olovka i papir predstavljaju faktor kocenja. Zbog rastuceg obima fonda znanja primat se prebacuje sa strebanja na istrazivanje, tezi problemi se ne resavaju iz glave vec analizom i istrazivanjem dostupnih informacija i resenja se dodaju u taj isti fond posto su dokumentovana u formatu pogodnom za masovnu distribuciju; odbacivsi olovku i papri zarad tastature i wifi konekcije ne radimo nista drasticno drugacije, samo radimo pametnije i efikasnije.
[ Goran Rakić @ 15.06.2009. 14:21 ] @
Raširila se tema... Elem, potrebe informacionog društva i zahtevi tržišta idu ka tome da se programiranje učini dostupno svima.

Zatvarati struku u elitizam („kako ti smeš da pišeš kod kada nisi kvalifikovan programer“) neće dobro doneti ni struci ni društvu.

Ima puno nivoa veštine programiranja, a izrada malih poslovnih programa u OpenOffice.org Baseu ili MS Accessu se sasvim opravdano može nazvati programiranjem. Takođe i u tom alatu ima različitih stručnjaka (neko zna teoriju relacionog modela, upitni jezik, poznaje onaj VBA API i ima iskustva u optimizaciji, a neko klikće po čarobnjacima), ali to ne znači da nisu oboje programeri.

Veći problem su umišljeni "kvalifikovani" stručnjaci kojima je "iskustvo" omiljeni i jedini argument, nego oni koji hoće nešto da nauče i probaju.
[ mmix @ 15.06.2009. 15:32 ] @
Ma jasta, svako moze da postane sve, samo uvece zamisli zelju i kad se probudi ujutro ono drugi covek i tako iz dana u dan.

Citat:
Goran Rakić: Zatvarati struku u elitizam („kako ti smeš da pišeš kod kada nisi kvalifikovan programer“) neće dobro doneti ni struci ni društvu.

Apsolutno se ne slazem, niti sam govorio o kvalifikacijama vec o primenljivom skill setu, nevazno dal je isti stecen skolom ili praksom ili nekim trecim putem. I mediokritetstvo nece doneti nista dobro ni struci ni drustvu iz sledecih razloga:

- sto struka u procesu sopstvene organizacije mora da gubi vreme sa neukim programerima koji pretenduju na programerske pozicije.
- sto struka u procesu sopstvene afirmacije mora da se bakce sa uticajem sampiona koji su se provukli u prethodnoj tacki
- sto je kvalitetni rad u struci skuplji od necijeg slobodnog vremena pa je taj rad ekvivalentan nelojalnoj konkurenciji u ostalim industrijama.
- sto se lose uradjeni softver reflektuje negativno na celu struku bez obzira sto je kupljen ispod zita za male pare ili cak dobijen za dzabe.
- sto lose uradjen softver dovodi do suboptimalnog ili pogresnog iskoriscenja drugih resursa, sto dalje kaskadno vodi ka losoj funkcionalnosti ostalih industrijskih sektora koji se oslanjaju na softver.
- sto osoba A koja je strucnjak za struku B (B != programiranje) moze umesto pisanja loseg softvera da se posveti razvoju sopstvene struke o kojoj vec poseduje znacajna saznanja i vestine i sto bi tih 1/5 vremena moglo vise da potpomogne drustvu kroz razvoj struke B

Citat:
Goran Rakić: Ima puno nivoa veštine programiranja, a izrada malih poslovnih programa u OpenOffice.org Baseu ili MS Accessu se sasvim opravdano može nazvati programiranjem. Takođe i u tom alatu ima različitih stručnjaka (neko zna teoriju relacionog modela, upitni jezik, poznaje onaj VBA API i ima iskustva u optimizaciji, a neko klikće po čarobnjacima), ali to ne znači da nisu oboje programeri.

Znaci ja sam automehanicar posto mogu da zamenim ulje na svojim kolima, mogu biti sef kuhinje jer znam da skuvam sos od paradajza, takodje sam baletan jer mogu da se izdignem na prste, pride sam veliki muzicar jer mogu da odsviram "za elizu" na klavijaturama, pred put sam zamenio slavinu sto me cini vodoinstalaterom, a skoro zamenjena sijalica me cini elektricarem, svaki dan vozim kola pa onda mogu sigurno i sleper da vozim, jos sam naucio da letim u FlightSimulatoru pa moram otici do JAT-a da konkurisem za posao pilota, sinoc sam bas gledao House-a pa bi da se oprobam kao dijagnosticar? A kako bi bilo da svratim do owima pa da mu objasnim neke stvari o psihologiji (citao sam nesto na wikipediji jutros i siguran sam da on nesto pogresno radi) ili da odemo do njegovog ortaka da sredimo taj jadni prevoz po Beogradu (da se ja pitam ja bi proturio autobus ovuda).

Iz nekog razloga sve branse imaju pravo na integritet i zastitu istog sem softverske. Zanimljivo...

Citat:
Goran Rakić: Veći problem su umišljeni "kvalifikovani" stručnjaci kojima je "iskustvo" omiljeni i jedini argument, nego oni koji hoće nešto da nauče i probaju.

Da, da, mi smo najveci problem i da se ja pitam ja bih bez pardona uveo programerske licence i polaganje za iste, samo sto toga nema pa smo prinudjeni da gledamo strucne kvalifikacije i iskustva, sram nas bilo. I da budemo nacisto, ja nemam nista protiv da neko NAUCI da programira niti zagovaram da bi struka trebalo da bude zatvorena, sta vise od kad sam prestao aktivno da konkurisem za coding poslove meni cak i odgovara da bude puno DOBRIH programera jer to obara cenu kvalitetne radne snage. Ali meni odgovara da bude DOBRIH programera, ne ljudi koji su napravili form u access-u i pricaju da su programeri.
[ Goran Rakić @ 15.06.2009. 22:34 ] @
Citat:
mmix
I da budemo nacisto, ja nemam nista protiv da neko NAUCI da programira


Onda se slažemo. Mene je začudilo zašto si skočio na čoveka što je rekao da ima višak slobodnog vremena i interesuje ga programiranje. Pri tome ako mu to bude dobro išlo, posveti se šest meseci napraviće sebi neke programčiće za posao, a možda nešto sitno i zaradi sa strane ili zaduži prijatelje uslugom. Ako pogledaš malo tako se ljudi bave i postavljanjem pločica, popravkama automobila,... nema tu ništa specijalno čudno oko računara i programiranja. Sve je to samo zanat.


Citat:
mmix:
ne ljudi koji su napravili form u access-u i pricaju da su programeri.


Programer nije stručna kvalifikacija.
[ dragancesu @ 15.06.2009. 23:07 ] @
Tema postaje zanimljiva, dobija filozofski aspekt.

Zasto bi se tvoj drugar bavio programiranjem? I to na poslu? Zato sto su kod nas mnoge stvari postavljene naopacke, u sustini je problem u organizaciji.

Ti kao psiholog, on kao saobracajni inzenjer ne bi ste se trebali tim baviti. (Kuci kao hobi koliko god hocete, ali na poslu ne.) Meni je bilo neobicno kada sam citao kako je na zapadu. Radi se neki projekt, objavi konkurs, prime se ljudi, kad se zavrsi, dovidjenja svima. To je organizacija, svako odradi ono sto najbolje zna, projekt se odradi brzo. (Da ne ulazimo koliko je to humano i kako mi gledamo na to.)

A kako je kod nas? Kad treba nesto da se uradi onda se u firmi skupe ljudi koji bi to mogli. Onda se to oduzi, a nekad i zavrsi. I svi zadovoljni. Nedostaje organizacija.

Jednostavno receno, vama kao stucnjacima u vasim oblastima treba obezbediti uslove da najbolje odradite to sto znate. To sta vama treba bi vas rukovodilac da zna. I onda nema gubljenja vremena i vaseg razmisljanja kako bi ste vi to organizovali. Infomacini sistem kosta oho-ho. Ali kad se napravi onda se vidi da je vredelo. Ali ako se u tome vide samo troskovi nema napretka.

To sto volite racunare nije dovoljno i neko to moze pogresno da shvati, tj pomislice da znate sve. Znas, jedan drugar i kolega mu, u vreme kad su pc racunari poceli ekspanziju, ako se ne varam vreme 486-ica. Napravili su poneki program, i jedan dan ih je sef pozvao i pitao da li bi hteli da se osnuje aop u firmi i oni tamo rade. Koje odusevljenje! Kako da ne! Oni su masinski inzenjeri, ali prvi posao koji su dobili je bio obracun plata.

***

Ako se malo osvrnemo i na drugu temu gde bi ti da nesto radis, to je ona gde uvek dodjes to SharePointa servera, zar ne bi bilo efikasnije da vam to neko napravi? Neko ko zna. Ako misilite da niko nece znati, onda ni vi ne znate. Mislim, ako znate sta vam treba onda se to lepo stavi na papir, opise, i na osnovu toga se napravi. Po etapama, naravno. A ne da se pitas kako ovo kako ono, sta je sta, da li treba, kako se koristi itd. Uglavnom da ne gubis vreme sa stvarima koje ne znas i koje ti odvlace paznju.
[ mmix @ 16.06.2009. 00:18 ] @
Citat:
Goran Rakić: Programer nije stručna kvalifikacija.


Zapravo jeste Ja sam po srednjoskolskoj spremi programerski saradnik i sta vise mislim da kvalifikacija i postoji u zvanicnom sifarniku Srbije (nemam sifarnik sad ovde). Al van toga i van ove zemlje svako sa BScCS ili MScCS je ujedno i programer jer ne mozes zavrsiti computer sciences bez da naucis da programiras. Tu sad nedostaje suocavanje sa surovom realnoscu, ali su bar osnove postavljene na mestu. Pored toga postoji gomila prihvatljivih industrijskih sertifikacija koje jesu kvalifikacija, neke manje neke vise.

Citat:
Goran Rakić: Mene je začudilo zašto si skočio na čoveka što je rekao da ima višak slobodnog vremena i interesuje ga programiranje. Pri tome ako mu to bude dobro išlo, posveti se šest meseci napraviće sebi neke programčiće za posao, a možda nešto sitno i zaradi sa strane ili zaduži prijatelje uslugom. Ako pogledaš malo tako se ljudi bave i postavljanjem pločica, popravkama automobila,... nema tu ništa specijalno čudno oko računara i programiranja. Sve je to samo zanat..


Pa kao i svaki drugi zanatlija, stitim svoju struku i kolege I nisam bio bas toliko zao, nema tu nista lose sto sam ja rekao jer ja ne zahtevam da ljudi ne programiraju, samo zahtevam da ispostuju nas trud isto kao sto i mi postujemo njihov i da ako hoce da se nazivaju programerima to i zasluze trudom i znanjem. Ja znam da zamenim ulje al ne znam kako da uradim generalku i stoga nisam automehanicar niti se trpam da u slobodno vreme popravljam kola po komsiluku, isto tako ni oni nisu programeri zato sto znaju da urade nesto sto predstavlja marginalan aspekt nase branse. Iskreno kad mi neko pridje i kaze mi "ja sam access programer" meni to zvuci kao "miljane koji si ti retard, 17 godina se usavrsavas i radis a ja instalirao access i postao programer za dve nedelje"
[ Nedeljko @ 16.06.2009. 21:58 ] @
Citat:
vlaiv: Uzmite Delphi.

Paskal je fino strukturian proceduralni jezik, bez preteranih komplikacija.

Objektni paskal je objektna nadgradnja, taman koliko treba da bi se unelo OOP funkcionalnosti
bez preteranog filozofiranja.

Delphi je kvalitetno IDE koje je stvarno RAD. Ima dobar debugger, ima jednostavan
interaface editor, princip gradjenja aplikacije je jednostavan i intuitivan. Gomila
dostupnog add-on koda u vidu komponenti i paketa za delphi. Ima pregrsht literature
sto u elektronskom formatu sto po knjizarama.

Jedini minus, nije besplatan. Ali postoje alternative u vidu free-pascal i Lazarus
(google search tih termina za pojasnjenje) - open source projekti.


Kuj kaže? Imaš turbo explorer varijantu koja je besplatna.
[ Nedeljko @ 16.06.2009. 22:17 ] @
Citat:
mmix: ne mozes zavrsiti computer sciences bez da naucis da programiras


Jesi li siguran? Znam za čoveka koji je završio računarski smer na Matematičkom fakultetu u Beogradu, a da na odbrani "svog" seminarskog rada iz baza podataka nije umeo da unese broj u heksadekadnom zapisu, jer nije znao šta je to.
[ mmix @ 17.06.2009. 12:53 ] @
Citat:
Nedeljko: Jesi li siguran? Znam za čoveka koji je završio računarski smer na Matematičkom fakultetu u Beogradu, a da na odbrani "svog" seminarskog rada iz baza podataka nije umeo da unese broj u heksadekadnom zapisu, jer nije znao šta je to.


"Al van toga i van ove zemlje" :)
[ DjoleReject @ 18.06.2009. 16:56 ] @
Ove nejasnoce se vrlo lako resavaju novom definicijom programera: Programer je covek koji zivi od programiranja.

Znaci, dok ucis, dok ti je hobi i slicne zanimacije za zube, ne mozes se smatrati programerom. Tada si programer onoliko koliko sam ja moler. E, a ako nadjes budalu koja ce ti davati novac za prevlacenje dugmadi na formu i "Rad sa wizardima" ja ti zelim sve najbolje, jer je po teoriji evolucije i bolje da takav poslodavac propadne (sto ce po toj istoj teoriji morati ;) )

Naravno, drzavna preduzeca u kojima ti je teca direktor moram izuzeti iz definicije.
[ u_m @ 18.11.2009. 15:20 ] @
hajde kad vec savetujmo.. dajte i meni nekakav savet

imam ogromnih problema da se uklopim u OOP, nekako mi je stran i nepodnosljiv takav nacin razmisljanja.. ima li kakav savet kako najlakse ovo svladati? procitao sam 3-4 knjige/tutorijala i muka mi vise od polimorfizama i slicnih izraza.. cemu mi to sve sluzi kad sve mogu lepo da odradim i sa obicnom funkcijom, vec imam malenu biblioteku istih koje koristim i pozivam u projektima, isto kao sto bi koristio i klase, a ne trosim vreme na odrzavanje istih i nema nikakvih ogranicenja na koja moram da pazim

inace, dugo vremena koristim PHP, C .. a sad je doslo vreme da predjem na PHP5 i iskoristim sve njegove oop mogucnosti (krenuo sam sa codeigniter fw, ali.. to mi lici na ulizivanje nekom da uradi posao za mene, vise vremena izgubim dok shvatim kako sve radi, nego sto mi treba da napravim nesto), kao i c++, c#, java, sve to zelim da savladam, ali ovaj prvi korak me mnogo saplece..

.. imam osecaj da pred sobom imam sportski automobil sa super-mega funkcijama, ali od tolikih instrument tabli, lajt showa, ja ne mogu da nadjem gde da uguram kljuc i upalim ga

Kako svladati OOP i kako ja to mogu realno da iskoristim?
[ Milos911 @ 18.11.2009. 16:27 ] @
Vidis i ja sam imao slican problem. Onda sam na lynda.com nasao odlican tutorial (PHP with MySQL Beyond the Basics) pomocu koga sam shvatio osnove oop-a. A pre toga sam citao gomilu tutoriala u kome sam nalazio debilne primere tipa zamislite da je klasa automobil i da se svaki njegov deo definise pomocu metoda u njoj. Glupost. Moj savet: Odgledaj tutorial i onda pocni da pises neku ultrakomplikovanu skriptu. I shvatices zasto je oop pristup bolji :) Evo jednog primera :):
Napises database klasu. U odradis i query-je, konekciju, proveru gresaka... i onda gde god hoces pises naprimer $database->query("uradi to i to"). I onda vise ne brines o tome. Ako bude neka greska automatika uradi sve, obavesti te o gresci, upise je u neki fajl.... Ma sve. A kod ti je milion puta citljiviji. Naravno mozes ovo da uradis i samo sa funkcijama, ali zamisli da radis sa jos dve-tri osobe. Pa onaj tamo mora da gleda sta si gde pozvao, da trazi funkcije, bezveze gubi veme. Ovako sa oop svako moze da se snadje za sec...
Valjda si razumeo sta sam hteo da ti kazem :) Obavezno pogledaj onaj onaj tutorial (ako ne mozes da nadjes posalji mi privatnu poruku), i veruj mi bice ti mnogo jasnije zasto je oop ogromna prednost :)
[ dakipro @ 19.11.2009. 08:15 ] @
Recimo jedan konkretan i praktican primer - Placanje na sajtu.
Imas deo koji se na primer obraca procesing serveru za pocetak sesije, rezultat vraca neki session ID koji ti trebas da cuvas negde i koristis prilikom slanja payment podataka. Onda imas metode (kazi ga operacije) gde ti trebas poslati opis proizvoda (dimenzije, opis, tezina, kolicina...), cenu, detalje o kartici, billing info (10 podataka), shipping info (10 podataka). Sad shipping info i tezinu treba poslati i shipping servisu koji ce ti izracunati koliko ce te iznositi DHL usluga recimo, i to Over Night Delivery. Kako bi to izgledalo bez oop, pa pises jedan po jedan deo redom, i sve to u kodu koji vrsi placanje. Onda klijent kaze, super je Shop, ali ja hocu da mogu da naplatim i membership na sajtu, znaci nema ga proizvod, nema shipping, nema pola infoa od gore, ok, ti to iskopiras sve u users modul, sredis, i naplacujes membership.. a onda, naravno, klijent kaze: super je ovo, ali ovo radi samo sa karticama, ja hocu i paypal da dodam kao procesor za kartice. I posle ti kaze, aj sad sve to prebaci u DEMO mod, da mogu da testiram a da mi ne skida pare, a tu se recimo koristi drugi url koji kontaktiras za sesiju. I onda nastaju problemi, jer ti sve imas linearno u kodu.
Sad resenje, oop pristup naravno.
Napravis klasu za Authorize.net procesor, onda napravis klasu za paypal procesor, i napravis svoju klasu koja extenduje jednu od te dve, dinamicki, zavisi sta je selektovao krajnji korisnik. I ti u kodu imas liniju:
$myPaymentHandler->connect(); - gde ce tvoja klasa koja je nasledila bilokoju od ovde 2 (50 ako treba) da tacno zna sta treba da uradi, jer njena mother klasa ima definisane metode. Sama ce u sebi da setuje Session Id (ukoliko ga koristi, ako ne, nista se ne desava, tebe to u operativnom sloju ne zanima sta ce koja klasa da uradi, na tebi je da pozoves to za svaki slucaj, ili stavis u konstruktor da se samo pozove) onda ti napravis za svaku klasu metodu koja kaze:
$myPaymentHandler->setBilling($mojNizSaPodacima); - opet ista prica, ti imas uniformni niz, formatiran kako tebi odgovara, a svaka klasa ima drugacije formatiran zahtev, ali tebe to ne zanima, to ce svaka klasa sebi da resi.
Onda kazes ->setShipping($nizSaShippingInfo); - skontao si sablon vec
na kraju kazes ->setCCInfo($nizSaCCInfo);
i na kraju kazes ->process();
Onda svaka klasa zna sta treba da radi, kako da handluje rezultate, gde da smesti greske koje je dobila, kako da parsira te greske, koje flegove da setuje za slucaj greske uopste itd....
Ti posle samo pitas
if($myPaymentHandler->error_exists){
$error_info = $myPaymentHandler->human_readable_error;
}

i to ispises na sajtu gde je potrebno. Peace a cake
Slican primer mozes koristiti za razne oblasti, recimo pravis klasu koja salje SMS, bilo preko clickatela, bilo preko nekog drugog servisa. Klasa za parsiranje .csv fajlova, samo par metoda pozoves, ne zanima te sta se ispod dogadja i koji se princip obrade koristi. Klasa koja crta mape, oces gmaps, oces yahoo, oces bing, ti samo setujes par metoda sa dimenzijama, lokacijama i markerima, metoda za search, ne zanima te koja klasa gde salje requests i odakle dobija rezultate.
A posle, ako treba prosiriti ili izmeniti nesto, ti imas to samo na jednom mestu da uradis, veoma praktican metod rada.
[ jablan @ 21.11.2009. 21:33 ] @
Citat:
u_m: imam ogromnih problema da se uklopim u OOP, nekako mi je stran i nepodnosljiv takav nacin razmisljanja..

Jedno od rešenja za tvoj problem je i da počneš da koristiš neki čisti OO jezik. Onda ćeš, hteo ne hteo, morati da koristiš objekte i metode na svakom koraku pa ćeš lakše i ukapirati čemu služe i za šta su zgodni. Znači, maneš se primera tipa "automobil je klasa" i "payment processor je klasa", nego pođeš od toga da je npr. svaki broj objekat:

>> 5.times{ puts 'elitesecurity' }
elitesecurity
elitesecurity
elitesecurity
elitesecurity
elitesecurity
=> 5


i toga da je npr. svaki string objekat:

>> 'elitesecurity'.capitalize
=> "Elitesecurity"


I onda ćeš kroz nekoliko meseci rada videti da je mnogo logičnije da npr. funkcija za kapitalizaciju stringa bude zapravo metod klase String, a ne neka funkcija koja lebdi ko zna gde i koju možeš da pozoveš za promenljivu bilo kog tipa i gledaš kako ti se program raspada... ;)
[ Eurora3D Team @ 16.04.2010. 21:09 ] @
Kao sto kaze jablan sve su objekti posmatrano kroz OOP
Nije to nista komplikovano.
Pogledaj ekran (prozor, dugme, lista itd.)
To su sve objekti ako bi gledali na OOP nacin (realno nisu jer su programirani u C-u ne u C++u).
Za svaku vrstu objekta imas neki sablon (klasu). Npr. svako dugme ima ivice, tekst itd. Objekti se prave iz sablona(klase), ali tako da svaki mozes da napravis drugacije, npr. svaki ima tekst ali moze da ima drugaciji tekst...


[Ovu poruku je menjao Eurora3D Team dana 16.04.2010. u 22:20 GMT+1]
[ Goran Rakić @ 16.04.2010. 21:26 ] @
Citat:
Eurora3D Team: To su sve objekti ako bi gledali na OOP nacin (realno nisu jer su programirani u C-u ne u C++u).


Ako tako posmatraš onda objekti uopšte ne postoje. Objektna paradigma nije vezana za specifični jezik, iako neki jezici mogu da imaju sintaksičke olakšice za rad ili da u svojim osnovnim bibliotekama poštuju tu paradigmu ili ne.
[ deerbeer @ 16.04.2010. 22:19 ] @
Sav realni svet oko tebe je Objektno Orijentisan :D
Evo na primer :
Klasa Covek - instance coveka tj. objekti klase covek su npr .svi clanovi na ovom forumu .

Klasa covek ima public readonly propertije ili "private" promenjljive kao sto su visina, tezina ,
broj godina koje vaze za svaku instancu-coveka ponaosob i ne mogu se menjati iz spoljnog sveta
(npr .jedan covek ne moze promeniti visinu , i tezinu drugog) vec te promenljive se menjaju iskljucivo u okviru instance coveka.

Klasa covek ima takodje i svoje private zasticene promenjljive koje opet mogu da budu klase/objekti sa svojim funkcijama
kao sto su unutrasnji organi (srce ,mozak pluca, bubrezi , zeludac)
koji su takodje nedostupni spoljnom svetu ali u specijalnom slucaju doktorima i hirurzima jesu :D

Covek ima i svoje public metode na raspolaganju (jedi(), radi() , spavaj() itd ) koje mogu da se pokrenu pod uticajem spoljnog sveta
Decu teramo da jedu i spavaju , a moramo da radimo da bi imali da kupimo hranu odecu itd...
Recimo da metod jedi( ) moze posredno menjati unutrasnje organe tj .stanje instance coveka , ako se prejede ili pojede nesto pokvareno .:)

Ako napravis klasu Automobil mozes izvesti slicne zakljucke .
Private promenljive ili public property : model, tezina ,kubikaza ,konjska snaga , broj cilindra, broj vrata itd.
public metode gas() , koci() , kvacilo(), okreni_volan (), promeni_brzinu () pokrecu se iz spoljnog sveta pod uticajem instance coveka .
i menjaju unutrasnje stanje objekta (gas upumpava gorivo u cilindre , klipovi se pokrecu, a takodje i tockovi) .


E onda kreces da povezujes klase Automobil i Covek i gradis njihovu medjusobnu zavisnost.
Ne mozes nikad opisati bas sve slucajeve iz realnog sveta iz ova 2 primera, ali neku aproksimanciju mozes da napravis.

Primera u realnom svetu ima milion samo prepusti masti na volju i kao sto ti rece @jablan uzmi neki ozbiljan OOP jezik
(C#, Java, C++ itd) i kreni da vezbas ...

[ Eurora3D Team @ 17.04.2010. 00:26 ] @
Citat:
Goran Rakić: Ako tako posmatraš onda objekti uopšte ne postoje. Objektna paradigma nije vezana za specifični jezik, iako neki jezici mogu da imaju sintaksičke olakšice za rad ili da u svojim osnovnim bibliotekama poštuju tu paradigmu ili ne.

U svakom slucaju C nije neki sretan primer eksplatisanja pomenute paradigme :)
U tom smislu ...