I uke 31 arrangerte Kodegenet en Kodeleir i Østmarka i Oslo. Leiren ble besøkt av 20 deltakere fra store deler av landet, fra Oslo og omegn, Tinn og Bergen (!). Kodeleiren er en unik kombinasjon av tradisjonell leirskole, uteaktiviteter, programmering og 3D printing. Vi fikk også god tid til å spille både brettspill, kort og rollespill på kveldene.

Dette innlegget er hentet fra kodegenet.no/news/2016-08-15-oppsummering_kodeleir.

Dag en

Etter litt nettverksutfordringer i starten kom vi likevel godt i gang med det planlagte programmet.

Etter oppmøte på parkeringsplassen ved Skulleruddumpa startet vi dagen med en 4 km gange inn i skogen til Østmarkskapellet. Vel fremme brukte vi formiddagen til å ordne lunch, finne sengeplasser og til å sette opp 4 av de 6 3D printerne vi hadde med oss. Kurset første dagen bestod av 3D-design og 3D-printing av både navneskilt og batteriholder.

Til middag stod det hjemmelagde hamburgere og hamburgerbrød på programmet og en av gruppene hjalp til med middagstjeneste.

Kodeleir Dag en

Dag to

Dag to av kodeleiren startet med skogstur rundt rundvann og smalvann med tilhørende bading. På turen første dagen var det anledning til å sjekke ut Pokemon Go-ferdighetene, som flere av deltakerne benyttet seg av 🙂

Etter turen og lunch startet vi med Arduinoprogrammering. Her lærte vi å bruke blockuino.no for å generere Arduino-kode slik at vi kunne få LED-lamper til å blinke og bruke en DHT11-sensor for å måle romtemperaturen.

Til middag stod det hel-grillet flatbiff og sitronpoteter, som falt godt i smak!

3D-printerne fikk gått store deler av dagen og printet ut alt fra Minecraft-hus til batteriholdere. På kvelden har vi kost oss med vafler og brettspill lånt fra Deichmann på Lambertseter.

Kodeleir dag 2

[youtube https://www.youtube.com/watch?v=dVuHEStVxpA]

Dag tre

Dag tre av kodeleiren startet med en gåtur til Langvann for å bade. Der var det såpass fint at barna ønsket seg tilbake dagen etter, så da bestemte vi oss for å ta med ved og marshmallow til dagen etter 🙂

Etter turen programmerte vi Arduinoen til å måle temperatur og fikk skrevet ut både navn og temperaturen på et OLED-display.

Til middag hadde vi hjemmelaget pizza med ymse topping, før programmet bød på Minecraft-spilling, 3D-printing, brettspill og kortspill.

I tillegg fikk vi laget papir raketter som ble skutt opp ved hjelp av trykkluft. Alt i alt begivenhetsrik dag 🙂

kodeleir3

Dag fire

Dag fire, nest siste dag av kodeleiren startet med frokost og en runde Arduinoprogrammering, mens det regnet ute. Vi fikk programmert visning av temperatur-graf på OLED displayet, og samtidig målt luftfuktigheten ved hjelp av DHT11-sensoren.

Etter lunch gikk vi tilbake til Langvann hvor vi badet og grillet marshmallows. Vel tilbake til Østmarkskapellet, forberedte vi middag, pasta med bolognesesaus, etterfulgt av fri aktivitet med blant annet papir-rakett oppskyter, brettspill og kortspilling.

kodeleir4

Dag fem

Siste dag av kodeleiren startet dagen med “pizza bolognese”, med resten av pastasausen fra dagen før. Etter frokost ryddet vi rommene våre og pakket klær og andre eiendeler fra rommene ned i sekkene våre.

Det aller siste kurset på kodeleiren bestod i lodding av batteripakken til Arduinoen. Batteripakken består av en 3D printet holder, et Li-ion batteri, samt både lader og step-up konverter for å gjøre Arduinoen trådløs (og ladbar).

Helt på tampen rakk de som ønsket å være med et raskt bad i Rundvann før foreldre og søsken kom innom på grillavslutning kl 14!

kodeleir5

Takk til alle som deltok!

Takk til Nora, Øystein, Andreas, Harald og Joachim som har stilt opp som veiledere og ikke minst til barna som har vært fantastisk flinke både til å programmere, være med på tur og til å lage mat og hjelpe til!

Kanskje sees vi til neste år? 🙂

Den første helga i juni arrangerer Kartverket og Difi hackathonet #hack4no på Hønefoss over temaet kart og åpne data. I den forbindelse inviteres også alle datainteresserte barn og unge til junior-hackathon.

Ideene bak junior-hackathon slekter mye på kodeklubbene. Vi vil vise barn hvordan de selv kan være kreative og skapende med datamaskinen. Samtidig er det litt ekstra fokus på å vise frem at åpne data kan være nyttige også for barn og unge, hvor vi vil presentere noe av det som finnes og lære dem å ta dataene i bruk. For eksempel ved å lage Minecraftverdener konvertert direkte fra åpne kartdata.

Deltager på hackathon?

Om du allerede tenker å delta på Hackathon er junior-hackathon en glimrende anledning til å dele datainteressen med hele familien. Både hackathon og junior-hackathon foregår ved hovedkontoret til Kartverket utenfor Hønefoss.

junior-hackathon

Barn som ønsker å delta?

Junior-hackathon er for barn og unge med ingen eller en del programmeringserfaring, og vil være en arena hvor de vil oppleve hvordan man bruker datamaskinen på en kreativ måte. Samtidig vil de treffe barn og voksne med tilsvarende interesser. Programmet inkluderer ting som programmering i Minecraft, rebusløp, hvordan GPS virker, hvordan lage sine egne kart, og hvordan man bygger en app. Hovedprogrammet er tilpasset aldersgruppen 12 – 16 år, men mange av aktivitetene vil også passe fra 8 år og oppover, i tillegg til at de yngre barna får egne utfordringer i blant annet Scratch og Lego (i et program vi har kalt junior-junior-hackathon).

Bidra på andre måter?

Ungdom og voksne som vil være med å veilede barna eller bare er nysgjerrig på hva barna gjør er hjertelig velkomne til Hønefoss disse dagene. Om du har noe du vil lære bort til barna, for eksempel datavisualisering i Processing, interaksjon med omverdenen gjennom Arduino eller helt andre ting så ta kontakt med junior-hackathon-ansvarlig Geir Arne Hjelle.

Praktisk å vite

Junior-hackathon foregår fredag 5. juni og lørdag 6. juni ved Kartverkets hovedkontor på Hønefoss. Deltagelse er gratis, og alle måltider er inkludert. Junior-hackathon starter klokken 15:00, men om noen barn kommer tidligere (hackathon starter på morgenen) vil det være aktiviteter også før klokken tre. All info, inkludert påmelding og informasjon om overnatting, finnes på nettsiden http://hack4.no/. Se også flyer for junior-hackathon.

Ta med deg selv og barna til Hønefoss første helga i juni! Påmelding innen 17. mai.

For å gjenta successen fra fjoråret, slo Programutvikling og LKK hodene sammen atter en gang og dro igang en konferanse for barn og unge. Mange syntes det var stas å være i 34 etasje med utsikt over hele byen, og få servert ny lærdom blandet med boller.

2014-06-03 19.56.22

Siden vi var enda flere i år som i fjor, hadde vi et ekstra stort auditorium i første etasje, dedikert til Scratch med Torbjørn Skauli. Kurset var det første som ble fullbooket og der satt det 60 ivrige barn med tålmodige foreldre ved siden av, og fikk katten til å mjaue og løpe på taket.

2014-06-03 18.39.20

Oppe i trettifjerde etasje hadde vi 6 andre parallelle tracks.

I ett av de større rommene oppe holdt de unge kurset selv om spillutvikling i Kodu. Kristoffer Moe Lundquist og Ole Lassesen Ekern stilte modig opp med Øystein Imsen og Bjørn Sør-Reime Erga nikkende fornøyd fra salen.

Ermesjo_NDC2014_DSCF1963

De aller eldste lærte å “hacke” til kommandolinje med veiledning fra Rustam Mehmandarov (aka ninjaen) og Harald Solstad Fianbakken (aka samuraien).

2014-06-03 18.06.53

For å gjøre kvelden komplett måtte også litt robotikk til såklart! Joachim Haagen Skeie holdt et kurs i Arduino, der diverse propellere spant veldig fort!

Ermesjo_NDC2014_DSCF2010

Dessuten kom Pernille Omberg og Adnan Hajic på besøk og satt opp stand med Lego Mindstorm roboter som jaget etter intetanende forbigåere på sine små hjul.

Ermesjo_NDC2014_DSCF2029

Scratch var ekstremt populært, så vi satt opp hele to kurs i det! Med Jan-Erik Vinje i spissen stod Itera på og lærte barna å programmere Flappy Bird.

Ermesjo_NDC2014_DSCF1971

Computercraft er et plugin for Minecraft, og passer perfekt som introduksjon til programmering for unge i 10-15 års alderen, spesielt de som er allerede hekta på Minecraft. Helge Astad fikk en rask innføring av Geir Arne Hjelle i kurs-opplegget, og holdt det med stor success for en fullsal.

Ermesjo_NDC2014_DSCF2082

Bjørn Einar Bjartnes kom med skillpaddene. Sammen med Computas-gjengen gikk de gjennom grunnleggende konsepter i Python og hvordan man kan bruke Turtle-bibliotek til å tegne kule mønstre. Konsentrasjonsskyen hang tykt over rommet.

2014-06-03 17.46.36

Simen Sommerfeldt samlet foreldrene i ett av møterommene for å snakke om hvordan man kan selv starte lokal kodeklubb.

 Ermesjo_NDC2014_DSCF2070

Som takk for prosjektledelse fikk Olga en boks med spam. Boksen er nå tømt, og sommerferien kan begynne!

2014-06-03 21.34.47

Spesiell takk til Programutvikling for å ha gjort konferansen mulig, skaffet lokalene, utvidet kontaktnettverket vårt, kjøpt inn frukt og lagde flotte t-skjorter til barna! Tusen takk til alle foredragsholdere som stillte opp på en tirsdagskveld, som for mange var også dagen før “voksen-konferansen”, og tusen takk til kursdeltagerne og deres foreldre for stort iver og enthusiasme – vi håper på snart gjensyn! <3

Ermesjo_NDC2014_DSCF1924

Jeg har laget en intro til hvordan du kan kombinere Raspberry Pi, Arduino og Minecraft. Det er kanskje litt drøyt for de aller yngste, men burde være fullt mulig for 12+ Da lærer de å lodde også…

Et bra utgangspunkt for å skremme barn som vil ha godteri

Et bra utgangspunkt for å skremme barn som vil ha godteri

 

I den første artikkelen viste jeg hvordan en kan få gitt beskjed til en Arduino om at en drar i en spak vha. ComputerCraft. Denne gangen skal jeg vise hvordan du kan gjøre det tilsvarende med ScriptCraft. Det er mange forskjeller:

  • ScriptCraft bruker Javascript som programmeringsspråk. Det vil komme til nytte dersom du skal lage websider, siden all logikk der skrives i det språket
  • Du får tilgang til å hekte logikk på mange hendelser i hele Minecraft, og er ikke begrenset til “Computere” slik som i Computercraft
  • Det er vesentlig enklere å installere
  • Det er basert på bukkit-server, som er den mest populære plattformen for å lage plugins til Minecraft
  • Javascript-utvidelsen er basert på det faktum at det faktisk er støtte for å ha javaScript som scriptspråk i et javaprogram. Dermed har du også tilgang til mange Java-API´er og klasser. Så det er muligheter for å gjøre veldig mye.

Walter Higgins skapte ScriptCraft blant annet for å kunne lære barn koding i CoderDojo. Her ser du en artikkel fra CoderDojo, med noen eksempler på bruk i en kodeklubb-setting. Denne artikkelserien ser ellers ut til å være en fin ressurs for “modding” av Minecraft generelt. .

Her er en video som viser noe av hva en kan få til med ScriptCraft:

Installasjon

Dette er delvis oversatt fra den engelske veiledningen. Om du har noen Minecraft-kyndige barn er det gjort på 1-2-3

  1. Siden dette er en server-versjon, må du skaffe deg en bruker hos Minecraft – men det hadde du kanskje? Det er en engangskostnad på ca. 175 kroner. Så må du installere den vanlige Minecraft-klienten og sjekke at den virker. Det er en fordel om du har installert Java på forhånd, og du trenger ikke være redd for sikkerhetshull – her skal programmene kjøres lokalt
  2. Så må du installere Bukkit Server. som altså er en versjon av Minecraft hvor du kan legge inn plugins. Du kan laste den ned herfra
  3. Neste skritt er å laste ned ScriptCraft – altså den plugin’en som lar deg kontrollere Minecraft ved hjelp av JavaScript. Det er en enkelt jar-fil som du kopierer inn i plugins-katalogen til bukkit server.
  4. Gå til http://scriptcraftjs.org og sjekk alle de fine eksemplene. Du kan for eksempel styre en drone som bygger ting i minecraft, eller kalle på enkle kommandoer som lager fyrverkeri, arrangerer snøballkamp, eller bygger et slott!

Her er Javascript-versjonen av programmet

[gist id=”8566683″]

Kildekoden på Arduino er identisk med den forrige artikkelen, og så må du huske å kjøre den samme shell-kommandoen.

Neste skritt: Internet of things

Siden jeg sitter og pusler litt med Internet of things om dagen, spurte jeg på forumet til ScriptCraft om hvordan en kunne koble seg til MQTT fra ScriptCraft. MQTT er blant de ledende standardene innenfor feltet. Det var ikke helt rett fram, så Walter Higgins laget det like gjerne som en utvidelse til ScripCraft! Dermed kan vi koble Minecraft med sensorer og brytere i hele huset. Eller koble sammen flere minecraft-verdener på forskjellige PC´er – i forskjellige byer! Jeg har laget en demo av konseptet, og pusler med en artikkel om dette også.

Sønnen og jeg ønsket å se om vi kunne styre ting i den fysiske verden fra Minecraft. Arduino er en liten datamaskin som kan kobles til veldig mange forskjellige styre-enheter og sensorer. Om du ønsker å starte med Arduino, kan du kjøpe et startsett med en god instruksjonsbok fra Robonor eller andre steder (Ikke sponset). Det fysiske oppsettet vi brukte er identisk med “Circuit 15” i instruksjonsboka.


Som du ser på videoen, kommer det “støy” på skjermen, og vi må nok forbedre det litt. Men det funker!

Arduino med display

Arduino med display

Så rotet jeg litt rundt på nettet, og fant kode som henter tekst fra serieporten. Her er programkoden. Det er veldig lenge siden jeg kodet i C. Kanskje du kan komme med forbedringsforslag?
[gist id=”8186792″]
Deretter hjalp sønnen min meg med å installere “ComputerCraft” – en såkalt “mod” til Minecraft som gjør at du kan skrive programmer i et språk som heter Lua. Vi fant ut at den enkleste måten å få det inn på på mac’en var ved å installere en “modpack” som heter “Feed the Beast”(!). Lua er et enkelt programmeringsspråk som ligner litt på Python, og det finnes et utall YouTube-videoer som viser hvordan du kan gjøre ting med det i Minecraft.

Sønnen utplasserte en “computer” i terrenget, og så festet vi en spak. Vi ønsket å vise om spaken var opp eller ned på skjermen som var koblet til Arduino’en. 

En computer i Minecraft

En computer i Minecraft

For å skrive inn programkoden høyreklikket vi på datamaskinen i Minecraft, og skrev “edit startup”. Når du kaller scriptet startup, vil det kjøre automatisk. Etter litt prøving og feiling fikk jeg endelig skrevet til en fil som jeg kunne bruke for å sende tekst til Arduino´en.

Kode i Minecraft

Kode i Minecraft

Her er programkoden vi brukte:
[gist id=”8187010″]

Helt til slutt åpnet jeg et “shell”, og kjørte en kommando som sender endringer i en fil til USB-porten som Arduinoen er koblet til. Dette er på en mac. Jeg aner ikke hvordan det gjøres under Windows.
[gist id=”8187124″]