Denne artikkelen kan ha særlig interesse for grunnopplæring ettersom norsk skole får nye læreplaner høsten 2020, og programmering innføres som en tverrfaglig aktivitet forankret i matematikkfaget. Denne artikkelen er spesielt opptatt av overføringsverdien av det å lære programmering. Utvikler elever kognitive ferdigheter som er nyttige i andre fagområder eller andre kontekster?
Et forskningsnotat er en forenklet og forkortet oppsummering av publiserte systematiske kunnskapsoversikter. Forskningsnotatet gjør forskningen mer tilgjengelig og leservennlig.
Analysen viser at programmering hadde en positiv virkning på nære, direkte relaterte ferdigheter, altså datafaglige ferdigheter.
Bakgrunn
Bruk av dataprogrammeringsaktiviteter i klasserommet øker i popularitet og implementeres stadig oftere i undervisningen fra barnehagenivå og gjennom grunnskole og videregående utdanning. Økningen i popularitet begrunnes gjerne med at programmering har en positiv virkning på elevens generelle kognitive evner, bl.a. kreativitet, resonneringsferdigheter og matematiske ferdigheter, fordi dataprogrammering trekker på ferdigheter som dekonstruering, abstrahering, repetisjon og generalisering. Hypotesen er altså at de positive effektene av dataprogrammering er overførbare til andre situasjoner som krever kognitive ferdigheter som ligner de som er i spill når man programmerer. Fordi programmering er en relativt ny undervisningsaktivitet, mangler vi ennå kunnskaper om hvordan ferdighetene barn og unge utvikler gjennom programmeringsaktiviteter påvirker deres utvikling i andre fag. Det er dette denne vil gå nærmere inn i.
Formål
Artikkelen, som er en metaanalyse av tidligere forskning, har som formål å etterprøve argumentet om at programmering har en positiv effekt på læring i andre fag, både fag som trekker på kognitive ferdigheter som likner dem som er i spill når man programmerer, og på fag som er mindre direkte knyttet til programmering. Programmeringsferdigheter defineres her som det å kunne skape, modifisere og evaluere koding samt kunnskap om programmeringsbegreper og -prosesser. Ved siden av å undersøke den generelle overføringsverdien av dataprogrammering for andre fag undersøker analysen avvik og konsistens mellom studier.
Forskningsspørsmålene som søkes besvart er:
- Generelle overføringseffekter: Forbedrer læring av dataprogrammering prestasjoner på oppgaver som krever kognitive ferdigheter? I hvilken grad er effektene påvirket (moderert) av selve studien, utvalget av elever som inngår i studien og karakteristikker ved måling?
- Nære overføringseffekter: Forbedrer læring av dataprogrammering prestasjon på testing av programmeringsferdigheter? Hvordan blir resultatene påvirket av studien, utvalget og måling?
- Generelle fjerne overføringseffekter: Forbedrer læring av dataprogrammering prestasjoner på oppgaver som måler kognitive ferdigheter som ikke er direkte knyttet til dataprogrammering? Hvordan blir resultatene påvirket av studien, utvalget og måling?
- Fjerne overføringseffekter av kognitive ferdigheter: Forbedrer læring av dataprogrammering prestasjoner på oppgaver som måler kreativ tenkning, metakognisjon, romforståelse, matematiske ferdigheter, lesing, skriving og skoleprestasjoner i andre fag enn de som retter seg spesifikt mot matematisk kompetanse og lesing? I hvilken grad varierer effekten av de fjerne overføringseffektene mellom de ulike ferdighetsdomenene?
Inkluderte studier
105 studier mellom 1. januar 1965 og 31. januar 2017 ble inkludert i analysen. For å bli inkludert måtte studien være eksperimentell eller kvasieksperimentell, og den måtte rapportere resultater fra både pre- og postprøver eller kun fra postprøver. Minst én kontrollgruppe måtte inngå i studien. Det måtte være mulig å isolere virkningen av programmeringsaktiviteten (betingelse: ikke-programmeringsaktivitet). Studien måtte rapportere nok data til at effektstørrelser kunne beregnes. Kontroll- og måtte befinne seg på samme skoletrinn eller alderstrinn. Studien måtte rapportere om minst ett resultat knyttet til målinger fra kognitive prestasjonsprøver. Deltakerne måtte være hentet fra opplæringsinstitusjoner, det vil si barnehager til og med høyere utdanning. Studier som inkluderte deltakere med kliniske diagnoser, ble ekskludert. Studien måtte være publisert på eller oversatt til engelsk.
Resultat
Som det framgår av forskningsspørsmålene, var forfatterne opptatt av både nær og fjern overføringsverdi av programmeringsaktiviteter. Nær overføringsverdi handler om å kunne overføre ferdigheter for å kunne løse oppgaver som er svært lik det opplæringen innebar. Fjern overføring vil si å kunne overføre ferdigheter til situasjoner som innebærer andre kontekster, men som krever kognitive ferdigheter som kan utvikles gjennom programmering. Analysen viser at programmering hadde en positiv virkning både på nære, direkte relaterte ferdigheter, altså datafaglige ferdigheter. Analysen viser også at programmering hadde en positiv overføringsverdi, altså en positiv effekt på ferdigheter benyttet i andre faglige kontekster enn datafagskonteksten. Artikkelen viser kort oppsummert at:
- Å lære dataprogrammering har positive overførbare effekter på kognitive ferdigheter. Den største effekten var naturlig nok på nære ferdigheter: Undervisning om programmering er effektivt for å lære programmering og algoritmisk tenkning.
- Det var store variasjoner på overførbare effekter på fjerne kognitive ferdigheter: Å lære dataprogrammering hadde ikke en overførbar effekt på lese- og skriveferdigheter. Studien fant at overføringsverdien var liten for generelle skoleprestasjoner, spesielt i natur- og samfunnsfag, men stor for skoleprestasjoner i matematikk. Det kan komme av at fag som natur- og samfunnsfag evalueres ut fra kunnskapsbaserte tester fremfor tester av ferdigheter.
- Når det gjelder fjerne kognitive prestasjoner, fant forfatterne en stor overføringseffekt på metakognisjon, resonnering, romforståelse, kreativ tenking og matematiske ferdigheter. Overføringseffekten på romforståelse kan forklares med forekomsten av geometriske objekter og bevegelse i programmering. Effekten var omtrent lik som effekten ved spilling av dataspill og trening av arbeidsminne, men mindre enn effekten av direkte trening av romforståelse.
Både dataprogrammering og matematikk krever evne til abstrahering av problemer, utvikling av formler og anvendelse av strategier og algoritmer for å løse faglige problemer. Disse høyere kognitive ferdighetene kan forklare den sterke overføringseffekten fra dataprogrammering til matematiske ferdigheter. En annen mulig forklaring kan være at elever med gode matematikkferdigheter i større grad viser interesse for programmering. Likeledes var overføringseffekten på matematikkferdigheter større enn overføringseffekter rapportert i lignende metastudier av effekter av visse aktiviteter (for eksempel sjakkundervisning, teknologibasert undervisning, musikkundervisning og trening av arbeidsminne) på læring og faglige prestasjoner. Funnene tyder dermed på at dataprogrammering kan være en effektiv alternativ tilnærming til utvikling av matematiske ferdigheter.
Implikasjoner
Til tross for at programmering har varierende overføringsverdi til andre fag, viser metaanalysen at undervisning i programmering hadde en positiv virkning både på datafaglige ferdigheter og på matematiske ferdigheter, samt på visse kognitive ferdigheter knyttet til andre fag eller andre kontekster enn den datafaglige. Avvik mellom resultater knyttet til overføringsverdien av programmering kunne ikke fullt ut forklares ved modererende variabler. Ytterligere forskning på hvilke betingelser som resulterer i størst grad av overføringsverdi av programmeringsaktiviteter, etterlyses. Analysen avdekket også metodologiske problemer knyttet til studier av virkningen av undervisning i programmeringsaktiviteter på datafaglige ferdigheter og studier på ringvirkninger av programmeringsaktiviteter på andre ferdigheter. Mer forskning etterlyses også her. Det oppfordres til å designe fremtidige studier av temaet på en måte som adresserer de metodologiske problemene avdekket i metaanalysen.