3-6 LK – OHJELMOINTIPOLKU

Suomen harjoittelukoulujen ohjelmointipolku

3-6 LK – OHJELMOINTIPOLKU

Ohjelmoinnillinen ajattelu:

oppilas

– osaa järjestää, vertailla ja esittää tietoa käsitteiden ja symbolien avulla
– käyttää erilaisia menetelmiä ja ratkaisumalleja ongelmien ratkaisemiseen ja yrittää myös luoda omia ratkaisuja
– laatii tarkat ja yksityiskohtaiset ohjeet toisto- ja ehtorakenteiden avulla.
– etsii ja korjaa ohjeissa olevia virheitä
– käyttää graafista ohjelmointiympäristöä ja osaa luoda siihen oman ohjelman
– hahmottaa kokonaisuuksia, löytää ja kuvaa eri ilmiöiden välisiä yhteyksiä sekä syyn ja seurauksen välisiä suhteita
– arvioi ratkaisuja käyttämällä kriteerejä, kuten toimivuutta, luettavuutta tai tehokkuutta osaa etsiä ja korjata ohjelmassa virheitä.
– osaa käyttää toisto- ja ehtolauseita graafisessa ohjelmointiympäristössä robotin ohjaamiseen eri antureilla
– osaa käyttää graafisia ohjelmointiympäristöjä ja tutustuu robotiikkaan

Tutkiva työskentely ja tuottaminen:

oppilas

– ymmärtää, että ilmiötä voidaan tarkastella eri näkökulmista ja osaa pohtia muiden näkökulmia yhteisessä ohjelmointiprojektissa.
– tunnistaa animaatioiden ja pelien ohjelmoinnin piirteitä ja yrittää luoda pelejä erilaisilla animaatio- tai ohjelmointialustoilla
– osaa käyttää ohjelmointiin liittyviä työmenetelmiä ja työkaluja luovaan ilmaisuun ja omaan tuotantoon
– osaa tehdä yhteistyötä ja työskennellä kestävästi yhteisen tavoitteen saavuttamiseksi ohjelmointiprojektissa
– osaa käyttää tuotteissaan omia havaintojaan, mittauksiaan ja antureitaan ja yhdistää niitä automaatioon ja robotiikkaan
– jalostaa olemassa olevia ratkaisuja ja harjoittelee toistuvaa työtä eli ideoiden kehittämistä, valmistamista, testaamista ja edelleen kehittämistä useaan otteeseen
– käyttää ohjelmointiin liittyviä työmenetelmiä ja työkaluja tutkiakseen ja selittääkseen erilaisia ilmiöitä eri aineissa ja monitieteisissä oppimisprojekteissa

Ohjelmoitujen ympäristöjen tunteminen ja niissä toimiminen:

oppilas

– havaitsee ohjelmoinnin ja robotiikan läsnäolon ympäröivässä yhteisössä
– osaa kertoa esimerkkejä kohdennetuista digitaalisista sisällöistä sekä tavoista, joilla niitä kohdennetaan
– pohtii omaa toimintaansa ja siitä kerääntyvän tiedon käyttöä digitaalisissa ympäristöissä – osaa kertoa erilaisista teknisten sovellusten käyttötavoista ja niiden toimintaperiaatteista sekä kuvailla niiden merkitystä omassa elämässään
– osaa antaa esimerkkejä kohdistetusta digitaalisesta sisällöstä ja sen kohdistamisesta
– pohtii omaa toimintaansa digitaalisissa ympäristöissä ja sitä, mitä tietoa hän itse jakaa Internetissä

Arvaa mikä?

Arvuutelkaa pareittain henkilöä, esinettä, asiaa tai sanaa. Toinen oppilas toimii vuorollaan arvuuttajana ja toinen arvaajana. Arvuuttaja valitsee ennalta sovittuun aiheeseen sopivan henkilön, esineen, asian tai sanan. Arvaaja kysyy kysymyksiä, joihin arvuuttaja voi vastata “Kyllä” tai “Ei”. Arvaaja pyrkii Mahdollisimman pienellä määrällä kysymyksiä saamaan selville, kuka on arvuuttajan valitsema henkilö.
https://mediataitokoulu.fi/ohjelmointi_alakoulu.pdf (s.15, harj. 6)

Piirrä ja arvaa ohjelmoiden

Toinen oppilaista on vuorollaan piirtäjärobotti ja toinen ohjelmoija. Ohjelmoija ensin päättää, mitä hän haluaa piirtäjän piirtävän. Sit- ten hän ennalta sovittuja komentoja (esimerkkikuva 1) käyttäen ohjaa piirtäjää. Käykää piirtämiseen tarvittavat komennot läpi aluksi koko ryhmän kesken. Lopuksi piirtäjä koettaa arvata, mitä hänen itse piirtämänsä kuva esittää.
https://mediataitokoulu.fi/ohjelmointi_alakoulu.pdf (s. 16, harj. 8)

Syömään Mars! (ohjaa ihmisrobottia)

Sopikaa yhdessä kokoelma yksinkertaisia komentoja, joita käyttämällä voitte liikutella toisianne erilaisissa ympäristöissä. Sovittuja komentoja käyttämällä kolmen hengen ryhmissä, suunnitelkaa ja kirjoittakaa siirtymisalgoritmeja, joilla päästään luokasta eri tiloihin. Ryhmät voivat suunnitella eri siirtymisiä, esimerkiksi luokasta ruokalaan, luokasta käsityöluokkaan tai luokasta koulun portille. Voitte testata eri siirtymisalgorit- meja aina ruokatunnin alussa ja parannella seuraavaa päivää varten.
https://mediataitokoulu.fi/ohjelmointi_alakoulu.pdf (s. 17, harj. 9)

Paperilennokki

Laatikaa pareittain vaiheittaiset ohjeet paperilennokin taitteluun. Tarkoituksena on kirjoittaa yksinkertainen ohjeistus ikään kuin reseptin muodossa, jolla kuka tahansa osaa taitella oppilasparin suunnitteleman paperilennokin. Laatikaa ohjeet pareittain. Vaihtakaa ohjeet toisen parin kanssa ja testatkaa niiden toimivuutta. Antakaa palautetta ohjeen selkeydestä ja vertailkaa lopputulosta ohjeen tekijän tarkoittamaan lopputulokseen. Parannelkaa ohjeita, vaihtakaa palautteenanto pareja ja kokeilkaa uudelleen. Voitte myös kilpailla pisteyttäen tuotoksia esimerkiksi lentokyvyn, tyylin ja ohjeiden selkeyden osalta.
https://mediataitokoulu.fi/ohjelmointi_alakoulu.pdf (s. 29, harj. 18)

Hyvä salasana

Opitaan tiedon keräämisen tarkoituksesta ja salaamisen tärkeydestä. Pohditaan henkilön tunnistamista sekä eri tunnistustekniikoiden vahvuuksia ja heikkouksia.

Kerätkää ajatuksia siitä, millainen on hyvä salasana, miten oman salasanan saa pysymään salassa. Kerätkää ryhmissä huonoja salasanoja tai huonoja tietoturvatottumuksia listaksi ja kootkaa siitä juliste koulun julkisiin tiloihin esille pantavaksi.
https://mediataitokoulu.fi/ohjelmointi_alakoulu.pdf (s. 41, harj. 29)

Minun päivä ja teknologiat

Oppilas listaa yhden päivän ajalta kaikki sähköiset välineet, joita hän hyödyntää (nimi ja käyttötarkoitus). Pohditaan yhdessä ja ryhmissä millaista arki olisi ilman laitetta, mitä tietoja kerää käyttäjästä, jos sillä on nettiyhteys, millaista arki olis ilman kyseisiä teknologioita ja millaisia vaaroja tai tietoturvaan liittyviä tekijöitä laitteeseen liittyy.

Pulmaario (sisällöt omiin sovellutuksiin eri lukuaineista)

Scratch-ohjelmoinnin harjoittelua Pulmaarion esimerkkien kautta ja omien sovellutusten kehittelyä niiden pohjalta. https://pulmaario.luma.fi/ohjelmointi/

Koodauksen alkeet

Tutustukaa ohjelmoinnin perusteisiin ja yksinkertaisiin käskyihin esimerkiksi HourOfCode-sivuston oppimispeleillä. https://studio.code.org/hoc/1

Tarina koodaamaalla (KU, SUK, MA) ScratchJr.

Kirjoittakaa fiktiiviset tarinat. Herättäkää tarinat eläviksi koodaamalla tarinoiden tapahtumia esimerkiksi ScratchJr. -sovelluksella. Voitte käyttää valmiita hahmoja sovelluksen kirjastosta tai piirtää omat.
(Vinkkejä: https://www.ulapland.fi/FI/Yksikot/LUMA-keskus-Lappi/Opetusmateriaalit/Auroran-ScratchJr–ohjelmointikoulu)

Kosteusanturi

Ohjelmoikaa Micro:Biteillä kosteusanturit. Tarvitsette tietokoneen lisäksi Microbitin, hauenleukajohtoja, kaksi kpl n. 5 cm naulaa. https://makecode.microbit.org/projects/soil-moisture/code

Piirtävät robotit (KU, MA)

Rakentakaa liikkuva robotti käyttäen jotain koulunne ohjelmoitavaa robotiikkasarjaa. Ohjelmoikaa robotti liikkumaan tietyllä alueella käyttäen toisto- ja ehtolausetta tai sensoriteknologiaa. Kiinnittäkää robottiin tussit ja antakaa robotin tehdä taidetta.
Rakentava robotti (MinecraftEDU) (YM, SUK, KU, MA)
Tutustukaa ympän sisällöissä rakenteisiin. Ohjelmoikaa MinecraftEDUn Agentti rakentamaan talo, torni tai jokin muu rakennelma oppilaiden keksimälle asukkaalle.
https://minecraft.makecode.com/tutorials/agent-build

Hahmoon liikettä

Tutustukaa Scratchiin omia skriptejä tekemällä ja hahmoja piirtämällä. Käyttäkää ensin vain Liike-, Ulkonäkö- ja Tapahtumat-valikon lohkoja, mutta toiminnan edetessä opettaja voi ohjata tutustumaan muihinkin valikoihin. Harjoitelkaa piirtotyökalujen käyttöä muokkaamalla valmista hahmoa tai piirtämällä oma hahmo. Suositaan parityöskentelyä, vaikka kullakin oppilaalla olisi oma tietokone käytössä. Yhdessä parin kanssa on mielekästä jakaa ideoita ja näyttää omia luomuksia.
https://mediataitokoulu.fi/ohjelmointi_alakoulu.pdf (s.18, harj.11)

Musiikkiluupit

Opitaan ohjelmoinnille ominaista toimenpiteiden järjestämistä, toistuvuuksien rakentamista ja koko- naisuuksien kumulatiivista luomista musiikin tuottamisen yhteydessä.

Tehkää parityöskentelynä musiikkiluuppeja, eli 4–8 tahdin mittaisia pätkiä musiikkia, joka laitetaan toistumaan. Aloittakaa luuppien läpikäynti oppilaiden omista havainnoista ja kokemuksista musiikki- luupeista. Voitte hakea tietoa musiikkiluupeista ja niiden käyttötarkoituksista ja keskustella yhdessä. Harjoituksen voi tehdä Sumo-Tunesilla, Scratchin musiikkilaajennuksella tai GarageBandilla)
https://mediataitokoulu.fi/ohjelmointi_alakoulu.pdf

Video juuri sinulle! (algoritmit ja sisältöpalvelut)

Tutkikaa sisällön suuntaamis- ja suosittelujärjestelmiä, esimerkiksi Yle Areena, YouTube tai muu tuttu videopalvelu. Avatkaa sivusto ja tutkikaa etusivua ja teille suositeltuja videoita. Ottakaa näyt- tökuva aloitussivustosta. Käyttäkää 5 minuuttia eri videoiden katsomiseen ja klikkailuun ja palatkaa etusivulle. Muuttuivatko suositellut videot? Pohtikaa ja keskustelkaa sisällön suuntaamisen hyödyis- tä ja haitoista. Millä perusteella suosituksia tehdään? Mitä tietoa meistä kerätään, miksi?
https://mediataitokoulu.fi/ohjelmointi_alakoulu.pdf (s. 44, harj. 32)

Kuinka mikroaaltouuni toimii?

Pohtikaa esimerkiksi mikroaaltouunin merkitystä ihmisen arkea helpottavana esineenä. Millaista ruuan valmistus olisi ilman mikroa, mitä ruokia sillä ei voi valmistaa, missä se on kätevimmillään? Palastelkaa mikron käyttämisen prosessi -> mitä tehdään ensimmäisenä, kun ruoka otetaan kaapista ja mihin ruuan lämmittäminen päättyy? Millaisia ohjelmoituja toimintoja mikrossa ja mikron painikkeissa on? Mitä muita vastaavia, ohjelmoituja laitteita oppilaat osaavat nimetä?

ViLLE-ohjelmointiopas

Turun yliopiston ViLLE-ympäristössä on opintokokonaisuus “Valinnainen alakoulun ohjelmointi”, jonka voit aktivoida omalle luokallesi. Kokonaisuuden avulla oppilaat opiskelevat koodauksen perusteita pelillisesti.
https://ville.cs.utu.fi/opintopolku/ville_alakoulun_ohjelmointiopas.pdf

Mediakoulun ohjelmointiopas

KAVI:n laatimassa materiaalissa on paljon hyödyllisiä harjoituksia koodauksen oppimiseen.
https://mediataitokoulu.fi/ohjelmointi_alakoulu.pdf

LightBot-sovellus (iOS)

https://lightbot.com

Koodiaapinen

Koodiaapisen valmiita Scratch ja ScratchJr. -materiaaleja
https://koodiaapinen.fi/arkisto/

Koodauspläjäys (lautapeli / tehtäväkortit)
Ongelmanratkaisua pelillisesti

RoboGem (lautapeli)
Linkkikeskus

Demoja ja ohjeita Scratch-ohjelmointiin:

https://linkki.cs.helsinki.fi/cgi-bin/debbie-action-materiaalit?syn=&ohjelmointikieli=Scratch

Lego Spike opettajan ja oppilaan materiaalit

Legon nettisivuilla on valmiita oppituntimalleja ja ohjeita rakentamiseen ja koodaamiseen
https://education.lego.com/fi-fi

Micro:bit

Innokkaan nettisivuilla on paljon materiaalia Micro:Bitin hyödyntämiseen koodauksen oppimisen välineenä.
https://www.innokas.fi/materiaalit/microbit-perusteet/
https://www.innokas.fi/materiaalit/microbit-ohjelmoinnin-rakenteet/
https://www.innokas.fi/materiaalit/microbit-sensoreiden-kaytto/
https://www.innokas.fi/materiaalit/microbit-ulkoisten-osien-liittaminen/
https://www.innokas.fi/materiaalit/microbit-hauskat-projektit/

ScratchJr

https://youtu.be/s6XvwEH0xpg

Kirjallisuutta

Monialaisia ohjelmointiharjoituksia

Fagerlund, J., & Roos, S. (2020). Motivoivaa ja tavoitteellista oppimista ohjelmointiympäristöjä hyödyntäen. Teoksessa A. Veijola, O.-P. Salo, & S.

Roos (toim.) Merkityksellistä oppimista etsimässä – oppimisympäristöjen moninaisuus nyt ja tulevaisuudessa. Jyväskylä: Jyväskylän normaalikoulu, Jyväskylän yliopisto, 135–162.

Linda Liukas: Hello Ruby (2015)

Jon Woodcock & Carol Vorderman: Koululaisen peliohjelmointikirja (2016)

Jon Woodcock: Koululaisen ohjelmointikirja (2017)