De flesta programmeringslärare är överens om att programmering inte är att skriva kod. Kodskrivandet är egentligen bara de där sista procenten av det egentliga arbetet. Det här är något många elever missar, och jag är inte förvånad – traditionell programmeringsundervisning har fokuserat på koder och formalia, att lära sig rätt funktioner i programmeringsspråken. Man lägger ofta in problemlösning som ett kriterie för högre betyg, men vad jag sett skapas sällan förutsättningar för inlärning av just problemlösning. Detta trots att lärarna är rörande överens om att just problemlösning, att kunna dela upp ett stort problem i mindre delar, är det som är centralt för ämnet. Är MVG-kriterierna något eleven måste kunna uppnå helt själv? Ha med sig från början? Jag har svårt för den tanken. I min värld kan alla få MVG, men då måste de ges utrymme och möjligheter för att träna i och utveckla MVG-kompetenserna. De kan inte få vara något som bara spontant uppstår.
Det här lektionsupplägget är tänkt att vara en utgångspunkt för en bredare diskussion med eleverna om vad programmering egentligen är och vad som menas med “problemlösning”.