Programmering i LK20

Kunnskapsløftet og Programmering
Da LK 20 ble innført fikk programmering en større plass enn tidligere. Flere fag inneholder kompetansemål knyttet til programmering, men opplæringen i programmering er lagt til matematikkfaget. Dette er nytt for mange og gjør at både lærere, lærebokforfattere og fagmiljøene må sette seg inn i et nytt fagfelt. I matematikkfaget er programmering nevnt spesifikt fra 5. trinn. Men, også yngre elever skal forberedes for tenkningen som ligger til grunn for programmering, gjennom både analoge og digitale aktiviteter. Etter 2. trinn skal elevene for eksempel kunne «lage og følgje reglar og trinnvise instruksjonar i leik og spel».

Elevene skal programmere i flere fag, men matematikkfaget har en spesiell rolle. I flere kompetansemål som omhandler programmering i matematikk, er det spesifikke programmeringsbegrep som elevene må lære. Elevene skal både lære programmering og bruke programmene som verktøy for å utforske matematiske problemstillinger.

I programmering er algoritmisk tenkning et vesentlig aspekt. Utdanningsdirektoratet sier at algoritmisk tenkning innebærer å bryte ned komplekse problem til mindre, mer håndterlige delproblemer som lar seg løse. Videre sier de at:

Algoritmisk tenkning er en problemløsningsmetode. Algoritmisk tenkning innebærer å tilnærme seg problemer på en systematisk måte, både når vi formulerer hva det er vi ønsker å løse og når vi foreslår mulige løsninger. Litt forenklet kan. vi si at det er "å tenke som en informatiker" når vi skal løse problemer eller oppgaver.

Algoritmisk tenkning er også nevnt i kjerneelementet "Utforsking og problemløysing" for matematikkfaget:

Algoritmisk tenkning er viktig i prosessen med å utvikle strategiar og framgangsmåtar for å løyse problem og inneber å bryte ned eit problem i delproblem som kan løysast systematisk. Vidare inneber det å vurdere om delproblema best kan løysast med eller utan digitale verktøy. Problemløysing handlar òg om å analysere og forme om kjende og ukjende problem, løyse dei og vurdere om løysingane er gyldige.

Å programmere innebærer blant annet å designe og planlegge, skrive, teste, feilsøke og optimalisere kildekoden til et dataprogram. Dette kan være en tidkrevende prosess som krever nøyaktighet og utholdenhet. Et dataprogram gir objektivt direkte og konkrete tilbakemeldinger på arbeidet, noe som kan oppleves som givende, skape aha-opplevelser og gi stor mestringsfølelse.

Gjennom programmering i matematikkfaget vil elevene bruke og utforske matematiske begrep, og beskrive dem ved hjelp av programmeringsverktøyet. I prosessen med algoritmisk tenking kreves logikk, abstraksjon og mønstergjenkjenning. Elevene må forenkle og dele opp større problemer, og jobbe systematisk. Alt dette kjenner vi igjen fra matematikkfaget.