UČENJE PROGRAMIRANJA V OSNOVNE ŠOLE

Nomine

/ #44 Re: Re: Re: Re: Uporaba računalnikov da, ampak programiranje...?

2013-11-19 07:42

#15: - Re: Re: Re: Uporaba računalnikov da, ampak programiranje...?

"Potem si pa omenil še C. Ja, ko si se ti učil pred 30 leti, je bil C top zadeva. Danes se uporabljajo programski jeziki, ki precej naprednejši od Cja, pa tudi veliko preprostejši. Kari si v Cju naredil z 10 vrsticami, danes narediš z enim ukazom. Izvorno kodo spletne strani v pythonu dobiš z enim ukazom, z dvema ukazoma pa pošlješ mail."

In to je VELIK PROBLEM "programerjev" dandanes in to je tudi razlog zakaj strogo podpiram uvajanje PROGRAMIRANJA v osnovne šole. Tudi kot obvezni predmet... Tako kot matematika.

Vi wannabee računalničarji sploh več ne veste kaj je to programiranje! Prav gene me ko vidim take debate o Javi in C-ju.

To kar si opisal sploh več ni programiranje v prvotnem pomenu besede... To je delo z uporabniško opremo, tako kot delo na wordu, 3Dstudio max, risar, inventor, excel, itn,... Če sploh razumeš... Saj kaj pa delate? Skupaj mečete celotne sklope, ki je NEKDO že SPROGRAMIRAL za vas.

Kaj pa je programiranje? Tole nam je v prvem letniku srednje šole znal zelo dobro razložit profesor. Pa da še sam poskusim. Programiranje je določit razmišljanje oz. logiko v ozadju, da se neka zadeva obnaša, tako kot bi se naj. Ala - Če sem lačen, bom nekaj pojedel; Če ni hrane, bom iskal hrano; če sem hrano najdel, jo pojem; Sem še zmeraj lačen? DA - gremo znova, NE - gremo naprej. (Da ne bo pikolovstva, tukaj vzader še je precej več tega, da nekaj poješ, ampak za primer bo OK)

Višji nivo programiranja pa je pol s takimi elementi priti do bolj in bolj kompleksnih logik. Mogoče naprimer za izračunat module, Integrale, in še marsikaj daleč bolj kompleksnega. (in s tem ne mislim da uporabiš knjičnjico Math.h in uporabiš en ukaz, da ti ta samo rezultate ven vrže)

Za programiranje ni potrebno nekega fancy dodelanega jezika, katerega trenutno mediji ali kdor koli pač, najbolj podpirajo. Je že zadost list papirja in gremo risat.

In to je to kar bi se po mojem mnenju morali otroci začeti učit že v OŠ, sestaviti logiko za reševanje svojih problemov, to je tisto pravo programiranje. Pol pa zadevo izvesti na razne načine (ali v C-ju, ali v TP-ju, ali v JAVA, ali v assemblerju, ali v ladder diagramu, ali z logičnimi vratci, ali... čist vseeno).

Veš kako je izgledal prvi sprogramiran robot? Bil je izdelan že v antični Grčiji, Okrog osi je imel navito špago, špago povezano na utež. Tista špaga je bila navita okrog osi tako da je bila tu in tam ovita okrog zatiča na osi. Ko je začela utež padat, se je "robot" pomikal v eno smer, ko se je špaga odvila okrog zatiča 1x, se je robot začel pomikat v nasprotno smer in tako naprej, dokler ni zmanjkalo vrvice. Za nekogar so mogoče tole sliši banalno in nepomembno, ampak ej, to JE programiranje.

 

Osebno sem se na tak način učil programiranja in sedaj nimam nobenih težav, s čimer koli programiram (pa naj bo TP, c, C++, C#, JAVA, Ladder, blok diagrami, funkcijski bloki, lego blokci, simple,...). Za kaki novi jezik si malo pogledam kaki manual, itn. in se privadim. Seveda knjižnjice tudi uporabljam kjer pač obstajajo. Neumno da jih nebi, če so že na razpolago in mi poenostavijo zadevo, ampak se mi zdi brutalno nesmiselno na tako visokih nivojih učit otroke v OŠ programirat. Kaj pa njih brigajo neke knjižnjice v nekih programskih jezikih, kateri mogoče sploh več nebodo aktualni, ko bodo končali z šolanjem. Bolj pomembno za njih je da znajo nasploh programirat in logično razmišljat. Razmišljat kako priti do neke rešitve nekega problema, kaka je procedura,...

Sicer nisem nikoli bil ravno neki fan od appla, ampak ena stvar pa je, kar se popolnoma strinjam z Jobsom. Če bi vsi znali programirat bi bil svet veliko lepši. (vem da me bo sedaj večina z vseh strani popljuvala zaradi tega zadnjega odstavka, ampak... za to je krivo nerazumevanje ali jemanje iz konteksta le tega odstavka)

 

Lep pozdrav!