Podcast

Med to gode kolleger, Anders og Tor, har jeg produceret podcast-afsnit i lidt over to år. Det er blevet til ca. 12 afsnit, som udkommer med ujævne mellemrum. Reaktionerne er meget forskellige: Nogle spørger uforstående hvorfor i alverden vi gør det? Andre synes det er fascinerende.

Er det narcissistisk navle-pilleri med dopamin-afhængig jagt på likes? Vi gør det ihvertfald, fordi vi ikke kan lade være. Vi har alligevel altid fagsnakke, som fletter sig sammen med forhold i samfundet og i privat- og arbejdsliv. Optagelsen af indholdet bevirker, at vi rent faktisk får sat os ned og snakket sammen i lidt længere tid end over frokostbordet. Kunne et almindeligt møde ikke gøre det? Tjoo, men optagelsen af podcast er åbenbart det ekstra nøk, der skal til før vi får sat os sammen.

Jeg betragter podcasten som et professionelt læringsfællesskab (PLC), som endda rækker ud over de snævre faglige og didaktiske rammer, som et PLC ofte ligger inden for. Kollegial supervision er en anden måde at lave PLC. Facebook-grupper en tredje måde. Teamet omkring en klasse en fjerde. Hver form giver nogle rammer og noget indhold, som giver sine forudsætning for udvikling.

Et oplagt benspænd er pædagogiske udfordringer, som kører fra tid til anden, som skal løses mellem hvert afsnit, og reflekteres over under optagelsen af næste afsnit. Fx har vi afprøvet virtuel undervisning før Corona. Og så undersøger vi selvfølgelig, om formatet kan bruges til noget overfor eller sammen med eleverne. En lektie eller elever, der selv producerer indhold.

Vores produktionsværdi er selvsagt lav. Meget lav. Der er ingen af os, som bruger mange øjeblikke på at forberede eller planlægge afsnit. Og podcast-branchens generelle råd er at producere 5-10 dummi-afsnit, før første rigtige afsnit optages og publiceres.

Men hellere en god og hyggelig snak med kolleger, end ingen snak. En af svaghederne ved vores treenighed er dog, at vi er for ens, og vi mangler variation ifht. de synspunkter, som kommer på bordet. Derfor er vi bedst, når vi har gæst(er).

Her kan høres vores p.t. seneste (og måske bedste) afsnit, hvor vi har besøg af Kristian:

Udgivet i Sociale medier | Kommentarer lukket til Podcast

Det nye SRP

Det er aldrig en god ide at bruge ordet “ny” i en titel. Intet forbliver nyt og eksempler på brugen af ny som “Ny Alliance” og “Den nye bager” virker umiddelbart forfriskende, men også malplacerede efter kort tid.

Ligeledes er det en skidt ide, at bruge forkortelser i en titel. Det er indforstået og dårlig formidling. SRP = studieretningsprojekt. Men p.t. (2020) er første år med prøver i en ny SRP, som er gymnasiet bud på en større akademisk formidlingsopgave.

Det nye består bl.a. i, at SRP nu skal præsenteres og diskuteres (forsvares ville nogen kalde det) mundtligt. Jeg er rigtig godt tilfreds med den måde man har kombineret elementer af projektarbejdsform og tilhørende mundtlig præsentation fra AT, med det grundige research- og skriftlige formidlingsarbejde fra den gamle SRP.

Det er rigtig rart at have et solidt grundlag (20 siders opgave og mundtligt oplæg) at vurdere en præstation ud fra i forhold til AT, hvor det hele hang på et 12 minutters oplæg (som eleven næsten altid klarede godt) og en ca. 12 minutters samtale, hvori vi skulle omkring to fagligheder, kobling af fagene og videnskabsteori.

Samtalen mellem elev, eksaminator og censor, som altid er den mest interessante del er tilstrækkelig til at få et indtryk af elevens fagsprog, metodemæssige forståelse og grad af fordybelse, som alle kan tælle med i helhedsvurderingen.

Det er også rart, at vurderingen ikke skal foregå mellem censor, eksaminator (første vejleder) fra forskellige fagområder og en tredje fagkollega (anden vejleder med samme fag som censor) på sidelinjen, der deltager gennem noter og en karaktervurdering, som er givet til første vejleder.

Nu er vurderingen mere reel. Der er en klarere opdeling af rollerne, idet censor og eksaminator alene repræsenterer hvert sit fagområde og har kun hinandens vurderinger at tage hensyn til.

Eleverne er lige så udfordrede på at producere et skriftligt akademisk formidlingsprodukt, som de altid har været. Valg af område, som favner og kombinerer to fag, valg af metoder, materialer og kilder, skrive klart og præcist, vise fordybelse og selvstændighed. Heldigvis har eleverne nu en chance for at forklare valg og uddybe indholdet til eksamen, omend 10 minutter ikke er meget, og flere elever blot gengiver opgavens indhold i forkortet form, hvilket kan synes som spild af tid.

Jeg ville ønske, at vi udfordrede eleverne mere på deres valg af en sag, som kombinerer to fag, og ikke blot belyser den fra to forskellige vinkler. Valg af sag bør indgå i bedømmelsen. I mange sager, som jeg har været vidne til, bliver naturvidenskab blot brugt til at “få noget mere viden om baggrunden i sagen” uden at denne viden bliver brugt til ret meget.

I en velvalgt sag, har begge fag en tydelig indflydelse på sagens enten årsager, forløb eller konsekvenser. Fx pesten over Europa, hvor biologiske faktorer (bl.a. populationstæthed, genetik og ernæring) og kulturelle faktorer (bl.a. handel, økonomi og religion) spiller ind på udbredelsen af sygdommen (kunne man kaste samme blik på covid-19?). Eller formidlingsartiklen, hvor det naturvidenskabelige indhold skal tilpasses en målgruppe, som ikke er forskere.

Men alt i alt fire ud af fem stjerner til det nye SRP.

Udgivet i Skriftlighed | Kommentarer lukket til Det nye SRP

Interaktionsdesign og Netværk

“Interaktionsdesign og didaktik” er titlen på et kursus jeg har fulgt på SDU Kolding. Semesteret før (efterår 2019) fulgte jeg “Netværk og Sikkerhed” på SDU. To meget forskellige kurser, med det til fælles, at de dræner meget af min kreative energi. De ledige stunder jeg før brugte på egne projekter og udvikling, går nu til indholdet på kurserne.

Det første kursus har givet mig en række metoder inden for interaktionsdesign og inspiration til at arbejde videre. Særligt tre områder tænder mig: grafisk facilitering, embodiment og design thinking.

Grafisk facilitering er sjovt. Jeg har altid tegnet meget, og det ville være rart at få tilbage, som en del af min praksis. Jeg bilder mig ind, at tegning formidler og fokuserer indholdet på en anden måde end ren tekst, men jeg har endnu ikke fundet en undersøgelse, der efterviser det.

Embodiment handler om at have kroppen med i undervisningen. Hjernen er ikke et isoleret organ, og skolen har nok en tendens til at overfokusere på de intellektuelle forhold og glemme kroppen. Kroppen sanser miljøet og kan interagere med det. Kroppen kan bruges som et kognitivt stillads til læring, og nogle anbefaler at undervisning skifter mellem refleksion og “mindful action” (1).

Mindful action kan ske på mange måder. Rollespil er en udbredt måde. Tværfaglighed og fremmede objekter eller lokationer kan inspirere til nye måder, at inddrage kroppen.

Design thinking (engineering?) betragter jeg som en del af computatioal thinking (CT), som handler om at overveje hvordan digital teknologi kan bruges (herunder hvordan det virker) og hvad det gør ved os og samfundet. CT konkretiseres i bl.a. mønstergenkendelse og abstraktion. En vej dertil kan være ved at arbejde undersøgelses-baseret på komplekse problemer (wicked problems) i en iterativ tilgang, som kendes fra design. Alle digitale produkter er frembragt gennem design thinking.

Design thinking ligner på nogle punkter naturvidenskabelig metode -begge er iterative. I design thinking er det designeren (og andre interessenter), der skal co-designe en løsning. I naturvidenskab er det forskeren, som skal tolke data ud fra logik. Design thinking evaluerer, mens naturvidenskaben af- eller bekræfter en hypotese. Det er der lavet mange flotte diagrammer af fx dobbelt-diamanten. Design thinking kan bruges i design af forsøg.

Nogle sekvenser, som kunne udvikle grafisk facilitering, embodiement og/eller design thinking kunne være:

  • Forsøggange som storyboard eller rutediagram. Særligt velegnet ved gentagelser eller forgreninger
  • Design-metoder i elevernes udvikling af forsøg. Trinvis forbedring.
  • Brikker til rutediagrammer
  • Udklippede kodebrikker
  • Objekt-teater/bodygramming: Lad eleverne udspille projekter og programmer
  • Mere krop i undervisningen fx gennem tværfaglighed, nye objekter eller lokationer
  • Netlogo til use-modify-create
  • Kode som brætspil
  • Line Have Mussaeus, som bl.a. arbejder med Netlogo
  • Scenarie- eller spilbaseret didaktik

Den overordnede pointe, som jeg har mødt, er at teknologiforståelse og informatik ikke skal være et programmeringskursus, men anvende give eleverne meta-strategier ifht. at anvende og analysere digitale produkter.

  1. Larson, D. J. (2015). Don’t Forget About the Body: Exploring the Curricular possibilities of embodied pedagogy . Innov High Educ(40), pp. 331–344.
Udgivet i Computational thinking, planlægning | Kommentarer lukket til Interaktionsdesign og Netværk

Informatik c -year ½

Jeg har nu undervist i informatik c i et halvt år: year ½. Mine to forløb har været hhv. oplevelsesteknologi (Escape Room) / spiludvikling (læringsspil til en målgruppe) og webudvikling (udvikle website til målgruppe). De største udfordringer har været:

  • Samarbejdet i grupperne. Forskelle i niveau og læringsstile, har gjort nogle af grupperne meget uhomogene, særligt i andet forløb, hvor jeg lavede grupperne tilfældigt.
  • Fagligt overblik. Fx forløbet om webudvikling krævede overblik over html og css-mulighederne, som jeg ikke havde. Det synes jeg, at jeg har nu.
  • Ramme balancen mellem tilpas simpelt system og frihed til at eleverne kan skabe. Fx er micro:bit simpelt, men det er svært at lave noget kompliceret med systemet. Modsat er fx en Arduino avanceret -stejlere læringskurve, men kan bruges til mange ting.

Efter julen (2019) skal jeg i gang med et forløb om fysiske IT-systemer, fordi den taktile del af et IT-system giver mulighed for øget kreativitet, analyse og feedback. Det bliver mere vedkommende at udvikle til den fysiske verden, end at lade det hele blive inde i den virtuelle verden.

Der er mange muligheder:

  • Lego-robotter. Follow the line og Kunstig intelligens fx med Roberta IDE’et online (særligt til robotter, indeholder simulator til EV3). Fordele: Ret let at komme igang. Kan udvides fra blokke til Python eller C kode. Ulemper: der er mindre kreativitet i den fysiske del af lego, dele skal passe sammen og vil aldrig ligne noget fra virkeligheden. EV3-klodsen er ret stor og uhandy.
  • mBot kodes fx med mBlock IDE online. Ulemper: mBot er et avanceret samlesæt. Der er ikke meget design eller kreativitet i den. Fordele: Den kan udbygges med laserskårne dele fx for at give robotten et bestemt udseende. IDE arbejder både i blokke og i C++/python. Der er en Arduino udvidelse til IDE’et, men få biblioteker (DHT) og adgang til andre MCU-boards (fx er wemos-serien ikke tilgængelig), men ingen print.
  • Arduino. Kan kodes med Arduino IDE eller mBlock online. Mulige projekter: rum-/sundhedsdragt som målet temperatur, stok til svagtseende, robotbil. Fordele: Man kan lave næsten alt. Ulemper: sværere at komme i gang med, men blokkene i mBlock kan være en indgang (ligner mBit) – dog er der ikke adgang til fejlmeddelelser eller seriel monitor i mBlock. Ukorrekte og løse forbindelser kan frustrere.
  • Wemos D1 mini. ESP32 baseret IoT enhed. Fordele: Kan komme på nettet. Ulemper: pin layout er anderledes end Arduino. Kun Arduino IDE understøtter boarded.

Andre IDE’er er ScratchX og thinkerCAD, men de er begge for simple/mangler adgang til board/biblioteker. Arduino online IDE: Arduino Create: Den giver ikke adgang til wemos mini, men dog til lilypad. Vil den begrænsede compilerings-tid blive et problem? Eller vil clear cache i browser hjælpe?

Der er mange usikre elementer og derfor lander jeg på det sikre valg: Arduino IDE, tekstbaseret (y). Projektet kommer til at omhandle wearables og forhåbentlig kan der komme lidt digital produktion (laserskærer/3d print) ind over.



Udgivet i Arduino, Elektronik, Maskinlæring, Programmering | Kommentarer lukket til Informatik c -year ½

Vertikal vækst update

efter 3 uger i lyskasse

Der har været plantevækst i lyskassen. Men væksten er begrænset (ca. 50%) i forhold til planter i vindueskarmen, og bladene som spirer frem er krøllede og kompakte.

Derfor har jeg opgraderet(?) kassen indvendigt med alu-folie, som reflekterer lyset og dermed skulle give et større foton-udbytte. Det har i første omgang resulteret i, at planterne i kassen hurtigt er udtørret, hvilket jeg tolker som et godt tegn: mere energi (lys og varme) i kassen.

Dertil har jeg ændret farverne lidt, så kun hver fjerde LED lyser med blåt+rød (rgb 255,0,255) og de øvrige 3/4 lamper lyser rødt (rgb 255,0,0). Det siges at blåt lys inducerer vækst af blomsterstande og det ønsker jeg ikke.

De kommende uger vil afsløre om det forbedrer vækstforholdene i kassen. Næste trin bliver at udvikle en konduktivitets-måler til at følge mængden af næringsstoffer.

lyskasse 2.0

Udgivet i Arduino, biologi, bioteknologi, Maker | Kommentarer lukket til Vertikal vækst update

Vertikal vækst

Haver i flere etager (vertikalt) med kunstigt lys, som kræver mindre vand og gødning, og er mindre udsatte for sygdomme, har måske en fremtid i lokal fødevare-produktion.

Afgrøder kan vokse i Leca eller stenuld, hvorfor de mindre udsatte for jordbakterier og dermed sygdomme. Afløb af vand og opløst gødning siver ikke gennem jord, men kan opsamles og genbruges. Temperaturen kan reguleres og produktionen kan opretholdes året rundt.

Vertical Tower Aquaponic System

Ulemperne er energiforbrug til LED-belysning, pumper, varme og til at fremstille stenuld, LED’er, gødning m.m.

I undervisning vil jeg dele holdet i to, og lade den ene halvdel lave et system, der automatiserer vanding, og den anden halvdel lave et system, der tænder rød/blå LED’er, når der ikke er nok dagslys.

Lysmåling kan klares med en LDR (light dependent resistor) og en WS2818B-LED-strip, hvor hver LED kan programmeres individuelt mht. farve (RGB kode). Hver gruppe arbejder med een LED-strip (da Arduino ikke har strømstyrke til meget mere (max 40 mA pr. pin) og fastLED biblioteket fx sådan:

for (int i = 0; i < 30; i++) {
    leds[i].setRGB(255, 0, 0); // red light
    if (i % 2 == 0) {
       leds[i].setRGB(255, 0, 255); //red and blue light
    }
    FastLED.show();
  }

Kredsløbet kunne sættes sammen som:

P.t. kører jeg et lille forsøg, for at undersøge om 5V LED-strips leverer tilstrækkelig energi (fotoner) til at understøtte plantevækst. 5 strips i rød/blå farver lyser på en plante (basilikum) i en lukket papkasse. Dertil kontrolforsøg med planter i hhv. dagslys og i mørkt skab. Her forsøget med lyskasse:

Basilikum i LED-belysning

Foreløbig ser det ud til, at belysningen ikke er optimal, men dog brugbar til plantevækst, idet planten ikke er død (som den i det mørke skab). Jeg ved ikke hvordan eleverne skal arbejde med koden. Af use-modify-create er vi nok på modify-niveauet fx at arbejde med farvekoderne og med at indstille grænseværdien for lys-niveauet.

Der er nogle praktiske udfordring i, at lys fra LED'erne rammer LDR-sensoren, hvilket får LED-strippen til at slukke, hvorefter lyset er væk, så LED-strippen tænder, og slukker... LDR'en skal muligvis placeres et helt andet sted (IoT). Det kan også være et problem, at mange lokaler har meget elektrisk lys, hvorfor nedsat mængde dagslys kan være svært at registrere.

Dertil skal jeg finde ud af hvordan planterne kommer til at vokse vertikalt i et tårn, så det ser fedt ud. Måske ved hjælp af 1½ liters plastikflasker.

En opstilling (billedet ovenfor) trækker 2,3 Watt, når LED'erne er tændt (0,4 watt uden lys). Ved 24 timers brug med lys (hvilket ikke er realistisk, da LED'erne ikke vil være tændt hele tiden) koster det ca. 11 øre om dagen og 40 kr. pr. år:

https://strøm.dk
Udgivet i Arduino, biologi, Programmering | Kommentarer lukket til Vertikal vækst

Micro:bit i Escape room

Så er mit første forløb på i mit første år som informatik-underviser ved at være slut. Vi arbejder på et Escape Room bygget på Micro:bit enheder. Et favorit-område for mig, men ikke særlig velegnet til første forløb: Hardware og software og brugeroplevelse skal spille sammen, så der er mange steder det kan gå galt.

Målet var at udvikle et Escape Room til brug under Naturvidenskabsfestivalen, hvor skolen får besøg af utallige 7., 8. og 9. klasser, der bruger 25 minutter ved hver post. Informatik var en af disse poster, hvorfor vores Escape Room oplevelse skulle genbruges ca. 12 gange på en dag.

Trods det lidt barnlige udseende, er der flere fordele ved Micro:bit. Den kan kodes i blokke og tekst (JS). Den er ret let at tilgå fysisk fx med krokodillenæb, hvorfor jeg ikke var så bange for hardware-delen. Alligevel var der flere elever, som stødte på problemer. Bl.a. en gruppe, som arbejdede med servo-motorer, der måtte skifte spor, og en gruppe, som bøvlede en del med gyro’en (jeg tror, at vi kom frem til hvordan denne skal aktiveres).

Vi begyndte med en række fælles opgaver, som introducerede variable, datatyper, kontrolstrukturer, funktioner, eventHandlers, hardware-komponenter m.m. Jeg introducerede tre komponenter:

  • en arkade-trykknap,

  • en servo-motor og

  • en programmerbar LED-strip

Derefter turde eleverne (som er en del dygtige 3.g’ere) kaste sig ud i deres egne projekter.

Højt til loftet og vide vægge, som man siger. Mindre kreative elever kan benytte de indbyggede sensorer og feedback-muligheder. Elever, der gerne vil udfordres mere kan koble de introducerede komponenter til og andre kan selv finde komponenter på nettet. Flere fandt bl.a. på at koble højttalere til deres bit.

Undervejs introducerede jeg til arbejdsprocessen i udarbejdelsen af et IT-system, herunder brainstorm, programmering, IT-systemers feedback og tænke højt test. Elevernes projekter gav rigelige muligheder for at teste systemerne.

Elevernes opgave lød som:

Kravs-specifikation:

I skal udvikle et IT-system på Micro:bit, som ved hjælp af hardware og software giver brugeren (unge i alderen 13-20 år) en oplevelse af at løse en gåde (puzzle) på 2-15 minutter.

Systemet skal give feedback under brug fx ved hjælp af lys eller lyd, og systemet skal give tydeligt feedback (herunder et tal), når gåden er løst.

Hele systemet skal kunne genbruges -det må ikke være nødvendigt at ødelægge det for at løse gåden.

Jeres opgave i grupper a 2-3 personer:

Udvikle IT-systemet ovenfor gennem en række af prototyper og bruger-tests. Resultatet (tallet) fra hver gåde kan bruges til at åbne en kombinations-lås, som giver adgang til en præmie.”

Vi valgte at indrette vores Escape Room i en ubrugt del af skolens kælder, hvilket gav en god stemning. Temaet blev Halloween, og lidt udsmykning, en røgmaskine og nogle LED-strips gav rigtig gode effekter.

Jeg havde valgt at følge nogle af de trends, som findes blandt Escape Rooms, herunder: 1) Lad være med at låse folk inde: Kald det et Escape Game, og lad brugerne bryde ind i noget frem for ud. 2) Åben frem for linær vej: Lav et antal gåder, som skal løses uafhængigt af hinanden (vi havde fire kasser med kombinationslåse), så alt ikke står og falder med een gåde.

Selve dagen forløb over al forventning. Vi havde alle de mange folkeskoleelever igennem et stramt program: forhåndsundersøgelse (“Ved I hvad et Escape Room er?”), do’s and dont’s. 15 minutter i vores Escape Room og kort afsluttende evaluering: Alle meldte om en god og anderledes oplevelse.

Der var selvfølgelig noget teknik der drillede, men ikke mere end vi kunne lægge en seddel med et tal, og rette op på fejlen til næste besøg af brugere. Et spændende test-resultat var bl.a. at nogle børn ikke kender gruppen ABBA. Da vi testede på os selv, gav det ingen problemer, men børn på 13 år er anderledes 🙂

Eleverne havde lavet mange gode opgaver. De opgaver, som måske virkede bedst, var dem, der var ret fysiske og gav tydeligt feedback fx en “don’t touch the wire” opgave, hvor to stykker kobber-wire ikke må røre hinanden.

En anden vellykket opgave, hvor bittens gyro har koblet til en højtaler -det hele gemt i en flyttekasse. Systemet skulle drejes i forskellige retninger, og gav en lyd af højere og højere frekvens efterhånden som brugeren nærmede sig den rette manipulation. Hver rigtig bevægelse blev belønnet med et højlyd ding a la SuperMario.

GDPR = ingen billeder fra dagen.

Udgivet i Elektronik, Micro:bit | Kommentarer lukket til Micro:bit i Escape room

Sommerskole 2019

Sommerskole -et mødested for makers og andet godtfolk. I år havde jeg begge børn med og det var en blandet succes. Vi fik lavet nogle gode og hyggelige projekter, men der blev også set en del skærm.

Det er mere netværket der tæller, og der er blevet længere mellem tech-nyhederne for mig, men der er dog nogen:

  • En plade, som er printet i meget tyndt fx PLA, kan fungere som en trykknap, hvis der sidder en flad kontakt lige under.
  • Sådan en plade kan også fungere som et lysende felt, hvis der sidder en kraftig LED nedenunder.
  • Propellerne fra en drone kan bruges som ventilator.
  • Byggeprojekt: stue-springvand.
  • Et mikroskop med mini-skærm kan bruges til det fine elektronik-arbejde.
  • Ved serie-forbundne solceller, kan en diode forhindre, at en af cellerne går.

Næste år skal vi mødes i Vejle og se Johannes & Co’s faciliteter (y).

Udgivet i Elektronik, Maker, Programmering | Kommentarer lukket til Sommerskole 2019

NetLogo

NetLogo er et agentbaseret simuleringsværktøj, som jeg bruger til computational thinking (CT). Her taler vi den konkrete del af CT, som arbejder med kode. Trods mine forbehold overfor endnu en platform til kodning, er mine første erfaringer med NetLogo overvejende positive.

Netlogo har en ret letforståelig syntax. Der er få mystiske ord og tegn (fx er mange sprog fyldt med { } parenteser og semikolon-tegn) og ingen indryk (som kendes fra Python). Erklæringer og opdateringer klares med nøgleordet “set” og systemet er født med en tids-variabel (dt=1), som inkrementeres for hvert loop.

Mit konkrete forsøg omhandler simulering af logistisk vækst. Eleverne får udleveret en online model i NetLogo over eksponentiel vækst (dN = N*r*dt), som de skal forstå og skal modificere til at simulere en logistisk vækst (dN = (N*r_max*(1-N/K))*dt). Der plottes forskellige data mod tid fx antal individer, vækstrate, bæreevne). Simulationen er selvfølgelig ledsaget af nogle stilladserende spørgsmål, som sikrer faglig og taksonomisk progression.

Jeg har lavet samme system i Python, hvilket er meget let vha. Numpy biblioteket og platforme som fx trinket.io.

MEN.. NetLogo tillader implementering af ‘slidere’, så værdier som N(0) (start population), vækstrate, bæreevne m.v. kan manipuleres før eller under simuleringen. Det giver online Python ikke mulighed for (der findes et underbibliotek af Numpy, som ikke er en del af trinket.io).

NetLogo-applikationerne har jeg gemt i en onlineudgave, som hostes på en Github-side. NetLogo HTML koden er MEGET lang, så hverken et google-site eller github, kan vise hele teksten i HTML-filen, hvorfor ændringer bliver foretaget i notepad :-(, som derefter oploades til mit Github-repository og vises på siden.

Nu er jeg selvfølgelig spændt på hvad eleverne siger. Finder de det let at forstå og ændre koden? -De tog ret blandet imod opgaven. Givet de er 3g’ere i slutningen af skoleåret og gymnasiet, var motivationen ikke særlig høj. Ingen havde svært ved at løse opgaverne, men det var ret blandet hvor langt de nåede. Fx nåede de færreste opgaverne med forsinkelse indbygget i modellen. Nogen gav udtryk for, at det var sjovt..

Hele opgaven: https://raskrawen.github.io/Growth/

Senere fik jeg det råd, at lave en endnu mere grafisk model, hvor hvert individ er en prik. På den måde bliver det forhåbentligt tydeligere for eleverne at det er en population vi modellerer.

Udgivet i biologi, Computational thinking, Programmering | Kommentarer lukket til NetLogo

Kø i Micro:bit

Jeg påstår at en Micro:bit kan udføre de samme opgaver, som en Arduino. Dertil en Micro:bitten nemmere at komme igang med (indbyggede sensorer og LED’ere) og har mere hukommelse og hurtigere processor end Arduino.

Micro:bittens ry for “at være til børn” skyldes nok, at den er udleveret til 4. klasser, og de fleste online kilder er henvendt til børn. Micro:bit er yngre, og derfor er der mindre materiale, den er britisk, så det amerikanske og asiatiske marked udviser begrænset interesse. Dertil skal den ofte forbindes til et breakout-board for at lave avancerede ting.

Selv kodningen er også lidt anderledes. Arduino kodes traditionelt i et c++ lignende sprog, mens Micro:bit normalt begynder med blokke, derefter JavaScript og til slut MicroPython, hvis der skal meget funktionalitet på.

Et Arduino-program afvikles sekventielt fra A til B til C, der er ingen andre veje. Noget der har irriteret min underbevidsthed er, at på Micro:bit afvikles en start-sekvens og derefter et forever-loop. Men forever er ikke forever, for smider jeg en “onButtonAPressed” funktion ind bliver den afviklet, når knap A trykkes.

Forever afbrydes -der er noget ulogisk i den sekvens. Noget jeg ikke har kontrol over.

Eksemplet herunder kører netop et blinkende hjerte i forever-funktionen, men trykkes på knap A kommer et Happy-face pludselig frem.

Heldigvis har jeg fået genoprettet min logiske sindsro ved at lære om Micro:bits scheduler, som holder styr på, hvad der afvikles hvornår. Funktionerne på Micro:bit afvikles via en runtime-kø. Scheduleren checker hver 6. millisekund rækkefølgen i runtime-køen, og Forever-loopet har laveste prioritet (kører i baggrunden) i runtime-køen.

Dvs. når der sker en event køres en event-handler fx input.something, og denne kommer ind forrest i runtime-køen og bliver straks afviklet. Sker der andre events kommer de ind bag i køen. Funktioner der afvikler en pause stilles i en pause-kø og fortsættes, når pausen er slut. Imens der er pause, kan næste funktion i runtime-køen starte/fortsætte.

Derfor vil eksemplet herunder også vise et blinkende hjerte (forever-loopet). Men når der trykkes A, afvikles en event-funktion og en smiley vil straks fremkomme. Derefter går eventhandler-funktionen på 5 sekunders pause, og imens kører forever-loopet igen, indtil pausen er forbi, eventhandler-funktionen kører videre, som ses ved en sur smiley.

Arduinoen kan selvfølgelig noget lignende via Interrupts, der lytter efter events, men disse skal hardkodes, hvorimod Micro:bitten umiddelbart er født med interrupts.

Mere info: https://makecode.microbit.org/reference/event-handler, https://lancaster-university.github.io/microbit-docs/ubit/messageBus/

Udgivet i Arduino, Micro:bit, Programmering | Kommentarer lukket til Kø i Micro:bit