Programmering

Tekstbaseret programmeringssprog såsom Python kan anvendes til at skrive algoritmer, som f.eks. udfører matematiske beregninger, mens du og dine elever kan udvikle interaktive historier og spil vha. visuelle og kreative programmeringssprog såsom Scratch.

Om programmering

Programmering er helt forsimplet en måde at udtænke, hvad en computer skal gøre og så fortælle den, hvordan den skal gøre det. Desuden handler programmering om at teste, om computeren gør, hvad du ønsker, og så evt. fejlrette.

Det gør programmøren ved at skrive en kode (et program) i et bestemt programmeringssprog. Koden indeholder de instrukser eller algoritmer, som fortæller computeren, hvad den skal gøre.

Programmet skal typisk have et input, som instrukserne i koden så omdanner til et output. Du giver f.eks. din browser et input, når du trykker på et link, og outputtet er, at browseren sender dig til linkets destination.

Du kan læse mere om algoritmer her.

Der findes et utal af programmeringssprog - lige fra meget abstrakte, tekstbaserede sprog til visuelle sprog, hvor programmøren opbygger sin kode vha. grafiske elementer.

For den helt uøvede er det selvsagt letteste at arbejde med visuelle programmeringssprog såsom Scratch, men elever og undervisere med grundlæggende matematisk-logiske færdigheder eller bare en tilstrækkelig stor lyst vil relativt hurtigt kunne lære tekstbaserede sprog såsom Python.

Anvendelser i undervisningen

Visuelle programmeringssprog såsom Scratch er så brugervenlige, at både undervisere og elever forholdsvist hurtigt kan lære programmets grundlæggende funktionaliteter.

Tekstbaseret programmeringssprog såsom Python kræver mere oplæring, men undervisere og elever med matematisk-logiske færdigheder eller tilstrækkelig stor lyst kan lære basisfunktionaliteterne inden for rimelig tid.

Digitale værktøjer

Scratch

Scratch er et intuitivt og lettilgængeligt visuelt programmeringssprog, hvor de enkelte kodeelementer (f.eks. forgreninger og løkker) er blokke, som trækkes fra en værktøjsklasse over i koden.

Scratch kan bruges til at lave spil, interaktive historier, animationer og meget mere.

Scratch afvikles direkte i brugerens browser, og små videoer og gifs giver trinvise instruktioner i de grundlæggende funktionaliteter.

Desuden er Scratch-websiden hjemsted for et stort online community, hvor brugere kan dele programmer, videreudvikle andres programmer, få hjælp, og give feedback.

Hjælp

Learning-by-doing og eksempler

Learning-by-doing og gennemarbejdelse af konkrete eksempler er nok den bedste måde at lære Scratch på - ligesom det er tilfældet for andre it-værktøjer.

Derfor må underviseren udarbejde en række delaktiviteter med eksempler, øvelsesopgaver, osv., der med en klar progression (f.eks. stigende sværhedsgrad og kompleksitet) giver både giver eleverne forudsætninger til at gennemføre de enkelte delaktiviteter samt guider dem igennem processen.

En meget anvendt metode er use-modify-create, hvor den eleven først bruger et program og prøver at gennemskue programmet virkemåde, herunder sammenhængen mellem input og output. Derefter kigger eleven "under kølerhjelmen" og prøver at forstå og sidenhen modificere koden. Til sidst skulle eleven så være i stand til selv at programmere sit eget program.

Instruktionsvideoer og -gifs

Scratch indeholder en række letforståelige instruktioner, som vha. videoer og gifs (på dansk!) guider brugeren igennem de forskellige funktionaliteter. Instruktionerne foregår direkte i selve værktøjet, så brugeren selv kan arbejde med undervejs, lave sine egne kodebidder og med det samme se resultatet.

Instruktionerne kan anvende både af underviser og elever.

Begynder-projekter

Desuden har Scratch-hjemmesiden en række begynder-projekter, som er færdige animationer, historier, spil osv. Du afprøve dem i browseren og studere, hvordan koden er bygger op ved at trykke på "Se koden bag" øverst til højre.

Scratch Wiki

Scratch-wikien kan du finde tekstbaseret dokumentation, deltage i forskellige diskussionsfora, hvor du bl.a. kan stille spørgsmål, og meget mere.

Tips og tricks

Vær kreativ

Scratch giver rig mulighed for at bruge grafikker, billeder og lyd, så åben op for kreativiteten. Eleverne vil finde det er sjovt og motiverende.

Python

Python er et tekstbaseret og meget populært programmeringssprog. Koden skrives i en editor (f.eks. bare Notesblok på Windows) og skal afvikles af et særligt program på computeren. Heldigvis findes der online værktøjer såsom Online Python Interpreter eller Online Python, hvor man kan afvikle koden direkte i browseren.

Hjælp

Learning-by-doing og eksempler

Learning-by-doing og gennemarbejdelse af konkrete eksempler er nok den bedste måde at lære Python på - ligesom det er tilfældet for andre it-værktøjer.

Derfor må underviseren udarbejde en række delaktiviteter med eksempler, øvelsesopgaver, osv., der med en klar progression (f.eks. stigende sværhedsgrad og kompleksitet) giver både giver eleverne forudsætninger til at gennemføre de enkelte delaktiviteter samt guider dem igennem processen.

En meget anvendt metode er use-modify-create-tilgangen, hvor den eleven først bruger et program og prøver at gennemskue programmet virkemåde, herunder sammenhængen mellem input og output. Derefter kigger eleven "under kølerhjelmen" og prøver at forstå og sidenhen modificere koden. Til sidst skulle eleven så være i stand til selv at programmere sit eget program.

Tutorial

W3Schools har brugervejledninger i en række programmeringssprog og en helt masse mere, herunder en rigtigt fin, interaktiv tutorial i Python.

Ud over en introduktion til basisfunktionaliteterne i Python, hvor den lærende kan skrive og afvikle egne kodebidder direkte i browseren, inderholder tutorialen også et opslagsværk over funktioner og metoder.

Toturialen er mest anvendelig for en underviser, som ønsker at lære Python.

Tips og tricks

Punktum i stedet for komma

Python bruger punktum i stedet for komma i matematiske udtryk, f.eks. skrives 2,3 som 2.3. Det er ofte forvirrende for eleverne.

Husk moduler

Nogle gange skal du importere såkaldte moduler for at visse funktioner virker. F.eks skal du huske at importere matematik-modulet math for at kvadratroden math.sqrt () virker. Du skal skrive f.eks. import math i starten af din koden.

Eksempler på faglige forløb

Nulpunkter og toppunkt i Python

I Det Erhvervsfaglige Eksperimentarium kan du finde et matematikforløb, hvor eleverne skal forstå, anvende og skrive kode til et Python-program, der kan beregne nulpunkterne og toppunktet for en andengradsfunktion.

Se mere her

Eventyr i Scrath

Det Erhvervsfaglige Eksperimentarium indeholder et færdigtudviklet danskforløb, hvor eleverne bruger Scratch til at skrive et interaktivt eventyr (bygget over kontraktmodellen med en hjem-ude-hjem komposition).

Se mere her