Kako ste učili programiranje?

Kako ste učili programiranje?

Predpostavljam da među vama ima kako školovanih ljudi, tako i samoukih - kao ja.

Ja sam prvo krenuo da se bavim web-dizajnom.Onda mi je to postalo dosadno (ili nemam talenta:) )pa sam otkrio web-programiranje, koje mi je otvorilo sasvim novu perspektivu. Nakon toga sam krenuo da čitam i gledam razno razne tutorijale. Investirao sam i dosta love u knjige. Trenutno učim Javascript kombinujući online kurs i kupljenu knjigu.(Javascipt-Sveobuhvatni vodič-David Flanagan). Jeste skupa (70 KM) ali mislim da vrijedi.

Imam dva velika problema u učenju:

  • nemam informatičko/matematičke temelje koje imaju ljudi koji su školovani. Mislim da je veliki plus znati osnovne stvari kao što su algoritmi,tipovi podataka…Ja sve to moram učiti sada.

  • neprestno se vraćam i otkrivam da sam nešto propustio.Zadnje što sam shvatio je da je moje znanje o HTML-u prilično oskudno pa ga moram dopunjavati.

Uglavnom sa 36-godina se osjećam kao da sam upisao fakultet ponovo :slight_smile:

Srednja škola
Pascal/Delphi, uglavnom amatersko prekucavanje programa i prepravljanje formi :slight_smile:

Faks
Pascal, C, Assembler, mrvicu ozbiljnije, uz čitanje klasične literature (Niklaus Wirth, K & R …)
Poslije toga sam probao sve što sam mogao, kako egzotično, tako i mainstream: Oberon, Lisp, C++, Java, PHP, Python, BASH …
Nisam kontao Python, a posebno me iritiralo tretiranje whitespace-a u Pythonu

Profesionalno
C za neke syslevel projekte.
Par godina PHP programiranja (uz to ide JavaScript, HTML, CSS i šta sve ne)

Post profesionalno
Uglavnom se više ne bavim “komercijalnim” programiranjem :slight_smile:

Shodno tome, počeo sam ganjati estetiku, ergo Python.
Za sys administraciju, često se napravi i kakav veći BASH program.

I dalje mislim da vrijedi "Algorithms + Data Structures = Programs"
A pod obaveznu literaturu dodao bih i Stroustrup-a i dijelove Knuth-a.

Kod mene prilicno isto kao kod adisa samo nema ovog dijela post profesionalno i profesionalno djelimicno. Ovo prije je isto tako. Trenutno sam na faksu i radim mysql i c na trecoj godini a prosle sam imao i php. Privatno radim php/mysql ali ne nesto dugo. Oko pola godine.

Nije toliko fakultet mene naucio koliko vlastito angazovanje. Jos nemam dovoljno iskustva u profesionalnim vodama, a sve moguce jezike koje sam savladao dosad bilo je vlastitim interesovanjem, osim c-a koji sam naucio na fakultetu. Morao sam i ja malo temeljitije u pocetku, kasnije uocio da sve ide sa lakocom. Dosta stvari sam ucio kroz primjere, kasnije usao dublje u koncepte i sada mi je za bilo koji jezik da naucim potrebna referenca i pokoji primjer. Dobro, necu lagati, podosta primjera mi je potrebno. Nemam fiksnu literaturu za preporuku, mislim da bi mi bio dobar korak preci barem jednu programersku knjigu u komadu.

[quote=carousel]- neprestno se vraćam i otkrivam da sam nešto propustio.Zadnje što sam shvatio je da je moje znanje o HTML-u prilično oskudno pa ga moram dopunjavati.

Uglavnom sa 36-godina se osjećam kao da sam upisao fakultet ponovo :)[/quote]
It’s not a bug - it’s a feature :slight_smile:
U ovoj oblasti barem nikada se ne prestaje učiti nove stvari…

Skoro svi ljudi koje znam su išli tim putem: zainteresuje ih nešto, pročačkaju malo, zadube se, skontaju koliko ne znaju, otvore koju knjigu, šokiraju se kakve su gluposti radili u prvoj tački, naprave nešto pametno, mala pauza, goto 1.

label 1
.
.
.
goto 1;

jel tako bi u paskalu?

hmmm…prvo sam skuzio kako funkionise racunar, zatim operativni sistemi i same mnogobrojne aplikacije, nakon toga odabrao sam par jezika kao c, vb.net, kao i web jezike (iako i dan danas ne mogu da se pomirim sa cinjenicom da je i web programiranje programiranje :slight_smile: )
Ucilo se dan i noc, malo knjige, malo predavanja, dosta isprobavanje i citanje tudjih radova.

Pronadji sta zelis, probudi motivaciju u sebi i prepreka nema niti godine niti ostali hendikepi ne igraju nikakvu ulogu (matematicka pozadina je potrebna samo za par odredjenih regiona programiranja sto i nije za pocetnike)

Sigurno ti ovdje neko moze poslati par pdf knjiga ili par linkova za iste da ne bacas lovu na papir

Srednja škola - Pascal (nije me intersovalo, nisam volio programiranje)

Fakultet - prva godina Pascal (nije me interesovalo)
Fakultet - druga godina (morao položiti programiranje, uzeo knjigu Željka Jurića, razvalio Pascal, položio, zavolio programiranje, sljedeća godina C/C++ položio laganini, ista fora samo syntax, malo ima OOP :))
Fakultet - meščini treća SQL (i to mu ga dođe u programiranje :))
Posao - amaterski PHP, HTML, CSS, like it, sad malo birikam, jah i malo BASH-a :slight_smile:
Fakultet - četvrta meščini godina, Java, nije loša slična C#, like it (ne znam sad za enterprise Javu ali ovo je meni “like”)
Pauza
Odmor - probao .NET, like C# dont like onaj VisualStudio način programiranja, prevuci potegni sve na dohvat ruke, moraš učiti IDE a ne jezik, kasnije se svede na memorisanje gdje je šta na IDE-u, i stalno ruka leta sa tastature na miš…

p.s.
Iskustva, jezik kao jezik, tu su neđe svi, objekno orijentisani, Java, Ruby itd… naučite osnovne stvari, tipovi, for, while, if, class itd. kasnije samo pofatate razlike, slično kao kada mijenjate bs/en kbd, prva dva tri slova fulite a kasnije već mozak skonta :smiley:

p.p.s.
ni sada ja nisam neki aman zaman ljubitelj programiranja, da ne kažem informatike, mislim da je štetna za zdravlje :slight_smile: Treba paziti da se ne prekardaši - sad će neko reći pa mogu u svemu prekardašiti, jah ali ovdje je baš da tako kažem klizavo. Uslikajte se prije nego što počnete programirati i upredite sliku za koju godinu kasnije :smiley:

Gadan posao (i građevinar je takođe) na duge staze (ako se čovjek preforsira), a s druge strane jedan od najbolje plaćenih poslova. Nekoliko godina sam se bavio sistem administracijom, a sada ozbiljno razmišljam da se prešaltam u programere, u Bosni ubiše ovim oglasima za programere (sve outsorce firme) imam možda malo šlifa pa kontam da probam :slight_smile:

p.p.p.s
jah što se tiče literature, google :slight_smile: prvo tutoriali pa onda how to do that in languange name, kažem nisam puno volio knjige ima ih mali milion pa čovjek nema vremena da rizikuje jel dobra ili nije :smiley:

nekad je bilo možda bolje što Adis spomenu Ritchija Strostrupa itd, sad svako piše knjige i ko treba i ko ne treba… neki fakat znaju napisati a neki je napišu tako da kad je pročitaš ništa ne skontaš već da taj pisac ispadne “pametan”

Ja sam isao ovako:

osnovna: basic, malo commodore assemblyja, visual basic
srednja: C, x86 assembly, pascal, C++ pomalo, perl, php, javascript, algoritmi (uglavnom u C-u) … preporucujem: the c programming language knjigu
faks: C++ ozbiljnije, java, c#, matlab, ruby, haskell, erlang, tcl, lisp (u edukacione svrhe naravno)
otkako sam zaposlen od nespomenutih: python, objective c

Za pare sam radio u ovim jezicima: C, C++, VB, Java, Ruby, Python, C#, php, javascript, TCL - ostalo je bilo za svoje kucne projekte ili eksperimentalno …

Nakon sto sam naucio Ruby - jezike dijelim na “slicne rubyju” i “razlicite od ruby-ja”

Najbolje ces nauciti praveci programe :slight_smile: Uporno, tvrdoglavo, ustrajno i sto cesce to bolje. :slight_smile:
Vedran je dobro opisao “lifecycle” ucenja programiranja :slight_smile:

Od knjiga preporucujem iskljucivo knjige koje ne uce sintaksu nekog jezika nego imaju malo “opstije” kvalitete.
The C programming language (ima dosta informacija o tome kako je napravljena C standardna biblioteka te je zato korisna), The Art of Computer Programming - algoritmi, Code Complete - nezaobilazna za profesionalno bavljenje programiranjem, Design Patterns (ukoliko programiras u jezicima koji ih trebaju)

Mozda malo sa zakasnjenjem ali sve informacije koje ti trebaju nacices na linku ispod:

http://norvig.com/21-days.html

Sto se tice knjiga…

Necu ti preporucivati klasiku, svako ce pohvaliti knjigu koja je pisana stilom koji mu odgovara tako da se nemoj previse hvatati za specificne preporuke knjiga kojima je za cilj da te nauce jedan jezik to je vise do stila a siguran sam ako si ozbiljan u nakani pronacices svoju omiljenu.

Structure and interpretation of computer programs biblija i obavezno stivo za bilo koga ko se ozbiljnije bavi programiranjem standardni udzbenik na Berkeley Univ… jezik koji obradjuje je Scheme (LISP-oidni jezik) ali ta knjiga nije da te nauci jezik vec programiranju i razmisljanju, u svakom slucaju nije bas preporucljivo da ti to bude prva knjiga ali nakon sto se malo pozabavis sa nekom standardnom C, C++, C#, Java, Python itd. itd. definitivno uzmi ovu jer otvara oci…

A nakon ovoga svega, onda Design Patterns kada vec malo dublje zadjes u problematiku… imas istoimenu knjigu mada ima puno knjiga na tu temu… ali kada vec dodjes do tacke gdje ti se cita ovo onda ti vise nece trebati posebna preporuka…

Sretno!

Pozdrav…

Pozdrav svima na forumu!

Iako nisam studirao na klasicnom programerskom smeru na fakultetu, pred kraj studiranja na tehnickom fakultetu (telekomunikacionog usmerenja) sam se zaista zainteresovao za programiranje, te sam kao svoj zavrsni rad predstavio jednu manju web aplikaciju za obradu i prikaz podataka koje korisnici unose, sa registracijom, logovanjem, prikazom administratorskog i korisnickog dela aplikacije. Simulira Web shop sa mogucnoscu prosirenja za izvestaje o korisnicima, proizvodima, vremenu kupovine, razni kriterijumi pretrage, slanje email obavestenja i slicno. To sam radio u html, css, php i mysql. Nakon zavrsetka faxa nastavio sam sa ucenjem pomenute tehnologije s tim da polako pocinjem i jquery da ucim.

Zelim ovim putem da pitam iskusnije kolege sa foruma, da li sa navrsenih 29god i velikom zeljom za ucenjem pomenute tehnologije (ili mozda Ruby) imam normalne sanse da se negde zaposlim kao junior web programer? Vidim da se php dosta trazi.
Da li je dovoljno jos 6-9 meseci intenzivnog ucenja i rada da bih to postigao? Die7 rece “Pronadji sta zelis, probudi motivaciju u sebi i prepreka nema niti godine niti ostali hendikepi ne igraju nikakvu ulogu…” :-):slight_smile: - U potpunosti podrzavam. P.S. Php mi se cini kao nesto sto bih mogao lakse savladati u ovim godinama i brze doci do rezultata, kada se od mene vec ocekuje da imam neko iskustvo.

Nadam se da ce Vas odgovor pomoci i drugim ljudima koji imaju slicnu dilemu.

Hvala.

@Novi_prog,

citajuci tvoj post, stekao sam utisak da si pred penziju pa pitas moze li se sta jos uraditi prije nego sto odem na vjecna lovista…

Godine ti ne igraju neku presudnu ulogu, posebno ne ako imas samo 29 godina.

Recimo u mom slucaju. Sa programiranjem sam se susreo jos kao dijete od 8 godina kada sam dobio prvi Comodore64 i na njemu udarao neke jednostavne Basic programcice. To mi je tada bila furka, vise nego sto me programiranje kao takvo zanimalo. Onda dodje rat, nakon toga nesto malo u skoli, uglavnom Basic i Pascal, ali mi je i tada a i dugo godina nakon toga, programiranje bilo previse abstraktno, nikako ga nisam “kontao”. Pa sam i odustao od toga, bacio se na network/system administraciju.
Tek prije cca. godinu i po dana, na faksu, susretnem se ponovo sa programiranjem. Java, PHP, SQL, nesto malo C. I tek tada pocnem da kontam programiranje, sta, kako, gdje, zasto… O tih 18 mjeseci odradio par projekata, uglavnom manjih i bas zavolio programiranje. Naravno, prebacio se na Python jer je najljepsi :), ali poenta je da ponekad treba da dodjes u neke godine da bi ti se neke stvari svidjele ili da bih ih potpuno shvatio i zavolio.

Samo guraj, radi sto vise projekata, sto vise kodiranja. testni_hamo je gore rekao, bitno je da naucis principe, sintaksa ce doci kasnije samo po sebi.
Kada naucis neke osnovne algoritme, probaj sebi naci programski jezik koji ti se svidja i u kojem mozes najlakse uraditi ono sto si zamislio i baci se na ucenje sintakse.

Najbitnije u svemu je da ti taj cijeli proces bude zanimljiv.

Evo da te malo ohrabrim mojim kontra iskustvom. Tokom školovanja sam mrzio matematiku, Računarima su se bavili samo odlični đaci čiji su roditelji imali para da im u to vrijeme kupe spektrum i comodore.Nikad nisam predpostavio da će me ovo zainteresovati. Međutim.
Međutim. Evo sa 37 godina već imam godinu dana učenja iza sebe. Na početku sam malo čačkao oko web-dizajna što mi je brzo dosadilo.Onda sam otkrio programiranje i to me oduševilo. Krenuo sam sa webom - Javascript i onda shvatio da ima toliko toga što ne znam prije Javascripta. Tada se pojavio Linux i… Nema kraja. Sada sam sažvakao dosta generalne teorije - baze podataka,mreže,protokoli,vrste programskih jezika,kako funkcioniše kompjuter, od čega se sastoji OS…Malo me zezaju algoritmi - volio bih da ih savladam al ko što rekoh matematika mi baš ne ide. Na savjet ljudi sa foruma sam počeo da učim još jedan jezik - trenutno C što mi se pokazalo kao super, jer nalazeći zajedničko tlo za više jezika bolje učiš i brže napreduješ.Naravno učim i bash što mi više dođe kao svakodnevno upoznavanje sa novim komandama na terminalu nego pravo učenje, zatim izučavam osnove Linux distribucija .To mi je posebno zanimljivo pa stalno nešto mijenjam. Eto to je moje iskustvo. Znači samo naprijed.

freelancer.org je dobra stranica za potencijalne volontere. Znaci otvoris P&P racun i povezes debitnu karticu i pocni traziti posao tako sto ces vidjeti ponude pa ako ti odgovara probaj da vidis kako ce ici. Mozes takodjer da otvoris hosting ili ponudis svoje usluge preko licne web stranice ili oglasa. Htio sam pokrenuti nesto ali nisam dao prvu godinu na elektrotehnici, pa jedino za sta imam vremena je da studiram.
P.S. U osnovnoj sam ucio basic, u srednjoj pascal i evo na fakultetu osnove C-a. U slobodno vrijeme sam se bavio web stranicama, a zadnje sto sam izucavao su cmsovi. Sad pomalo radim u terminali iako sam jos sa 7 godina imao dodir sa dosom i ucio sam neke osnovne komande. Kad ove ispite skinem s vrata uzecu malo C, perl i python te pisati bash skriptice, to mi je trenutacna zelja. Cisto informativno ovo kazem.

Wait, kazes prva god na el. tehnici (predpostavljam u Tuzli), mozda se i znamo i ja sam sad prva god tj isto nisam dao uslov (glupa teorija iz mat :frowning: ).
Ali vjerovatno nisi u mojoj liniji jer poznajem samo jos jednog kolegu koji koristi Ubuntu …

//sry za offtopic, poz…

eto javio sam ti se na pp da ne pravim guzvu, a inace koristim primarno slackware.

osnovna: malo qBASIC
srednja: c++ u drugom razredu sve zaboravio

sad sam cak treci razred :), i pocinjem tek radit pomalo GUI aplikacije i Symbian… iako ide malo sporo.

Imam dosta pocetnickog materijala (algoritmi, osnove c+±a), pa koga interesuje javi u PM…

mislim da je dovoljno samo malo pretrazivanje po piratbay-u da bi nasao tonu knjiga o bilo kom jeziku.

kao druge izvore predlazem youtube channel-e: thenewboston(thenewboston.com) i voidrealms, te neke kanale americkih univerziteta koji postavljaju snimke predavanja na internet npr. MIT

a po toku kako bi teklo ucenje ja mislim da treba bit kao i u skoli, algoritmi(prikazati odredjeni zadatak algoritamskom shemom/pseudokodom), proceduralno programiranje (console app), objektno prog.(console app.) objektno prog.(gui app).

Hvala svima na odgovorima i podrsci!

Jos davno, u osnovnoj skoli, sreo sam se sa programiranjem i radio neke male programe u Basicu samoinicijativno, ali sve do pred kraj studiranja nisam ponovo seo, pokusao i shvatio da zelim to. Slazem se da coveka u nekim zrelijim godinama zainteresuju neke nove stvari, a u mom slucaju bi to mozda bilo vracanje na staru stazu :slight_smile:

Sve sto sam naucio primenio sam u izradi te male web aplikacije, ali mi svakako predstoji jos dosta ucenja. Ono sto bih voleo jeste da, nakon izvesnog vremena kodiranja, ucenja, izrade raznih manjih projekata - pokusam biti deo nekog tima koji razvija slicne aplikacije, te na taj nacin steci malo vise iskustva, makar i kao volonter. Cini mi se da mi Php zajedno sa ostalim pomenutim alatima na neki nacin lezi i da bih ga savladao brze nego neki drugi jezik, jer vec neke stvari znam i razumem.

Jos jednom zelim svima da se zahvalim na ohrabrenju, savetima i podrsci :slight_smile:

Pa možeš se uključiti u neki od brojnih open-source projekata koji se rade u PHPu, kao što je recimo ovaj: http://f.etf.unsa.ba/redmine/projects/zamger

U osnovnoj skoli radio nesto BASICa mada (pored onih komicnih aplikacijica sa animiranim krugovima i beeper “muzikom”) mi je brzo dosadio. Nakon toga sam se igrao dosta sa Visual Basic 6 i to mi je bio prvi jezik kojeg sam koristio malko duze (isli na takmicenja s njim u osnovnoj). U tom periodu sam znao i dosta oko VBScripta te mi je najzabavniji dio bio cackanje sistemskih fajlova tipa AUTOEXEC.BAT i slicno. Onda sam sve to brzo zaboravio kao sve casove Historije koje sam ikad imo. U srednjoj smo radili C koji mi je pravo drag al nismo radili nista zanimljivo ; radilo se i nesto C++a ali je to bilo zanemarivo malo. Tad nekad sam nabasao na SUSE 9.1 Personal (dosao na INFO dvdu ako se dobro sjecam) te relativno brzo nakon toga upoznao raju iz ULKa. Tu sam poceo da ucim PHP uz veliku podrsku sve raje iz ULKa, pravio pokrete da napravim novi linux.org.ba (postoji sad negdje oko 7-8 dizajnova te stranice, neki su jos zivi ovdje: http://linux.org.ba/~armin/src/ulkweb/ ) i evo, nakon jedno 5-6 godina, radim kao web developer na vecem projektu gdje koristim LAMP stack (zapravo LNPP – Linux, Nginx, Postgres, PHP) ali vrlo je zabavno.

Tjeraju me sad da ucim Javu mada nakon malo cackanja nije ni ona dosadna koliko sam mislio da je. Sve sabrano i oduzeto, zabavno iskustvo i zabavno je do dan danas. Jedino sto treba je dobar izazov :slight_smile: