Programmering kan ändra ditt barns liv — lär dig varför!

Jag och Malin har engagerat oss lite som volontärer i Kodcentrum, en förening som introducerar barn mellan 9 och 13 år till programmering. Vårt engagemang började egentligen som en tanke om hur många flickor aldrig ens ställs inför valet för huruvida teknik och programmering är något för dem. På något vis får många för sig att det inte är något för dem. Det är tråkigt eftersom det dels skapar en monokultur inom mjukvarubranschen som säkerligen inte är produktiv, men också för att så många som skulle kunnat få uppleva en fantastisk karriär med goda arbetsvillkor, bra löner och trevliga och sociala arbetsplatser inte får det.

Kodcentrum är inte riktat enbart mot flickor, och det märks på de sökande att det fortfarande finns starka normer redan vid tidiga åldrar, men givetvis kan även pojkar behöva inspiration för att börja med programmering. Behovet av programmerare är knappast minskande överlag. Förhoppningen är att det ska bli en jämnare fördelning på deltagarna över tid. Där har ni som föräldrar en stor roll, fundera på om era barn inte skulle kunna upptäcka att programmering kan vara något för dem. Det behöver inte ens vara ett uttryck för ett teknikintresse, programmering handlar om att skapa något. Kolla till exempel på  demoscenen, där kodning används för att göra fantastiska små kortfilmer.

Det allra bästa vore förstås om programmering var något alla introducerades till via grundskolan. Jag har läst om sådana tankar i såväl Finland som Storbritannien, men i Sverige har diskussionen varit desto tystare. Jag tror att många tänker sig att programmering som något specialiserat, som kärnfysik, sociologi eller neurologi, och då är det ju ändå ganska rimligt om man inte tycker att det behöver introduceras så tidigt. Alla ska ju inte växa upp till att bli programmerare.

Eller ska de inte det? Jag tror att fler och fler kommer ha användning av programmering utan att bära titeln. Redan idag märks det inom akademin och forskningen att man har nytta av programmeringskunskaper för att skriva simuleringar eller analysera resultat av experiment. Jag vet att min mamma som jobbar inom äldreomsorgen, kanske den plats där mjukvaruutveckling känns som mest främmande, ändå använder, ibland ganska avancerade, kalkylark för att bygga scheman på deras avdelning. Det finns många mindre uppgifter som kan automatiseras men som inte är stora nog att det är värt att anställa en dedikerad programmerare för att göra.

Fast, det är framtiden, finns det inga fördelar för barnet, som barn? Ja om inte annat så är det roligt och kreativt att programmera. Barnet kan skriva egna spel, program eller varför inte demos som ovan?.

Kod är dock inte bara något som kan användas för att skapa program. Kunskap inom programmering kan ha potential att förbättra förmågan att förstå andra ämnen. Att lära sig koda är lite som att lära sig ytterligare ett språk, fast betydligt lättare. Att lära sig ytterligare språk har i sin tur visat sig ha positiva effekter på inlärningen. Själva konstruktionen av språk kan dessutom ha en effekt på hur bra barnet lär sig ett ämne, t.ex. har studier visat på en skillnad i förmågan att lära sig räkna i bas 10 baserat på om man pratar kinesiska eller engelska. Där engelskan har ett mer komplicerat system, likt svenskans, med elva, tolv, tjugo istället för kinesiskans konsekventa system som motsvarar att vi skulle säga tio-ett, tio-två, två-tio, två-tio-ett.

Rent intuitivt är det inte heller så främmande tanke att det är lättare att lära sig något som enkelt kan uttryckas inom språket. Jag har inte sett studier som visar på att samma effekt finns för programmeringsspråk, men utifrån min personliga erfarenhet har programmeringen hjälpt mig avsevärt, inte minst i att förstå matematiska koncept som funktioner och algebra. Det man kan göra med programmeringsspråk, som är betydligt svårare i talspråk, är att uttrycka sig logiskt konsekvent och entydigt. Det blir också betydligt lättare att uttrycka komplexa samband, eftersom de kan delas upp i mindre delproblem, och inte minst så kan man uttrycka algoritmer och “tankerecept” på ett klart och tydligt sätt.

Inom kognitiv utveckling används begreppet Strategi för att beskriva de mentala operationer som medvetet utförs för att lösa ett problem. Man har också visat på att barn som får hjälp med att lära sig strategier får en snabbare kunskapsutveckling inom åtminstone matematiska ämnen. Ändå förekommer sådan undervisning ganska sällan i skolan, där en del lärare inte lär ut användande av strategier över huvud taget.

Där kan programmeringen komma in i bilden, ett mjukvaruprogram är ju operationer som medvetet utförs av en dator för att lösa ett problem. Om en människa kör programmet i huvudet har det ju därmed blivit just en strategi. Till exempel skulle man kunna beskriva en strategi för att utvärdera argumentation som i bilden ovan.

Jag tror att programmeringsundervisning för barn skulle kunna föra med sig många positiva effekter på deras inlärning. En gemensam bas som bygger på kunskap om programspråk skulle kunna göra kommunikationen mycket tydligare och lättare att ta till sig. Programspråk och psuedokod skulle kunna användas för att beskriva strategier och algoritmer som används inom andra ämnen.