programmering 1.0

Just nu går jag utbildningen  ’Programmering med matematikdidaktisk inriktning’ på Malmö Universitet. Det är helt klart en utmanade utbildning, där jag vid ett flertal tillfällen är helt borta när det gäller att programmera. Det känns som jag är helt vilse och programmeringen är som ’grekiska’ för mig. Jag förstår känslan som eleverna ibland har i klassrummet, när helt nytt kunskapsinnehåll presenteras, där de verkligen sitter som frågetecken. Men jag trivs bra med utmaningar och programmeringen kan ju inte vara det mest svåra att lära sig.

Men jag har funderat mycket kring det här att eleverna ska lära sig programmering i skolan. Vad är syftet? Är syftet att vi ska utbilda våra elever att bli programmerare?

Första tanken är nog den, att framtiden blir mer och mer digital och det kommer att behövas många som kan programmering. Men stannar vi upp, läser lite litteratur och reflekterar så inser vi snabbt att syftet är ett helt annat. Vi ska inte utbilda eleverna att bli programmerar, även om en handfull elever kommer att arbeta som programmerar. Syftet med programmeringen är att ge eleverna en digital kompetens, de ska vara väl förberedda på framtiden då den kommer att bli mer och mer digitaliserad. Programmering är bara ett verktyg i att förbereda eleverna inför framtiden.

När jag nu, i utbildningen,  får tid och möjlighet att läsa forskning och diskuterar den med kollegor, blir det tydligt att det är en rad förmågor som eleverna behöver ha med sig in i framtiden. Redan 1980  nämner Seymour Papert i sin bok Mindstorms: Children, Computers and Powerful Ideas dessa förmågor, han menar att det är ett datalogiskt tänkande. Linda Mannila som är forskare inom datavetenskap med inriktning mot utbildningsfrågor beskriver i sin bok Att undervisa i programmering i skolan vilka förmågor som ingår under paraplybegreppet datalogiskt tänkande. Dessa förmågor, kompetenser och attityder menar många forskare är det som eleverna måste träna för att vara väl förberedda på den framtiden som vi vet så lite om.

Datalogiskt tänkande kan delas upp i två huvuddelar:

Koncept

  • Logiskt tänkande: Datorn gör endast det som den är programmerad att göra. Människan behöver kunna tänka logiskt där vi kan följa ett logiskt resonemang både vid programmering och felsökning.
  • Algoritmer: Datorn följer alltid ett visst flödesschema med givna instruktioner, dessa är exakta och är till för att lösa problem.
  • Nedbrytning i mindre delar: Olika problem måste brytas ner till mindre komplexa situationer, varje del måste lösas var för sig.
  • Mönsterigenkänning: Problemlösning handlar om att generalisera, se mönster och se likheter och skillnader.
  • Abstraktion: Vid problemlösning behöver vi skala av det som är oviktigt. Vi behöver arbeta abstrakt för att se det som är viktigast i problemet.
  • Utvärdering: När vi löser problem behöver vi hela tiden utvärdera våra lösningar och reflektera vilken / vilka lösningar som är bäst och som vi kan arbeta vidare på.

Tillvägagångssätt

  • Utforskande: Vid problemlösning behöver vi experimentera, utforska och pröva oss fram. Vi måste våga pröva olika lösningar och vi ska inte vara rädda att misslyckas, det är genom misslyckande som vi lär oss lösa problem.
  • Skapande: Problemlösning är att vara kreativ, vi skapar en rad nya idéer som vi vågar att testa.
  • Felsökning: När vi löser problem blir det inte alltid som vi tänkt oss, det blir fel. Vi måste ha förmågan att hitta fel och brister som vi kan åtgärda. Att upptäcka, diagnosticera och åtgärda är viktiga förmågor vid problemlösning.
  • Uthållighet: Problemlösning är inte enkelt, det krävs tålamod och uthållighet. Uppgifterna som ska lösas måste vara relevanta, intressanta och meningsfulla.
  • Samarbete: Vi problemlösning är samarbete en förutsättning, det är genom att arbete i team som bra lösningar kommer till.

Och det är här programmeringen kommer in i skolan. Programmeringen är ett utmärkt verktyg att använda för att eleverna ska träna på dessa elva förmågor, kompetenser och attityder. Det handlar alltså inte om att eleverna ska utbildas till programmerar utan att de ska utveckla sitt datalogiska tänkande.

Att diskutera:

  • Är dessa förmågor, kompetenser och attityder viktiga för att eleverna ska vara väl förberedda inför den digitala framtiden?
  • Hur ger vi eleverna rätt förutsättningar för att utveckla sitt datalogiska tänkande?
  • Hur kan vi tillsammans på skolan, i arbetslaget, i ämnesgrupperna arbeta för att ge eleverna bästa digitala kompetensen?
Share Button

En reaktion på ”programmering 1.0”

Lämna ett svar

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