[ pisac @ 10.08.2017. 07:19 ] @
Koji programski jezik je najbolji za učenje malog osnovnoškolca koji nema pojma o programiranju a hteo bi nešto da nauči i samostalno drnda?

Treba da bude razumljiv odnosno relativno jednostavan, a da može da se nauče neke praktične stvari upotrebljive i kasnije na nekim jačim jezima.

Ja za sada počeo da ga učim BASH pošto se u njemu radi sve u komandnoj liniji (na linuxu, naravno) i prilično je koristan svakodnevno, međutim taj "jezik" definitivno nije razumljiv i jednostavan. Eventualno sam razmišljao i o PHP-u ali opet nisam siguran koliko je to dobro. Ja sam svojevremeno naučio sve na spektrumovom bejziku i tu programirao i neke igrice (sa bejzik kompajlerom) sa milion neverovatnih konstrukcija u obliku goto špageta (kad se setim uvek čestitam sam sebi kako sam se snalazio u svemu tome) međutim to je davno prošlo vreme i sada je sve drugačije, bolje, brže, lepše, jače, objektno, strukturirano, trt-mrt...
[ bananaphone @ 10.08.2017. 07:49 ] @
Lego mindstorm - ima i boljih derivata u tehnickom smislu, ali Lego je napravio najvise oko motivacije klinaca. Evo pokusavaju i u Srbiji da pokrenu ligu:

[ nkrgovic @ 10.08.2017. 08:16 ] @
Probaj Python, klinci se loze na njega, jako je citak.
[ član @ 10.08.2017. 08:36 ] @
evo ti ovaj sajt, pa pogledaj sta je tu predvidjeno za osnovce: http://bee.bubblecup.org/o-nama
jedan prijatelj je neko vreme radio kao nastavnik u OŠ, bio je uključen u tu celu priču, tako da sam slučajno za sve to čuo...
[ tuxserbia @ 10.08.2017. 08:39 ] @
Koliko je dete dete? Pet, šest, dvanaest, dvaesosam?!?

Možda da se proba sa

https://en.m.wikipedia.org/wiki/Processing_(programming_language)

Nakon kratkog vremena može da skoči na Arduino i

https://en.m.wikipedia.org/wiki/Fritzing

S Arduinom ima verovatno najbolje šanse, vrlo brzo se dođe do rezultata, a tek kad ledice počnu da trepere i šljašte, ihaj! Još jedan plus je ogromna količina primera, njihov sajt ima baš dobro obrađene teme, a delovi mogu da se nađu za sitne novce. Kasnije može da se iskoriste i komponente koje već imamo kući, zastareli i pokvareni uređaji.

[ jablan @ 10.08.2017. 08:44 ] @
Scratch
[ bananaphone @ 10.08.2017. 09:21 ] @
@nkrgovic - slazem se - ali to je vec za matorije klince, mozda 13-14g+

@tuxserbia - mozda i najbolja platforma (+raspberry pi), ali po meni - isto za starije klince.


Mislim da je fora da "zarazis" dete sa konceptom da ono moze samo da napravi nesto i bez tebe, pa da provede par sati zato sto ga interesuje, a za to mislim da treba da se obezbedi jednostavnost, da dete ne odustane posle nedelju dve kad skonta da mu treba 3h da upali 2 LED-a, ali opet da bude interesantno, da se sprema za neko takmicenje, da moze da drugarima da se igra itd...
[ tuxserbia @ 10.08.2017. 10:40 ] @
Pa pitao sam odmah koliko je dete? Za mališane je bilo nešto googletovo, pa nije išlo, pa su ga prebacili na mit, i sad pojma nemam gde se zagubilo. Grafičko dodavanje kontrola i funkcija. Sećam se da i na linuxu ima nešto, kornjača ili nešto slično. S telefona pišem, pa malo #%%£¥$# za pretragu
[ since1986BC @ 10.08.2017. 12:17 ] @
Gledao, tražio na ovu temu.

Zaključak, očigledan - dete treba zainteresovati za rešavanje problema i pristup reašavanju problemu na inženjerski način.
Najviše se isplati da vreme investirate u matematiku ako već tražite konkretnu stvar.
Ne mora to da bude ni "čista" matematika, rešavanje jednačina/nejednačina. Logički problemi, pitalice, šah, zadaci sa takmičenja iz matematike su interesantni ...

Zašto da dete uči da koristi jedan programski jezik ako će prema svojoj proceni, potrebi, situaciji, slučaju ... koristiti programski jezik koji mu završava posao, kada i ako krene da radi programiranje.
To što je danas php i javascript najčešća stavka u Srbiji, ne znači da će to biti i kroz 10-15 godina.

Bez uvrede, samo izneo svoj pogled na stvar.

p.s. Python je dugo bio "omalovažavan", skrajnut. Danas je on vrlo IN , dobar free lancer moćiće njime da zaradi i iz Srbije.
Naravno ko često googla o php-u i javascriptu, drugo mu neće ni iskakati pa će u njegovim očima Python biti irelevantan.
[ bananaphone @ 10.08.2017. 13:01 ] @
Citat:
tuxserbia:
Pa pitao sam odmah koliko je dete?


Citat:
pisac:
Koji programski jezik je najbolji za učenje malog osnovnoškolca



Normalno - na piscu je da definise sta znaci mali osnovnoskolac, ja kontam tu negde do 4-tog razreda, a i deca su razlicita neko je u 4-tom razredu zreliji od mnogih sedmaka, dok drugima jos uvek moras da kupujes patike na cicak, posto ne umeju pertle da vezu...

[ Predrag Supurovic @ 10.08.2017. 13:04 ] @
Citat:
jablan:
Scratch


I ja milsim da je ovo za početak najbolje. Neopterećeno je kucanjem komandi i sintaksom a primenjuju se tehnike koje su za razumevanje programiranja neophodne i sasvim dovoljne.

[ Zlatni_bg @ 10.08.2017. 15:50 ] @
Hehe, ja sam krenuo sa TPascal, pa C++, pa ostalo, izmedju ostalog i hvaljeni python nesto kasnije... moram reci da sam se na C++ pronasao kao klinac. Malo smara sa svojim stdio.h, nekako je "neprirodna" sintaksa ispisivanja i iscitavanja iz cmd linije, ali je okej. Python sada kad gledam, deluje super, mada cu na njega uvek gledati kao na scripting jezik.

Opet, ne znam da li treba da pratimo modne trendove :) Turbo Pascal ti danas niko nece reci da ucis. Znam da je izvan opcije ali PHP je jedan od najprostijih za pocetak jer nemas definisanje tipa promenljivih. Mozda Visual Basic? Znam da su pre 20ak godina mnogi kretali s tim, sintaksa prostija ne moze da bude, a sa novim VStudiom se lako napreduje i prave kompleksne aplikacije.

Samo bih dodao da nijedan programski jezik nije tezak i da osnove nijednog nisu nesavladive srednjoskolcima. Samo nemoj sa Javom odmah da krenes i sve je super. (ne pljujte me za ovo, ali OOP od starta nije pametna ideja)
[ dragancesu @ 10.08.2017. 15:51 ] @
Dete je 10 godina, kupio sam ovu knjigu pa polako izučavamo, ima svega

http://www.laguna.rs/n3231_knj...uci_da_programiras_laguna.html

[ Branimir Maksimovic @ 10.08.2017. 15:56 ] @
Mislim da je 10 godina prerano za programiranje. Tek kad pocne da kapira matematiku ima smisla.
[ bananaphone @ 10.08.2017. 16:18 ] @
Citat:
Branimir Maksimovic: Mislim da je 10 godina prerano za programiranje. Tek kad pocne da kapira matematiku ima smisla.


Pa dobro - nije to programiranje u profesionalnom smislu - da imaju potpuno razumevanje sta ja znam, nekog programskog jezika, algoritama ili operativnih sistema.

Nego cisto ono da se uvede dete u svet programiranja, kao sto si imao i radio amatere (ja mislim da sam bio tu negde 10-11g kad sam krenuo sa lemljenjem), ili racunarsku sekciju, pa i klinci su pre 30g prekucavali programe u basic-u iz racunarskih casopisa na zx spectrum, bez dubokog razumevanja, ali vecina koja su imali volje to tad da rade, i sad ceprkaju po racunarima ili elektronici...

Ovo sto je jablan napisao je odlicno za pocetak, i kao sto sam rekao - mislim da vredi lego mindstorms (ili neki derivat)... Dete da se zanima, malo da skapira logiku iza rada racunara i racunarskih programa, jos ako napravi neki robot, puna kapa...

Ovako ako mu das nesto komplikovano, sto ne moze da skapira odmah i sto zahteva znacajan napor da bi dete dobilo neki rezultat, moze da bude kontraproduktivno, da se dete povuce i jednostavno ne zeli tim da se bavi.

Normalno ako vidis da ove neke proste stvari idu kao ladna voda i da se dete smara, pa ti mu onda dodas gasa sa nekim ozbiljnijim stvarima, eto dosta od mene...
[ anon115774 @ 10.08.2017. 17:23 ] @
Jos jedan glas za RPi i Arduino.

Mislim da je za dete mnogo lakse da nauci ako vidi rezultate rada (npr, ukljuci/iskljuci LED, neki senzori, LCD displej, itd) nego da uzme racunar i cuka neke programe i resava zadatke, jednacine, funkcije i slicno a da ne vidi neku konkretnu primenu...
[ tuxserbia @ 10.08.2017. 18:00 ] @
A kad vidiš ovako nešto

https://m.youtube.com/user/KevinWilliamgZhou/videos

Googletova je bila App Inventor, sad MIT

http://appinventor.mit.edu/explore/

Ispade ista gorepomenuti Scratch, osim što je orijentisana na Android.


[ Brodoplovac @ 10.08.2017. 18:46 ] @
http://www.techsupportalert.co...ree-ways-learn-programming.htm
[ Branimir Maksimovic @ 10.08.2017. 19:19 ] @
Ja cu svoje dete kad nauci da cita i pise prvo uciti asembler.

1. Nema apstraktnih koncepata , decji mozak to mnogo lakse shvata nego neciji od 30+
2. Sintaksa je najjednostavnija
3. Dete odmah uci kako radi racunar
4. Sa nekoliko instrukcija moze da pise i najkomleksnije programe
5. Necemo dobiti It strucnjaka koji sa 40+ nikad nije cuo za siftovanje i maskiranje
[ Zlatni_bg @ 10.08.2017. 19:35 ] @
Tebe treba banovati zbog takvih komentara, i svih gluposti kojima zatrpavas forum.
[ bananaphone @ 10.08.2017. 19:50 ] @
Citat:
Branimir Maksimovic:
Ja cu svoje dete kad nauci da cita i pise prvo uciti asembler.

1. Nema apstraktnih koncepata , decji mozak to mnogo lakse shvata nego neciji od 30+
2. Sintaksa je najjednostavnija
3. Dete odmah uci kako radi racunar
4. Sa nekoliko instrukcija moze da pise i najkomleksnije programe
5. Necemo dobiti It strucnjaka koji sa 40+ nikad nije cuo za siftovanje i maskiranje



Sta ces ga muciti sa slovima, nauci ga 0 i 1, i onda cepa sve binarno...

Mislim da ce mu tako sve biti jasnije, a i prirodnije je da sa racunarom komunicira binarno, posle mozes da mu ugradis neki port, da ne mora da koristi ruke kad kuca komande...

Pazi - ovo moze da izjavi samo neko, ko nije ucio dete da cita i pise :D


BTW - nema direktne veze sa temom ali ako hoces nekog dosta starijeg klinca - tipa kraj srednje skole, da naucis dobro osnove racunara postoji kurs na coursera.org - "Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course)" - kao sto ime kaze - pravis racunar od flip flopa do tetrisa http://www.nand2tetris.org/ je site od ljudi koji su napravili ovaj projekt.

[ Branimir Maksimovic @ 10.08.2017. 19:54 ] @
Citat:
Zlatni_bg:
Tebe treba banovati zbog takvih komentara, i svih gluposti kojima zatrpavas forum.


Osim toga nije u pravu, za HTML i PHP treba starije dete ;p
[ Branimir Maksimovic @ 10.08.2017. 19:55 ] @
"Sta ces ga muciti sa slovima, nauci ga 0 i 1, i onda cepa sve binarno... "

Pa u svakom slucaju ti bih imao vise uspeha nego da je ucim HTML i PHP ;p
[ Zlatni_bg @ 10.08.2017. 20:03 ] @
Citat:
Branimir Maksimovic:
Citat:
Zlatni_bg:
Tebe treba banovati zbog takvih komentara, i svih gluposti kojima zatrpavas forum.


Osim toga nije u pravu, za HTML i PHP treba starije dete ;p


Pa da je ucio PHP i HTML na vreme (kao dete, bio debil ili ne kako on sam navodi) verovatno danas ne bi kupovao robu sa bubanj potoka i brikovao 5 krs rutera mesecno i u njima trazio spas.
[ dusans @ 10.08.2017. 20:22 ] @
Citat:
Branimir Maksimovic:
Ja cu svoje dete kad nauci da cita i pise prvo uciti asembler.

1. Nema apstraktnih koncepata , decji mozak to mnogo lakse shvata nego neciji od 30+
2. Sintaksa je najjednostavnija
3. Dete odmah uci kako radi racunar
4. Sa nekoliko instrukcija moze da pise i najkomleksnije programe
5. Necemo dobiti It strucnjaka koji sa 40+ nikad nije cuo za siftovanje i maskiranje


Ako mu se barem malo ne bude sviđalo programiranje, ovo će tek definitivno da mu se zgadi.
[ Branimir Maksimovic @ 10.08.2017. 20:59 ] @
Pa necu nikog da silim. Naucicu je osnove pa ako je to ne zanima ne mora, izmedju ostalog smarace je 12 godina sa nastavom koja je ne zanima.
[ goran_68 @ 10.08.2017. 21:45 ] @
Ja sa detetom radim scratch. Ako hoćete da palite ledice, mrdate motore ... imaš scratch za arduino i micro:bit
Najlakše se dolazi do rezultata, detetu je zanimljivije a vizuelne kontrole lakše prolaze kod deteta nego apstraktne komande. Napredak može da bude neverovatan :). Sad smo malo stali, ipak je leto...
[ pisac @ 11.08.2017. 02:53 ] @
Ja se nešto brinem da će schratch da olenji visualizaciju u glavi, odnosno da će se dete navići da mu ekran vizuelizuje program umesto da on to sam radi u svojoj glavi, pa će kasnije biti teže odlepljivanje od celog tog koncepta i prelazak u terminal.
Ja sam se inače posle bejzika odmah upustio u asembler (z80) sa svim registrima i šiftovanjima bez ikakvih problema, ali već sam bio matori osnovnoškolac.
[ Branimir Maksimovic @ 11.08.2017. 03:25 ] @
Kad imas koga da te poduci 10 puta je lakse.
[ bananaphone @ 11.08.2017. 07:17 ] @
Citat:
pisac:
Ja se nešto brinem da će schratch da olenji visualizaciju u glavi, odnosno da će se dete navići da mu ekran vizuelizuje program umesto da on to sam radi u svojoj glavi, pa će kasnije biti teže odlepljivanje od celog tog koncepta i prelazak u terminal.
Ja sam se inače posle bejzika odmah upustio u asembler (z80) sa svim registrima i šiftovanjima bez ikakvih problema, ali već sam bio matori osnovnoškolac.


Pa to je 4-5g razlike, kao dupe i oko u tom uzrastu, bolje mu je da uci scratch nego basic - znas sta je rekao Dijkstra - "It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration." :D
[ pl4stik @ 11.08.2017. 09:16 ] @
Ne mogu da preporucim bas sta ali znam da treba izuzetno oprezno s tim pa mozda i pricekati neku godinicu jer kad jednom mozda uklikeri da "nije to za njega" ima veliku muku da imas da mu izbijes to iz glave. Ovo pricam iz iskustva jer su sinu mog ujaka u gimnaziji "Stevan Sremac" u Nisu pre nekih 7-8 godina dali zadatak u Delfiju kolko se secam za koji sam se ja dva dana mucio da nadjem kompajler (secam se mnogo godina star) i nakon svega dam mu ja sve to na flesh, uzo ga je i otrcao i NIKAD vise nije hteo da cuje za programiranje.
Znam da je bio na silu na Elektronici pa je preso na Ekonomiju ali i dalje nece da cuje za programiranje jer "to jednostavno nije za njega"..

Just my 2c
[ mjanjic @ 11.08.2017. 10:19 ] @
Kako je krenulo, na kraju ćemo mu preporučiti da prvo proba sa fudbalom, tu je perspektiva za mnogo veću zaradu i u trećoj nemačkoj ligi nego u vrhunskom programiranju ^^
[ pl4stik @ 11.08.2017. 11:35 ] @
Izvinjavam se ako sam povredio necija osecanja, skroz je dobronameran bio komentar i malo upozorenje koje moze da se ignorise bez problema...
[ dejanet @ 11.08.2017. 11:46 ] @
@pl4stik :
Mislim da si potpuno u pravu.

Klinci ce da se uvate nekog programiranja ili prckanja po sistemu u glavnom iz dosade ili klinackog otpora ili revolta.
Jezik nije bitan, ja sam cepao assembler na c-64 u sedmom i osmom razredu.
[ bananaphone @ 11.08.2017. 11:47 ] @
@pl4stik - pa ovo sto si opisao je tipicna situacija sa decom. Jos ako se pojavi pritisak preambicioznog roditelja u kombinaciji sa previse komplikovanim zadatkom - detetu se zgadi cela stvar i stvori otpor koji posle moze da nosi ceo zivot... Pa znam odrasle osobe kojima kad krenes da objasnjavas neku stvar iz zivota uz pomoc proste matematike, odmah pada klapna, i okrecu temu na drugu stranu, smucila im se matematika za ceo zivot :D

Zato mislim da je najbolje krenuti sa pricom gde je to samo interesantna igra, gde ce dete najpre da se igra sa roditeljom, bez opterecivanja a posle ce i bez roditelja biti sposobno i hteti samo da se igra sa tim konceptom, pa posle dodavati gas - u zavisnosti koliko je dete sposobno i zeljno da gura (godiste, zrelost, znanje matematike itd)...

Posle kad se dete zapali za nesto, ne mozes da ga se otreses, moraces da se sakrijes negde u garazu, za 5min mira, ici ce za tobom i da te smara da mu pokazes jos malo kako da resi neki problem... E tu ga onda hvatas sa python-om ili sta bude aktuelno u tom momentu...
[ Predrag Supurovic @ 11.08.2017. 13:15 ] @
Na stranu to što za učenje programiranja uopšte i ne treba računar.


[ pisac @ 11.08.2017. 18:23 ] @
Koliko vidim opredelio se (za sada) za php umesto basha. Pretpostavljam da ga je prepala užasna bash skarabudževina tipa

broj=1; while [ $broj -lt 10 ]; do echo $broj; broj=$(($broj + 1)); done

i da mu mnogo lepše i logičinije izgleda

$broj=1; while ($broj<10) { echo "$broj\n"; $broj=$broj+1; }

doduše malo mu je nejasno zašto u php-u mora \n na kraju echoa a u bashu ne mora, ali jbg ništa nije savršeno

Ne znam za Pajton, nisam neki poseban poznavalac (mada sam žestoko budžio i nadograđivao neke tuđe programe za neke arduino senzore i slično), prilično sam ambivalentan prema njemu. Jeste da deluje čitko i logično sa svojim uvlačenjem kao sastavim delom sintakse, ali upravo to mu vidim i kao najveću manu. Meni ta njegova osobina plaši, naročito kombinacija tabova i razmaka, nikada ne znam da li će neki kod iskopiran sa weba ili odakle bilo da radi jer se upravo uvlačenja i tabovi menjaju od kompa do kompa i od editora do editora, razlika u tabulaciji i ode program u tri lepe. Nekako se plašim da pustim dete u Pajton pa da se navikne na uvlačenje kao sastavni deo sintakse.

Što se skreča tiče, to ću još da proučim. Prvo ja malo da se izigram pa da vidim

[ tuxserbia @ 11.08.2017. 22:21 ] @
Može i echo , ako ga koristiš sa "-e" opcijom, onda možeš da koristiš i novi red, i vertikalni i horizontalni tab, i bekspejs, i svašta nešto.
[ Milan Kragujevic @ 12.08.2017. 02:29 ] @
Mislim da je javascript dosta lak za učenje. Eto moj predlog. Samo pazi da detetu ne dopustiš da ode na elitemadzone ili na elektroniku na elitesecurity jer će mu uništiti svu volju za programiranjem neki matorci koji nemaju pametnija posla nego eto da traže dlaku u jajetu - case in point - ja.
[ Living Light @ 12.08.2017. 02:42 ] @
Otkad to matorci na "Elektronici" programiraju ?

Nisam ih primetio, a ponekad sam tamo,

[ Milan Kragujevic @ 12.08.2017. 03:04 ] @
Pa ne znam kako je sada, davno je to bilo, 2011, možda se promenilo stanje sada, a glavni akteri više ne posećuju forum...
[ Zlatni_bg @ 12.08.2017. 04:44 ] @
Opet, JS, kao i neki navedeni, nisu programski vec "skripting" jezici... ali ako se dete uvodi u samu tematiku koncepta programiranja, ne mora da bude relevantno. Mada po meni, JS nikako nije dobra opcija za pocetnike. Kako da radis JS kako treba ako ne poznajes HTML? Koji opet nije programski jezik...

Dajte ljudi, zna se kako se pocinje sa programiranjem. CLI aplikacije i nista drugo. Kada se to savlada, prelazi se na GUI. Kapiram da je dosta napredovalo sve danas od vremena kad je vecina nas pocinjala, sa raznim DOS kompajlerima ili razvojnim okruzenjima, ali JS i slicno kao pocetak?

I da li je poenta da se u ovoj temi navede svaki programski/skripting jezik za koji je neko cuo? Do sada imamo, evo nekako "po tezini", assembler, basic, tpascal, c++, php, html, js, python... mislim da je vreme da se pocne sa argumentima a ne samo postovima od jedne recenice, ako cemo vec da iznosimo adekvatne predloge. Zatrpala se tema i ode ko zna gde. Vise se odmoglo ljudima nego pomoglo.

Hajde svako neka predlozi programski jezik, i svoje za i protiv. Jedan svako, pa cemo da diskutujemo. Sta bi dete naucilo sto bi dalje moglo da primeni i koliko bi mu lako bilo da se snadje u pocetku, i da ostane zainteresovano za celu igru?
[ Milan Kragujevic @ 12.08.2017. 04:54 ] @
>CLI aplikacije i nista drugo.

NodeJS? Čini mi se kao jednostavan a moćan jezik, a sa njime može i da se pravi GUI ako se koristi uz Electron-Shell ili Node-Webkit. Naravno može i uz PHP ali to niko skoro ne radi, dok node-webkit i electron-shell mnogi koriste, recimo Spotify, Visual Studio Code, etc...
[ Zlatni_bg @ 12.08.2017. 05:44 ] @
... a nesto "nativno" i lightweight za CLI?
[ Milan Kragujevic @ 12.08.2017. 05:52 ] @
Citat:
Zlatni_bg: ... a nesto "nativno" i lightweight za CLI?


Svi interpretirani jezici, kao što je Python, NodeJS, PHP, zahtevaju interpreter, stoga ne vidim po čemu je PHP/Python bolji od Node, osim što je Python lakši jer Node vuče ceo V8 VM iz Chromium-a.
[ Panta_ @ 12.08.2017. 08:23 ] @
Citat:
Koliko vidim opredelio se (za sada) za php umesto basha. Pretpostavljam da ga je prepala užasna bash skarabudževina tipa

broj=1; while [ $broj -lt 10 ]; do echo $broj; broj=$(($broj + 1)); done

i da mu mnogo lepše i logičinije izgleda

$broj=1; while ($broj<10) { echo "$broj\n"; $broj=$broj+1; }


Moze i bash-u <> umesto -lt, -gt operatora ako ih koristis izmedju (( )).

Code:
broj=1; while (($broj < 10));do echo $broj; ((broj++));done


http://www.softpanorama.org/Sc...a/arithmetic_expressions.shtml

Inace, ovo u Python-u jos lepse i logicnije izgleda:

Code:
broj = 1
while broj < 10:
    print(broj)
    broj+=1


http://pythonbooks.revolunet.com/
[ pisac @ 12.08.2017. 12:22 ] @
To za (( < )) nisam znao, ali jedan razlog više zašto je bash skarabudževina sa kojom ne treba gnjaviti dete
[ pisac @ 12.08.2017. 12:38 ] @
Sad sam baš probao python uvlačenje, da vidim koliko je mudro da pustim dete u tu ludost, izaključio sledeće:

Python računa tab kao 8 razmaka. Ukoliko u naredbi iznad uvučeš petlju za jedan tab u sledećoj možeš da staviš 8 razmaka i program će raditi normalno. Međutim, kakve su posledice tako napisanog programa kada za kopiranje/izmene koristiš tab od 4 znakova kao što ja radim? Pa pogubne po program, koji ili ne liči ninašta a radi ili izgleda normalno a ne radi. E zato me python plaši, potencijalne nevidljive sintaksne greške.
[ Panta_ @ 12.08.2017. 13:40 ] @
Nebitno je da li koristis TAB ili SPACE sve dok si konstantan u tome. Preporuka je 4 space-a koje se vecina (gotovo svi pridrzavaju). Vecina boljih text editor-a ima opciju konvertovanja tab u space, na primer u vim-u:

Code:
set tabstop=4
set softtabstop=4
set shiftwidth=4
set shiftround
set expandtab


Dakle ako otvoris kod indent-ovan sa tab-om, vim ce ga konvertovati u 4 space-a.

http://vim.wikia.com/wiki/Converting_tabs_to_spaces
[ SlobaBgd @ 12.08.2017. 13:48 ] @
Pisac, uči ti svoje dete da dobro barata SRPSKIM jezikom, ionako će u školi učiti programiranje od 5. razreda, volelo to ili ne. Ne dozvoli da ti dete bude nepismeno kao što je pola programera nepismeno u oblasti pisanog i usmenog izražavanja.
[ stameni @ 12.08.2017. 14:19 ] @
Ja sam se za mikroračunare počeo zanimati preko igrica, prvo na automatima, a zatim i na kućnim računarima. A kada sam počinjao da se zanimam porgramiranjem, u zlatno doba ZX Spectruma i Commodorea 64, nisam mogao mnogo da biram: prvo BASIC, pa posle mašinac, jer treće praktično nije postojalo ;)

E, sad, detetu ne bih nikako preporučivao ovakav put: drevni interpreterski BASIC nije dovoljno "čist" jezik, a assembler je pretežak za dete.

Kada bih trebalo odrasloj osobi, koja želi da se iz hobija bavi programiranjem, da preporučim programske jezike (i odgovarajuća razvojna okruženja), verovatno bih preporučio sledeće jezike (redom): Pascal -- Turbo Pascal -- Delphi (verzija 7 ovog poslednjeg pravi ponajmanje glavobolja). Turbo Pascal i Pascal treba naučiti do nivoa kada programer savlada neke osnovne programerske veštine (npr. da nađe maksimalnu vrednost niza, ili da sortira niz, ili da protrči kroz neku matricu i "nešto" odradi sa elementima i sl.). Problem sa TP-om je što je baš mnogo zastareo, i što ne pravi GUI izvršne datoteke; trebalo bi da postoje i neki grafički kompjaleri, ali mislim da nisu baš odgovarajući. S drugte strane, hobista bi posle TP-a mogao lako da pređe na objektni Pascal i Delphi 7, u čemu kao individualac i amater bi mogao da napreduje neograničeno.

Verujem da za profesionalnog programera svako ima svoju viziju programskih jezika i okruženja koje treba koristiti, i da se pomenute vizije teško mogu uskladiti ("Koliko ljudi, toliko ćudi"). Mislim da je i u ovom slučaju dobro krenuti Turbo Pascalom, otprilike do nivoa neophodnom hobisti, a zatim ipak preći na neko savremenije okruženje.

Ali -- šta preporučiti deci? Turbo Pascal bi i ovde bio moj prvi izbor, da u njemu programer nije ograničen na programiranje konzolnih aplikacija, a ubeđen sam da to detetu nije dovoljno vizuelno atraktivno, i da se dete neće zainteresovati niti "upecati" na tu ipak zastarelu tehnologiju.

Moguće je da bi DirectX programiranje bilo vizuelno atraktivno detetu u dovoljnoj meri da samo poželi da se bavi time...? To je zanimljiva ideja za početak...

Mislim da bi ispravniji pristup bio ponuditi detetu dve-tri suštinski različite platforme (primeri su Turbo Pascal, neko igranje robotićima i kontrolerima, neki ozbiljan jezik) i gledati na šta će najjače da "trza" ;) Posle ga samo treba usmeravati tamo kuda je samo izabralo. U širem smislu -- nije programiranje jedina zanimljiva stvar oko računara -- možemo razmisliti i o nekim neprogramerskim disciplinama (pri čemu ne mislim samo na igrice ;)).
[ Blue82 @ 12.08.2017. 18:23 ] @
Ja sam poceo na Commodore 64, naravno Basic i to tako sto su mi sa racunarom doneli i neku knjigu na engleskom o kome ja nisam znao ni slovo, u kojoj sam nasao neke jednostavne programe, prepisivao ih u racunar (a pri tome nisam umeo ni da izmenim gresku ukoliko je napravim u nekoj liniji cak i kada vidim u cemu je greska) i kada bih na kraju ukucao RUN (ENTER) program bi pustio neki zvuk, nesto nacrtao na ekranu ili bih imao igru pogadjanja reci npr. I to me je jako zainteresovalo jer sam mogao da napravim sam sebi igru, tj napravim nesto svoje sto do tada nije postojalo i to je radilo. TO je za mene bio okidac.
[ pisac @ 13.08.2017. 06:03 ] @
E da, zvukovi i grafika su bili prednost tih tadašnjih bejzika.

Kako sada iz basha/phpa/pajtona/čegagod pustiti neki zvuk željene frekvence, da nije onaj sistemski bip, ili možda nacrtati neku liniju ili krug?
Za sada bih se zadržao na terminalu/konzoli, skreč i slične varijante ćemo kasnije...
[ Branimir Maksimovic @ 13.08.2017. 06:36 ] @
Imas ucblogo, implementaciju jezika Logo za ucenje programiranja. Ovaj jezik je specifican po tome sto se bavi crtanjem.
http://cs.brown.edu/courses/br...97/Resources/LogoTutorial.html
[ tuxserbia @ 13.08.2017. 08:32 ] @
play iz paketa sox
aplay iz paketa alsa-utils
[ bananaphone @ 13.08.2017. 08:51 ] @
Citat:
pisac:
E da, zvukovi i grafika su bili prednost tih tadašnjih bejzika.

Kako sada iz basha/phpa/pajtona/čegagod pustiti neki zvuk željene frekvence, da nije onaj sistemski bip, ili možda nacrtati neku liniju ili krug?
Za sada bih se zadržao na terminalu/konzoli, skreč i slične varijante ćemo kasnije...


Pisac - koje dete ce, nakon sto mu pokazes algoritam za sortiranje bilo cega, sesti sutra samo i 7 dana sortirati razne nizove? Odradice to dok ti sedis pored njega, kao sto bi uradilo domaci zadatak, i kad ga zavrsi, zatvorice svesku i ide svojim putem.

Ne budi stipsa, ako ti je lego skup, kupi nesto slicno ovom:



Ako vam ovako nesto proradi, 100% ima dete da se zapali da ga modifikuje, nadogradjuje, budzi, vozi napolju, pokazuje drugarima. Jednostavno da mu stavis bubu u glavu da ono samo zeli i hoce i sto je najbitnije moze - da napravi nesto sto mu je interesantno, a paralelno sa tim ispunjava i zadatak koji si mu ti dao - a to je da nauci da programira.

Moras da ga zapalis u fazonu - ajde da pravimo auto koji sam vozi, ili robotsku ruku, ili video igricu ili sta god bi dete htelo da napravi. Zabole dete za algoritme, i komandnu liniju... Ono ce da pravi nesto sto njega fascinira i sto ce moci da podeli sa drugom decom...

BTW - mislim da je ovaj auto malo pretezak za malog osnovca, vise je za stariju decu, tako da ces ti morati gro posla da radis sa detetom da osposobite ovo da radi, i zato mislim da je lego bolji...
[ EmmaR @ 15.08.2017. 12:09 ] @
Citat:
pisac:
E da, zvukovi i grafika su bili prednost tih tadašnjih bejzika.

Kako sada iz basha/phpa/pajtona/čegagod pustiti neki zvuk željene frekvence, da nije onaj sistemski bip, ili možda nacrtati neku liniju ili krug?
Za sada bih se zadržao na terminalu/konzoli, skreč i slične varijante ćemo kasnije...


Morala sam
Code:

import turtle 

print("test python graph") 

tim=turtle.Turtle()
tim.up()
tim.goto(-200,0)
tim.forward(100)
tim.shape('turtle')
tim.down()
tim.left(36)

for i in range(5):
    tim.forward(100) 
    tim.left(144) 

tim.up()
tim.color('blue')
tim.width(2)
tim.fillcolor('#aa15ff')
tim.down()
tim.begin_fill()

for i in range(4): 
    tim.forward(100) 
    tim.left(90) 
tim.end_fill()

tim.width(3)

tim.color('green')
tim.circle(50,None,3) 
tim.circle(50) 
tim.color('red')
tim.circle(35,-120,10) 
tim.write('Ciao',2)
tim.color('green')
tim.circle(50,240) 
tim.hideturtle()
tim.write("That Was Turtle", move=False, align="center", font=("Comic Sans MS", 18, "normal") )

turtle.done() 

(vodi racuna o uvlacenjima kod for petlji: nije bitno kolika su vec da su jednaka)


Za crtanje i animaciju tu je processing (*.pde) koji podrzava JAVA i Python sintakse:
JAVA
Code:

void setup() {
    size(500,500);
}
    
void draw() {
    
    background(0,0,0);
    stroke(0,255,0);  
    strokeWeight(5);
    fill(255,0,0);
    
    line(70,50,300,50);
    ellipse(250,250,100,100);
}

Python
Code:

def setup():
    size(500,500)

    
def draw(): 
    
    background(0,0,0)
    stroke(0,255,0) 
    strokeWeight(5)
    fill(255,0,0)
    
    line(70,50,300,50)
    ellipse(250,250,100,100)


Koriscenjem processing.js biblioteke Processing se moze izvrsavati u web okruzenju kao klijentska skripta, samostalno ili uz pomoc JavaSript-a.
[ since1986BC @ 16.08.2017. 11:01 ] @
Ako se vec glasa za neki jezik konkretno, moj glas za Python. Ima toliko materijala...

Build Your Own Self Driving Toy Car With Python
https://www.youtube.com/watch?v=n0jM1cvmyEs

Imate i program Hour of Code, koji promovise programiranje za sve: sve generacije, bez obzira na obrazovni profil. Tu sigurno ima dobrog materijala.
[ pisac @ 16.08.2017. 19:47 ] @
Citat:
tuxserbia: play iz paketa sox
aplay iz paketa alsa-utils

Jezivo sporo aktiviranje na i686 Intel(R) Celeron(R) CPU 420 @ 1.60GHz, i na bashu i na pajtonu. Spektrum od pre 35 godina je munja za ovo.

Ima li za pajton nešto što pušta zvuke malo brže?


Citat:
EmmaR: Morala sam


Super je ovo. Već sam prepravio za dete tako da ne mora da uči engleski:
Code:

from turtle import goto as na
from turtle import forward as napred
from turtle import shape as oblik
from turtle import down as dole
from turtle import left as levo
from turtle import up as gore
from turtle import color as boja
from turtle import width as debljina
from turtle import fillcolor as boja_ispune
from turtle import begin_fill as pocni_ispunu
from turtle import end_fill as zavrsi_ispunu
from turtle import write as napisi
from turtle import circle as krug
from turtle import hideturtle as sakrij
from turtle import done as gotovo
crveno='red'
zeleno='green'
plavo='blue'
ljubicasto='violet'
zuto='yellow'
belo='white'
crno='black'


Nego, ima li neka fora da se crta po konzoli/terminalu odnosno da se startuje grafika odatle, da ne mora da startuje i koristi X?
[ EmmaR @ 17.08.2017. 13:06 ] @
Citat:
pisac: Super je ovo. Već sam prepravio za dete tako da ne mora da uči engleski:
Code:

from turtle import goto as na
from turtle import forward as napred
from turtle import shape as oblik
from turtle import down as dole
from turtle import left as levo
from turtle import up as gore
from turtle import color as boja
from turtle import width as debljina
from turtle import fillcolor as boja_ispune
from turtle import begin_fill as pocni_ispunu
from turtle import end_fill as zavrsi_ispunu
from turtle import write as napisi
from turtle import circle as krug
from turtle import hideturtle as sakrij
from turtle import done as gotovo
crveno='red'
zeleno='green'
plavo='blue'
ljubicasto='violet'
zuto='yellow'
belo='white'
crno='black'


Nego, ima li neka fora da se crta po konzoli/terminalu odnosno da se startuje grafika odatle, da ne mora da startuje i koristi X?


probaj urwid modul
urwid
[ Braxi @ 17.08.2017. 15:43 ] @
koji programski jezik, ali za koje dete ?

Mislim u kojoj meri dete interesuje programiranje i koliko je talentovano za to ?!?

Pitali su Djokovicevog oca kako je uspeo da napravi Novaka. A on je objasnio u stilu, ma nisam ja njega napravio ja sam mu samo pomogao da postane to zasta je imao sklonosti i dodao, kako dolaze mnogi roditelji da ga pitaju za recept, a on im kaze: pustite dete da se prvo oceni da li ej talenat i da li ima volju za to. Ako nema i nece dzabe ga forsirate...

tj. ako ce ti dete biti pravnik dzabe mu dajes kompjuter da programira...
[ goran_68 @ 17.08.2017. 20:02 ] @
Citat:
bananaphone:

Moras da ga zapalis u fazonu - ajde da pravimo auto koji sam vozi, ili robotsku ruku, ili video igricu ili sta god bi dete htelo da napravi. Zabole dete za algoritme, i komandnu liniju... Ono ce da pravi nesto sto njega fascinira i sto ce moci da podeli sa drugom decom...



Potpuno si u pravu. Važno ga je uvesti u taj svet na jednostavan i pristupačan način a posle će ionako na svoju stranu. Što mu više tupiš averzija sve veća. A i ove priče.. kad sam ja pr xx godina počinjao... Batalite to. Ako si nekad na trafiku trčao po "Vroći Kaj" jel treba i danas klinci da to tako rade?
[ tuxserbia @ 17.08.2017. 21:27 ] @
Blokiraj im net na nedelju dana, pa da vidiš da hoće. Uz svo to trčanje, možda i sportom počnu da se bave ;-)
[ herzog @ 18.08.2017. 13:38 ] @
Za sta je taj Phyton?
[ mjanjic @ 18.08.2017. 13:59 ] @
Pa, kad malo pogledaš npr. na OVOM sajtu, ispada da je naviše popularan za mašinsko učenje, data mining, generalno data sicence i sl.
[ djoka_l @ 18.08.2017. 14:10 ] @
Svaki jezik može da se primeni na mnogo oblasti - lično sam znao programera koji je u COBOLu pisao igrice.

Ono za šta se Python najčešće koristi je kao zamena za Perl. Perl je originalno napisan kao alat za administratore za obradu log fajlova i automatizaciju. Neka vrsta shell/awk baterije na steroidima. Ispostavilo se da je zgodan i za Web. Problem sa Perlom je što je to odvratan jezik, čak ni onaj ko je pisao Perl rutinu, posle tri mesece nema pojma šta i kako rutina radi.

Python je "lepak" između shell skriptova i C programa (kao prva namena). Daleko je efikasniji kao alatka za rad sa stringovima nego čist shell skript a mnogo jednostavniji nego C. Ispalo je da je i jako dobar za Web aplikacije. Onda su mu dodali toliko dobrih biblioteka da sada sve više služi kao jezik izbora za naučne aplikacije. Umesto da služi da poveže delove aplikacija pisanih u C-u, sada astronomi, fizičari itd. pišu aplikaciju u Pythonu umesto da koriste C i MatLab.
[ plus_minus @ 20.08.2017. 13:58 ] @
Za dete možda nije loš Pike. Jako pristojan jezik. Razumljiv, čitljiv, jasan. Upotrebljiv.
I ima ih dosta takvih, al' nekako mi od high-level jezika, Pike onako dođe baš, baš..

Pike Programming Language

Naravno, pošto sam primarno PHP orjentisan, uvek bih se složio pozitivno da dete krene i odatle, jer i PHP je lagan.
Npr.

Code (php):


// Split string (file) by new line
$array = explode (PHP_EOL, $string);

// Join list (array) back to string (eg: file)
$string = implode (PHP_EOL, $array);