Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
HEi<br />
RUBY<br />
OPPDAG KODING
Til mamma<br />
Det hadde ikke vært mulig å gi ut denne boka om det ikke<br />
hadde vært for den fantastiske støtten jeg fikk fra Kickstarter<br />
som gjorde drømmen min til virkelighet.<br />
Text and illustration copyright © 2015 Linda Liukas<br />
All rights reserved<br />
Published by agreement with Linda Liukas c/o Foundry Literary Media<br />
The Android robot is reproduced or modified from work created and<br />
shared by Google and used according to terms described in the<br />
Creative Commons 3.0 Attribution License.<br />
Norsk utgave © 2018 Info Vest Forlag AS<br />
Originalens tittel: Hello <strong>Ruby</strong>: Adventures in coding<br />
Formgiving (original): Eileen Savage<br />
Oversetter: Thomas Braut<br />
Grafisk layout: Jonas Linden<br />
1. utgave, 1. opplag 2018<br />
ISBN: 978-82-8360-009-4<br />
Kopieringsforbud!<br />
Dette verk beskyttes av loven om opphavsrett.<br />
Kopiering, utover læreres rett å kopiere til undervisningsbruk<br />
i overensstemmelse med KOPINOR avtalen, er forbudt.<br />
Boken bestilles på Info Vest forlag AS www.infovestforlag.no<br />
Mer info på www.helloruby.com/no
<strong>Hei</strong> alle voksne!<br />
Tanken bak <strong>Ruby</strong> ble fødd i 2009, når jeg selv lærte meg å<br />
programmere. Hver gang jeg fikk utfordringer, spurte jeg meg selv<br />
hvordan ei lita, selvsikker jente, <strong>Ruby</strong>, ville takla problemet. Etter<br />
dette har det vært mitt mål å forstå teknikk gjennom lek, fantasi og<br />
kreativitet.<br />
Vi har alle fortellinger som har forma hvordan vi som voksne ser på verden.<br />
Barndommens historier blir stående som usynlige venner og påvirker oss i<br />
livet. Jeg tror det er behov for flere stemmer og historier som beskriver den<br />
lekprega sida av <strong>koding</strong>a.<br />
Lek er kjernen i læring. Koding er akkurat som fargeblyanter eller<br />
legobrikker – en måte å uttrykke seg på.<br />
Denne boka handler ikke om å «lære seg å<br />
programmere». Den tar ikke for seg spesifikke<br />
programmeringsspråk, men introduserer<br />
byggesteinene i algoritmisk tankegang som alle<br />
framtidige kodende barn trenger!<br />
Barn lærer seg hvordan man bryter ned store<br />
problem i mindre, leter etter mønster, legger planer steg for steg og tenker<br />
utenfor boksen.<br />
Gjennom de oppgavene som finnes til hvert kapittel kommer framtidas<br />
kodere å oppleve spenninga i å bruke sin egen fantasi. Hvert kapittel er ei<br />
lita fortelling fra <strong>Ruby</strong>s verden og samtidig ni små leksjoner i algoritmisk<br />
tankegang.<br />
Boka er utforma for å bli brukt sammen med en voksen. Dere kan godt<br />
begynne med å lese hele historia om <strong>Ruby</strong>, eller velge å fokusere på et kapittel<br />
om gangen. I bokas andre del er det oppgaver til hvert kapittel som er basert<br />
på skaperglede. Lek med øvelsene! Det er greit og normalt å gjøre feil og å se<br />
på et problem på ulike måter. Alt er en del av en algoritmisk tankegang.<br />
I øvingsdelen er det også verktøykasser for voksne som gir mer informasjon<br />
om konsepta og begrepa som hører til hvert emne. Alle<br />
begrep er også samla i ordlista lengst bak i boka. Dere kan<br />
også finne forslag på løsninger og morsomme aktiviteter å<br />
gjøre på www.helloruby.com/no og i veiledninga på<br />
www.infovestforlag.no<br />
På www.helloruby.com kan dere se hva barn fra hele<br />
verden har laga.
<strong>Ruby</strong> og vennene hennes<br />
<strong>Ruby</strong><br />
Om meg selv: Jeg liker å lære meg nye ting. Jeg er sta og gir ikke opp. Jeg elsker<br />
å si fra hva jeg synes: Vil du vite noe? Pappaen min er best. Jeg er flink til å fortelle<br />
vitser. Jeg er litt rampete og vil helst ha muffins uten jordbær i.<br />
Fødseldag:<br />
24. Februar<br />
Favorittuttrykk:<br />
Hvorfor?<br />
Interesser:<br />
Kart, hemmelige<br />
kodeord og småprat<br />
Det som irriterer<br />
meg mest:<br />
Jeg hater rot<br />
og uorden<br />
Hemmelig<br />
superkraft:<br />
Jeg kan forestille meg<br />
umulige ting<br />
Pingvinene<br />
Om oss: Vi er veldig smarte. Men av og til synes andre at vi er litt merkelige. Vi<br />
snakker med veldig korte (og ofte uhøflige) setninger. Vi elsker problem, særlig<br />
om vi kan dele dem opp i mindre biter.<br />
Fødseldag:<br />
25. August<br />
Favorittuttrykk:<br />
Ha valgmuligheter<br />
Interesser:<br />
Strikke klær med mønster,<br />
gåter og forkortelser<br />
Det som<br />
irriterer oss<br />
mest:<br />
Vi hater når noen forteller oss<br />
hva vi skal gjøre. Og spagetti.<br />
Hemmelig<br />
superkraft:<br />
Vi er eldre enn<br />
de andre<br />
Django<br />
Om meg: Jeg har et kjæledyr, en slange som heter Phyton. Jeg er opptatt<br />
av å gjøre ting riktig, gir ikke opp og er litt sta. Jeg liker det man kan regne;<br />
partall, oddetall, primtall, kubikktall, kvadratrota av tall, baklengs eller rett vei.<br />
Men jeg tar meg selv ikke så høytidelig.<br />
Fødselsdag:<br />
20. februar<br />
Favorittuttrykk:<br />
Det enkle er ofte det<br />
beste<br />
Interesser:<br />
Sirkus, filosofi og slanger<br />
Det som<br />
irriterer meg<br />
mest:<br />
Folk som presser seg på<br />
når jeg står i kø<br />
Hemmelig<br />
superkraft:<br />
Jeg har alltid en<br />
løsning<br />
4
Snoleoparden<br />
Om meg: Jeg er den vakreste, artigste og mest veloppdragne snøleoparden<br />
jeg kjenner. Jeg krangler ofte med robotene. (Er litt meningsløst fordi vi<br />
egentlig er like)<br />
Fødselsdag:<br />
8. juni<br />
Favorittuttrykk:<br />
Tenk annerledes<br />
Interesser:<br />
Ensomhet, meditasjon<br />
og pilates<br />
Det som<br />
irriterer meg<br />
mest:<br />
Folk som tror jeg er tøff, men<br />
egentlig er jeg veldig kosete<br />
Hemmelig<br />
superkraft:<br />
Grenseløs skjønnhet<br />
Robotene<br />
Om oss: Vi er lekne og kjappe. Vi har hundrevis av robotsøsken. Vi er<br />
mest glade når hele familien vår og vennene våre skaper noe sammen.<br />
Fødselsdag:<br />
23. september<br />
Favorittuttrykk:<br />
Være sammen<br />
Interesser:<br />
Det som<br />
irriterer oss<br />
mest:<br />
Matlagingsprogram, pingviner<br />
og å få flere venner<br />
Vi forstår ikke alt oppstyret om<br />
å være rene og fornuftige<br />
Hemmelig<br />
superkraft:<br />
Vi ser kanskje små<br />
ut, men vi blir fort<br />
voksne<br />
Revene<br />
Om oss: Vi gleder oss veldig over nye ting. Vi elsker hagearbeid og å dyrke<br />
ulike vekster. Vi liker å være entusiastiske, vennlige og glade. Men prøv ikke å<br />
begrense friheten vår! (Da blir vi sure.)<br />
Fødselsdag:<br />
Interesser:<br />
Det som<br />
irriterer oss<br />
mest:<br />
7. november<br />
Hagearbeid, gekkoer<br />
og natten.<br />
Å alltid være trygg<br />
Favorittuttrykk:<br />
Hemmelig<br />
superkraft:<br />
La oss komme<br />
igang!<br />
Vi kan snurre rundt og<br />
ta saltoer bedre noen<br />
andre.<br />
5
6
Kapittel 1: Mot <strong>Ruby</strong><br />
<strong>Ruby</strong> er ei jente med stor fantasi.<br />
7
Hun elsker å krype inn under ulike møbler og<br />
fantasere om buggene, de ekle småkrypa som kanskje<br />
bor der. Hun kommer stadig på nye dansebevegelser<br />
og favorittordet hennes er «hvorfor».<br />
hvorfor?<br />
hvorfor?<br />
hvorfor?<br />
hvorfor?<br />
8
I hennes verden er det hun som er skaperen og<br />
arkitekten. Den ene dagen er hun lege, neste dag er<br />
hun jeger på jakt etter småkryp. Superkrafta hennes<br />
er at hun kan skape ting med fantasien sin. Alt er<br />
mulig om hun går inn for det.<br />
9
10<br />
<strong>Ruby</strong> liker svært dårlig at noen sier hva hun skal gjøre.<br />
Dette kan skape trøbbel, særlig når oppgavene er<br />
utydelige.<br />
Når pappaen til <strong>Ruby</strong> sier at hun må kle på seg fordi<br />
det er på tide å gå på skolen, tar hun på seg klærne og<br />
skoa utenpå den prikkete pyjamasen sin. Pappa sa jo<br />
faktisk ikke at hun skulle ta av seg pysjamasen først.
Når det er tid for å rydde i<br />
lekene på rommet, setter <strong>Ruby</strong><br />
kosedyra, byggeklossene og<br />
dukkehuset på plass, men lar<br />
tegnesakene ligge igjen midt på<br />
golvet.<br />
«Tegnesaker er jo ikke leker»,<br />
sier hun bestemt.<br />
11
Aktiviteter<br />
Det er en av <strong>Ruby</strong>s venner du enda ikke har møtt:<br />
Si hei til datamaskinen!<br />
Vil du vite en hemmelighet? Datamaskiner er<br />
kjempegode og raske til å gjøre det du ber dem<br />
om å gjøre, men de klarer ikke å tenke selv.<br />
Men det kan du! Du har både fantasi og er smart,<br />
så du kommer til å kose deg når du løser disse<br />
oppgavene. Nå begynner vi!<br />
71
1<br />
DETTE ER RUBY<br />
Du har nettopp møtt <strong>Ruby</strong>. Hun er virkelig ei tøff jente, ikke sant? Hun er<br />
ikke redd for å prøve nye ting fordi hun veit om en hemmelighet: Store<br />
problem er bare mange små problem som har hopa seg opp. Av og til er<br />
man nødt å gjøre mange feil først før man lærer noe.<br />
Verktoykassa:<br />
Disse oppgavene skal lære oss hvordan vi kan beskrive noe så eksakt at en datamaskin<br />
kan forstå det. Oppgavene hjelper oss også å forstå hvor viktig det er å gi<br />
kommandoer (si hva datamaskinen skal gjøre) i rett rekkefølge, kjenne igjen mønstre<br />
og vite hvordan man kan plukke fra hverandre ting. Dette er viktig når man<br />
skal snakke sammen med en datamaskin.<br />
Når du programmerer eller koder beskriver du til datamaskinen hva den skal gjøre<br />
og i hvilken rekkefølge den skal gjøre det. Instruksjonene må være korte slik at<br />
datamaskinen kan forstå dem. De må være detaljerte og tydelige. Dersom de ikke<br />
er det, kommer datamaskinen til å gjøre feil. Snart kommer du til å begynne å tenke<br />
på løsninger akkurat som en datamaskin gjør. Du tenker algoritmisk.<br />
»Sekvens<br />
»Dele opp i deler<br />
»Se mønster<br />
72
Oppgave 1: Sekvens<br />
Bestemte lille <strong>Ruby</strong><br />
Merka du at <strong>Ruby</strong> var litt egenrådig når hun skulle rydde rommet sitt. Det<br />
har hun lært seg av datamaskinen sin. Den trenger nøye beskrivelser av alle<br />
detaljer man må gjøre, også de som er selvsagte for oss. Hva ville du sagt at<br />
<strong>Ruby</strong> skulle gjort i følgende situasjoner? Skriv ned steg for steg hvordan man:<br />
• Spiser frokost<br />
• Rer opp senga<br />
• Tar en lur<br />
• Dekker bordet<br />
Her er <strong>Ruby</strong> sin beskrivelse av hvordan man pusser tennene:<br />
1. Gå til badet.<br />
2. Ta opp tannbørsten og tannkremen. Åpne tannkremen og press ut litt<br />
tannkrem på tannbørsten.<br />
3. Åpne munnen og start å pusse tennene med tannbørsten. Gjenta flere<br />
ganger og alle tennene må børstes grundig.<br />
4. Om du fortsatt har tannkrem på tennene, skyll med et glass vann og legg<br />
fra deg tannbørsten. Hvis ikke, legg fra deg tannbørsten og gå ut av badet.<br />
Pass på at instruksjonene er i rett rekkefølge.<br />
Jeg er veldig rask og nøye når jeg følger de.<br />
Når du skriver det slik steg for steg, kalles det<br />
å kode.<br />
Gjor det selv:<br />
Finn en venn – som «er <strong>Ruby</strong>». Din oppgave blir å forklare<br />
hvordan <strong>Ruby</strong> skal gjøre det som står i oppgaven.<br />
Start med å spise frokost. Del opp alt du gjør i små presise<br />
kommandoer. Den andre (<strong>Ruby</strong>) følger bare instruksjonene og<br />
får ikke lov å gjøre noe annet enn det som blir sagt. Ble det rett?<br />
73
Oppgave 2: Dele opp i små deler<br />
Byggmesteren<br />
<strong>Ruby</strong> er kjempeflink å finne på og bygge ting. Det er mye lettere om man<br />
husker at alle ting er bygd opp av mindre biter.<br />
<strong>Ruby</strong> bygger<br />
... en fugl. Det mangler en del.<br />
Ser du hvilken?<br />
... en bugg. <strong>Ruby</strong> kan lage en<br />
festlig figur av disse delene.<br />
Hvilken del blir ikke brukt?<br />
... en prosessor. Hvilke tre<br />
deler brukte hun ikke?<br />
Gjor det selv:<br />
Kan du ta en av dine egne tegninger og<br />
dele den opp i biter? Hvilke ulike deler er<br />
den bygd opp av?<br />
74
Oppgave 3: Se mønster<br />
Klesregler<br />
Se på klærne i <strong>Ruby</strong> sin garderobe. <strong>Ruby</strong> er veldig kresen på hvilke klær hun<br />
vil ha på seg. Pek på klærne som stemmer med regelen hennes.<br />
På mandager har jeg klær med prikker.<br />
På tirsdager har jeg blå eller gule klær.<br />
På onsdager vil jeg bare ha klær som begynner på bokstaven K.<br />
På torsdager har jeg lue på meg.<br />
På fredager har jeg hvite og rosa klær.<br />
I helga... Nå er det din tur til å bestemme hva <strong>Ruby</strong> skal ha på seg.<br />
Du kan skrive ut <strong>Ruby</strong> klippedukker<br />
på helloruby.com/no<br />
75
Linda har studert business, design og engineering<br />
ved Aalto University og produktteknikk ved<br />
Stanford University.<br />
Tidligere jobbet hun på Codecademy, et<br />
programmerings -og utdanningsfirma i New<br />
York med over 5 millioner brukere over hele<br />
verden. Å utgi en barnebok mener hun er en av<br />
de beste plattformene for å introdusere barna til<br />
programmering.<br />
Linda mener vår verden blir stadig mer drevet av<br />
programvare, og vi trenger mer mangfold av folk<br />
som bygger det: “Den beste måten å introdusere<br />
programmering til barn er gjennom fengslende<br />
historier! “<br />
Vi håper og tror at Linda Liukas bok også vil bety<br />
noe for norske hjem og skoler og interessen for<br />
programmering.<br />
er programmerer<br />
, forteller og illustratør fra Helsinki i Finland.<br />
Hennes bokserie Hello <strong>Ruby</strong> introduserer den<br />
magiske verden av teknologi for barn og har blitt<br />
oversatt til over 20 språk.<br />
“Koding er like viktig som lesing og skriveferdigheter i<br />
vårt århundre. Behovet for å kunne forstå og uttrykke<br />
seg på programmeringsspråk er essensielt”<br />
Linda Liukas<br />
Linda er en sentral figur i programmeringsverdenen<br />
og har jobbet med edtech i mange år.<br />
Hun er grunnleggeren av Rails Girls, et globalt<br />
fenomen som underviser grunnleggende<br />
programmering for unge kvinner over hele verden.<br />
Workshops om <strong>koding</strong>, organisert av frivillige i over<br />
270 byer, har etter noen år lært mer enn 10.000<br />
unge kvinner grunnlaget for programmering.<br />
114