Ohjelmointipolku

Koonti ohjelmointiosaamisen tueksi

Osallisuus ja aktiivinen toimijuus digitaalisessa mediakulttuurissa ja ohjelmoiduissa ympäristöissä edellyttävät monenlaisia taitoja ja osaamista. Varhaiskasvatuksen, esiopetuksen ja perusopetuksen tueksi on laadittu digitaalisten taitojen ja osaamisen kuvaukset. Kuvausten tavoitteena on lisätä eri-ikäisten oppijoiden tasa-arvoa tieto- ja viestintäteknologisessa osaamisessa, medialukutaidossa ja ohjelmoinnin osaamisessa.

Polkuja ohjelmointiosaamiseen -opassarja tukee kasvatusta ja opetusta varhaiskasvatuksessa, esiopetuksessa sekä perusopetuksessa. Oppaat löytyvät avoimesti ladattavina verkossa. Tämä sähköinen koonti on tuotettu painettujen oppaiden tueksi ja se sisältää esimerkkikohtaiset linkit lisämateriaaleihin.

Lisää tukimateriaalia löydät kehittämisohjelman verkkosivuilta www.uudetlukutaidot.fi. Materiaalit julkaistaan myös AOE.fi-palvelussa.

Esimerkkejä tukevat sähköiset materiaalit on tässä koonnista koottu oppaan sisältöjen järjestykseen.

Esimerkit varhaiskasvatuksen ja esiopetuksen oppaaseen
Esimerkit vuosiluokkien 1-6 oppaaseen
Esimerkit vuosiluokkien 7-9 oppaaseen

Polkuja

ohjelmointiosaamiseen

Opas

varhaiskasvatukseen ja

esiopetukseen

Verkosta ja sovelluskaupoista löytyy runsaasti ilmaisia ohjelmointiaiheisia pelejä ja sovelluksia. Esimerkiksi code.org-sivustolla on pelejä ja harjoituksia kaikenikäisten lasten kanssa toteutettavak­si. Aiheeseen sopivia lautapelejä on myös saatavilla. Lapset voivat pelata mobiililaitteilla pelattavia pelejä ja käyttää sovelluksia parin kanssa vertaisoppimisen tukemiseksi. Tavallisesti pelit tukevat pääasiassa ohjelmoinnillista ajattelua komentojen antamisen ja yksinkertaisen ongelmanratkaisun näkökulmasta.

Jos ohjelmointiympäristöt eivät ole sinulle ennalta tuttuja, löydät verkosta esimerkiksi haku­sanoilla ”Scratch Jr ohjelmointi” tai ”Scratch Jr ohje” oppaita ja vinkkivideoita ohjelman perus­käyttöön.

ScratchJr-sovellus

Polkuja

ohjelmointiosaamiseen

Opas vuosiluokille 1–6

3. Vuoropuhelu

ScratchJr-sovellus

4. Sokkeloalgoritmit

ScratchJr-sovellus

5. Ohjelmointiaiheisia pelejä ja sovelluksia

Code.org– Ohjelmointiaiheisia pelejä ja harjoituksia kaikenikäisille. Käytettävissä ilmaiseksi tietokoneella ja mobiililaitteilla.

Lightbot Code Hour – Peli tukemaan ohjelmoinnillista ajattelua. Ilmaiseksi Android ja iOS -laitteille.

ScratchJr-sovellus – Graafinen ohjelmointiympäristö esi- ja alkuopetukseen. Ilmaiseksi Android ja iOS -laitteille.

Scratch – Graafinen ohjelmointiympäristö lapsille ja nuorille. Käytetään verkkoselaimella. Suositellaan käytettäväksi tietokoneella, mutta toimii myös mobiililaitteilla.

11. Hahmoon liikettä

ScratchJr-sovellus

Esimerkkitehtäviä:

Esimerkkikoodeja
  • Ohjelmoi hahmo liikkumaan vasemmalle ja oikealle vastaavista nuolinäppäimistä.
  • Ohjelmoi hahmo tekemään voltti, kun sitä klikataan.
  • Ohjelmoi hahmo sinkoilemaan satunnaisesti ympäriinsä, kun painetaan välilyöntiä.
  • Ohjelmoi hahmo hyppäämään ylös-nuolesta.

13. Musiikkiluupit

Sumotunes-sovellus

Scratch – Graafinen ohjelmointiympäristö

14. Piirtokissa

Kolmion piirtäjä -esimerkkiohjelma

Scratch – Graafinen ohjelmointiympäristö

Code.org:in Taitei­lija-sovellus

18. Animoitu esitelmä

ScratchJr-sovellus

Scratch – Graafinen ohjelmointiympäristö

20. Aarteenryöstöpeli

Voit tutustua Micro:bit -hälyttimen toimintaan videolla: https://vimeo.com/416263984

21. Robotit kilpailevat

Löydät esimerkin sumoroboteista videolla: https://youtu.be/G_v8SR9Xp04

Robotit kilpailevat. Videon on tuottanut Innokas-verkosto. Lisää tietoa Innokas-verkoston toiminnasta löydät osoitteesta http://www.innokas.fi.

22. Vuorovaikutteinen esitelmä

Scratch – Graafinen ohjelmointiympäristö

Esimerkin vuorovaikutteisesta esitelmästä löydät täältä.

23. Tietovisa

Tietovisapohja Scratch -toteutusta varten

Esimerkki Scratchilla tehdystä kertolaskupelistä

24. Maalaukset eloon

Scratch – Graafinen ohjelmointiympäristö

Esimerkki animoidusta maalauksesta

Animoitu maalaus

25. Audiovisuaaliset tehosteet digitaalisessa maailmassa

Scratch – Graafinen ohjelmointiympäristö

Esimerkki tehosteista

26. Pikselitaidetta ohjelmointia hyödyntäen

Scratch – Graafinen ohjelmointiympäristö

Pikseligeneraattorin ohjelma

Esimerkki pikselitaiteesta

Polkuja

ohjelmointiosaamiseen

Opas vuosiluokille 7–9

2. Suunnitellaan algoritmeja

Tässä kuvaus, miten kaaviosta johdetaan ”scratch”-koodia.

3. Python-ohjelmointikielellä alkuun

Pythonin perusteet. Neljäosainen harjoituspaketti

Tie koodariksi. Ohjelmoinnin alkeet -kurssi

4. Piirretään ohjelmoimalla

Python Turtle -moduuli

Pohja kilpikonnan ohjelmointiin

Esimerkki kilpikonnataiteesta

Esimerkki kilpikonnakellosta

5. Rakennetaan reaktiopeli

Reaktiopelin ohjelma

Esimerkki reaktiopelistä

6. Tutkitaan ja tuotetaan musiikkikappaleita

Sumotunes-sovellus

7. Tehdään tietovisa

Pythonilla toteutettu esimerkki

Pohja Scratch -toteutusta varten

8. Tietoturva-asiat kuntoon salasanageneraattorilla

Salasana-testeri

Esimerkki Pythonin salasanageneraattorista

9. Käsitellään eri tietotyyppejä

Python-ohjelmointikielen tehtäväpaketti

10. Itsenäistä harjoittelua verkossa

W3schools.com tarjoaa maksutta opastuksia eri ohjelmointikielien perusteisiin. Klikkaa vain etusivulla yläpalkista “Tutorials” ja valitse mitä haluat oppia.

Vastaavia sivustoja on lukuisia, osa myös suomeksi. Pythonin perusteisiin voit tutustua tie.koodariksi.fi -sivustolla, joka on Helsingin yliopistossa rakennettu maksuton oppimispolku Pythonin alkeiden itseopiskeluun.

Koodaustunti -sivustolle on koottu paljon tehtäviä, oppaita ja oppituntimalleja koodauksen opetukseen. Osa sisällöistä löytyy myös suomeksi.

Englanninkieliselle Khan Academy -sivustolle on koottu erilaisia ohjelmointikursseja.

11. Avoimia oppimateriaaleja ohjelmointiin

”Ohjelmointia Scratchin kanssa: Opas aloittelevalle ohjelmoijalle” tarjoaa toimintaohjeet aloittelevalle Scratchin käyttäjälle. Oppaan avulla voidaan aloittaa perehtyminen myös vaativimpiin ohjelmointikieliin – niiden taustalla olevaan logiikkaan.

”Arduino-projekteja Maker kitillä” -kurssilla rakennetaan ja ohjelmoidaan erilaisia virtapiirejä ja prototyyppejä Arduino-alustaa käyttäen. Kurssi sopii monimuoto-opetukseen ja itseopiskeluun mutta harjoitusten tekeminen vaatii Arduino-alustan ja kokoelman peruskomponentteja. Kurssia on käytetty lukioiden lisäksi yläkouluissa.

Ohjelmointia matematiikan opetuksen -kirjanen sisältää kokoelman tehtäviä, jotka yhdistävät ohjelmointia ja matematiikkaa eri tavoin. Kokoelman tarkoituksena on antaa ideoita peruskoulun ja lukion matematiikan tunneille ohjelmoinnin sovelluksista.

Peruskoulun opettajille suunnatun Let Me Hack It – Luovan teknologian ja ohjelmoinnin opettajamateriaalin harjoitukset antavat ideoita luovuuden, teknologian ja pedagogiikan yhdistämiseen sekä monialaisten oppimiskokonaisuuksien suunnitteluun.

Scratch ja Python oppimispaketit jakautuvat viiteen osaan: Lause, Silmukka, Ehtolause, Muuttuja ja Lista. Jokaisessa osassa on teoriaosuus ja haasteita, joilla voit kokeilla osaamistasi ja harjoitella ohjelmointitaitoja. Voit tehdä kaikki tehtävät joko pelkästään Scratch-ympäristössä, Python-ympäristössä tai sitten näitä kahta luovasti yhdistellen. Tehtävät ovat siis aivan tai lähes vastaavia.

Python from Scratch -ohjelmoinnin oppimispaketti Python-ympäristössä. Materiaalin rinnalla kulkee koko ajan Scratch-materiaalit.

Scratch to Python -kurssilla opitaan ohjelmointia Scratchilla. Materiaalin rinnalla kulkee koko ajan Python-materiaalit.

13. Herätetään maalaukset eloon

Valmis Scratch-malliprojekti

14. Tehdään yhdessä pelejä

Esimerkki Scratchilla tehdystä kertolaskupelistä

Pelien tekemiseen soveltuu esimerkiksi Scratch, GDevelop5 ja Pythonin Pygame-kirjasto. Voitte käyttää pelien tekoon myös 3D-ympäristöjä. Ne ovat motivoivia ja ammattimaisia välineitä, mutta vaativat opettajalta paljon perehtymistä.

Pelintekoympäristöjä on erilaisia. Esimerkiksi Unity, Unreal Engine ja Godot ovat 3D-pelimoottoreita, jotka sopivat sekä harrastus- että ammattikäyttöön. GDevelop on 2D-pelien tekemiseen suunnattu pelintekoympäristö.

Unity

Unity-oppimisalusta

Unreal Engine

Unreal Engine -oppimisalusta

Godot

GDevelop 5

15. Kilpaillaan roboteilla

Sumorobotit: https://youtu.be/G_v8SR9Xp04

Sumorobotit-video. Videon on tuottanut Innokas-verkosto. Lisää tietoa Innokas-verkoston toiminnasta löydät osoitteesta http://www.innokas.fi.

16. Automatisoidaan Minecraftissa

Minecraft Education Edition

Tavallinen Minecraft

17. Ohjelmoidaan kielentunnistusalgoritmi

Valmis Python-ohjelman pohja

18. Tehdään interaktiivisia esitelmiä ilmiöistä

Esimerkki 1: Atomimalli

Esimerkki 2: Kettu

19. Ohjelmoidaan esineitä tunnistava algoritmi

Scratchin videohavainnointi-laajennus

Valmis esineentunnistusohjelma

Esimerkkikoodi

20. Mallinnetaan ilmiöitä 3D-ympäristössä

Pelintekoympäristöjä on erilaisia. Esimerkiksi Unity, Unreal Engine ja Godot ovat 3D-pelimoottoreita, jotka sopivat sekä harrastus- että ammattikäyttöön.

Unity

Unity-oppimisalusta

Unreal Engine

Unreal Engine -oppimisalusta

Godot

22. Rakennetaan pakohuone

Pakohuonekokonaisuus

25. Kone vastaan ihminen

Google lens -sovellus

26. Sulautetut järjestelmät

Analyyttinen kone