Hvorfor algoritmisk tenkning i skolen?
I Overordnet del av LK20 heter det at et av målene for undervisningen i skolen er at elevene skal utvikle vitenskapelig og kritisk tenkning. Elevene skal også utvikle kompetanse, som defineres av UDIR som «å kunne tilegne seg og anvende kunnskaper og ferdigheter til å mestre utfordringer og løse oppgaver i kjente og ukjente sammenhenger og situasjoner. Kompetanse innebærer forståelse og evne til refleksjon og kritisk tenkning.» Algoritmisk tenkning er et eksempel på en vitenskapelig og kritisk tenkemåte som er nyttig å bruke når en oppgave eller et problem skal løses.
Gjennom å undervise og bruke algoritmisk tenkning i skolen kan vi bidra til at elevene tør å være nysgjerrige og å stille spørsmål, og tør å undersøke og fikle for å løse problemer. Vi kan skape et klassemiljø der det er greit å gjøre feil, der man kan oppdage feilene og arbeide systematisk for å rette dem. Ikke minst er å utvikle utholdenhet og evne til å samarbeide og dele viktig for å utvikle algoritmisk tenkemåte. Denne måten å arbeide på utvikler elevenes kompetanse og deres evne til vitenskapelig og kritisk tenkning.
Figuren er hentet fra: https://www.udir.no/kvalitet-og-kompetanse/digitalisering/algoritmisk-tenkning/
Algoritmisk tenkning er en problemløsningsmetode, og ofte tenker vi på algoritmer som nært knyttet til måten en datamaskin styres på. Likevel er det ikke alltid nødvendig at en datamaskin er involvert når en benytter algoritmisk tenkemåte: En algoritmisk tenker er en person som systematiserer oppgaven ved bruk av en bestemt, trinnvis fremgangsmåte.
Utdanningsdirektoratet sier at algoritmisk tenkning innebærer å bryte ned komplekse problem til mindre, mer håndterlige delproblemer som kan la seg løse. Delproblemene kan løses ved å organisere og analysere informasjon på en logisk måte, og videre lage fremgangsmåter for å komme frem til en ønsket løsning.
Det å gjøre feil underveis er en meget viktig del av prosessen med å lage dataprogrammer og kode, og like viktig for eleven i sitt arbeid med å utvikle sin kompetanse. Eleven trenger strategier for å oppdage og rette feil for å utvikle seg videre, øve opp sin kognitive kondis for å ikke gi opp.
Nøkkelelement | Beskrivelse |
---|---|
Dekomposisjon | Bryte ned komplekse problemstillinger til mindre del-problemer som er enklere å løse. Vurdere hvilke delproblemer som kan/bør løses med eller uten datamaskiner. |
Logikk | Organisere og analysere data på en logisk måte. |
Mønstre | Se etter mønstre. Gjenkjenne likheter og sammenhenger. Utnytte elementer fra andre liknende løsninger. |
Abstraksjon | Avgrense og skille ut hva som er viktig for å løse et problem og hva som er irrelevant. Representere data ved hjelp av symboler, generalisere og lage modeller. |
Algoritmer | Lage en strukturert plan eller løsning ved hjelp av presise steg-for-steg prosedyrer. Kan gjerne først skrives som flytskjema eller pseudokode og senere som dataprogrammer. |
Evaluering | Kontrollere om løsningen løser alt den skal og vurdere hvordan den kan forbedres. |
Når vi bruker algoritmisk tenking er vi innom flere eller alle nøkkelelementene.
Arbeidsmåte | Beskrivelse |
---|---|
Fikle («tinkering») | Utforske og eksperimentere; gjøre endringer og se hva som skjer |
Skape | Planlegge, designe og lage løsninger og produkter |
Feilsøke | Oppdage og rette feil |
Utholdenhet | Fortsette og prøve på nytt (kognitiv kondis) |
Samarbeid | Arbeide sammen for å sikre best mulig resultat |
En algoritmisk tenker vil kunne ta i oppgaven eller problemet og analysere det. Tenkeren har jobbet så mye med konkrete fremgangsmåter, vært med på å lage regler og steg-for-steg oppskrifter på hvordan å sette i gang med å løse oppgaven, at tenkeren starter med å følge oppskriften og sjekke ut etter hvert som han jobber. Tenkeren er vant til å fikle. Den algoritmiske tenkeren vet at det er viktig å bryte ned problemer i mindre, mer håndterbare deler og planlegge arbeidet sitt med blant annet å lage konkrete og oppnåelige mål, fordi vi har jobbet med struktur og fremgangsmåter i klasserommet.
En som er vant til å tenke algoritmisk, har utviklet samarbeidsevnene sine, og evnen til å holde ut og ikke gi opp. Denne tenkeren vil alltid lete etter mønstre, etter likheter med det tenkeren allerede kan, vet eller har sett før, og tenkeren vil prøve å luke vekk unyttig informasjon som forstyrrer. Hva er det saken egentlig handler om? I tillegg vil en algoritmisk tenker vurdere sitt eget og andres arbeid etter bestemte kriterier, for å finne ut av om resultatet av arbeidet er svaret på oppgaven eller problemet.