Programmering blir mer og mer tatt i bruk i skolesammenheng, spesielt i matematikkfaget. Nettstedet Turte Academy har skrevet noen grunntanker om hvorfor man skal jobbe med nettopp programmering i skolen: Målet er å lære alle barn i verden de grunnleggende prinsippene om programmering på en morsom og lett måte slik at alle har tilgang til det. Grunnleggende programmeringsevner blir mer og mer aktuell, derfor er det viktig å lære og like å programmere. I tillegg gir visuell programmering elevene rask respons, noe som gjør at elevene lettere kan sette seg langsiktige mål. (Turtle Academy, 2011-2015).
Hva er LOGO?
LOGO er et programmeringsspråk som ble dannet på slutten av 1960-tallet av Wallace Feurzeig og Seymour Papert. Programmet var i utgangspunktet ikke beregnet for bruk i skolesammenheng, men har likevel vært et godt hjelpemiddel for elevers innlæring og forståelse spesielt i emnet geometri (Kaput, 1992). Det viktigste elementet i LOGO er det grafiske elementet, skilpadda. Skilpadderoboter ble for så vidt kjent i 1948, men først på slutten av 60-tallet ble det visualisert og kontrollert ved hjelp av tastatur (Gjøvik, 2015).
LOGO går altså ut på at den som programmerer “er” ei skilpadde, og styrer dens bevegelse i en mikroverden. Skilpadden “har med seg” en penn som etterlater spor der den beveger seg. Man kan selv velge om skilpadden skal tegne når den beveger seg, ut fra om pennen er oppe eller nede. Man styrer skilpadden via såkalte kommandoer. Kommandoene er enkle koder bestående av bokstaver og tall, som man skriver i programmeringsfeltet. Nedenfor finner du eksempler på de mest grunnleggende kommandoene som blir brukt i LOGO.
FD - framover BK - bakover LT - venstre RT - høyre PU - penn opp PD - penn ned HT - gjem skilpadda ST - vis skilpadda CS - slett skjermen CT - slett teksten
Et Logo-program kan se slik ut:
FD 70 RT 90 FD 130 RT 90 FD 70 RT 90 FD 130 RT 90
Når eleven kjører det ovenstående programmet går skilpadda 70 enheter framover, snur seg 90 grader til høyre, går 130 enheter framover, osv. Til slutt er skilpadden tilbake i utgangsposisjon, og har nå tegnet et rektangel:
I artikkelen “Technology and Mathematics Education”, skriver James J. Kaput om fordelene og de positive utfallene som resultat ved bruk av LOGO i undervisningssammenheng. Ulike forskere har funnet ut at for elever på 1.-5.trinn, er det dokumentert positiv virkning når det kommer til innlæring av begreper i forbindelse med geometri. I tillegg var det forsket på at elevenes evner til å gjenkjenne og klassifisere ulike geometriske figurer, og kunnskap om vinkler ble bedret av å jobbe med LOGO i skolen. Forskning viste at også eldre elever på ungdomsskoletrinnet hadde fordeler av å bruke LOGO som en del av matematikkundervisningen. Her kunne man se at elevene utviklet sine geometrikunnskaper i positiv retning innenfor Van Hieles nivåer. Også temaene “forhold” og “proporsjonalitet” var to matematiske temaer elevene utviklet bedre forståelse for når de arbeidet med LOGO.
Noe av det vi merket var positivt i forbindelse med dette opplegget, og også generelt med LOGO som program, var at det gir automatisk tilpasset opplæring til alle elevene. Da elevene ble introdusert for nye oppgaver etter som hvor langt de hadde kommet på oppgavearket. Elevene fikk da ulike utfordringer, da oppgavenes vanskelighetsgrad var i stigende rekkefølge.
Det er en tydelig forskjell i undervisningsprogrammer som forteller eleven hva en skal gjøre, og på programmer der det er eleven selv som forteller programmet hva det skal gjøre. I LOGO lærer eleven skilpadda å lage figurer, og gjennom dette lærer eleven viktige matematiske ideer, spesielt innenfor geometri (Gjøvik, 2015). I tillegg får eleven direkte tilbakemelding på det en gjør, rett og slett ved at programmet ikke virker om kommandoene er skrevet feil. Dette kan virke positivt på elevenes selvtillit, da læreren ikke trenger å være den som går rundt i klasserommet og belyser feil. Dette er også en viktig faktor i forbindelse med tidsbruk. Å gjennomføre en programmeringsøkt med LOGO i en klasse med mange elever, trenger ikke å være så utfordrende som man kanskje først ser for seg. Nettopp på grunn av at elevene jobber sammen i par, og at datamaskinen er den som gir de direkte tilbakemelding.
Selv om LOGO er et godt programmeringsspråk der det skjer mye læring innenfor matematikk, la vi merke til noen begrensninger i programmet (FMSLogo) som vi brukte for å programmere i LOGO som la en demper bruken som helhet. Det både vi og elevene så på som begrensninger, var mangel på farger og illustrasjoner, “dra-funksjon” og “angre-funksjon”. Programmet ser gammelt ut og det var tydelig at det ikke var gjort så mye med det med tanke på utforming. Det viste seg at det var litt nyere og finere utformet på MAC enn på PC, men i og med at det var PC elevene våre brukte, reagerte de på det. De syntes det var vanskelig å se for seg at trekanten/pilspissen egentlig skulle være en skilpadde, og programmet kunne gjerne blitt litt mer spennende og givende for elevene om det hadde vært mer farger og illustrasjoner. Det vil antagelig være lurt å se om det finnes nyere programmer.
“Dra-funksjon” var noe vi kunne tenkt oss istedenfor å måtte bruke kommandoene penn opp og penn ned. Elevene ville gjerne lage flere figurer som viste samtidig, men da måtte de bruke tid på å ta pennen opp, rotere og gå framover/bakover for å lage en ny figur. Elevene mente at det ikke kunne være nødvendig å måtte bruke programmeringsegenskaper når de bare ville flytte en figur. Vi kunne godt si oss enige i det i og med at det ikke hadde noe med de matematiske målene vi hadde satt på forhånd før undervisningen.
Det vi så på som den største begrensningen var at det manglet en “angre-funksjon”, og dette skapte mye frustrasjon for elevene. Ofte hadde de brukt mye tid på å lage en figur som nesten var ferdig, og så gjorde de en feil som gjorde at de måtte fjerne hele figuren for å få fikset opp i det. Alt eller ingenting ble tatt vekk. Det gikk ikke an å bare gå et par steg tilbake. Heldigvis gikk det an å fjerne vinduet hvor tegningen var uten å fjerne vinduet der teksten var. Dermed kunne elevene fjerne tegningen, for så å kopiere de riktige kommandoene i tekstfeltet, så ble figuren laget på ny.
Kritikk
LOGO i seg selv kan argumenteres for å passe mer inn i selve valgfaget programmering i stedet for matematikkfaget. Dette fordi det kan virke som den matematiske siden av programmeringen forsvinner i arbeidet med å få inn kommandoene og passe på så man ikke gjør noe feil. Vi stiller oss undrende til om elevene selv faktisk ser matematikken i programmet.
Referanser
Gjøvik, Ø. (2015). Logo - fram fra glemselen! Tangenten, 26(3), 23–28.
Kaput, J. J. (1992). Technology and mathematics education. In D. Grouws (Ed.), Handbook of research on mathematics teaching and learning (pp. 515–556). New York: Macmillan Publishing Company.
Turtle Academy (2011-2015). Hentet 23. februar 2016 fra https://turtleacademy.com//index/en.
Introduksjon til LOGO
MSWLogo
Online LOGO
Get the turtle to the pond
4 Comments
Unknown User (nakim)
Angående dra-funksjon og angre-funksjon så tenker jeg at det er det programmet som er brukt her (FMSLogo) for å programmere i programmeringsspråket LOGO som skaper problemer for elevene. Det ser ut som dette programmet legger opp til å utføre en og en kommando, noe jeg tenker er en mindre god måte å jobbe med programmering. Koden bør skrives som et "dokument", som så kjøres fra start når man skal prøve det ut. Da vil man ikke ha behov for en angre-funksjon og det vil bli tydeligere at det er naturlig å rette feil også lenger oppe i koden. Da blir det kanskje også tydeligere at det man lager er et program som skal kjøre selvstendig fra start, og at det blir unaturlig at brukeren skal dra skilpadden for å flytte den. (Når det er sagt har Scratch denne muligheten.) Kanskje dette er en mulighet til å lære å lage prosedyrer (med TO) for å klarere skille mellom de ulike figurene i koden. Hvis elevene ser for seg at det er en fysisk skilpadderobot som skal kjøre etter instruksjonene i koden så blir det kanskje naturlig at pen up og nye instruksjoner om forflytning må brukes for å flytte skilpadden. Er det noen som har kommentarer til disse tankene og hvordan vi evt. bør endre dette dokumentet?
Unknown User (monicre)
Jeg er helt enig i Rune sine kommentarer. Hvis FMSLogo legger opp til at én og én kommando utføres, så er ikke programmet godt egnet til å arbeide med programmering. Programmering krever struktur, slik at det er enkelt å endre koden som er skrevet, samt at man enkelt kan bytte rekkefølge på ulike prosedyrer man ønsker skal bli utført. Det får elevene ingen innsikt i, hvis programmet bare kan motta kommandoer enkeltvis. Endring av dokumentet her kan vel gjøres så enkelt at man avslutter med å ikke anbefale dette programmet til bruk i skolen, men heller vise til andre programmer som gir en bedre innsikt i hvordan man programmerer med programmeringsspråket Logo.
Unknown User (danikri)
Jeg ser at det finnes litt ulike definisjoner av hva programmering er, men en gjenganger i definisjonene er at programmering innebærer å lage en serie av kommandoer. Når man arbeider med FMSLogo som kun godtar enkeltvise kommandoer, driver man strengt tatt ikke med programmering.
FMSLogo kan i det minste brukes til å lære de ulike kommandoene i LOGO.
Unknown User (erikbhj)
Jeg slenger meg på det Rune og Monica skriver angående bruken av mange korte kommandoer som følger hverandre. Dette vil jeg anta er en arbeidsmetode som bærer preg av liten erfaring med programmering. Etterhvert som elevene får erfaring med de første kommandoene, kan det være greit å vise elevene hvordan kodene kan bli kortere og mer effektive ved bruk av for eksempel kommandoen repeat. Konstruksjon av kvadrat kan skrives som "repeat 4 [fd 50 rt 90]". Jeg mener det kan være interessant å diskutere med elever på småtrinnet hvorfor den korte koden gir samme resultat som en lengre kode med gjentakende bruk av "fd" og "rt" kommandoene.