Citater til eftertanke.

"A computer is like a violin. You can imagine a novice trying first a phonograph and then a violin. The latter, he says, sounds terrible. That is the argument we have heard from our humanists and most of our computer scientists. Computer programs are good, they say, for particular purposes, but they aren't flexible. Neither is a violin, or a typewriter, until you learn how to use it."

-- Marvin Minsky, (Why Programming Is a Good Medium for Expressing Poorly-Understood and Sloppily-Formulated Ideas)

"[...] men de kommunale musikskolers rolle som planteskoler for både musikere og publikum kan ikke overvurderes."

-- Henrik Karlsson, Dansk Musik Tidsskrift

"Det er min ambition, at vi danskere skal være blandt de allerbedst uddannede i verden. Og at Danmark i løbet af de næste ti år udvikler sig til ét af verdens absolut førende højteknologiske samfund."

-- Statsministerens Nytårstale 2004

Hvorfor underviser vi så ikke talentfulde børn i programmering i kommunalt regi ?

phk

Kommentarer (20)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Martin Juhl Jørgensen

Jeg har faktisk haft samme tanke i lang tid, i folkeskolerne begynder børnene at få undervisning i at betjene en datamat.

Nu er jeg selv årgang '85 og da min klasse i folkeskolen skulle have undervisning i PC'ens vidunderlige verden i form af tekstbehandling osv. (mener det var hele office pakken) så var 80% af klassen langt længere end hvad læreren havde regnet med.

Vi havde også et minimalt hjemmeside kursus, i FrontPage, men det var også det nærmeste vi kom programmering.

De fleste børn synes det er ret sejt når de først har set hvad man kan lave med noget simpelt kode, f.eks. i form af Java der kan vise de hvordan ting virker.

Derfor undre det mig når jeg personligt først fik tilbuddet om at lære programmering på HTX, jeg ville i hvert fald have taget et programmerings fag i folkeskolen hvis jeg havde muligheden.

  • Martin JJ
Karsten Nyblad

Nu er folkeskolelærere jo ikke samfundets højstbetalte. Hvor skaffer vi lærere med kvalifikationerne til at yde en inspirerende undervisning, og som vil gøre det til en løn, det offentlige vil betale. Eksempelvis har gymnasierne svært ved at skaffe matematik og fysiklærere, for de kan typisk få mere andre steder, og det offentlige er ikke synderligt indstillet på at betale mere til en gruppe af lærere, der er mangel på, end til de grupper af lærere, man kan fodre svin med.

Poul-Henning Kamp Blogger

Karsten,

Musikundervisning foregår netop ikke i folkeskoleregi fordi den gennemsnitlige musiklærer ikke er musiker men netop lærer.

Derfor har vi alle de kommunale musikskoler hvor musikere, med eller uden papir, underviser af hjertens lyst og for en ussel hyre.

Kunne man ikke på tilsvarende vis oprette kommunale edb-skoler, hvor folk der kunne programmere kunne undervise i programmering for elever der har interessen ?

Og jeg mener parallelen til violinen helt bastant: start med maskinkode og fyld så højniveau sprog og operativsystemer på efterfølgende.

Poul-Henning

Karsten Nyblad

Det er jeg helt med på, men det ændrer ikke rigtigt ved, at enten skal man have folk til at undervise til en løn, der langt under, hvad de kan få andre steder, eller også skal man finde nogle sponsorer, der vil betale for det, eller også bliver undervisningen af tvivlsom kvalitet, en kvalitet som måske kan gøre mere mere skade end gavn.

Musik branchen er jo netop karakteriseret ved et meget stor antal folk, der gerne vil arbejde indefor den, men som ikke kan slå igennem, og som derfor er villige til at arbejde for en ikke særligt høj løn.

Jeg kunne lige forestille mig sådanne programmeringsskoler "uddanne" unge, så de tror, de er fremrangende programmører, mens den eneste kode de kan koge sammen, er spaghetti. Den slags unoder kan være meget sværre at pille ud af de unge bag efter.

Poul-Henning Kamp Blogger

Altså Karsten,

Nu bliver du sgu' lige nødt til at kigge ud af vinduet lidt.

Det kan da godt være at nogle 12 årige knægte tror at de er verdensmestre når de har fået "Hello World!" på skærmen, men hvad så ?

De er sgu' heller ikke til at skyde igennem hvis det er "Lille peter ederkop" de har mestret.

Jeg nægter simpelthen at acceptere din mavesure indstilning om at det hverken kan lade sig gøre og at det ville være direkte skadeligt at prøve.

Jeg er faktisk sikker på at der er ret mange habile programmører der gerne ville ofre en time om ugen på at lære en håndfuld unger hvad computere virkelig handler om.

Er vi måske ikke stolte af vores håndværk ? Ville det ikke være dejligt at mødes med nogle friske unger med en masse enthusiasme og gå på mod ?

Og tænk hvis det på ti års sigt betød at der var nogle unge mennesker der bekyndte at brokke sig over det makværk forbrugerne spises af med nu om dage, fordi de har lært at det ikke behøver at være så elendigt ?

Kom så Karsten... Så kedelig kan du sgu' da ikke være...

Poul-Henning

Martin Juhl Jørgensen

Karsten,
Jeg ville mene at de fritids-skoler vil virke som en appetitvækker for børnene, og hvis de så virkelig har en interesse i det kan de jo altid videreuddanne sig. Ingen forventer at man kan lave gourmet mad fordi man har været på madlavnings kursus for begyndere.

Poul-Henning,
Jeg kan godt se at de ville være smart at lære dem op i maskinkode fra starten af, men jeg tror måske også at det vil få en del til at hoppe fra hvis de ikke umiddelbart kan se at man kan lave noget "sjovt", nemt.

Misforstå mig ikke det er en uendelig god følelse man får første gang man ser "Hello World!" stående på skærmen, men man vil hurtigt lave meget mere. Især børn kan jeg forestille har en meget stor tendens til miste interessen hvis der ikke sker meget.

Man kunne godt lade dem prøve at ændre lidt i kildekoden til en modifikation, eller til et OpenSource spil, det tror jeg vil falde i god jord.

Poul-Henning Kamp Blogger

Grunden til at jeg ville begynde med maskinkode er at jeg tror alt det andet distraherer til at begynde med.

Jeg ville starte med en eller anden microprocessor med et hex-keyboard og et par syv-segmenter, eller endnu bedre med vippekontakter og lysdioder som f.eks verdens første RISC: Data Generals Nova. (Herhjemme kendt som RC3600 og RC7000)

Ved at krybe helt tæt på hardwaren på den måde tror jeg man kunne gøre dem begribeligt at der er ingen magi, kun håndværk.

Hvis du istedet starter med at skrive i et højniveausprog, så kalder du en eller anden "DrawLine(x,y,z,w)" funktion og så sker der på magisk vis det at en line dukker op på skærmen.

Hvis man virkelig skal lære dem om computere, så skal man starte fra bunden: "Her er et program på 4 instruktioner der regner en 7 tabel ud." og så single stepper vi igennem det på tavlen og derefter i virkeligheden...

Jeg har selv lavet den lille øvelse med mine børn i Dansk Datahistorisk Forening (www.datamuseum.dk)'s samling og derfor ved jeg at det kan lade sig gøre.

Det største problem er at der ikke findes egnet hardware til den slags undervisning...

Poul-Henning

Karsten Nyblad

Hvad med et starter kit til en microcontroller eller en signalprocessor?

Nå, jeg tror nu, jeg ville starte med at undervise dem på et meget højere niveau. Sådan noget som programmering i ML eller at andet functionsprogrammeringssprog. Man kunne også forsøge sig med Java, men det sprog er ret så stort, så det bliver svært at nå at lære eleverne.

Karsten Nyblad

Rigitgt, men jeg frygter, at Poul-Hennings kursus i stedet kan give de unge en sådan smag for junkfood, at de aldrig vil lære at sætte pris på de finere madlavning.

Man lærer som bekendt at programmere ved at skrive programmer i et programmeringssprog. Etprogrammeringssprog har et udvalg af features til at skrive programmer. Når man senere skal skrive programmer, er man tilbøjelig til at kigge efter de samme features i andre programmeringssprog, og hovedsageligt benytte sig af de features, der også var i det første sprog, man lærte. Det tager tid at lære, at programmere objectorienteret, hvis man ikke har gjort det fra starten. Det er svært at lære, at strukturere sin kode ordentligt, hvis man ikke har lært det fra starten.

Eller for at gentage mig selv: Har man først lært at sætte pris på junkfood, kan det være svært at lære at sætte pris på gourmet mad og frugt og grønsager.

Poul-Henning Kamp Blogger

COMAL-80 var et fantastisk begyndersprog.

Desværre forlyder det at dem der har rettighederne til MS-DOS versionen hverken er interesseret i at lave nye versioner eller i at frigive til Open Source brug.

Der er en hollænder der er igang med en OpenComal men det er vist et langtisprojekt.

Poul-Henning

PS: At bruge java eller C++ som begyndersprog er en pædagogisk fadæse af rang, den slags folk fatter aldrig hvordan en computer virkelig fungerer.

Karsten Nyblad

Når jeg læser indlægne, slå det mig, at der synes at mangle et IDE, der henvender sig til begyndere, der først og fremmest skal have sig en appetitvækker på programmering. Hvor skal begynderne gå hen? Visual Studio koster en halv bondegård. Eclipse henvender sig til de professionelle, og sådan kunne man blive ved.

Er der behov for at vi genopfinder Turbo Pascal, Comal, simple Basic fortolkere eller lignende, så der er et sted for nørder i alle aldre at begynde?

En af de ting, der har overrasket mig ved computerens indmarch i de private hjem, er at der ikke er opstået et underlag af folk, der bruger computeren til hobbyprogrammering. Jeg havde regnet med, at der ville komme en generation af unge, der havde opdaget, hvor sjovt det kan være at programmere, og som derfor strømmede til datamatiker og cand et eller andet uddannelserne. I stedet bruger folk deres computer til at spille på. Det burde bare være muligt at overbevise mange om det mere perspektivrige i at programmere frem for at spille.

Jeg selv fik mine første erfaringer på primitive bordcomputere, lommeregnere og gymnasiets adgang til et computercenters APL.

Poul Pedersen

Det er da også muligt at lære mange at interessere sig for det ædle håndværk der beskæftiger sig med computerens inderste dele.
Men det er ikke ved at installere Visual Studio 77++ og så lære dem at modificere en hello world.
Det er ikke vejen frem at lære folk op i IDE'er som jo er bygget med produktivitet for øje som mere eller mindre det eneste.

Derfor er jeg helt på linie med phk i at vi skal helt ned på et niveau hvor det ikke er "black magic" der får tingene frem på skærmen.

Ja, jeg er selv datamatiker som nød at fuske med nogle Z80-boards sammen og få nogle lamper til at indikere det forudsagte resultat.
Men hele folkeskolen og gymnasiet blev reelt spildt på at skrive i regneark og kode "ekspertsystemer", uden at få fingrene ned i noget der ligner bits.

Bevares, man blev da lidt nørdet, men hvad kunne det være blevet til hvis man havde startet fra starten af? Selvfølgelig med fare for at lære noget af underlødig kvalitet og uden bekendtgørelser.

Jesper B. Rosenkilde

Istedet for at bruge en FPGA og lave dimmeren i hardware, hvorfor så ikke lave en emulator? Eller brug et at de mange "programmeringsspil" som Core War. Det ville give muligheden for at kode en simpel arkitektur, og se hvad der sker inden i den, uden at skulle gribe til andet end en almindelig PC.

Jeg har i efterhånden lang tid gået og leget med tanken om at lave en DASK-emulator, netop for at give folk mulighed for at kode til en "sær" men simpel arkitektur.

Mvh
Jesper

Karsten Nyblad

Hvis det absolut skal være noget, hvor eleverne skal have fingerne ned i hardwaren, tror jeg det ville være en bedre ide, at købe nogle eveluation kits til en microcontroller. Det er singleboard computere, der egentlig er tænkt til at ingeniører kan lege med en microcontroller, før de beslutter om den kan bruges i deres projekt. DTU har f.eks. Motorola 68010 boards til maskinnær programmering.

Men ellers kan man jo søge på internettet. Et sprog som Logo er en mulighed. Endelig skal man ikke glemme Legos (altså legetøjsfirmaets) mindset serie.

Poul-Henning Kamp Blogger

Jesper: En DASK simulator er højt på vores ønskeliste i Dansk Datahistorisk forening, men problemet er at vi vist ikke har noget software at køre på den. Eller rettere, vi har vist nok software, men ikke de biblioteker den skal bruge. Hvis du er interesseret, så kig forbi torsdag aften i Ballerup og lad os snakke om det. (DASK havde forresten et grusomt instruktionssæt, vi har en manual online et eller andet sted).

Karsten: Det er rigtigt at microcontroller kit kunne være en mulighed, men dels synes jeg deres instruktionssæt er elendige og komplexe og dels tror jeg pædagogikken er bedre hvis man ikke skal have en PC involveret overhovedet, men kan taste programmet ind direkte på hardwaren.

Jeg tror virkelig en PC er en enorm distraktion fordi ungerne ved alle de ting man kan med en PC.

Men hvis man kan vise dem en computer uden PCen involveret hvor "den magiske kasse" ikke blander sig, så tror jeg det bliver meget mere tydeligt.

Når man så er kommet lidt længere kan man koble PC'en på som seriel terminal osv.

DG's NOVA instruktionsæt er det mest indlæringsvenlige jeg kender (og en stor del af årsagen til at NOVA blev sådan en success)

http://users.rcn.com/crfriend/museum/doco/DG/Nova/

Poul-Henning

Nicolai Buch-Andersen

Jeg tror at det er en stor pædagogisk fejltagelse at insisterer på, at elever skal starte programmeringsundervisningen med et maskin-nært sprog. En sådan strategi vil uden tvivl virke for en udvalgt skare af allerede interesserede "nørder" - men hvis målet er at indvie et bredere udsnit af ungdommen i håndværkets lyksaligheder, så er det den forkerte strategi at benytte. Det vil blot skræmme folk væk.

Når Per på tolv år starter på musikundervisning i en af de kommunale institutioner, så forlanger læreren jo heller ikke at Per skal bygge sit eget klaver fra grunden før han får lov at prøve kræfter med Lille Peter Edderkop. Ja, det er vel ikke en gang sikkert at han skal lære noder før han spiller sin første melodi.

Der er ingen tvivl om at programmeringsundervisning uden en PC vil lære eleverne om hvordan en computer virkelig virker. Men før en elev kan lære noget som helst, så må interessen være der. Og den fanges bedst på anden vis. Baggrundsviden om computerens indre kan, og bør, komme senere, for dem der er særligt nysgerrige.

Endelig kan man spørge sig selv om det virkelig er så vigtigt, at alle elever får denne grundige forståelse af "mekanikken" i elektronikken. For at blive i musik-metaforen, så er det vel heller ikke alle dygtige musikere, der kender til lydbølgernes matematik, kan lave akustiske beregninger og bygge deres egne instrumenter?

Poul-Henning Kamp Blogger

Nicolai,

Jeg tror du har misforstået noget: Jeg vil ikke have at børnene skal konstruere en computer, jeg vil have at de skal lære at programmere en.

Og jeg vil ikke tvinge alle børn igennem, ligesom med den frivillige musikundervisning vil jeg være tilfreds hvis blot et mindretal vælger at bruge tid på det.

Men idag er der slet ikke noget tilbud overhovedet til unger med lyst og evner og de ender derfor med at sidde og fedte med visual basic, scenebyggere til spil eller andre tomme kalorier.

Poul-Henning

Log ind eller Opret konto for at kommentere