01
02
03
04

Programmera tillsammans

Programmering kan ge både barn och personal förståelse för hur digital teknik fungerar. Att börja med programmering behöver inte vara särskilt komplicerat. Karin Sönnerås berättar hur ni kommer igång.

Det finns många olika appar att välja mellan om man vill börja med programmering. Allt ifrån Lightbot JR som är en bra app att starta med, till Coda game där barnen skapar egna spel som de kan dela med andra. Det viktigaste är att välja en som har de funktioner som man vill ha och att börja på rätt nivå som passar eleverna. Det väsentligaste är att koncentrera sig på det datalogiska tänkandet. Att analysera och lösa problem, dela upp större problem i mindre problem, skapa steg för steg-planer, hitta mönster och tänka utanför ramarna. Det vi vill uppnå är att eleverna ska känna att det som de programmerar gör det som de har programmerat det till och att de får en känsla av att ”jag förstår och jag kan”. På så sätt kan programmeringen fungera som ett verktyg för att börja förstå digital teknik och få insikt om att bakom alla fantastiska digitala prylar finns det någon som har programmerat dem för att de ska fungera som de gör.

”Lär dig tillsammans med eleverna. Vi behöver inte kunna allt direkt.”​

Lightbot JR är en bra app att starta med eftersom där är programmeringen det centrala. Appen ger enkla instruktioner på svenska, är lätt att använda och är renskalad och överskådlig. Uppgiften är att programmera roboten i appen så att den förflyttar sig och tänder alla lampor.Det är blockprogrammering som används och i de första banorna använder man sig av blockprogrammeringens grundkommandon. Framåt, vänstersväng och högersväng är kommandon som återkommer oavsett vilken app man använder. Eftersom uppgiften i Lightbot JR är att tända lampor finns tända lampan-kommandot också med. Det läggs till fler kommandon och olika funktioner allt eftersom man avancerar i banorna, till exempel teleportering och slingor.

Eleverna kan göra om banorna hur många gånger som helst och de ser vilka kommandon de har använt och i vilken ordning de har lagt dem. Det gör det enkelt att felsöka och korrigera om det inte fungerar. Har ni tillgång till projektor kan ni koppla upp den så att alla kan se banan som roboten ska klara och sedan kan ni gemensamt bygga upp en likadan bana på golvet. Då kan barnen gå banan parallellt med roboten på skärmen. Programmeringen blir en fysisk upplevelse och det blir väldigt tydligt vilken väg man ska gå. Genom att arbeta digitalt och analogt med programmering får eleverna möjlighet att arbeta på flera olika sätt och det befäster lärandet.

En annan spännande programmeringsapp är RunMarco, den passar bra för dem som har börjat läsa. Det är ett äventyrsspel med figurerna Marco eller Sophia. Det gäller att hjälpa dem att förflytta sig och utföra olika uppdrag på vägen. Under tiden lär sig eleverna grunderna och strukturen i programmering.  Även här används blockprogrammeringen men symbolerna är inte lika tydliga utan på varje block står det vad det handlar om – gå framåt, sväng vänster, sväng höger, hoppa framåt och så vidare. Det handlar mycket om att upptäcka mönster och att göra generaliseringen vilket är viktiga delar i programmeringen.

Det är bara att sätta igång, det som behövs är modet att prova och en lärplatta att ladda ner appar på. Känner du dig osäker på hur apparna fungerar? Lär dig tillsammans med eleverna. Vi behöver inte kunna allt direkt. Att utforska tillsammans och lösa problem ger en gemensam upplevelse och ännu ett tillfälle att träna på problemlösning.
Programmering handlar om just problemlösning och det har eleverna stor nytta av hela livet. Om vi bjuder in dem till att lösa problem tillsammans är vi verkligen goda förebilder. Tillsammans klarar vi det! n​​

Lästips!

Lär mer om programmering i Karin Sönnerås bok Programmering i förskolan. Utveckla digital kompetens (Gothia Fortbildning 2017).

Programmera varandra

Fundera tillsammans med eleverna hur ni skulle kunna förklara för att få någon att förflytta sig från ett ställe till ett annat. Går ni bredvid är det ju enkelt, då visar ni bara vägen. Men hur ska ni förklara vägen om ni inte tänker gå med? Kan ni använda programmeringskommandon för att förklara hur någon ska förflytta sig? Om ni programmerar kompisen från ett ställe till ett annat, vilka kommandon behöver ni då? Framåt är ganska självklart, även vänster- och högersvängar. Sedan kan hen behöva öppna dörrar och det är bra om det finns ett stannakommando. För att kompisen ska kunna följa kommandona behöver ni skriva ner dem. Då gäller det att komma överens om hur ni ska skriva eller rita de olika kommandona. Det viktiga är alla är överens. Tänk på att det måste vara enkla symboler så att alla klarar av att rita dem. När alla är överens om vilka kommandon som ska vara med och hur de ska se ut är det dags att börja skapa algoritmen.

Låt eleverna arbeta två och två så att de kan tänka tillsammans. Första steget är att de olika paren bestämmer sig för vilket ställe de vill att kompisarna ska gå till. Sedan börjar de steg för steg välja vilka kommandon som behövs för att komma dit. Nu har de skapat en algoritm för att komma från en plats till en annan plats.

När alla är klara kan de byta algoritmer med varandra. Det blir spännande att se om det fungerar. Kommer kompisarna rätt? Fungerar beskrivningen/algoritmen? Om det inte fungerade är det bara att börja felsöka. Gå banan tillsammans, de som skapat den och de som har gått den. Var någonstans blev det fel? Var beskrivningen otydlig eller följdes den inte ordentligt? Rätta till felet och prova igen tills det fungerar. ​

Programmering barn
Foto: Karin Sönnerås

Lego och programmering

När man har arbetat med Lightbot JR på lärplattan är det lätt att bli inspirerad att göra egna banor med till exempel lego. Man kan rita vilka kommandon en legogubbe behöver för att klara legobanan. Antingen kan eleverna återskapa appens olika banor med lego och rita kommandon och på så sätt återuppleva lärplattans programmeringsuppdrag eller kan de bygga egna banor. Då kan de själva ta kontrollen och bygga precis de banor som de själva vill och fundera över vilka kommandon som behövs för att klara den egenbyggda banan. De får då träna på att göra generaliseringar och att på att överföra kunskapen från lärplattans programmering till programmeringsleken med legot. Det ger dem också möjlighet att i lugn och ro träna på sina nya kunskaper med ett material de är väl förtrogna med.

Sedan kan de dela sina banor med kompisarna som kan gå med legogubben, följa kommandona och se om gubben klarar banan. Eller också kan de bara byta banor och skriva kommandon till varandras banor och sedan jämföra om de valt samma kommandon i samma ordning. Om inte blir det spännande att jämföra och förklara hur man har tänkt. Varför blev det olika och fungerar bägge varianterna? Har det smugit sig in något fel som måste korrigeras? Felsökningen är en viktig del när man arbetar med programmering. Det ger tillfälle till att fundera ett varv till.

Skapa mönster och gör generaliseringar

Trä halsband brukar alla barn göra av och till på fritids och om vi låter dem göra halsbandet efter ett givet mönster kan vi passa på att träna programmeringsbegrepp samtidigt. Det givna mönstret är koden för just det halsbandet.

Koden brukar behöva upprepas ett antal gånger för att halsbandet ska bli tillräckligt långt, det kallas för att man loopar koden. Detta är spännande begrepp att fundera kring och genom att använda programmeringsbegreppen även när man tillverkar halsband blir de naturliga. Låt barnen skriva sin halsbandskod så att någon annan kan göra ett likadant halsband. Skriver man själva mönstret inom en parentes och därefter lägger till antalet gånger man ska upprepa/loopa mönstret efter parentesen – (gul, grön, röd, blå)12 är det enkelt för en kompis att följa.

barn och programmering
Foto: Mikael M Johansson

Lek kommandolekar

Många lekar kan enkelt göras om till programmeringslekar. Lekarna innehåller oftast instruktioner eller kommandon som ska följas. Ett exempel är Kapten kommer. I den ursprungliga versionen brukar det handla om båttermer, som för, akter, babord och styrbord, bommen slår och kapten kommer.

Eleverna ska förflytta sig i rummet efter vad lekledaren säger och utföra olika uppdrag som att lägga sig på golvet när bommen slår och göra honnör när kapten kommer. Gör vi om leken till en programmeringslek använder vi begrepp därifrån istället. Eleverna får bli robotar och lekledaren programmerare. Rummets väggar blir olika programmeringskommandon som framåt, bakåt, högersväng och vänstersväng. Eleverna samlas i mitten av rummet och läraren/programmeraren står framför.

Sedan gäller det att förflytta sig efter de kommandon som programmeraren ger. Det går att öka svårighetsgraden genom att lägga till fler kommandon, till exempel hoppa och ligg ner. Leken handlar om att följa tydliga instruktioner och att bara göra det och ingenting annat.

Man kan också välja att göra det till en utslagslek där de som inte följer instruktionerna får avbryta leken. Ibland kan det vara ett praktiskt sätt att avsluta en lektion. De som blir utslagna får gå iväg för att duscha så att alla inte slutar samtidigt.
Ibland vill man ha elevgruppen samlad när leken är slut och då är det bara att hoppa över utslagsdelen och avbryta när man känner sig färdig med leken. ​

Karin Sönnerås

Karin Sönnerås

Leg. förskollärare, föreläsare, författare och utvecklare i Kungsbacka kommun i frågor som rör digitalt lärande.​

Oj, är du inte prenumerant?

Den här artikeln kan endast läsas av dig som prenumererar på Grundskoletidningen Pedagogisk snabbguide.

Så här kan du läsa vidare
Logga in eller börja prenumerera så får du tillgång till alla fördjupande och inspirerande artiklar i Grundskoletidningen och Pedagogisk snabbguide.
Kompetensutveckling när den är som bäst.

Bli prenumerant