Ohjelmointipolku

Ohjelmointipolku Savitaipaleen perusopetuksessa




1. - 2.

3. - 4.

5. - 6.

7. - 9.

Tavoitteet

Harjoitellaan ohjeiden antamista ja niiden noudattamista ja opitaan niiden yhteys ohjelmointiin


Tutustutaan ohjelmoinnin perusasioihin kuten ohjeiden antaminen, syy-seuraussuhteet

Saadaan aikaan positiivisia kokemuksia ohjelmointiin liittyen


Tutustutaan ohjelmoinnin läsnäoloon arkielämässä

Kehitetään ohjelmointiin liittyviä ajattelutaitoja: vertailu, luokittelu


Syvennetään taitojaan yksityiskohtaisten ohjeiden antamisessa

Tutustutaan ohjelmoinnin perusteisiin graafisessa ohjelmointiympäristössä

Saadaan aikaan positiivisia kokemuksia ohjelmointiin liittyen


Tarkastellaan ohjelmoinnin läsnäoloa ympäristössä, esimerkiksi robotiikassa ja teollisuudessa


Kehitetään ohjelmointiin liittyviä ajattelutaitoja: ongelmanratkaisu, luovuus


Tutustutaan ohjelmoinnin perusrakenteisiin (silmukka, if – then – else) sekä loogisiin operaatioihin (ei, ja, tai).

Osataan tehdä ohjeen mukaan ohjelmia graafisessa ohjelmointiympäristössä

Saadaan aikaan positiivisia kokemuksia ohjelmointiin liittyen.


Harjoitellaan ohjelmoinnin perusrakenteiden käyttöä: muuttuja, ehtolause ja toistolause.


Nivelletään ohjelmointia osaksi oppiaineiden opetusta.

Osataan tehdä ohjelmia graafisessa tai tekstipohjaisessa ohjelmaympäristössä.


 

1. - 2.

3. - 4.

5. - 6.

7. - 9.

Materiaalit ja välineet

(esimerkkejä)

Pelejä ja leikkejä

Robogem-peli

Bee-Bot

Hello Ruby -kirja (Linda Liukas)

Ope on robotti -leikki

Loogiset palat

Piirretään parin sanallisen ohjeen mukaan


Graafisia ohjelmointiympäristöjä

Scratch Jr.

Bee-bot -sovellus

Pelejä ja leikkejä

Robogem-peli

Loogiset palat

Binäärilukukortit

Kuvia binäärikoodin periaattein Salakirjoitus

Piirrä ohjeen mukaan


Graafisia ohjelmointiympäristöjä

Scratch Jr.

Koodaustunti.fi

Oppimateriaaleja

Piirrä ohjeen mukaan Salakirjoitus

Helpot kaavat taulukkolaskennassa


Graafisia ohjelmointiympäristöjä

Scratch

Lego Mindstorms

Micro:bit

Oppimateriaaleja

Koodikerho.fi

koodaustunti.fi

code.org

www.codecademy.com/

www.w3schools.com/

(html, css, Javascript, php, Bootstrap)


Ohjelmointiympäristöjä

Scratch

Lego Mindstorms JavaScript-ohjelmointikieli

Micro:bit



1. - 2. luokat


Tavoitteet:

- Tutustuu ohjelmointiin perusasioihin kuten ohjeiden antaminen, syy-seuraussuhteet

- Harjoittelee ohjeiden antamista ja niiden noudattamista ja oppii niiden yhteyden ohjelmointiin


Yleistä:

- Alkuopetuksessa ohjelmoinnin opetus voi tapahtua suureksi osaksi ilman tietokonetta ja moni ohjelmointiin väljästi luokiteltava tehtävä on tuttua jo aiempien vuosien opetussuunnitelmista.

- Vaikka ohjelmointi on mainittu erityisesti matematiikan sisällöissä, voi ja kannattaa sitä toteuttaa myös muissa oppiaineissa (esim. ohjeiden antaminen ja noudattaminen)


Suositeltavia työtapoja ja materiaaleja 1.-2. luokkien opetukseen:

  • ●  Robogem-ohjelmointipeli
  • Robogem on ohjelmointiin liittyvään ajatteluun johdattava peli, joka soveltuu 2 - 4 oppilaalle. Peli sopii mainiosti vaikkapa matematiikan tai äidinkielen tunneille. Robogem on maksullinen tuote, joka sisältää pelilaudan ja muut peliin tarvittavat tarvikkeet.
  • ●  Hello Ruby -kirja (Linda Liukas)
  • Hello Ruby on tarina pienestä tytöstä, jolla on suuri mielikuvitus. Linda Liukas: "Uteliaisuudella pääsee pitkälle! Suurin osa meistä oppii ja kehittyy olemalla uteliaita, purkamalla ja kokeilemalla asioita, yrittämällä parantaa niitä." Siten koodauskaan ei ole vain tietotaitoa, vaan luomisen väline. Joku toinen rakentaa legoja tai piirtää, kolmas taas koodaa mielikuvituksensa näkyväksi. Linda Liukkaan lapsia ja aikuisiakin inspiroiva kirja on lastenkirja teknologiasta, tietokoneista ja ohjelmoinnista.
  • ●  Ope on robotti -leikki
  • Leikissä oppilaat ohjaavat opettajaa (tai luokkatoveria) antamalla yksinkertaisia ja tarkkoja ohjeita kuten “kävele eteenpäin kolme askelta. Käänny vasempaan. Kulje eteenpäin vielä kolme askelta”. Tavoitteena on harjoitella ohjelmoinnin perusasioita, eli ohjeiden antoa ja miten toimia tilanteessa, jolloin vastaan tulee vaikkapa este (seinä tms.)
  • ●  Loogiset palat
  • Loogisten palojen avulla voidaan harjoitella eri tavoin luokittelua, ominaisuuksien ja ehtojen toteutumista ja muuta loogista päättelyä. Pienissä loogisissa paloissa on neljä eri ominaisuutta ja neljä eri väriä.
  • ●  Bee-Bot
  • Bee-botit ovat ohjelmoitavia mehiläisrobotteja, joilla harjoitellaan yksinkertaisten ohjeiden antamista (kulje eteenpäin, käänny...).
  • ●  Scratch Jr.
  • Scratch Jr. on yksinkertainen, pelinomainen ja ilmainen graafinen ohjelmointiympäristö, joka toimii niin iOS-laitteilla kuin Android-laitteillakin. Scratch Jr. toimii hyvin ensimmäisenä ohjelmointiympäristönä pienille lapsille ja se on opittavissa muutaman tunnin kokeilulla.
  • Muita vinkkejä toteutukseen:
  • Ohjelmointi on ennen kaikkea loogista ajattelua, ohjeiden noudattamista ja antamista, syy-seuraussuhteiden hahmottamista ja sääntöjen merkityksen ymmärtämistä. Näin ajatellen ohjelmointia on laajasti ymmärtäen opetettu ja opiskeltu aina ennenkin - ohjelmoinnin tuloa alakouluun ei kannata pelätä. Ohjelmointi voi näkyä 1.-2. -luokilla mm. seuraavasti:
    • ●  ohjeiden laatiminen ja seuraaminen puhutulla kielellä ja kirjoittamalla/piirtämällä (kaikki oppiaineet)
    • ●  askartelu, käsillä tekeminen (ai, ks, ku)
    • ●  laskusäännöt, syy-seuraussuhteet (ma)
    • ●  suunnistaminen ja pihakartan lukeminen (li)


�3. - 4. luokat

Tavoitteet:

- Tutustuu ohjelmoinnin perusteisiin graafisessa ohjelmointiympäristössä - Kehittää ohjelmointiin liittyviä ajattelutaitoja

- Syventää taitojaan yksityiskohtaisten ohjeiden antamisessa


Suositeltavia työtapoja ja materiaaleja 3. - 4. luokkien opetukseen:

  •  Robogem-ohjelmointipeli

Robogem on ohjelmointiin liittyvään ajatteluun johdattava peli, joka soveltuu 2 - 4 oppilaalle. Peli sopii mainiosti vaikkapa matematiikan tai äidinkielen tunneille. Robogem on maksullinen tuote, joka sisältää pelilaudan ja muut peliin tarvittavat tarvikkeet.

  •  Piirrä ohjeen mukaan

Ajatuksena on harjoitella ohjeiden antamista ja noudattamista. Tehtävä tehdään parityönä. Toisella oppilaista on piirrosmalli ja toisella kynä sekä ruutupaperi. Oppilas, jolla on kynä ja paperi, ei saa nähdä mallipiirrosta. Oppilas, jolla on piirrosmalli, pyrkii ohjeistamaan paria piirtämään piirrosmallin mukaisen kuvan. Lopuksi katsotaan, millaiseen lopputulokseen päästiin ja arvioidaan prosessia.

  •  Loogiset palat

Loogisten palojen avulla voidaan harjoitella eri tavoin luokittelua, ominaisuuksien ja ehtojen toteutumista ja muuta loogista päättelyä. Pienissä loogisissa paloissa on neljä eri ominaisuutta ja neljä eri väriä.

  •  Scratch Jr.

Scratch Jr. on yksinkertainen, pelinomainen ja ilmainen graafinen ohjelmointiympäristö, joka toimii niin iOS-laitteilla kuin Android-laitteillakin. Scratch Jr. toimii hyvin ensimmäisenä ohjelmointiympäristönä pienille lapsille ja se on opittavissa muutaman tunnin kokeilulla.

  •  Sphero

Sphero on ohjelmoitava kauko-ohjattava pallo, joka on yhteensopiva 25 appsin kanssa. Spheron avulla voi hyvin konkretisoida komentoketjuja.

  •  Binääriluvut

Tietokoneiden toiminta perustuu binäärilukuihin, joihin voidaan johdattaa muutamilla harjoituksilla.

  •  Salakirjoitus

Salakirjoitus sopii erilaisten ohjelmointiin liittyvien asioiden opettamiseen: kielen kääntäminen, salaus, ongelmanratkaisu jne.

Sopivia valmiita harjoituksia:http://blogs.helsinki.fi/summamutikka/files/2015/02/Salakirjoituksia.pdf

  •  Koodaustunti.fi

Koodaustunti.fi-verkkosivuston materiaaleja voidaan käyttää jo 3. - 4. luokilla - joko yhteisesti tai eriyttävästi. Se on valmis ja helposti käyttöönotettava valmis materiaali, joka sisältää ohjeet itsessään. Suurin osa oppilaista pystyy etenemään hyvin itsenäisesti, ja pienin askelin vaikeutuvia tehtäviä on runsaasti. www.koodaustunti.fi

    Muita vinkkejä toteutukseen:

    Ohjelmointi on ennen kaikkea loogista ajattelua, ohjeiden noudattamista ja antamista, syy-seuraussuhteiden hahmottamista ja sääntöjen merkityksen ymmärtämistä. Näin ajatellen ohjelmointia on laajasti ymmärtäen opetettu ja opiskeltu aina ennenkin - ohjelmoinnin tuloa alakouluun ei kannata pelätä. Ohjelmointi voi näkyä 3.-4. -luokilla mm. seuraavasti:

    •  ohjeiden seuraaminen (kaikki oppiaineet)
    •  ohjeiden antaminen ja noudattaminen (kielet, ma, ks)
    •  laskusäännöt, syy-seuraussuhteet (ma)
    •  suunnistaminen ja kartan lukeminen (li, bg)



    �5. - 6. luokat


    Tavoitteet:

    - 5. - 6. luokkien aikana ohjelmoimisen opetuksen painotus on visuaalisessa ohjelmoimisessa

    - Tehdään ohjeen mukaan ohjelmia graafisessa ohjelmointiympäristössä

    - Ratkaistaan ongelmia ja tuotetaan vaihtoehtoisia ratkaisuja

    - Tutustutaan ohjelmoinnin perusrakenteisiin (silmukka, funktio, if – then – else) sekä loogisiin operaatioihin (ei, ja, tai)

    - Saadaan aikaan positiivisia kokemuksia ohjelmointiin liittyen - Ymmärtää ohjelmoinnin läsnäolo arkielämässä


    Suositeltavia työtapoja ja materiaaleja 5. - 6. luokkien opetukseen:

    • Piirrä ohjeen mukaan

    Ajatuksena on harjoitella ohjeiden antamista ja noudattamista. Tehtävä tehdään parityönä. Toisella oppilaista on piirrosmalli ja toisella kynä sekä ruutupaperi. Oppilas, jolla on kynä ja paperi, ei saa nähdä mallipiirrosta. Oppilas, jolla on piirrosmalli, pyrkii ohjeistamaan paria piirtämään piirrosmallin mukaisen kuvan. Lopuksi katsotaan, millaiseen lopputulokseen päästiin ja arvioidaan prosessia.

    • Salakirjoitus

    Salakirjoitus sopii erilaisten ohjelmointiin liittyvien asioiden opettamiseen: kielen kääntäminen, salaus, ongelmanratkaisu jne. Sopivia valmiita harjoituksia:http://blogs.helsinki.fi/summamutikka/files/2015/02/Salakirjoituksia.pdf

    •  Helpot kaavat taulukkolaskennassa

    Taulukkolaskentaohjelmissa (esim. Excel, Google Sheets)) on mielekästä tehdä omia yksinkertaisia laskentakaavoja. Ohjeita esimerkiksi:

    •  Graafisten ohjelmointiympäristöjen käyttö tietokoneilla ja mobiililaitteilla: Scratch

    Scratch on MIT:n kehittämä lapsille ja nuorille soveltuva ohjelmointikieli ja maksuton ohjelmointiympäristö. Scratchin graafisen käyttöliittymän avulla on helppo oppia ohjelmoinnin periaatteita, ongelmanratkaisua ja loogista päättelyä. Scratch sisältää grafiikka- ja äänityökaluja, valmiita kuvia ja ääniä voi poimia kirjastosta.

    video:

    vinkkejä: www.koodaustunti.fi , https://sites.google.com/site/scratchklubi/,

    , http://linkki.cs.helsinki.fi/sites/linkki.cs.helsinki.fi/files/scratchohjelmointikerhomateriaali_0.pdf

    •  Lego Mindstorms

    Lego Mindstorms yhdistää legorakentelun, robotiikan ja ohjelmoinnin. Valmiiden sarjojen ja tehtävien avulla voidaan harjoitella ohjelmointia visuaalisia komponentteja yhdistellen.

    •  Micro:bit

    Micro:bit on edullinen kämmentietokone,  jossa on monia ominaisuuksia:25 erikseen ohjelmoitavaa LEDiä, 2 ohjelmoitavaa painonappia, Liitäntäpinnejä, valo- ja lämpötia-anturit, liikeanturit (kiihtyvyysmittari and kompassi), langattomat yhteydet radion ja bluetoothin avulla sekä USB-liitäntä. Micro:bittiä voi ohjelmoida sekä graafisella käyttöliittymällä, että esim. Javascript -ohjelmointikieltä käyttäen.




    Muita vinkkejä toteutukseen:

    • ●  Robotiikka teollisuudessa, ihmisen ja koneen yhteistoiminta (yo, ks)
    • ●  Ihmisen korvaaminen robotilla? (etiikka)
    • ●  Päättely, ongelmanratkaisu, kielentäminen (ma)
    • ●  Ohjeiden antaminen ja noudattaminen (kaikki aineet)
    • ●  Ohjeiden antaminen ja noudattaminen (kaikki aineet)



    �7. - 9. luokat


    Tavoitteet:

    - Saadaan aikaan positiivisia kokemuksia ohjelmointiin liittyen.

    - Harjoitellaan ohjelmoinnin perusrakenteiden käyttöä: muuttuja, ehtolause ja toistolause.

    - Nivelletään ohjelmointia osaksi oppiaineiden opetusta.

    - Osataan tehdä ohjelmia graafisessa tai tekstipohjaisessa ohjelmaympäristössä. Voidaan tutustua ohjelmalliseen ajatteluun myös taulukkolaskentaohjelman avulla.


    Ohjelmointiympäristöjä ja materiaaleja

    •  koodaustunti.fi ja code.org

    Scratch-pohjaisia vaiheittain eteneviä harjoituksia. Koodaustunnin tarkoituksena on tutustuttaa "koodaamiseen" ja tehdä sitä arkipäiväiseksi, varsinaiset harjoitukset code.org-sivustolla. Soveltuu useaan eri oppiaineeseen, mahdollisuus useaan eri kieleen (esimerkiksi englanti, saksa, ranska).

    Mittava kokoelma ohjelmoinnin periaatteiden ja lausekielisen ohjelmoinnin harjoituksia. Työskentely on selainpohjaista, oppilaat voivat rekisteröityä palveluun ja harjoitella myös omatoimisesti. Ohjelmointikielinä esimerkiksi Java, Javascript, Python, Ruby ja php.

    Kansainvälisen W3C-konsortion opetussivusto, jossa voi harjoitella esimerkiksi html-, css- ja JavaScript –kieliä. W3C-konsortion tarkoituksena on osaltaan standardisoida web-julkaisemisen välineitä niin, että esimerkiksi eri laitteet ja selainohjelmat näyttäisivät tuotetut sisällöt yhtäläisellä tavalla. Sivustolla myös hyvä osio html-, css- ja JavaScript –kielet yhdistävälle Bootstrapille (http://getbootstrap.com/).

    •  Lego Mindstorms

    Lego Mindstorms yhdistää legorakentelun, robotiikan ja ohjelmoinnin. Ohjelmointi suoritetaan yhdistelemällä visuaalisia komponentteja. Ideoita projekteihin löytyy runsaasti Youtubesta.

    •  Scratch

    Scratch on lapsille ja nuorille soveltuva graafinen ohjelmointiympäristö. Scratchin graafisen käyttöliittymän avulla on helppo oppia ohjelmoinnin periaatteita, ongelmanratkaisua ja loogista päättelyä. Scratchista on monia muunnelmia: (esimerkiksi code.org-sivuston harjoitukset). Scratch:n avulla voi suunnitella ja toteuttaa myös laajoja ja vaativiakin ohjelmointiprojekteja.

    •  JavaScript-ohjelmointikieli

    JavaScript on Web-ympäristöön suunniteltu ja laajasti käytetty ohjelmointikieli, joka soveltuu erinomaisesti ensimmäiseksi tekstipohjaiseksi ohjelmointikieleksi. JavaScript-ohjelmia voidaan kirjoittaa millä tahansa tekstieditorilla (Notepad, Notepad++) eikä se tarvitse erillistä kääntäjää tai ohjelmointiympäristöä – kaikki nykyaikaiset Internet-selaimet suorittavat JavaScript-lähdekoodia sellaisenaan tai upotettuna osaksi html- tiedostoa. Syntaksiltaan JavaScript muistuttaa yleisesti käytettyjä C-sukuisia ohjelmointikieliä (C, C++, C#, Java).

    Ensimmäiseksi tekstipohjaiseksi ohjelmointikieleksi JavaScript soveltuu erinomaisesti laajan vapaasti saatavan esimerkki- ja opetusmateriaalinsa sekä helppolukuisen dokumentaationsa ansiosta (w3schools.com). JavaScript-ohjelmointikieltä on helppo oppia ja jo muutamalla koodirivillä saa aikaiseksi visuaalisia ja interaktiivisia ohjelmia. Lisäksi JavaScript-ohjelmointikielessä on sisäänrakennettuna lähes kaikki funktiolaskimessa olevat laskutoiminnot.

    JavaScript-ohjelmointikieli soveltuu niin ammattikäyttöön kuin ensimmäiseksi kieleksi ohjelmoinnin opettelussa. Helposti rakennettavat ja osaksi Internet-sivuja upotettavat ohjelmat innostavat oppilasta oppimaan ohjelmointia – oli kyseessä sitten hauskat peliohjelmat tai käytännön ongelmia ratkaisevat ohjelmat.

    Valmiita JavaScript harjoituksia alkeista eteenpäin löytyy esimerkiksi codecademy.com -sivustolta

    •  Micro:bit

    Micro:bit on edullinen kämmentietokone,  jossa on monia ominaisuuksia:25 erikseen ohjelmoitavaa LEDiä, 2 ohjelmoitavaa painonappia, Liitäntäpinnejä, valo- ja lämpötia-anturit, liikeanturit (kiihtyvyysmittari and kompassi), langattomat yhteydet radion ja bluetoothin avulla sekä USB-liitäntä. Micro:bittiä voi ohjelmoida sekä graafisella käyttöliittymällä, että esim. Javascript -ohjelmointikieltä käyttäen.