Inom digital kompetens gäller det för skolorna att skifta fokus från datalogiskt tänkande och programmering till bredare problemställningar och frågor som rör pågående samhällsutveckling.
Frågor som exempelvis hur digital teknologi utmanar våra rättigheter och vårt samhällsengagemang eller hur vår vardag och våra relationer med andra människor ändras, behöver få ta mer plats. Eleverna behöver få tillgång till verktyg som behövs får att kunna bli kritiska samhällsmedborgare som aktivt påverkar samhällsutvecklingen. Eleverna ska själva få möjlighet att skapa tekniska lösningar för att få en bättre förståelse av hur företag, myndigheter och organisationer tänker och hur utvecklingsprocessen går till.
Definitioner
I programmeringsvärlden slänger vi oss med olika ord och begrepp som inte alltid är lätta att förstå innebörden av. I listan nedan hittar du definitioner som kanske bidrar till en bättre förståelse av programmeringens olika steg och begrepp.
Definitioner
Algoritm | kan beskrivas som en systematisk procedur för hur man utför en steg för steg instruktion som utför en beräkning eller löser ett specifikt problem. |
Analog programmering/ programmering utan dator |
Programmering utan dator är en form av programmering som används för att lära ut principerna för programmering. Det kan till exempel handla om entydiga stegvisa instruktioner eller hur symboler kan representera en instruktion till exempel en ritad pil som betyder gå framåt. Här används inte datorer utan istället används papper och penna eller tal för att förmedla instruktionerna. Instruktionerna utförs av människor som t.ex. flyttar sig själva eller en kompis eller flyttar en sak baserat på programmet. |
Blockprogrammering | Blockprogrammering, eller programmering i visuella programmeringsmiljöer, är en variant av programmering där programmeraren använder grafiska element för att bygga upp sitt program. Används primärt i utbildningssyfte men är också populärt i t.ex. vissa programmeringsmiljöer för dataspel, arkitektur, musik och enklare kontrollsystem. Blockprogrammering används också för att bygga upp grafiska gränssnitt till program |
Bugg/fel och felsökning | En bugg är ett fel i ett program som gör att programmet inte fungerar som det är tänkt. Ibland kan en bugg betyda att programmet fortsätter köra men ger ett felaktigt svar (t.ex. vid en beräkning) och i andra fall kan det betyda att programmet kraschar, dvs. slutar köra. Ordet “bugg” (från engelskans bug som betyder insekt) sägs komma ifrån att en insekt, en mal flög in i en stordator som kraschade. Detta skulle ha hänt 1947 |
Datalogiskt tänkande | är en problemlösningsprocess för att beskriva, analysera och lösa problem. Samtidigt som datalogiskt tänkande kräver kompetenser kring logiskt tänkande, algoritmer, nedbrytning i mindre delar, mönsterigenkänning, abstraktioner och utvärdering utvecklas dessa kompetenser genom att arbeta med datalogiskt tänkande. Tillvägagångssätten kan bland annat kan vara utforskande, analyserande, skapande, felsökning, uthållighet och samarbete |
Felkorrigering | En fas i programmeringen där fel i programmet lokaliseras och korrigeras. |
Funktion | En funktion är en procedur som returnerar ett värde. Med hjälp av funktioner kan man skapa abstraktioner och lösa problem på allmän form. Funktionsanropet är ett uttryck. Det värde som funktionen ger ska endast grunda sig på de parametrar som har skickats till funktionen. En funktion kan t.ex. beräkna arean av en rektangel eller det nedsatta priset på en produkt. |
Grafiskt element | I blockprogrammering används grafiska element, bilder, för att representera skriven kod |
Gränssnitt | Det sätt som en användare styr och interagerar med ett program kallas för gränssnitt. Alla program har någon form av gränssnitt, dessa kan vara grafiska med knappar och fönster, textbaserade, talbaserade eller haptiska, vilket betyder att de nyttjar vår känsel och kroppsrörelse. Ett gränssnitt kan också finnas mellan olika delar i ett program eller mellan program. |
Hårdvara | Datorer eller en dators fysiska delar, som kan utföra program. Mjukvaran bestämmer vad hårdvaran ska utföra. |
Händelse | En händelse är ett begrepp inom programmering som innebär att en kommandoserie utförs när användaren gör vissa saker. Exempel: När man trycker på en knapp, spelar programmet upp ett ljud och en katt i spelet byter riktning eller när klockan är 7.00 ringer en väckningssignal. |
I/O, Input/Output | In- och utenheterna i en teknisk apparat, t.ex. i en dator eller robot, som överför data till eller från apparaten. Exempelvis kan en termometer (input) och en elmotor (output) vara kopplade till en mikrokontrollers I/O-portar och programmet kan starta elmotorn vid en viss temperatur. |
Interpretator | En interpretator fungerar som en programtolk och översätter steg för steg de instruktioner som ett program beskriver till maskinkod som datorn förstår. Exempel på programspråk som körs i en interpretator är Basic och JavaScript. |
Kod | det som skrivs in för att få en dator att utföra något. När man skriver in koden kallas det för att man kodar. Koden kan ses som ett teckensystem, ett programmeringsspråk. |
Kompilator | En kompilator är ett datorprogram som översätter från ett programspråk som människor kan skriva och läsa till maskinkod som datorn förstår. |
Maskinkod | Maskinkod, även kallat binärkod är det språk som en dator förstår och det består av ettor och nollor. Maskinkod är svårt för människor att läsa och förstå. Olika typer av datorer förstår olika typer av maskinkod. |
Mjukvara | Mjukvaran är en helhet som består av flera dataprogram, de filer som programmen använder och dokumentationen av dem. |
Parallellism | Parallellism innebär att programmet utför olika satsblock samtidigt. I många visuella programmeringsspråk uppstår parallellism när man skapar flera satsblock som reagerar på olika händelser i programmet. Om en del reagerar på ett klick och en del när man trycker på en tangent kan delarna utföras samtidigt. |
Planering | Planeringen är en del av programmeringen där man planerar vad programmet ska göra och hur programmeringen ska genomföras. |
Procedur, underprogram | Ett namngivet satsblock som utförs vid anrop. I samband med anropet kan man eventuellt skicka parametrar till proceduren. Procedurer används när samma satsblock behövs på flera ställen i programmet. På så sätt behöver man inte skriva satsblocken flera gånger utan det räcker med att anropa proceduren. Anropet är en sats. |
Programmering | för att kunna skapa ett program med hjälp av koder behövs mera än själva koderna. Det krävs en planering av koderna och man måste veta hur olika delar i en kod eller flera koder påverkar varandra men det krävs också problemlösningsförmåga. |
Programmeringsspråk | När en algoritm kodas till en kod som datorn förstår används alltid ett programmeringsspråk, som i allmänhet är textbaserat, ibland visuellt. En del programmeringsspråk lämpar sig för studier i programmering, medan en del används i arbetslivet. |
Programmeringsspråk | Programspråk, kallas även programmeringsspråk, är språk som människor använder för att skapa program. Datorn förstår inte programspråk direkt utan detta måste översättas till maskinkod av en kompilator eller interpretator. Olika programspråk är lämpade för olika tillämpningar och det finns idag mer än 750 olika programspråk. Exempel på programspråk: Python, C, C++, Javascript, Java, Ruby och Blockly |
Rekursion | En rekursiv funktion är en funktion som anropar sig själv. Med hjälp av rekursion kan man skapa slingor eller lösa problem bit för bit genom att identifiera lösningens elementärfall och fortsätta söka lösningen enligt ”söndra och härska”-metoden. Exempel: När man letar efter ett föremål i en hög kan man dela högen i två delar om och om igen tills föremålet hittas eller högen inte längre kan delas i mindre delar. |
Sats, kommando | En sats är ett kommando i kod som datorn utför |
Satsblock, kommandoblock | I ett satsblock eller kommandoblock utförs satserna i en viss ordning. Villkorsstrukturer och upprepningsstrukturer kan påverka i vilken prioritetsordning satserna ska utföras |
Sprajt eller sprite | En sprajt är en grafisk komponent som kan flyttas omkring på skärmen i ett program. Används främst i dataspel och mer modernt i blockprogrammeringsmiljöer. |
Syntax | Det sätt en kod skrivs på eller formuleras i ett programmeringsspråk. Jämför med t.ex. rättstavningsreglerna för ett språk. |
Testning | Testning är en del av programmeringen där man testar programmet och försäkrar sig om att programmet eller delar av det (procedurer) fungerar som det ska och producerar rätt resultat. |
Textbaserad programmering | Textbaserad programmering är den vanligaste formen av programmering där programmeraren beskriver sitt program med hjälp av text (bokstäver, siffror och tecken). |
Upprepningsstruktur, upprepningssats, slinga (loop) |
En upprepningsstruktur upprepar en viss del i programmet flera gånger enligt de villkor som har getts, t.ex. “ta 5 steg framåt” eller “gå framåt tills du är framme”. |
Uttryck | Satser består av uttryck. Ett uttryck är en räkneoperation eller någon annan operation där resultatet är ett värde som används i satsen. En jämförelse av två värden (är priset mindre än 10 eller inte?) är ett uttryck som kan användas t.ex. i en villkorsstruktur. Jämför med de matematiska termerna sats och uttryck och de grammatiska termerna mening, sats och fras. |
Variabel | En variabel är ett namngivet datalager. Data som lagras i variabeln kan t.ex. vara text, siffror eller en bild. Till exempel kan poängen i ett dataspel lagras i en variabel med namnet ”spelarens_poang”, där värdet förändras under spelets gång. |
Villkorsstruktur, villkorssatser |
Villkorsstrukturer innebär att ett program utför olika saker enligt de villkor som har getts. I programmet kan t.ex. en figur röra sig till vänster, om det finns utrymme. |
Stegvisa instruktioner | En entydig instruktion kan till exempel vara att en robot ska köra framåt ett steg, eller ett block inom visuell programmering som innebär att en sprajt (grafisk figur) ska rotera 90 grader. Flera entydiga instruktioner kan sättas samman i flera steg för att få något att hända och läses i exakt den ordning som de satts samman. När du sätter samman flera stegvisa entydiga instruktioner som löser en uppgift kan man säga att du har skapat en algoritm. |
Tips på resurser
Ifall du vill fördjupa dig i olika verktyg eller arbetssätt finns nedan en lista på digitala resurser i form av länkar till filmer, klipp och fortbildningar
Tips på resurser
Undervisningstips
I materialet nedan hittar du tips kopplade till olika ämnesområden och ofta också till olika årskurser. Samlingen består till stor del av tips som åländska lärare i Progis-projetet (2020) testat eller tipsat om men en del tips har samlats från olika källor på nätet.
Svenska
Åk 1 | Bee bot; lägg ut alfabetet under ett genomskinligt rutsystem och programmera Bee boten att köra från A till B osv. |
Åk 1 | Träna på läsinlärning/skrivinlärning i åk 1 med Bluebot. Genom att programmera botten att skapa ordet "SOL" får du träna på vilka bokstäver det är, var. I ordet du hör bokstäverna. |
Bee bot; lägg ut alfabetet under ett genomskinligt rutsystem och programmera Bee boten att köra från A till B osv. | |
Skriva grupparbeten i gemensamma dokument. Fungerar i office, pages och på google dokument. Alla elever i gruppen (eller klassen) Kan skriva samtidigt i dokumentet och se vad de andra skriver och lägger till. Som lärare får du dessutom bra översikt över vad alla arbetar med för tillfälle! | |
Skrivprojekt huset där en berättande text om huset görs och som innehåller fyra lägenheter. Spela in beskrivning av vilka som bor i de fyra lägenheterna finns på scratch, koppla ihop med makeymakey och kunna spela upp sin berättande text när man trycker på respektive lägenhet. | |
Åk 2 - 3 | Alfabetisk ordning, stavning och meningsbyggnad med hjäp av dator, programmeringskort och BeeBot. Se Progis-rapport |
Åk 2 | Multimodal berättelse - Eleverna övar sig att skriva berättelser som följer en röd tråd och över på att måla noggranna bilder med hjälp av Makey Maky och code.org. Se Progis-rapport |
Åk 1 - 6 | Interaktiv presentation - modersmål, språk, samhällslära. Eleverna får skapa en multimedia-presentation för att dokumentera sitt arbete med hjälp av programmering. https://www.oph.fi/sites/default/files/documents/interaktivpresentation.pdf |
Matematik, fysik och kemi
Åk 2-3 | Du kan jobba med att träna multiplikationstabellerna genom att programmera Bluebot som skall gå från faktor x faktor till produkt. |
Dra ett kort med tabeller. Programmera Bee boten att köra till svaret. | |
Analog programmering där instruktioner (koder, pilkort) läggs i en sekvens för att kunna hitta till en viss koordinat i ett koordinatsystem. Grupparbete | |
Åk 4 | Du kan träna på bråktalen genom att använda Bluebot. Ha olika bråktal eleverna ska räkna ut, både addition och subtraktion. Ha en Bluebot matta med olika svar på bråktalen. Låt eleverna programmera Bluebot musen till rätt svar. |
Dra ett kort med tabeller. Programmera Bee boten att köra till svaret. | |
Skapa bilder te.x. snögubbe genom att skapa figurer i python eller javascript och lägga dem över varandra (circle, triangle, rectangle). | |
Åk 3 - 6 | Utforska geometri - I denna aktivitet får eleverna utforska geometriska figurer, med fokus på månghörningar. Eleverna arbetar fram olika varianter av ett program som ritar en månghörning, först genom att ställa upp instruktionerna steg för steg och sedan utveckla denna lösning vidare genom att identifiera mönster i både programmet och hur månghörningar konstrueras - https://www.oph.fi/sites/default/files/documents/geometri.pdf |
Åk 4 - 6 | Omvandla enheter - eleverna får öva sig i att omvandla mellan olika enheter med hjälp av ett färdigt program i Scratch. https://www.oph.fi/sites/default/files/documents/omvandla.pdf |
Åk 5 | Vattnets aggragationstillstånd - Eleverna visualiserar hur vattenmolekylerna beter sig i olika aggregationstillstånd (fast, flytande och gasform). Genom att klicka på en av tre programmerade knappar skall molekylerna omforma sig till den aktuella formen. https://www.oph.fi/sites/default/files/documents/ vattnets_aggregationtillstand_0.pdf |
Åk 6 | Materials ledningsförmåga - tillverkning av "lednings"-maskin för att testa olika materials ledningsförmåga och skapa en planch med solsystemet men knappar för att höra informationen. Se Progis-rapport |
Åk 4 | Räkna med bråk - lära sig räkna med bråktal geno att använda det med programmering och Bluebot. Se Progis-rapport |
Skapa konst med hjälp av ex. Scratch. Eleven tränar sig i algoritmer, design, programmering med repetition och händelser, viklar och geometri. Se Linda Mannilas bok Att undervisa i programmering. | |
Åk 7 - 9 | Programmera ett dörrlarm - Material som bygger på den svenska läroplanen för teknikämnen https://digitalalektioner.se/lektionspaket/programmera-ett-dorrlarm/ |
Språk
Skapa interaktiv karta där man kan trycka på olika länder och får olika fraser upplästa. Se Progis-rapporten | |
Åk 1 - 6 | Interaktiv presentation - modersmål, språk, samhällslära. Eleverna får skapa en multimedia-presentation för att dokumentera sitt arbete med hjälp av programmering. https://www.oph.fi/sites/default/files/documents/interaktivpresentation.pdf |
Digitala berättelser - återberätta och levandegör dialoger, belysa debatter och simulera diskussioner på främmande språk med hjälp av t.ex Scratch. Se Linda Mannilas bok Att undervisa i programmering. |
Geografi och biologi
Interaktiv karta för att lära sig länder och städer. Träna koordinatsystemet genom Bee-Bot på en världskarta. Se Progis-rapport om Jultraditioner i världen | |
Skapa ett mönster som du t.ex. ritar i ett bildprogram som du sedan skall göra klart i praktiken genom att brodera/sy på annat sätt. Går även att göra i träslöjd. Skapa din produkt i ett program med mått, verktyg och gör sedan produkten på riktigt. | |
Tillverka en interaktiv människokropp med Scratch och MakeyMakey där beskrivning över kanske kroppens organ och funktion har spelats in. | |
Prata om fotosyntesen och kretsloppet. Göra ett eget kretslopp i Scratch för att visualisera kretsloppet. Se Progis-rapport om Fotosyntes | |
Lära sig om djur och växter genom QR-koder som sätts upp som längs en korridor eller ute på skolgården. | |
Åk 3 - 6 | Finlands städer Eleverna gör ett eget förhör på Finlands städer. När uppgiften är färdig kan förhöret delas och eleverna kan öva/testa sina kunskaper - https://www.oph.fi/sites/default/files/documents/finlands_stader.pdf |
Religion och livsåskådning, samhällskunskap
Gör en sketch i scratch jr. Fungerar bra för yngre åldrar när man pratar om ordet förlåt eller hur man är en bra kompis. | |
Följ upp hur man lämnar digitala fotspår efter sig. Ex på Internetstiftelsen | |
Åk 1 - 6 | Interaktiv presentation - modersmål, språk, samhällslära. Eleverna får skapa en multimedia-presentation för att dokumentera sitt arbete med hjälp av programmering. https://www.oph.fi/sites/default/files/documents/interaktivpresentation.pdf |
Åk 5 | Jultraditioner i världen - geografi, språk, musik, samhällskunskap. Eleverna gör en världskarta där jultraditioner i 24 länder presenteras i ljud och text. Se Progis-rapport |
Digitala berättelser - återberätta och levandegör historiska eller samtida dialoger, belysa debatter och simulera diskussioner med hjälp av t.ex Scratch. Se Linda Mannilas bok Att undervisa i programmering och Progis-rapporten, Multimodal berättelse |
Musik
Skapa musik i Garageband |
Tillverka ett piano på ett papper/använda en trappa med hjälp av scratch och makeymakey. |
Cup song - Eleverna utför aktiviteten parvis i olika utrymmen. Eleverna programmerar varandra att utföra lätta cup songs. Börja med lätta ramsor och avancera enligt elevernas ålder och nivå. Eleverna får framföra sina ramsor för de andra i gruppen. https://www.oph.fi/sites/default/files/documents/cupsong.pdf |
Musicera genom att arbete med toner, ljud och instrument i Scratch eller spela in via datorns inbyggda mikrofon. Exempel bygga ett piano. Elever över programmering, algoritmer, krativitet, noter, ackord, musikteori, ljudsampel, komposition, samarbete och nedbrytning av problem i mindre delar. Se Linda Mannilas bok Att undervisa i programmering. |
Hälsokunskap
Programmera en kompis analogt genom att få den att göra olika rörelser/ gympaövningar. |
Orientering med QR-koder på surfplatta eller telefon. |
Slöjd och bild
Skapa en egen ritning/ eget recept, testa det. Göra om beskrivningar. Fortsätt omprövning osv. Träna på övertydlig beskrivning för att få förförståelse till att programmera |
Skapa ett mönster som du t.ex. ritar i ett bildprogram som du sedan skall göra i praktiken genom att brodera/sy på annat sätt. Går även att göra i träslöjd. Skapa din produkt i ett program med mått, verktyg och gör sedan produkten på riktigt. |
Skapa interaktiv konst, spelkonsoller, interaktiva brädspel |
Skapa konst med hjälp av ex. Scratch. Eleven tränar sig i algoritmer, design, programmering med repetition och händelser, viklar och geometri. Se Linda Mannilas bok Att undervisa i programmering. |
Ämnesövergripande samarbete
Åk 2-4 | Animera en saga - modersmål och bild https://www.oph.fi/sites/default/files/documents/animera_egen_fabel.pdf |
Åk 1 - 6 | Interaktiv presentation - modersmål, språk, samhällslära. Eleverna får skapa en multimedia-presentation för att dokumentera sitt arbete med hjälp av programmering. https://www.oph.fi/sites/default/files/documents/interaktivpresentation.pdf |
Åk 5 - 6 | Planera en resa Uppgiften kan varieras så att man gör en resa mellan olika städer i Norden, olika länder i Europa, olika världsdelar. Uppgiften kan planeras parvis och ändå genomföras så att alla får programmera på sin egen iPad eller dator. https://www.oph.fi/sites/default/files/documents/resa_i_finland.pdf |
Åk 2 | Multimodal berättelse - Eleverna övar sig att skriva berättelser som följer en röd tråd och över på att måla noggranna bilder med hjälp av Makey Maky och code.org. Se Progis-rapport |
Skapa konst med hjälp av ex. Scratch. Eleven tränar sig i algoritmer, design, programmering med repetition och händelser, viklar och geometri. Se Linda Mannilas bok Att undervisa i programmering. | |
Interativa kort (för jul, födelsedagar osv.) skapa en hälsning där mottagaren måste vara aktiv för att se det slutliga meddelandet. Kortet kan göras med Scratch. Eleven tränar design, kreativitet, programmering, algoritmer och nedbrytning av problem i mindre delar. Se Linda Mannilas bok Att undervisa programmering i grundskolan. |
Allmänt
Åk 3 | Vad är klockan? - elever lär sig klockan med hjälp av att programmera sin BeeBot. Se Progis-rapport, klockan |
I praktiken/praktisk handling Här ingår problemlösning, att lösa problem och omsätta i praktisk handling, försök och misstag, felsöka (gå tillbaka om något gått fel, ”gör om gör rätt”) och även uthållighet, skapa produkter och analysera (vad som kan ha gått fel). | |
Hour of code går att köra på många olika hemsidor och på många olika nivåer! https://code.org/ eller https://www.khanacademy.org/ | |
Träna på Bebras och var med i tävlingen. https://www.bebras.se/ |