Kul med kod på Mölnboskolan

Två dagar med programmering på elevens val.
Tjugo elever från årskurs 3-5. 
Detta ska bli kul!

Hur var första dagen?

Vi börjar dagen med att ställa den breda frågan "vad är kod".

Detta satte igång en intressant diskussion om vad olika barn uppfattar att man kan göra med kod.
Vilket speglar vad kod faktiskt är.
Kod är inte en sak, utan består av en mängd lösa delar som måste samverka.
Och för att de ska kunna samverka, så måste man samarbeta.

För att alla barnen skulle få testa på lika mycket delades de upp i grupper om två eller tre.
Var femte minut bytte vi vem som satt vid datorn. 
Vem som satt vid datorn spelade inte så mycket roll för resultatet. Barnen i gruppen diskuterade och löste problemet tillsammans.

Innan vi satte igång med första uppgiften fick alla barnen fritt utforska verktyget

 

Första uppgiften: få katten att röra sig

 Låt katten följa pilarna

Låt katten följa pilarna

"En väldigt tydlig uppgift", tänkte jag. 
"Det kan bara bli en lösning på detta."

Det blev fyra olika lösningar. 

- Flytta katten med hjälp av piltangenterna
- Styr katten som en bil med ratt, gas och broms
- Flytta katten direkt till de olika punkterna
- Låt katten följa muspekaren runt

(Klicka på knappen "Se inuti" för att se hur det fungerar)

Varje lösning är lika korrekt om man tittar noggrannare på vad jag egentligen hade bett om.
Detta gav oss möjligheten att diskutera det viktiga i att vara väldigt tydlig inom programmering.

Kordinatsystemet

Under övningen försvann figuren utanför skärmen ofta och barnen kunde inte få tillbaka den.
Vi skapade därför en återställningsknapp.

Vi fick då en naturlig ingång till konceptet "kordinatsystem".
Grundpositionen för figuren är nämligen x=0 och y=0 och med hjälp av knappen flyttade tillbaka figuren dit.

Detta kunskap bygger vi vidare på i nästa uppgift.

 

Andra uppgiften: Spring så fort du kan!

När barnen blivit varma i kläderna, fick de möjligheten att skapa ett enkelt spel.

Här introducerades två av grunderna i programmering; variabler och flödeslogik.
Två ganska tråkiga koncept om de inte introduceras i ett roligt sammanhang.

Spelet är enkelt och knyter an till något som alla barn kan relatera till.

1. Spring så fort du kan fram till en mållinje.
2. När du kommit över mållinjen, ropa JAAAA.

Vi började med att alla fick måla en mållinje på bakgrunden.

Att få figuren att springa över mållinjen var något som alla klarade galant.
De hade ju redan övat på detta i den tidigare uppgiften.

När det var dags för den, till synes enkla, uppgiften att få figuren att ropa JAAAA blev det svårare.

För att förstå när figuren hade sprungit över mållinjen behövde vi ta till kordinatsystemet igen.
Vi hade en gemensam genomgång där vi tittade på hur man kunde lista ut kordinaterna för mållinjen och katten.

För att barnen skulle ha något mer konkret att jobba med, formulerade jag om uppgiften och skrev den på tavlan.
"När du springer över mållinjen, ropa JAAA" blev "När kattens x-position är större än mållinjens x-position, säg JAAAA"
Att översätta ett önskemål formulerat av en människa till något som går att skriva i kod är kärnan i all programmering.

Även här kom det upp en alternativ lösning, som var enklare än den jag tänkt mig.
En grupp elever gjorde helt enkelt mållinjen blå och såg till att figuren sa JAAA när den rörde färgen blå.

När alla grupper var klara fick de lägga till en till spelare, som gjorde samma sak.
Dels för att repetera vad de redan gjort, men också för att det skulle bli ett roligare spel.

Dagen avslutas med att de får spela sina egna spel.


Fortsättning

Innan vi avslutade dagen fick barnen skriva ner vad de tyckte om dagen och vad de ville göra mer av nästa dag.
Det blev tydligt att de gärna ville jobba mer med grafik.
Så nästa gång jobbar vi med både musik och grafik.


Vad lärde sig barnen?

  • Kordinatsystem
  • Större-än-jämförelser
  • Samarbete
  • Styra datorn på olika sätt (tangentbord och mus)
  • Variabler
  • Flödeslogik

Vad lärde jag mig?

  • En ha med en lärare är en väldig avlastning. Både som bollplank innan och under själva lektionen.
  • Stäng av ljudet på datorerna, eftersom det lätt stör de andra eleverna
  • Se till att ha några extra uppgifter uppgifter planerade i förväg åt de elever som blir klara snabbt.
  • Stanna till ibland och ha gemensam genomgång när du märker att du börjar få samma fråga flera gånger.
  • Visa upp de alternativa lösningarna. Alla barnen tyckte det var fascinerande att det fanns mer än ett sätt att åstadkomma samma sak.