Programmering 2.0

Så här i slutet av vårterminen avslutar jag  kursen vid  Malmö Universitet ’Programmering med matematikdidaktisk inriktning’. Det är nu dags att knyta ihop säcken och reflektera över hur jag kan använda utbildningen för att fördjupa kunskaperna i programmering tillsammans med eleverna. Jag har tidigare skrivit om det Datalogiska tänkandet (Programmering 1.0) som flera forskare, Linda Mannila, Anna Åkerfeldt mfl lyfter fram som är en av nycklarna till att lyckas med programmering i skolan. Men hur genomför vi en bra programmeringsundervisning? Ja, det finns faktiskt några didaktiska knep som du kan använda dig av.

Först och främst behöver vi börja med att förstå programmering, vi behöver börja från grunden. Linda Mannila skriver i sin bok Att undervisa i programmering i skolan att eleverna måste börja med den analoga programmeringen, alltså programmera utan dator, för att förstå hur en dator ’tänker’. Detta görs enklast genom att skriva instruktioner på papper. Ett exempel kan vara att Koka te. Hur ser programmering ut för detta?

  1. Koka vatten
  2. Sätt en tepåse i en kopp
  3. Häll vatten i koppen

Men fungerar detta verkligen, får vi något te? Nej, troligtvis inte då det reda i rad ett uppstår ett problem, instruktionen är inte tillräckligt tydlig. Hur kokar man vatten? Här behöver instruktionerna förtydligas med ytterligare rader. Sedan uppstår nästa problem i rad två, var kommer tepåsen och koppen ifrån? Och rad tre är inte heller fullständig, hur häller man vatten i en kopp och hur mycket vatten? Här finns en rad olika analoga programmeringar som kan genomföras i klassrummet. Det kan vara allt ifrån att fixa mellanmål men smörgås och chokladdryck, till att programmera kompisen att förflytta sig från ett klassrum till ett annat. En rolig uppgift är att programmera en dans. Genom att använd olika symboler för rörelser lär sig eleverna programmeringens grunder.

Söker du på nätet hittar du massor av tips och idéer.

Denna programmering leder oss fram till blockprogrammering. Här finns det framför allt två riktigt bra verktyg som är framtagna för just utbildning och skola. Vi har först Scratch som på ett enkelt sätt introducerar blockprogrammering. Här kan eleverna göra egna spel, filmer mm. Fördelen här är att all programmering sker på det språket som eleverna behärskar bäst. Sedan har vi Micro:Bit som är en liten komponent som kan programmeras via verktyg som finns på webben. Micro:Bit togs fram av BBC för att fortbilda lärare och elever i programmering. Den kostar några kronor att köpa in, men är väl värd var enda krona. Det som är fördelen med Micro:Bit är att den går från blockprogrammering till ett mer avancerat programmeringsspråk som Python.

Dock kan hoppet från blockprogrammering till att programmera i Python vara ganska så stort då Python är ett programmeringsspråk som är baserat på engelska och många elever tycker detta är relativt svårt. Vi behöver alltså ta ett litet steg framåt och börja skriva kod på svenska. Här har Lunds Tekniska Högskola varit med och utveckla och översätta Kojo till svenska. Kojo är ett hjälpmedel för programmeringsundervisning och bygger på programspråket Scala. Vid programmering i Kojo används alltså ett riktigt
programspråk. Även här finns en rad lärarhandledningar och uppgifter för eleverna att läsa.

Här ifrån är steget inte långt till att gå över till att programmera i Python. Python är det programmeringsspråket som används mest i världen, de flesta som utvecklar digitala verktyg och appar till mobiler och datorer använder sig av Python. Det finns många likheter mellan programmeringen i Kojo och Python. Den stora skillnaden är att i Python sker programmeringen på engelska. Strukturen skiljer sig även åt till viss del. Här finns en rad olika plattformar där du kan skriva din kod och se din programmering. En som fungerar bra är Repl.it där du kan välja programmeringsspråk. Här kan vara en bra början att välja Python (with Turtle) som liknar Kojo. För att sedan gå över till att använda Python. Fördelen med Repl.it är att där kan du som lärare skapa ett konto och koppla eleverna till olika klasser. Du kan som lärare skapa en rad olika uppgifter för eleverna att lösa. Eleverna kan även skapa egna konton där de kan spara all sin programmering.

Som du ser nu är det en tydlig progression i programmeringen. Vi går från det analoga till det digitala. Vi börjar med det enkla, arbetar oss vidare till blockprogrammering, går över till att skriva kod på svenska och landar i en mer avancerad kodning på engelska. Ser vi detta i skolan perspektiv, på lång sikt, börjar vi redan på förskolan och landar i gymnasiet. Det krävs små steg framåt och detta görs inte på en ’kafferast’. Vi behöver tänka om och tänka långsiktigt.

Att diskutera:

  • Vilka andra verktyg använder vi oss av när vi arbetar med programmering med eleverna?
  • Hur tänker vi på lång sikt, har vi några gemensamma strategier för att eleverna ska utveckla sina kunskaper i programmering så långt som möjligt?
Share Button

Lämna ett svar

E-postadressen publiceras inte. Obligatoriska fält är märkta *