Innføring i programmering

Hvordan introduserer man elever for programmering? Her fins det selvsagt mange muligheter, og flere fornuftige svar.

Det er naturlig å anta at de fleste elever på lavere trinn i grunnskolen, ikke har programmert mye før skolen introduserer dem for det. Og selv om læreplanen i matematikk ikke formulerer eksplisitte kompetansemål i programmering før etter femte trinn, er det ingenting i veien for å introdusere ideene tidligere. Programmering kan sees på som en arbeidsmetode, ikke bare som et emne i matematikkfaget. I det følgende skisserer vi en tenkt plan for å introdusere elever i grunnskolen for programmering, og ulike oppgaver de kan gis underveis.

Oppgaver uten maskin

I begynnelsen kan det være fornuftig å la elevene arbeide med å programmere seg selv eller hverandre, snarere enn å programmere maskiner eller roboter. Da kan de utføre kommandoer, gjerne med fysisk aktivitet og bevegelse underveis. Det kan også gjerne ta utgangspunkt i aktiviteter eller leker elevene kjenner, slik som Kongen befaler.

Under følger noen eksempler på programmeringsoppgaver elever kan utføre uten maskin.

Å bevege seg til et bestemt sted

Hvordan må en elev bevege seg for å komme fra pulten sin til garderobeplassen sin? Eller fra klasseromsdøra til skolens gymsal? Dette kan skrives som et slags program.

Eksempel: Gå 10 skritt frem - snu 90 grader mot høyre - gå fire skritt frem - snu 90 grader mot venstre - gå 23 skritt frem osv.

Dette kan enkelt tilpasses til ulike aldersgrupper, og gis med ulik vanskelighetsgrad.

Dans og bevegelser til musikk

De fleste klasser kjenner til noen rim, regler og sanger som inneholder ulike bevegelser. Disse bevegelsene kan enkelt skrives som et program. Et enkelt og kjent eksempel er introen til We will rock you av Queen, som fint kan skrives som et slags program:

Tramp - tramp - klapp - stå stille - tramp - tramp - klapp - stå stille

Repeterer du dette programmet en rekke ganger, kan du lage rytme til hele sangen.

Arbeide med rutenett på papir eller gulv

Man kan operere med store rutenett på gulvet som elevene kan bevege seg i, eller bare ha dem på papir. Elevene skal da programmere en vei gjennom rutenett, hvor de kanhende må unngå bestemte ruter som inneholder hindringer, og hvor de skal nå frem til et bestemt sted.

Oppgaver som utføres i ulike programmer på maskin

Det fins ulike nettsider og programmer som gjør det visuelt og forståelig for elevene å programmere, og som tilbyr en mengde forskjellige muligheter. Disse nettstedene har ofte en del ferdiglagde oppgaver, som følger en progresjon. De er gjerne blokkbaserte, slik at man pusler sammen en kode. Ofte tar de også utgangspunkt i figurer som er kjente for barna, slike som Lego eller Angrybird.

Under viser vi ulike nettsider, programmer og fysiske roboter som kan brukes til programmering i skolen.

Bee-bot / Blue-bot

Bee-Bot og Blue-Bot er roboter som kan programmeres ved hjelp av knapper på toppen av figuren. Dette gir en mer fysisk programmeringsaktivitet enn ved Scratch og andre skjermbaserte programmeringsspråk. Robotene egner seg godt for elever på de laveste trinnene i skolen, og i barnehagen.

Mer info: https://www.bee-bot.us/

Microbit

Microbit er utnytter både skjermbasert programvare (liknende Scratch) og fysiske gjenstander som kobles til maskinen. Man kan for eksempel programmere tekst til å lyse opp på Microbit-skjermen, eller få den til å virke som en kalkulator. Med Microbit har man mulighet til å koble til ekstrautstyr som for eksempel temperaturmåler, dette gir muligheter for mange varierte programmeringsaktiviteter.

Mer info: https://microbit.org/no/code/

Kodeknekkerne (NRK)

NRK har i samarbeid med Prebz og Dennis laget en programmeringspakke for grunnskolen som kalles Kodeknekkerne. Man trenger ingen ekstra programmer for å gjennomføre aktivitetene, da alt er tilgjengelig gjennom nettsiden. Slike aktiviteter kan brukes i det tidlige arbeidet med programmering da det ikke er nødvendig med forkunnskaper om koding. De ulike episodene tar for seg grunnbegreper som hvis/ellers, og/eller, variabler, løkker og funksjoner.

Mer info: https://www.nrk.no/skole/xl/kodeknekkerne-1.13033753

Lær Kidsa Koding

Lær Kidsa Koding er en frivillig bevegelse som arbeider for at barn og unge skal lære å forstå og beherske sin egen rolle i det digitale samfunnet. Nettsiden inneholder kurs og aktiviteter til mange forskjellige programmeringsspråk som for eksempel Scratch, Microbit, Lego Mindstorm og Python. Merk: Lær Kidsa Koding er ikke spesielt rettet mot matematikk.

Mer info: https://kidsakoder.no/

Scratch

Scratch er et blokkbasert programmeringsverktøy laget primært for barn i alderen 8-16 år, men det kan naturligvis brukes av alle. Det er oversatt til en mengde språk, og gir en rekke forskjellige muligheter. Man kan lage helt enkle programmer, eller mer avanserte. Det er skjermbasert, i den forstand at man programmerer en aktivitet som foregår på skjermen, og ikke en fysisk robot. Det fins ulike instruksjons- og informasjonsvideoer om Scratch, både på hjemmesiden deres og på YouTube.

Mer info: https://scratch.mit.edu/

Code.org

Code.org tilbyr utallige kurs og aktiviteter i programmering for barn fra fire år og oppover. Aktivitetene er både med og uten teknologi. Store deler av nettsiden er tilgjengelig på norsk, men noen av videoene har kun engelsk tale og tekst. Oppgavene med teknologi baserer seg på ideer liknende Scratch, med blokkbasert programmering.

Mer info: https://code.org/

Tekstbaserte programmeringsverktøy, slik som Python og Logo, er lite brukt i grunnskolen foreløpig. Dette er programmer som krever noe mer forkunnskaper, og ikke er særlig rettet inn mot elever i grunnskolealder. Derfor går vi ikke videre inn på slike programmeringsverktøy i denne workshopen.