Programmering och datalogiskt tänkande i grundskolan

Relevanta dokument
Hur kan programmering komma in i andra ämnen, som matematik och teknik?

Datalogiskt tänkande för alla

Datalogiskt Tänkande i skolan. Fredrik Heintz,

Datalogiskt tänkande är mer än Programmering. Fredrik Heintz Linköpings universitet

Lgr 11 och digital kompetens

Dela, koda och korrigera! Undervisningsmaterial inom digital kompetens

Digitalt lärande och programmering i klassrummet

Skolverkets arbete med skolans digitalisering

Programmering, dans och loopar

Förslag den 25 september Matematik

Samband och förändringar Olika proportionella samband, däribland dubbelt och hälften.

Programmering i matematik och teknik i grundskolan

Skolverkets arbete med skolans digitalisering

Programmering, dans och loopar

Talföljer och cirklar: Algoritmer, geometri och mönster 2 av 4

Programmering och digital kompetens

Matematiska lägesmått med en micro:bit

Konstruera, styra, reglera och programmera en röd tråd F-9

Programmering för alla!

PROGRAMMERING I SKOLAN Utbildning av kollegor på Carlssons skola CECILIA CHRISTIANSEN ULRIHCA MALMBERG

MATEMATIK 3.5 MATEMATIK

Del ur Lgr 11: kursplan i matematik i grundskolan

AI och Datalogiskt Tänkade. Fredrik Heintz, Dept. of Computer Science Linköpings

Programmering i matematik och teknik i grundskolan

Matematiska lägesmått med en micro:bit

Slump och statistik med Scratch

Välkomna! Datalogiskt tänkande och programmering 15 augusti WiFI Nätverk: Conventumwifi Lösenord: conventum2018

Varför programmering i läroplanerna?

MATEMATIK 5.5 MATEMATIK

Kursplanen i matematik grundskolan

Fortsätt med Scratch: Så funkar kloner (del 3/6)

Handledarutbildning NT. Arlanda den 3 maj 2017

Slump och statistik med Scratch. Se video

Extramaterial till Matematik X

Centralt innehåll. I årskurs 1.3

Skolverkets förslag till kursplan i matematik i grundskolan. Matematik

DATALOGISK TÄNKANDE OCH PROGRAMMERING CETIS OKTOBER 2017

Kursplan Grundläggande matematik

Kursplan för Matematik

Betyg i årskurs 6. Grundskolans läroplan Kursplan i ämnet matematik

FÖRSLAG TILL KURSPLAN INOM KOMMUNAL VUXENUTBILDNING GRUNDLÄGGANDE NIVÅ

Programmering från början

Programmering för alla!

Arbetsområde: Jag får spel

Programmering i matematik. grundskolan, gymnasieskolan och vuxenutbildningen

IT OCH PROGRAMMERING I SKOLAN. Jan Erik Moström Peter Vinnervik

Kurskod: GRNMAT2 Verksamhetspoäng: 600

ämnesområden. Funktioner och räta linjens ekvation. Hur funktioner kan användas för att undersöka förändring, förändringstakt och andra samband.

Studenter i lärarprogrammet Ma 4-6 I

formulera och lösa problem med hjälp av matematik samt värdera valda strategier och metoder,

Syfte. Malmö stad Komvux Malmö Södervärn PRÖVNING. prövning grundläggande matematik

EV3 Design Engineering Projects Koppling till Lgr11

Programmering eller Datalogiskt tänkande

Nationella it-strategier styrdokumentsförändringar. Olof Andersson, Christian Magnusson

Meddelande och game over 5 av 6

Grunderna i programmering - loopar 3 av 6

Loopar och ljud 3 av 7. Lektionen handlar om att lära sig programmera loopar och använda ljudeffekter med verktyget Scratch. Loopar och ljud 3 av 7

Klassrumsprojekt programmering - Digitalt lärande

Fortsätt med Scratch: Meddelande och game over (del 5/6)

formulera och lösa problem med hjälp av matematik samt värdera valda strategier och metoder,

Jörgen Lagnebo PLANERING OCH BEDÖMNING MATEMATIK ÅK 9

Bee-Bot & Blue-Bot Räkna

Programmering. Analogt och med smårobotar. Nina Bergin

Indelning av grundläggande vuxenutbildning i matematik i delkurser c, d, e och f. 150 verksamhetspoäng vardera.

Lars Lingman. Undervisningsråd - skolans bit.ly/skolverketxxx

Nyheter om matematik från Skolverket. oktober 2017

22,5 högskolepoäng. Provmoment: Ladokkod: Tentamen ges för: Matematik 3hp. Studenter i inriktningen GSME. TentamensKod:

Nationell IT-strategi för skolan. Fredrik Hedström Pedagogik och kommunikationsutvecklare

Bakgrund: När man programmerar på professionell nivå så går det ut på att koppla gränssnittet till funktioner.

Programmering från början

ESN lokala kursplan Lgr11 Ämne: Matematik

Loopar och ljud 3 av 7. Lektionen handlar om att lära sig programmera loopar och använda ljudeffekter med verktyget Scratch. Loopar och ljud 3 av 7

Programmering från början

Programmering i skolan varför då? Lisa Söderlund Pedagogik och kommunikation

Vad är algoritmer? Lektionen handlar om att få en grundläggande förståelse för vad en algoritm är. Vad är algoritmer?

Övning: hitta buggarna

Datalogiskt tänkande för svenska grundskolan vad, hur och varför? Fredrik Heintz och Linda Mannila Linköpings universitet

Hjälpmedel: Miniräknare, skrivmateriel (ex. linjal, gradskiva, passare) och Lgr 11

Introduktion programmering

Kan logga in och ha strategier för att minnas sitt lösenord. Kan ta hand om och hanterar sin enhet. Kan starta och stänga av sin enhet.

Grundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp

Remissversion av kursplan i matematik i grundskolan. Matematik. Syfte

Studenter i lärarprogrammet GF(11GF20) 46 p G: 28 p VG: 38 p

Programmering i skolan.

Digitalt lärande och programmering i klassrummet

STUDIEHANDLEDNING. till

Lgr 11 matriser i Favorit matematik 4 6

Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator

MATEMATIK 3.5 MATEMATIK

Programmering i skolan varför då? Lisa Söderlund Pedagogik och kommunikation

Undersök vad som är programmerat. Lektionen handlar om den digitala tekniken i elevernas närmiljö. Undersök vad som är programmerat

Programmera en mänsklig robot. Lektionen handlar om att skapa och följa instruktioner. Programmera en mänsklig robot

Hur fungerar en dator? Lektionen handlar om att förstå hur datorer styrs av program. Hur fungerar en dator? Lektionsförfattare: Boel Nygren

Scanner Detektor lärarhandledning Mojäng

Att orientera i den närliggande natur- och utemiljön med hjälp av kartor, såväl med som utan digitala verktyg. Kartors uppbyggnad och symboler.

Grunderna i programmering hitta buggen (lektion 4 av 5)

Terminsplanering årskurs 6 Matematik Ärentunaskolan

Att använda sig av medier

Hur fungerar en dator?

Provmoment: Tentamen Matematik och matematikdidaktik, 3 hp, tillfälle 1

Transkript:

Programmering och datalogiskt tänkande i grundskolan Fredrik Heintz Institutionen för Datavetenskap Linköpings universitet fredrik.heintz@liu.se @FredrikHeintz

< < Weak human + machine + superior process was greater than a strong computer and, remarkably, greater than a strong human + machine with inferior process. Garry Kasparov

Digitalisering förändrar allt! Mjukvara äter världen Den digitala och den analoga världen vävs samman Mer komplexa problem Helt nya affärsmodeller Nya sätt att jobba Datorerna löser allt fler problemen åt oss (automatisering) Vi måste lösa problem tillsammans med datorer!

Digital kompetens Datalogiskt tänkande

Digital kompetens EU DigComp 2.0 Information and data literacy Communication and collaboration Digital content creation Safety Problem solving Skolverket: Använda och förstå digitala system och tjänster. Förhålla sig till medier och information på ett kritiskt och ansvarsfyllt sätt. Lösa problem och omsätta idéer i handling på ett kreativt sätt med användning av digital teknik.

Datalogiskt tänkande Computational Thinking Data + logik + tänkande En problemlösningprocess för att beskriva, analysera och lösa problem på ett sätt så att datorer kan hjälpa till med tekniker från datavetenskap: Ge detaljerade instruktioner Bryta ner problem i delar Hitta mönster Skapa abstraktioner Designa algoritmer

Datalogiskt tänkande i geometrin, månghörningar Bryta ner, hitta mönster, generalisera, skapa algoritm

Datalogiskt tänkande Dessa färdigheter stöds och förstärks genom ett antal inställningar och attityder som är centrala dimensioner av datalogiskt tänkande. Dessa inkluderar: Vana vid att hantera komplexitet Uthållighet vid arbete med svåra/stora problem Tolerans för tvetydighet/osäkerhet Förmåga att hantera öppna problemställningar Förmåga att kommunicera och samarbeta med andra för att komma fram till en gemensam lösning Problemlösning, kritiskt tänkande, samarbete, kreativitet, kommunikation kombinerat med datorkraft

bebras.se databavern.se

Vilken affär säljer Kattis klänning? A B C D

A B C D

Det finns två sorters tunnlar i bäverlandet. När bävrarna en efter en går igenom en svart tunnel kommer de ut i omvänd ordning jämfört med den ordning de gick in i. När de går in efter varandra i en vit tunnel byter istället bara den första och den sista bävern plats. A B C D

Programmeringens roll

Programmering är en process 1. Analysera problemet 2. Utvärdera olika lösningsmodeller 3. Designa en lösning 4. Skriv programkoden ( koda ) 5. Testa programmet 6. Debugga programmet

Hur funkar en dator? Minne sparar både data och program Utdataenhet data till omvärlden Processor bearbetar data enligt program Läs & Skriv Indataenhet data från omvärlden

Vad finns i datorn? Heltal och endast heltal!

Uppdelning: data / instruktioner Heltal används för att representera data: bokstäver, bilder, musik, filmer, etc Heltal används för att representera instruktioner (program) som anger vad datorn ska göra: addera, multiplicera, visa på skärmen, etc Datorn hjälper till att översätta (för människor) mer lättbegripliga instruktioner till rätt siffror I datorns minne finns BÅDE data OCH instruktioner

Data och program är ettor och nollor Minne med data och program som ettor och nollor Processor bearbetar ettor och nollor 0001010010010 0101001010010 1001010010100 1010111110100 1110100110101 1111000010101 Läs & Skriv CPU Central Processor Unit 0 -> 00000000 1 -> 00000001 2 -> 00000010 3 -> 00000011 4 -> 00000100 5 -> 00000101... A -> 01000001 B -> 01000010 C -> 01000011... Utdata Indata

Vad är ett program? En detaljerad instruktion som om man följer den ger ett visst resultat.

Vad är ett program? En detaljerad instruktion som om man följer den ger ett visst resultat.

Vad är programmering? Att programmera är att bestämma vad datorn ska kunna göra. Ett program innehåller koder som datorn kan förstå. Koderna innehåller instruktioner som datorn kan utföra och data (information) som datorn kan använda när den utför sina instruktioner. Ett program är datorns recept När man gör nya program bygger man på färdiga delprogram som byggblock till nya program

Programflöde

Abstraktion

Vad är programmering? Givet ett problem som jag vill att datorn ska lösa, hur ska jag beskriva det för datorn?

Programmering tränar upp det datalogiska tänkandet

Programmering skapar förståelse för den digitala världen

Programmering låter dig ta kontroll över datorn

Programmeringens roll? Programmering är ett pedagogiskt verktyg! Levandegör och konkretiserar Inte bara ett svar utforska själv, vad händer? Kan integreras i olika ämnen På för- och grundskolenivå är programmering ett medel för att träna upp digital kompetens och datalogiskt tänkande, inte ett mål i sig. På gymnasiet bör programmering och datavetenskap vara egna ämnen med specialutbildade lärare.

Datavetenskap

Datavetenskapliga naturlagar Problem kan analyseras och det går att bevisa vad som är den mest effektiva möjliga lösningen. Valet av abstraktion påverkar effektiviteten.

Datavetenskapliga naturlagar forts. Det finns (oändligt många) problem som inte går att lösa, de är oavgörbara! Exempel: Det går inte att skriva ett program som tar ett annat program som indata och avgör om det kommer avslutas eller ej. Church-Turings tes säger att allt som går att beräknas, över huvud taget, går att beräknas av Turingmaskin (dator).

Stora idéer inom datavetenskap 1. Kreativitet. Datavetenskap är en kreativ aktivitet. 2. Abstraktion reducerar information och detaljnivå för att belysa fokus och relevanta begrepp. 3. Data och information möjliggör kunskapsskapande. 4. Algoritmer används för att utveckla och uttrycka lösningar till datalogiska problem. 5. Programmering möjliggör problemlösning, mänskligt uttryck och skapande av kunskap. 6. Internet genomsyrar modern datavetenskap. 7. Global påverkan. Datavetenskap har global påverkan.

A Framework for K-12 Computer Science Education (USA)

A Framework for K-12 Computer Science Education (USA)

Programmering i den nya läroplanen

Förändringar i nya läroplanen att programmering införs som ett tydligt inslag i flera olika ämnen i grundskolan, framför allt i teknik och matematik att eleverna blir stärkta i sin källkritiska förmåga att eleverna ska kunna lösa problem och omsätta idéer i handling på ett kreativt sätt med användning av digital teknik att eleverna ska arbeta med digitala texter, medier och verktyg att eleverna ska använda och förstå digitala system och tjänster att eleverna ska utveckla en förståelse för digitaliseringens påverkan på individ och samhälle

Läroplansförslag, matematik Ur centralt innehåll årskurs 1-3: Hur entydiga stegvisa instruktioner kan konstrueras, beskrivas och följas som grund för programmering. Symbolers användning vid stegvisa instruktioner. Ur centralt innehåll årskurs 4-6: Hur algoritmer kan skapas och användas vid programmering. Programmering i visuella programmeringsmiljöer. Ur centralt innehåll årskurs 7-9: Hur algoritmer kan skapas och användas vid programmering. Programmering i olika programmeringsmiljöer. Hur algoritmer kan skapas, testas och förbättras vid programmering för matematisk problemlösning.

Läroplansförslag, teknik Ur centralt innehåll årskurs 1-3: Vad datorer används till och några av datorns grundläggande delar för inmatning, utmatning och lagring av information, till exempel tangenter, skärm och hårddisk. Några vanliga föremål som styrs av datorer. Att styra föremål med programmering. Ur centralt innehåll årskurs 4-6: Några av datorns delar och deras funktioner, till exempel processor och arbetsminne. Hur datorer styrs av program och kan kopplas samman i nätverk. Att styra egna konstruktioner eller andra föremål med programmering. Ur centralt innehåll årskurs 7-9: Tekniska lösningar för styrning och reglering av system. Hur mekanisk och digital teknik samverkar, till exempel i värme- och ventilationssystem. Egna konstruktioner där man tillämpar styrning och reglering, bland annat med hjälp av programmering.

Datalogiskt Tänkande för Alla Mål: Förstå processen av att införa datalogiskt tänkande för alla i grundskolan samt att ta fram praktiska lösningar som gör det möjligt för alla elever i en kommun att lära sig grunderna inom datalogiskt tänkande och genom återkommande aktiviteter ges möjlighet att utveckla färdigheter inom datalogiskt tänkande. Viktiga frågor: Hur kan arbetet i en kommun organiseras för att underlätta för lärarna och säkerställa att alla elever får chansen att utveckla sitt datalogiska tänkande? Vilken typ av kompetensutveckling och stöd behöver lärare i olika faser? Vad är lärares och elevers attityder till datalogiskt tänkande? Aktiviteter: Kompetensutveckling för lärare Lärare genomför Databävern och Hour of Code med eleverna Framtagning av Introduktionspaket till Datalogiskt Tänkande

Intropaket Datalogiskt Tänkande: Översikt Datalogiskt tänkande kan ses som en uppsättning koncept och attityder Koncept: Steg-för-steg instruktioner, eller hur en dator fungerar Känna igen och hitta mönster Bryta ner problem i mindre delar Abstraktion och representation Algoritmer och programmering Attityder: Hanterar komplexitet Hanterar tvetydighet och öppna problem Anpassar lösningar till nya situationer Utvärderar mina och andras lösningar Experimenterar och felsöker Håller ut Kommunicerar och samarbetar

Intropaket Datalogiskt Tänkande: Övergripande lärandemål Målsättningen är att eleven efter introduktionspaketet ska känna till att en dator utför saker steg-för-steg ha erfarenhet av att arbeta med olika typer av problem, där hen har haft nytta av, eller utvecklat, de koncept och attityder som hör till datalogiskt tänkande känna igen datalogiskt tänkande som en problemlösningsprocess för att lösa problem tillsammans / med hjälp av datorer, som baserar sig på en uppsättning koncept och attityder utvärdera sin egen nivå av datalogiskt tänkande Lärandemålen bör naturligtvis anpassas till elevens ålder.

Steg-för-steg instruktioner Syfte Förstå hur en dator utför entydiga stegvisa instruktioner Poänger Det är svårt att vara exakt Ordning är viktigt

Steg-för-steg instruktioner exempel

Känna igen och hitta mönster Syfte Att känna igen givna mönster, att avgöra om något uppfyller ett mönster samt att hitta nya mönster. Poänger Att känna igen ett mönster är inte samma sak som att hitta ett nytt mönster. Detta är grunden för att hitta abstraktioner och lösa problem.

Känna igen och hitta mönster exempel

Bryta ner problem i mindre delar Syfte Förstå hur man kan lösa ett problem genom att dela upp det i mindre delar, lösa varje del skilt för sig och sedan sätta samman ett svar utifrån delsvaren Poänger Ett problem består av mindre beståndsdelar. Genom att dela upp problemet i mindre delar blir det mer hanterbart. Det är lättare att identifiera mönster och sådant man sett tidigare om helheten man behöver beakta är mindre.

Bryta ner problem i mindre delar exempel

Abstraktion och representation Syfte Abstraktion handlar om att lyfta fram det som är viktigt och dölja sådant som är mindre viktigt. En dator arbetar endast med heltal, alltså måste en dator representera allt som siffror. Poänger Vad som är viktigt varierar för olika uppgifter. Samma sak kan representeras på många olika sätt, vart och ett med sina fördelar och nackdelar. Internt i datorn representeras allt text, bild, ljud, video etc som siffror. Samma representation kan användas för flera olika saker.

Abstraktion och representation exempel

Algoritmer och programmering Syfte En algoritm är en steg-för-steg-beskrivning för att lösa en vis typ av problem. Poänger Det kan finnas flera algoritmer för att lösa samma problem, där de olika varianterna skiljer sig från varandra på olika sätt, t.ex. baserat på antalet instruktioner eller effektivitet. Olika konstruktioner (såsom alternativ och repetition) kan användas för att t.ex. göra programkod enklare att läsa/förstå och effektivare.

Algoritmer och programmering exempel

HB: Handbok (http://datalogiskttankande.se/handbok/dt-handbok-a4.pdf) B/C/J/Mxx: Databävern Benjamin/Cadet/Junior/Mini år xx (http://bebras.se)

Attityder var ligger jag/eleven? En modell baserad på arbete med Computing i England gör det möjligt för både elever och lärare att svara på frågan Hur bra är jag/eleven på att Hantera komplexitet? Hantera tvetydighet och öppna problem? Anpassa mina lösningar till nya situationer? Utvärdera mina och andras lösningar? Experimentera och felsöka mina lösningar? Visa uthållighet då det behövs? Kommunicera och samarbeta?

Baserat på arbete av Phil Bagge, Mark Dorling och Thomas Stephens (code-it.co.uk/attitudes). Komplexitet Tvetydighet Jag kan dela upp svåra problem i mindre delar. Jag inser att det finns fler än ett sätt att lösa ett problem. Jag kan upptäcka /koncentrera mig på de viktigaste delarna av ett problem. Jag inser att det finns fler än ett sätt att beskriva ett problem. Jag kan förklara hur jag delat upp ett problem i mindre delar och arbetat med abstraktioner. Jag kan förklara hur jag hanterat tvetydighet. Öppna problem Jag söker efter en uppsättning lösningar till samma problem. Jag accepterar inte den första lösningen rakt av. Jag kan förklara hur ett projekt kan utvidgas. Anpassa Jag kan anpassa idéer för att lösa nya problem. Jag kan identifiera mönster, problem och lösningar. Jag kan förklara hur jag anpassat en lösning för att lösa ett nytt problem. Utvärdera Jag kan utvärdera min lösning gentemot en uppsättning kriterier. Jag kan designa kriterier för att utvärdera det jag skapat. Jag kan förklara hur utvärdering hjälpt mig förbättra ett projekt. Experimentera och felsök Jag kan utveckla, testa och felsöka ett projekt tills det är klart. Jag experimenterar upprepade gånger genom att skapa, testa och felsöka. Jag kan förklara hur den iterativa cykeln förbättrat mitt arbete. Uthållighet Jag håller ut även då lösningen inte är självklar. Jag lär mig av mina motgångar och låter dem inte stoppa mig. Jag kan förklara hur jag övervunnit mina problem. Kommunikation och samarbete Jag bidrar med användbara idéer till min partner/grupp. Jag kan uppmuntra andra att dela sina idéer. Jag kan leda min grupp och utnyttja all talang i den. Bryta ner i delar Abstrahera Generalisera Evaluera Algoritmer / programmera

Programmering i teknik och matematik

Programmering i Teknik

micro:bit

Att programmera micro:bit

micro:bit http://microbit.org/en/2017-03-07-javascript-block-resources/

Programmering i matematik Ur centralt innehåll årskurs 1-3: Hur entydiga stegvisa instruktioner kan konstrueras, beskrivas och följas som grund för programmering. Symbolers användning vid stegvisa instruktioner. Ur centralt innehåll årskurs 4-6: Hur algoritmer kan skapas och användas vid programmering. Programmering i visuella programmeringsmiljöer. Ur centralt innehåll årskurs 7-9: Hur algoritmer kan skapas och användas vid programmering. Programmering i olika programmeringsmiljöer. Hur algoritmer kan skapas, testas och förbättras vid programmering för matematisk problemlösning.

Koordinater och koordinatsystem Avstånd, vinklar

Geometri

Funktioner

Matematik Åk 7-9 Algebra Hur mönster i talföljder och geometriska mönster kan konstrueras, beskrivas och uttryckas generellt. Hur algoritmer kan skapas och användas vid programmering. Programmering i olika programmeringsmiljöer. Geometri Avbildning och konstruktion av geometriska objekt, såväl med som utan digitala verktyg. Skala vid förminskning och förstoring av två- och tredimensionella objekt. Sannolikhet och statistik Tabeller, diagram och grafer samt hur de kan tolkas och användas för att beskriva resultat av egna och andras undersökningar, såväl med som utan digitala verktyg. Hur lägesmått och spridningsmått kan användas för bedömning av resultat vid statistiska undersökningar. Bedömningar av risker och chanser utifrån datorsimuleringar och statistiskt material. Samband och förändring Funktioner och räta linjens ekvation. Hur funktioner kan användas för att, såväl med som utan digitala verktyg, undersöka förändring, förändringstakt och samband. Problemlösning Hur algoritmer kan skapas, testas och förbättras vid programmering för matematisk problemlösning.

Sannolikhet, chans och risk Skriv ett program som simulerar singla slant. Hur ofta ska det bli krona, för att krona-spelaren ska vinna dubbelt så mycket som klave-spelaren? Hur ändras detta när den som vinner x gånger i rad får x kronor av den andra, dvs om krona-spelaren vinner för tredje gången i rad så får hon 3 kronor av klave-spelaren (för den omgången)? Skriv ett program som simulerar en eller flera tärningar. Använd programmet för att räkna ut sannolikheten för de olika kombinationerna i Yatzy.

Tabeller, diagram och grafer Rita ut en graf av en funktion/matematiskt uttryck Använd graf-funktionen för att rita ut förhållandet mellan area och omkrets för en cirkel när radien ökar. När skär de varandra? Enkla operationer på sekvenser av tal Min och max Medelvärde Median Gör en tabell med värden med statistisk information (kanske avvikelse från medelvärdet eller plats i ordningen)

Ytterligare möjligheter Databävern / Bebras (http://bebras.se) en lättsam tävling i datalogiskt tänkande som inte kräver förkunskaper för åk 2 till gymnasiet. Tidigare uppgifter finns tillgängliga för att användas i undervisning eller för träning. Project Euler (http://projecteuler.net/) lösa matematiska problem ofta med programmering Programmeringsolympiaden (http://www.progolymp.se) tävling i algoritmisk problemlösning och datalogiskt tänkande främst för gymnasiet. Alla kan vara med i kvalet. Kattis (http://open.kattis.com/) träna på algoritmisk problemlösning och datalogiskt tänkande med väldesignade uppgifter med automatisk rättning. Stor katalog av uppgifter med olika svårighetsgrad.

Avslutning

Programmeringen som pedagogiskt verktyg Levandegör och konkretiserar Inte bara ett svar utforska själv, vad händer? Kan integreras i olika ämnen

Vad ska eleverna kunna efter åk 3 Följa stegvisa instruktioner både analogt, t.ex. muntligt eller via symboler som pilar och digitalt, t.ex. följa instruktionerna i ett blockprogram för att säga vad det gör Skapa stegvisa instruktioner både analogt och digitalt, t.ex. genom att bryta ner problem i mindre delar, hitta mönster och generalisera Enkel blockprogrammering i Scratch Jr motsvarande nivå 1 på code.org Programmerat något föremål tex Bee-Bots Ge exempel på användningsområden för datorer Grundläggande begrepp kopplat till datorer och programmering

Vad ska eleverna kunna efter åk 6 Grunderna i programmering, sekvens, alternativ, repetition, motsvarande nivå 3 i code.org Skapa program som består av flera funktioner eller händelser Blockprogrammering i Scratch för att skapa enkla program som spel, animationer och simuleringar Se samband mellan matematik och programmering Grundläggande förståelse för vad en algoritm är Kunna skapa enkla algoritmer för matematisk problemlösning

Vad ska eleverna kunna efter åk 9 Ha förståelse för hur algoritmer fungerar. Förståelse för den digitala värld vi befinner oss i. De ska provat på textbaserad programmering. Förståelse för kopplingen mellan blockprogrammering och textprogrammering (t ex playground), att det är samma konstruktioner fast utryckta på olika sätt. De ska ha använt program som Excel, Numbers för att bearbeta statistisk data. De har använt grafritare eller andra program där de kan undersöka grafer. Eleverna ska kunna skriva enkla program på egen hand. Eleverna ska ha prövat på att programmera där det finns en slutprodukt.

Budskap Mjukvara äter världen! Den digitala och den analoga världen vävs samman. AI och ökad automatisering kräver att vi måste lösa problem tillsammans med datorer. Digital kompetens är förmågan att effektivt och säkert hantera en digital värld. Datalogiskt tänkande är en uppsättning generella färdigheter och attityder för att lösa program tillsammans med datorer som är viktiga för alla. Datavetenskap är mer än bara datorer och programmering. Regeringen har beslutat att programmering införs i matematik och teknik. Kom igång! Skala upp! Börja i liten skala med ambassadörer som kan sprida det vidare Skapa en organisation som stöttar lärare och underlättar likvärdighet Kollegialt lärande, lokalt och nationellt Lär tillsammans med eleverna! Beforska och Bepröva! Den viktigaste framgångsfaktorn är kompetensutveckling av lärare och skolledare!

Programmering och datalogiskt tänkande i grundskolan Fredrik Heintz Institutionen för Datavetenskap Linköpings universitet fredrik.heintz@liu.se @FredrikHeintz

Verktyg

Scratch Jr

Hour of Code (http://code.org/learn)

Appar och Verktyg för Programmering ipad appar Lightbot Kodable Fix the Factory Cargo-bot Scratch Jr Kodboken (http://kodboken.se) Barnhack (http://www.iis.se/fakta/barnhack/) Snap! (http://snap.berkeley.edu)/scratch (http://scratch.mit.edu) Kojo (http://cs.lth.se/bjornregnell/programmera) Spel i HTML5 + JavaScript (http://spelprogrammering.nu/) Grafik i JavaScript (http://www.crunchzilla.com/) CodeAcademy (http://www.codecademy.com) Project Euler (http://projecteuler.net)