Lær kidsa programmering med

  • Upload
    gallia

  • View
    64

  • Download
    4

Embed Size (px)

DESCRIPTION

Lær kidsa programmering med. av Torbjørn Skauli. Plan. Hva er Scratch? Lære å lage programmer med Scratch Ideer til ting man kan lage med Scratch Oversikt over lærestoff på norsk og engelsk Tanker omkring bruk av Scratch i undervisning. - PowerPoint PPT Presentation

Citation preview

  • Lr kidsa programmering medav Torbjrn Skauli

  • PlanHva er Scratch?Lre lage programmer med ScratchIdeer til ting man kan lage med ScratchOversikt over lrestoff p norsk og engelskTanker omkring bruk av Scratch i undervisning

  • Et program er en oppskrift som sier hva datamaskinen skal gjre

    (* Start dagen *)PROGRAM Morgen(Barn)St opp.Ta p klr.GJENTASpis brdskiveHELT TIL Du er mett.Puss tenner.Ta p jakke og sko.HVIS Det er hverdagG til skolenELLERSBegynn leke.FERDIG.

  • Programmer er skrevet av mennesker, i et programmeringssprk som maskinen forstrMed programmeringssprket kan vi bestemme hva datamaskinen skal gjre.

    Hvis du kan programmere kan du finne opp nye spill og lage akkurat det du vil. (Og kanskje f en god jobb.)

    Mange programmerinssprk er litt vanskelige lreDel av program skrevet i programmeringssprket Java

  • Scratch er et programmeringssprk som er lett lre og morsomt brukeScratch er laget for vre lett lreUtviklet ved MIT-universitetet i USAProgrammer bygges opp med klosserDet er lett lage animasjoner og lydScratch er oversatt til norskScratch er helt gratis og brukes i hele verdenScratch har et eget nettsamfunnDu kan legge programmene ut p nett s andre kan prve dem

  • I Scratch er det skriptene og figurenesom fr ting til skjeEn figur kan ha forskjellige skript laget av klosser som forteller hva den skal gjreKlossenes form viser hvordan de kan settes sammenEn figur kan ha forskjellige drakter og likevel vre samme figurFigurer har en bestemt posisjon og retning p scenenNoen tips:Bruk klossen "begrens rotasjon" for figurer som ikke skal snu seg etter retningen.Med klossen "skjul" blir figuren usynlig, men den finnes fremdelesMed klossen "legg verst" kommer figuren foran de andreScenen fungerer som en figur, bortsett fra at den ikke kan bevege seg

  • Datamaskinen flger instruksjonene i programmet skritt for skrittKlossene i et skript utfres en og en, ovenfra og nedSkriptet kan startes ved klikke p det, eller med klossene under "hendelser"Flere skript kan kjre samtidigTips:Pass p at skriptet ditt begynner med gjre alt klar til start (f.eks. sette riktige figurer p riktig sted)Pass ogs p at alt blir avsluttet, for eksempel ved ta bort fra scenen ting som dukker opp nr programmet kjrer.

  • Noen ganger gjr ikke programmet det du vil:I programmering m vi ofte finne og rette feil.Datamaskinen er nyaktig og gjr alltid det programmet sier......men det er ikke alltid programmet sier nyaktig hva du ville f til.Det kan vre vanskelig finne ut hva som er feil......men det er en veldig fin velse i tenke systematisk.Tipsprv finne ut hvilken del av programmet som gr feilgjr en forandring i programmet og se hva som skjer da

  • Nybegynnere: lag ditt frste program!Start Scratch ved g til scratch.mit.edu, velg norsk sprk. Flg veiledningen "kom i gang med Scratch" Prv deg fram! Lag din egen brukerkonto p Scratch Lagre programmet ditt. Legg det ut s andre kan se det, hvis du vil.

  • Viderekomne: lr nye ting!Kan du variabler? Ikke? Lr det idag!Har du prvd lage egne klosser i Scratch 2.0?Tegn en pen figur med pennfunksjonen og gjenta-klosserLag glidende bakgrunn med figurer som blir en stor spillverden eller dybde-effektLag et labyrintspill der spilleren ikke kan g gjennom veggeneLag et program der en figur finner veien ut av labyrinten automatisk (vanskelig)

  • *Sett i gang!

  • Et skript kan startes p mange mterKlikk p skriptet for starte: nyttig nr vi tester programmer

    Klossene under "hendelser" har mange mter starte et skript Startflagget er den vanligste mten starte

    Vi kan ogs starte skript med tastene...

    ...eller med museklikk

    Avansert: skriptene kan sende meldinger til hverandre for f ting til skje

  • Koordinater og retning: Hvor er figuren?x- og y-koordinater er tall som forteller hvor figuren er p scenenx og y mles i "steg", vanligvis en pixel p skjermenTil hyre under scenen vises koordinatene til musepekeren. Prv!Figurer har en retning som mles i graderx=0y=0x = 240y = 180x = 240y = 180x = 240y = 180x = 240y = 180retning 0 graderretning 90 graderminus x pluss yplussminus

  • Lag en historie eller fortell en vitsFor eksempel:En gutt lrte Scratch, og da han ble voksen...I natt drmte jeg...Det var en gang to tomater...

    Programmet ditt skal haminst to figureret bakgrunnsbilde p scenenbruke klossene si eller tenk

    Du kan ogs gjerne bruke klossenesigli ... sekunder til x:... y:... tenkskift til drakt ...

  • Eksempel: En enkel mte

  • Eksempel: En avansert og litt bedre mte

  • Programmet kan gjre ting mange ganger med lkker: rundt og rundtDatamaskinen kan gjre ting om igjen mange ganger uten bli lei av det

    Hvis du vet antall ganger, bruk Gjenta __ gangerskriv inn antall ganger i tallfeltet

    Hvis du vil gjenta det hele tiden, bruk for alltidstopp ved klikke p stoppskiltet...eller med en stopp -kloss

    Hvis du vil fortsette helt til en bestemt ting skjer, brukgjenta __ gangerfor alltidstopp gjenta til __

  • Action! Prv disse!Det er enkelt nr vi vet antall ganger:

    Vi kan lage liv p scenen ved bruke "for alltid" og "sprett tilbake ved kanten"

    Kommer figuren tilbake opp-ned? Sett en "begrens rotasjon" frst i skriptet!

    Du kan bruke piltastene for flytte en figur rundt p scenen

  • *Lag en animasjon som du styrer!Her er noen forslag:

    Tegn en bil, sett ovenfra, som du kan styre med piltastene

    F en figur til hoppe (g opp og ned igjen) nr du klikker den

    La en spiller styre katta med piltastene. En annen spiller styrer en hund med andre taster. Jakt p hverandre!

    Tegn en fuglefigur og en bakgrunn med himmel. F figuren til fly rundt med piltastene.

  • Datamaskinen kan ta avgjrelser- men du m fortelle hvordanMaskinen kan velge forskjellige deler av skriptet avhengig av betingelser: Ja eller NeiDatamaskinen tenker ikke selv - du m lage reglene

    Det er mange mter lage betingelser, for eksempelhar figuren kollidert med noe?er to tall like? (f.eks: antall liv = 0)er museknappen trykket ned?

    Betingelser har klosser med spisse enderBetingelser kan kombineres med "og" , "eller" og "ikke"

    Betingelser kan brukes i hvis -klosser...

    hvisogellerikke

  • Hvis Ja gjr AI klossen hvis kan vi putte inn en betingelseNr maskinen kommer til en slik kloss sjekker den om betingelsen blir Ja eller Nei.Hvis betingelsen er Ja blir klossene inni hvis-klossen utfrt, ellers hopper maskinen til det som kommer etter hvis-klossenDet finnes ogs en hvis __ ellers -kloss som velger mellom to forskjellige skript

    En nyttig konstruksjon er "for alltid, hvis": da kan programmet reagere automatisk p ting som skjerhvishvis __ ellers

  • Gjenta A helt til JaHvis du vil gjenta noe helt til en betingelse gir Ja bruker du klossen gjenta til __

    Hvis du bare vil vente til betingelsen sier Ja kan du bruke klossen vent til __

    gjenta til __vent til __

  • Datamaskinen kan huske tingmed variablerEn variabel er en "skuff" i datamaskinen som inneholder noe den skal huskeVariabler i Scratch kan huske tall, tekst og listerHver variabel har et navn, klossen har runde enderI programmet kan vi bruke en tall-variabel i stedet for et fast tall

    I klossene under "operatorer" finner vi regning og matematiske funksjoner

    Du kan vise variabelens verdi p scenen ved sette kryss i varaiabelens rute i "data"-klossene

  • Vi kan styre programmet p mange mterStart med grnt flagg Tastatur Mus

    Lyd

    Videobevegelse

    Avansert: eksterne sensorer og roboter

  • Lyd og grafikk:mange muligheterSpille inn egne lyder

    Komponere musikk

    Forandre utseende

    Tegne linjer og grafer

  • Du kan bruke mer avanserte programmerings-teknikker: prv deg fram!Lagre data p nettet: la programmet huske hyeste poengsum, eller lag programmer for spille sammen over nettet!kryss av for "nett-variabel" nr du oppretter en variabel

    Bruk tabell-variabler for la programmet huske mange ting, eller for skrive inn din historie i programmet

    Lag dine egne klosser!

  • *G i gang med ditt eget prosjekt!Du har lrt nok til lage mange forskjellige ting med Scratch:Har du en id til et nytt spill?Trenger du lage en fin presentasjon?Vil du lage et kunstverk med animasjon?Lag en kul animasjon til skoleavslutningen!

    Se p andres prosjekter for f ideer! Hent fra andre og remiks, men gjr prosjektet til ditt eget!

    lage et stort program krever mye kreativt arbeid med selve historien og med grafikk, lyd og skript.

    Det er lurt samarbeide og dele p oppgavene. Start deres eget spillutviklingsfirma!

    Lag en plan fr dere begynner programmere!

  • OM UNDERVISE MED SCRATCH

  • Scratch kan brukes i skolen p mange mter og p alle niverI barneskolenvekt p leking og grunnleggende konsepterI ungdomsskole og videregende skolegodt egnet til introdusere grunnleggende konsepter rasktogs godt egnet til lre avanserte konsepterkan brukes som verkty for lage ting med digitale medierP SFOKodeklubb utenom skolenUorganisert fritidsaktivitet, helst mellom venner som hjelper hverandre (og ideelt sett i kontakt med en voksen mentor)...og for introdusere konseptet programmering til voksne!

  • La elevene f lyst til fortsette utenom skolen. Ta tilbake noe av dataspill-tiden!P SFO - kanskje med ungdommer som instruktrer? Kodeklubb utenom skolen - finn en frivillig forelder! Uorganisert fritidsaktivitet, helst mellom venner som hjelper hverandre (og ideelt sett i kontakt med en voksen mentor) Scratch kan ogs brukes til introdusere konseptet programmering til foreldre og andre voksne!

  • Det er viktig tilby elevene ideer til ting de kan lage med ScratchLa dem starte med et skjelett av et program, eller et sett av blokker, som de skal gjre ferdigElevene kan visualisere en historie eller noe de har lrt. Gi dem konkrete ideer.La dem f mulighet til lage presentasjoner i Scratch i stedet for PowerpointHele klassen kan lage hvert sitt bursdagskort-program og legge dem i et galleri til den som har bursdag

  • Lr elevene at de kan g videre fra Scratch: de kan bli flinke og lage veldig kule tingG videre til tekstbasert programmering f.eks. Python eller Java (via Greenfoot eller Processing)Kombiner koding med lre elektronikk: f.eks. med Arduino eller Raspberry PiLr animasjon i 3D: SketchUp, Blender, Maya, 3D studio, Unity, UDK, ...Programmering for robotikk og modellfly/helikopterLage apper for telefon/brettFinne p kreative installasjoner eller kunstneriske programmerLse praktiske problemer og oppgaver

  • Det er mange grunner til at lreren br ha god kompetanse - akkurat som i norskfaget!Scratch er i utgangspunktet lett lre, og tilsvarende lett lre bort. Likevel er det mye som krever dypere kompetanse hos lreren:Finne metoder til lse en programmeringsoppgaveStrukturere et stort programForesl ny/endret funksjonalitet i et programVurdere realismen i elevenes prosjektiderFinne og rette feil i programmerVurdere elevenes arbeid

  • LRESTOFF FOR SCRATCH

  • Mye av det "offisielle" Scratch-stoffet er oversatt til norskScratch selv er p norsk: bde klossene og nettsidene (nyheter og nye ting er engelsk)Hjelpefunksjon med mange gode tips (ikke alt er oversatt/oversettbart)Norsk forum p Scratch (lav aktivitet)Veiledningen "kom i gang med Scratch" (kommer snart)enkel introduksjon skritt for skrittScratch-kortenetips til ting man kan bruke som elementer i egne programmer

  • KodeklubbensScratch-pensumOppgavesett oversatt fra CodeClub UK9 oppgaver med grundig veiledning og utfordringer p sluttenInstruktrveiledning, diplomer mm.Gjennomarbeidet og testet, pene trykksakerGy for ungene!Laget for "kodeklubber" med frivillige datakyndige instruktrerKan ogs brukes i skolen

  • Instruksjonsvideoerp norsk. (Nytt!)Grunnleggende introduksjonBegynner fra starten, med pne nettsidenViser noen enkle programmerLangt fra vre noe fullstendig kurs (enn)

  • Opplegg for introduksjontil informatikk i skolenMer skolemessig enn kodeklubben, grunnlag for denne presentasjonenintro til informatikk og programmeringprogrammering i Scratchtips til ting elevene kan lre etter Scratch Bestr av presentasjonssider, veiledning og eksempelprogrammer som kan lastes ned og redigeres etter lokale behov og nsker

  • Veiledning for programmeringskurs p SFO med ungdommer som instruktrerKjreplan for organisere Scratch-kurs p SFOBasert p bruke ungdomsskoleelever som instruktrerPilot-testet p rvoll, kjres i ulike varianter p andre skolerVeiledninger for alle aktrene som er involvert: - veilederen (f.eks. frivillig forelder) - SFO - ungdomsskolen - instruktreneUngdommene fr ansvar for forberedelse og gjennomfring, under veiledning...

  • Noen kilder for engelsksprklig lrestoff

    ScratchEd: Offisielt nettsted for lrere som bruker Scratchstort (alt for stort) utvalg av lremidler, ikke bare p engelskComputing at school (UK) - den britiske ssterorganisasjonen til LKKstort utvalg av stoff om informatikk og programmering, bl.a. Scratchkrever innmelding (kun for lrere, ikke for elever)Khan academysvrt anerkjent kilde til nettbasert lringhar leksjoner i tekstbasert programmering, men ikke Scratch (enn)code.orgpekere til mange gode nettsteder for lre programmering

  • Tilleggsstoff:tips til videre lring og moro

  • Du kan lre mer selv!Det er gy lage ting med datamaskinen, ogs utenom skolenMange unge lrer seg programmering selv og lager kule ting, for eksempel nye apperMed Internett er det lett lre mange nye tingFor programmering kan du starte med disse:www.kidsakoder.nono.khanacademy.orgwww.code.orgappinventor.mit.edu (lag smarttelefon-apper med Scratch-programmering!)Etter Scratch kan du prve sprk der du skriver programmer som tekst, for eksempel www.processing.org eller www.greenfoot.orgDu kan ogs prve deg p et "ordentlig" programmeringssprk, for eksempel Python eller Java

  • Har du lyst til lage ting i 3D?Prv disse!www.KoduGameLab.com: 3Dspillutvikling! Norsk undervisningsopplegg hos PedSmia.no

    www.SketchUp.com: Tegn i 3D. Det er lett!

    www.Blender.org: Hvis du vil lre ordentlig 3D-animasjon

  • Scratch kan kobles til den virkelige verden gjennom et sensorkortEn enkel og billig ($50) enhet medlyssensorlydsensortrykknapp og skyveknappfire mleinnganger

    Mange muligheter, blant annet:mling og overvkingkreative installasjonerSensorkortet viser vei inn i to andre spennende verdener der man kan lage artige ting selv:elektronikk og robotikk

  • Lego-robotsettDatamaskin bygd inn i en legoklossByggekloss-programmering p PCSensorer for berring, lyd, lys osvMotorer som fr ting til skjeMye brukt i undervisning, fra barneskole til universitet

    Lego-robotsett

  • Datastyrt elektronikk og robotikkBygg kule ting med kompakte, billige datamaskiner som vekselvirker med omverdenenMange, mange ressurser p internett, for eksempelwww.Arduino.cc (en programmerbar datahjerne til 70 kroner)www.RaspberryPi.org (en PC til 200 kroner)

    Arduino

  • Modellfly og -helikopterModerne modellfly er billige og bra

    Drives med stysvak elektromotor

    Helikoptre med mange rotorer og datastyrt stabilisering: kult!

  • Sett i gang!

    Med Si-klossen og vent-klossen kan figurene si ting og vente annenhver gang. Da m vi passe p velge tidene riktig, ellers blir historien feil.*Vi kan ogs bruke "send melding" inne i programmet. Da kan en figur f ting til skje med en annen figur.*