Det finnes en del lærekilder for programmering online og i bokformat. For hvert år som går blir tilbudet bare bedre og bedre. Men det er tre hovedproblemer med å lære programmering for små barn.
- Det aller meste av lærestoffet på engelsk.
- Målgruppen i all hovedsak universitets studenter eller voksne med allerede god innsikt i hvordan en datamaskin fungerer.
- Sist men men ikke minst har vi det faktumet at det aller meste av lærematerialet tar for seg tekst basert programmering.
Alle disse problemene er til stort hinder for barn som akkurat har lært seg eller driver å lese og å skrive, og som i tillegg ikke har lært seg å bruke mus og tastatur på en god måte.
Heldigvis har det de siste årene komme stadig flere muligheter for barn å lære seg programmering. I denne artikkelen skal jeg beskrive mine erfaringer med programmering for barn fra 4 til 9 år.
Salaby kodeskolen
Helt grunnleggende - og på norsk!
Løsningen for leken læring er touch-screen baserte spill eller programmer som på lekent vis lærer barna programmerings ord, uttrykk og konsepter. Gyldendal forlag har laget sin egen web skole platform som heter Salaby som mange norske barneskoler har tilgang til. På Salaby har de noe som heter kodeskolen.
Kodeskolen tar for seg det helt grunnleggende på en artig og leken måte. Her lærer man om hva en funksjon er, nødvendigheten av rekkefølge på funksjoner og motiverer til å lage så en så lange og komplette sekvenser med funksjoner som mulig for å løse oppgavene.
Salaby sin kodeskole er så bra lagt opp at jeg tror faktisk alle som er helt i startgropen av sin programmerings karriere har mye å lære her.
Skjermbilde fra salaby kodeskolen - Gyldendal
Salaby kodeskole er delt inn i 4 trinn bestående av flere korte nivåer. Spillet fungere slik at man skal programmere en robot til å fange bier som har forvillet seg bort. Programmering skjer ved å dra funksjons klosser som gå, hopp og snu inn i riktig rekkefølge. Når man er fornøyd med det man har programmert kan man trykke på start, for å så se roboten utføre programmet man har laget. Man kan gjøre dette i en lang serie som forhåpentligvis tar roboten helt frem til målet, eller dele det opp i flere runder.
Man har normalt maks 4-5 runder på seg til å komme til mål. For hver runde man bruker på å komme til mål rømmer en bie. Målet er da å fange så mange bier man klarer - ved å bruke få runder.
Spillet bruker programmerings ord og begreper som funksjon og program. I tillegg blir man tvunget til å tenke i hvilken rekkefølge funksjoner skal kjøres i. Å få barn til å tenke rekkefølge, og å lære det å bryte ned et problem eller utfordring i mindre deler er smart både for den som er voksen og for barna.
Salabys kodeskole er etter mitt syn en perfekt introduksjon for barn i alle aldere til programmering.
Scratch Jr.
Touch basert video animasjon
Scratch Jr. er en super plattform for barn som er liker tanken på å lage animasjoner. Ved hjelp av enkle ikoner som kan dras inn i ett programmerings vindu kan barna lære seg på et intuitivt vis hvordan man kan lage enkle animasjoner ved hjelp enkel programmering.
Skjermbilde fra Scratch Jr.
Scratch Jr. er en betydelig nedskalert og forenklet versjon av originalen Scratch. Det er lager for å lære programmering til barn som ikke har lært seg å lese enda.
Som med alt nytt trenger barna litt hjelp for å komme seg i gang med Scratch Jr, men etter litt veiledning kan de kose seg med å lage egne figurer og bakgrunner, bruke kamera og mikrofon til å spille inn lyd og video som kan brukes til å lage kreative animasjoner.
Takket være i intuitivt brukergrensesnitt kan barna på egenhånd programmere artige videoer de stolt kan vise frem til venner, foreldre og besteforeldre.
Scratch
Blokk programmering for nybegynnere
Scratch er en av de største og aller mest brukte undervisningsverktøyene for å lære barn å programmere. I likhet med Scratch jr. er også dette blokk programmering, men her har man veldig mange flere muligheter for å programmere mer kompliserte program.
Med Scratch kan man lage ganske kompliserte animasjoner, enkle spill. Man kan til og med programmere LEGO roboter og egenutviklede elektronikk prosjekter om Scratch kjører på en Raspberry Pi.
Skjermbilde fra Scratch
Siden man kan gjøre såpass mye er Scratch en perfekt måte å gjøre barna interessert i og se nytten av matematikk fra en tidlig alder.
Her tror jeg at selve essensen i Scratch ligger. Med å lære seg å programmere forvandler man matematikk fra å være noe kjedelig som man må igjennom på skolen til noe interessant som kan brukes til å gjøre kule ting og løse problemer.
Alt i fra desimaltall, positive og negative tall, koordinat system og vinkler er konsepter som man tvinges til å få ett forhold til ganske tidlig i Scratch. Gjort på riktig måte er Scratch noe som kan gi enorm mestringsfølelse for barna.
Jeg introduserte mine barn for Scratch når de hadde lært alfabetet og var i stand til å lese korte setninger. Siden det er så få funksjonsblokker, og de er såpass godt organisert lærer barna raskt hvilken type funksjonsblokker som finnes og hvor de ligger i menyene.
Kodeklubben kidsa koder har en serie med fantastiske oppgaver som lærer barna å programmere med scratch. Jeg kan ikke anbefale disse oppgavene nok. Her er det et godt stykke pedagogisk arbeid som er lagt ned.
Noen av konseptene kan det være lurt å ta litt om sammen med barna mellom øktene, utenfor datamaskinen. Spesielt tema rundt negative og positive tall, og koordinat system kan vær tungt i starten. Men barna får mye øving i å følge oppgavene.
MakeCode
Blokk programmering av micro:bit
Med et bruker grensesnitt som er veldig likt Scratch kan barna lære å programmere elektronikk prosjekter på micro:bit i MakeCode. Dette kan være et spennende alternativ til Scratch siden man kan lage prosjekter som de kan ta med seg bort fra datamaskinen. Her kan barna lage fra veldig enkle til veldig kompliserte prosjekter på micro:bit plattformen.
Jeg mener at MakeCode og micro:bit er en perfekt introduksjon til programmering av elektronikk prosjekter siden man i starten kan slippe å lære om lodding, ledninger og annet som kan være en bremsekloss for læringen.
Skjermbilde fra MakeCode
Det finnes utvidelser til Scratch som gjør at man kan programmere micro:bit der også, men fordelen med MakeCode er at man kun ser kodeblokker som hører til micro:bit. Dette gjør det lettere å finne frem til rett kodeblokk. Med andre ord mindre tid på leting og mere tid til læring.
I MakeCode kan man også finne mange artige lærings prosjekter man kan la seg inspirere av.
Kodeklubben kidsa koder har en serie med micro:bit leksjoner på sine websider, men disse oppgavene er nok best egnet for barn og ungdom på ungdomsskole alder eller høyere siden de forutsetter relativt høy matematikk forståelse sammenlignet med Scratch oppgavene.
Lær micro:bit på haxor.no
I samarbeid med Kodeklubben Molde jobber jeg med å lage leksjoner i micro:bit som er rettet mot barn uten noen programmering og elektronikk erfaring. På denne samlesiden vil det dukke opp flere øvelser etter hvert som de blir klar.
Code Studio
Lær blokk programmering gjennom spill!
Code studio er en spill plattform hvor man lærer å lage programmere ved å løse oppgaver i spill. På en leken måte lærer og øver på hvordan man bygger programmer ved hjelp av funksjons blokker i et brukergrensesnitt som ligner mye på Scratch og MakeKode.
Alt i Code Studio er oversatt til både Bokmål og Nynorsk unntatt videoene som forklarer nye konsepter i video format. Videoene er tekstet, som hvis barnet klarer å lese teksten selv er det veldig lite bistand fra voksne som trengs for at barnet skal få fult utbytte av Code Studio.
Dette kan være en flott introduksjon til blokk programmering, eller det kan være en fin plattform hvor barnet kan øver på problemløsning ved hjelp av programmering etter å ha brukt litt tid på å følge instruksjoner i Scratch eller MakeKode.
Skjermbilde fra Code Studio
Siden det er forskjellig hvordan både barn og vokse lærer og husker nye kunnskap kan det være lurt å bruke Code Studio som en slags annen vinkling på blokk programmering etter å ha programmert litt i MakeKode eller Scratch.
Code studio er lagt opp som et spill som på en underholdende måte å terper på grunnleggende konsepter som raskt gjør at barnet kan kjenne på mestring og glede av å løse små gåter.
Etter hvert som man kommer videre i spillet blir man introdusert for gradvis mer kompliserte konsepter.