Koodileirien tunnelmia 2017 – Raudaskylä

Datasepän koodikoulun koodileirit pidettiin juhannuksen jälkeisellä viikolla Ylivieskan Raudaskylällä. Paikkana oli idyllinen Raudaskylän Kristillinen Opisto, joka nyt toista vuotta tarjosi koodileirejä osana kesän leiritoimintaansa. Opistolla on pitkä perinne musiikkileirien järjestämisestä – klassisesta popmusiikkiin ja puhallinmusiikkiin. Raudaskylä on noin 800 asukkaan kyläyhteisö Pohjois-Pohjanmaalla Ylivieska- nimisessä kaupungissa. Kyläyhdistys on panostanut viihtyisän elinympäristön tarjoamiseen lapsille ja nuorille maaseudulla, joten  kylältä löytyy mm. ympärivuotisessa käytössä oleva lähiliikunta-alue parkour-puistoineen ja skoottausalueineen, unohtamatta leikkipuistoa ja mobiilisuunnistusta. Lähellä Opistoa on Kalajoki ja sen ylittävä jännittävä riippusilta ja lintutorni. Tämä ympäristö tarjosi mainiot puitteet myös koodileiriläisille.


Leiriläisen tekemä leirilogo

Pienten leiriläisten kanssa alkoivat koodileirit maanantaina. Innokkaita ja vilkkaita 7-9 vuotiaita saapui aamulla 12 leiriläistä Opiston infoon. Jännitys oli käsin kosketeltavaa, puheensorinaa ei juuri kuulunut. Muutamat näppäilivät älylaitteitaan. Koodiope johdatti leiriläiset koodausluokkaan, jossa aloitettiin tutustuminen toisiimme ja Rauski-roboon. Tunnelma vapautui nopeasti, kun porukka pääsi ohjailemaan robottia ja huomasi, ettei tässä mistään liian vaikeasta ole kyse. Parin päivän aikana ehdimme tutustua hieman koodauksen alkeisiin ja koodata omaa pelisovellustakin. Pääpaino oli kuitenkin kivassa koodausaiheisessa ajanvietteessä, ulkoilussa, hyvässä seurassa ja tietysti herkullisessa ruuassa. Koodiopelle leirin huipennus tuli viimeisellä välipala-tauolla, jossa leirin lähes nuorin kaveri kysyi: ”Onko tämä leiri taas ensi kesänä, Minä ainakin tulen tänne varmasti!!”

    

Keskiviikkona saapuivat isommat koodileiriläiset, eli 10-13 vuotiaat. Heissä oli mukana jo konkareitakin (=viime vuonna leirillä olleita). Ja muutama enemmänkin harrastuksena koodaillut. Jännitys infoon tullessa oli kuitenkin kova, koska olivathan he kaikki lähes outoja toisilleen. Rauski-robo laukaisi jälleen jännityksen, koska kyllähän robon ohjailu kaikilta onnistuu..
Päivien sisältö oli laadittu seuraavaksi:
1.pv code.org koodausta.
2.pv scratch koodausta.
3.pv scratch ja kodulab koodausta.
4.pv musiikkiohjelmointia.

Koodauksen välissä tietokoneettomia tehtäviä, kuten paperilennokin algoritmi, ja tietysti parkourausta läheisessä puistossa.

Sisällön valinta osoittautui mielekkääksi. Erilaisille tyypeille löytyi mieluista kokeilemista koodauksen parista. Ja vaikka jollakulla jostain osa-alueesta joillakin oli jo paljon kokemusta, niin hänkin sai kokeilla jotain uutta. Koodiope antoi aika vapaasti leiriläisen keskittyä omaan koodiprojektiinsa, jos hänellä sellainen oli mielessä. Mutta kaikki ainakin kokeilivat koodata kaikilla työkaluilla: code.org, scratch, kodulab, sonicpi.

Leirien parasta antia olivat kaverisuhteet, jota syntyi leiriläisten kesken. Koodiope pääsi näkemään sellaisten samanhenkisten pikkukoodareitten ystävyysuhteitten syntyä, joka luultavasti kestää pitkään jopa ihmisiän. Teen yhteenvetoa leirien sisällöstä ja niiden kehittämisestä kesän aikana. Mutta nyt on kiva jäädä kesäloman viettoon koodausopetuksesta!!

Syksyllä Datasepän koodikoulu tarjoaa uusia juttuja Ylivieska-Nivala-Sievi alueen pikkukoodareille. Jäädään odottamaan mitä ne ovat..

Kuumimmat ohjelmointikielet maailmalla

https://www.newtechnorthwest.com/discover-the-hottest-coding-languages-coding-meetups-in-seattle/

Jokin aika sitten julkaisin täällä linkin, jossa listattiin Suomen käytetyimpiä ohjelmointikieliä. Ei näytä kauas nakkaavan näistä vastaavista maailmalla käytetyistä.

  1. Python
  2. Java
  3. Javascript
  4. C#
  5. Ruby
  6. PHP

Omakohtaista työkokemusta on kaikista muista paitsi Ruby:sta. Mitä mieltä olette, olisiko se tutustumisen arvoinen ohjelmointikieli?
Onkohan Ruby nousussa?

Musiikkiohjelmointia alakoulussa – kevätlukukauden loppukevennys

Aikaisemmin keväällä törmäsin artikkeliin, jossa kerrottiin Mehackitin musiikkiohjelmoinnin tarjonnasta. Päätin pyytää lähikouluni 6. luokkalaiset testiryhmäksi, ja kokeilla, miten luonnistuu sen ikäisten kanssa biisien tekeminen.  Itsellänikään kun ei musiikillista taustaa ole.

Sonic PI on ohjelman nimi, jolla ohjelmoidaan elektronista musiikkia. Se on ilmainen työkalu, ja sen saa ladattua netistä. Ohjelman voi asentaa mm. Mac, Window, Linux- tietokoneille. Me käytimme muutaman vuoden vanhoja Windows 7 tietokoneita. Asennukseen tarvittiin Admin- tunnukset. Sujuvasti toimi Sonic PI, vaikkei tietokoneet todellakana mitään ”tykkejä” olleet.

Sonic PI:ssä kyse ei ole enää visuaalisesti ohjelmoinnista, vaan koodi kirjoitetaan perinteisellä tavalla (=tekstinä) ohjelmaksi eli biisiksi. Mehackitin sivuilla on hyvät ohjeet Sonic PI:llä ohjelmointiin ja paljon valmiita esimerkkejä, joita muokkaamalla pääsee pitkälle. Päätin kuitenkin hieman supistaa ja yksinkertaistaa ohjeita, koska aikaa oli käytössämme vain kaksi tuntia ja kyseessä nuoremmat opiskelijat, kuin on Mehackitin ohjeen kohderyhmä (=K13). Tästä löytyy linkki ohjeisiin, joiden avulla me teimme biisejä:
https://raudaskoskenkoodikerho.wordpress.com/2017/05/25/musiikkiohjelmoinnin-tehtavia-sonic-pi/

Pari tuntia hurahti vähän liiankin äkkiä. Paljon saimme kuitenkin aikaa, jokainen viriteltyä ainakin: rumpubiitin ja bassoraidan. Päämelodia jäi ajanpuutteen takia osalta tekemättä, mutta mukava ja toivottavasti mieleenpainuva ohjelmointikokemus saatiin!! Innokkaimmat nauhoittivat ja tallensivat tekemänsä biisin, jotta pääsevät esittämään sen myös kotona.

Edellytys sille, että näinkin paljon saatiin aikaan parissa tunnissa, oli copy-paste toiminnon hallinta. Se käytiin ensin yhdessä läpi, koska:
Koodausvinkki numero yksi:
Koodatessa tarvii normaalitilanteessa vain vähän kirjoittaa tekstiä. Yleensä riittää, kun osaa kopioida koodia paikasta toiseen ja tehdä siihen tarvittavat muutokset.”

Voin suositella tämän tyyppistä kokeilua ohjelmoinnin oppitunnille 5. tai 6. luokan keväälle loppukevennyksenä. Ei vaadi pitkää perehtymistä opettajaltakaan.
Päivän tärkein anti ja tavoite oli, että ohjelmointia voidaan hyödyntää aika laaja-alaisesti 🙂

Koodareitten suosimat ohjelmointikielet – mitä kieliä yritykset käyttävät ?

Kouluissa mietitään millaisia ohjelmointikieliä oppilaille tarjottaisiin. Olisi hyvä tiedostaa myös yritysmaailman näkemys tähän. Koulujen olisi järkevää tarjota oppilaille sellaisia ohjelmointikieliä, joilla on tulevaisuutta , ja joita käytetään maailmalla paljon.

Suomesta 101 yritystä vastasi it-markkinasta kyselyyn, jossa selvitettiin mm. suosituinta ohjelmointikieltä. Juttu löytyy kokonaisuudessaa tästä linkistä
(https://www.itewiki.fi/blog/2017/05/kaytetyimmat-ohjelmistokehityskielet-ohjelmointikehykset-ja-julkaisujarjestelmat-suomessa/), 

  1. Javascript
  2. PHP
  3. Java
  4. Python
  5. C#
  6. C++
  7. C

Javascript ja PHP erottuvat koodareiden laajimmin hallitsemina kehityskielinä. Etenkin Javascipt on nostanut profiiliaan viime vuosina, vaikka sitä pidettiin vielä 15 vuotta sitten ihan leikkikaluna. Yhteistä näillä on se, että ne ovat helpohkoja oppia, vaikka ihan ensimmäisenä kielenä. Molemmilla pystyy kuitenkin koodaamaan vaativiakin sovelluksia esim. verkkokauppoja tai toiminnanohjausjärjestelmiä. Noin 90 % markkinassa toimivista yrityksistä omaa Javascript-osaamista ja noin 80% tuntee PHP-kehityksen.

Voisi heittää ilmaan arvauksen, ettei Javascriptin ja PHP:n oppiminen ainakaan hukkaan mene, vaikka suosio laskisikin tulevina vuosina. Otetaanpa  esimerksi 80-luvun hitti Cobol. Sillä on tehty aikanaan paljon mm. pankkijärjestelmiä, joita käytössä edelleen. Eli se ei ole kadonnu mihinkään. Nyt vain on tilanne, ettei Cobol-osaajia tahdo löytyä. Palkat kipuavat pilviin!

Lapset opiskelevat jatkossa ”koodausta” alaluokilta lähtien käyttäen helppoja graafisin oppimisympäristöjä, kuten Scratch, code.org ja code.org. Näitä tarvitaan, että koodaus tulee tutuksi riittävän helpolla tasolla. Nämä ympäristöt antavat käsityksen siitä, mitä ohjelmointi tarkoittaa ja mitä varten sitä tehdään. Mutta miksi eivät isommat eli yläkoululaiset opiskelisi suoraan sellaista kieltä, jota voi joskus jatko-opinnoissa tai työelämässä tarvita?
Javascript, PHP tai Python ovat ns. scriptikieliä, ja niillekin on luottu helppoja oppimisympäristöjä. Näitä kannattaa koulujen harkita.

Tässä yksi esimerkki matalan kynnyksen oppimisympäristöstä Javascriptiin:
https://code.org/educate/applab
Ja tässä pythoniin:
http://www.teromakotero.fi/python-klubi/

Vähemmän tavaraa, enemmän elämyksiä
Elämyslahjat.fi

Seikkailukasvatus tuo uusia tuulia koodikouluun?

Osallistuin Seikkailukasvatuksen koulutuspäiville 9.-10.5.2017 Raudaskylän Opistolla, jossa kouluttajina toimivat Raija Erkkilä (KT, yliopettaja, Oulun ammattikorkeakoulu, ammatillinen opettajakorkeakoulu) ja Seppo Karppinen (EO, KT, Oulun kaupunki).

Mitä seikkailukasvatus on ? 

Tämän määritelmän lisäksi opin kurssilla, että seikkailu on loppujen lopuksi meidän jokaisen omassa päässä. Toiselle on seikkailu tehdä omalle pihalle nuotio, kun taas toiselle seikkailu on kiivetä Himalajalle. Seikkailulla haetaan elämyksiä, jotka jäävät pitkäkestoiseen muistiimme loppuelämäksi. Seikkailun ei tarvi olla rajua vuorikiipeilyä, vaan se voi olla myös meditatiivista itsensä tutkiskelua luonnon keskellä.

Minun tavoitteeni oli imeä kurssilta itseeni ideoita 2017 kesän koodileirin toteutusta varten. Pidän luonnossa liikkumisesta, ja haluaisin olla esimerkkinä tuleville pikkukoodareille tässä asiassa. Vaikka digitaalisuus valtaa maailmaa, niin voimavaroja me saamme silti edelleen luonnossa liikkumisesta. Luontokokemusta ei voi mielestäni digitalisoida, siksi tämän kesän koodileireihin kuuluu entistä enemmän ulkona tehtäviä harjoitteita.  En vielä kerro mitä, mutta seuraa blogia, niin näet loppukesästä 🙂

Näin sanoihin on hyvä päättää tämä kirjoitus:
Vähemmän tavaraa, enemmän elämyksiä
Elämyslahjat.fi

Kokeilussa Bomberbot – koodauksen oppimispeli alakouluun

Loin itselleni opettajan tunnukset Bomberbot- oppimispeliin kokeillakseni mitä se tarjoaa. Ohjelmistosta voi valita alkeis- tai/ja jatkokurssin. Kokeilutunnuksella oli avoinna vain osa alkeiskurssin sisältöä, mutta sekin riitti vakuuttamaan minut ohjelman käyttökelpoisuudesta alakoulussa.

Alkeet osio sisälsi tuntisuunnitelmat 1-11, jotka tosiaan alkoivat ihan alkeista. Oman aiemman kokemukseni perusteella alkeiskurssi voisi sopia noin 10 vuotiaille, tai saattaisi sopia jopa nuoremmillekin. Mielestäni kuitenkin on hyvä pitää koodauksen opetus sillä tasolla, että se on aluksi mieluummin liian helppoa oppilaille, kuin vaikeaa. Kukin tuntisuunnitelma sisälsi opettajalle perehdytys materiaalia, jolla pääsee aiheeseen sisälle nekin, joilla ei mitään aiempaa kokemusta aiheesta. Tuntisuunnitelmat oli 60minuutin pituisia, joista jokainen sisälsi tietokoneetonta tekemistä ja koodausharjoituksia tietokoneella. Tästä tykkäsin, että ei suoraan syöksytä tietokoneelle, vaan ”kuivaharjoitellaan” asiaa ensin.

Oppilaat kirjautuvat ohjelmaan omilla tunnuksillaan ja opettaja omillaan. Näin opettaja voi tunnin jälkeen omalla tunnuksellaan käydä katsomassa miten oppilaat suoriutuivat tehtävistä. Paras piirre oli mielestäni osio, jossa oppilaan tunnuksella pääsee luomaan oman pelimaailman. Toiset käyttäjät voivat lisäksi nähdä ja käyttää näitä itse tehtyjä maailmoja. Tämä parasta siksi, että aina on niitä lapsia, jotka etenevät nopeammin. Tässä luovassa osioissa he voivat toteuttaa itseään, kun muut vielä tekevät perusharjoituksia.

Näytti siltä, että Alkeet- osan opiskeluun saisi helposti kokonaisen lukuvuoden käytettyä. Kyseenalaistan sen olisiko järkevää jatkaa Jatko- osaan tässä samassa ohjelmassa, vaiko ottaa sen sijaan käyttöön jokin muu ympäristö esim. code.org tai Scratch. Ohjelmoinnin opiskelu alakoulussa ei saisi olla sidottu tiettyyn oppimisympäristöön. Sen sijaan oppilaille tulisi tarjota monipuolisesti vaihtoehtoja useasta eri koodauksen oppimisympäristöstä. Paremmin tulisi oppilaille ymmärrys, että samat ohjelmoinnin perusrakenteethan on käytössä kaikissa oppimisympäristöissä (=ohjelmointikielissä) !

Suosittelen tutustumaan ohjelmaan kokeilutunnusten avulla!!
Parissa viikossa ehtii kokeilla sopisiko tämän omana opetustyyliin..

https://go.bomberbot.com/en/login

 

Koodauksen tunnit peruskoulussa – Mistä tuntisuunnitelmat koko vuodelle?

Olen seuraillut 2014 vuodestä lähtien koodauksen opetuksen rantautumista peruskouluihin Suomessa. Opetussuunnitelma määrittää 2016 syksystä lähtien tasot, jotka ohjelmoinnista tulisi saavuttaa eri luokka-asteilla. Mutta selkeää materiaalia (=kirjoja, nettisivustoa) näiden tavoitteiden saavuttamiseen en vielä ole nähnyt Suomessa. Koulutusta ohjelmoinnin opetukseen on kyllä saatavissa, mutta jääkö silti liikaa koulun tai yksittäisen luokanopettajan vastuulle, että miten loppupeleissä ohjelmointia tietyssä koulussa opetetaan. Ja sehän johtaisi siihen, että oppilaiden kannalta kaikki eivät saavuta lähellekään samaa tasoa…

Maailmalta tälläinen hyvä kokonaisvaltainen materiaali tietojenkäsittelyn opettamiseen löytyy.  Code.org yhteisö on tuottanut materiaalia, jonka avulla voi opettaa tietojenkäsittelyn perusteita varhaiskasvatusikäisistä lukiolaisiin asti. Materiaalin käyttäminen ei edellytä opettajalta erityistietämystä tietotekniikasta. Ohjelmointi ei ole erillinen kokonaisuus, vaan se on osa kokonaisuuttaa ComputerScience. Ja näinhän se on koodarin näkökulmastakin katsoen, että on tiedettävä perusasioita tietotekniikasta, jotta voi ymmärtää ohjelmointia!

Tästä löytyy mm. video, jossa kerrotaan millaista materiaalia löytyy mm. peruskouluikäisille. KS. https://code.org/educate/curriculum/elementary-school

Code.org- sivustolta löytyy sähköistä ilmaista tietoa sisältäen tuntisuunnitelmat ja oppaat opettajille. Opettaja voisi ottaa materiaalista koko lukuvuoden kestävän suunnitelman ja edetä sen mukaan. Tai koko alakoulun tai yläkoulun kestävän suunnitelman. Tieto on pääosin englannin kielistä, joten se saattaa hidastaa käyttöönottoa. Materiaalit ovat moneen kertaan oppilailla testattuja ja ne ovat myös opettajien hyväksymiä. Kehittelyssä on ollut mukana monia monia asiantuntijoita tietotekniikan saralla. Ja materiaali kehittyy jatkuvasti, koska käynnissä on Pilotteja, joilla kehitystä tehdään.

 

Jaa jotain- tapahtuma: Tuntisuunnitelmia koodauksen alkeisiin alakoulussa

Nyt on meneillään Open Education Week 13vk/2017.
Datasepän koodikoulu haluaa osallistua viikkoon antamalla muiden käyttöön muutamia tuntisuunitelmiaan CC BY-SA lisenssillä.

Tässä tuntisuunnitelmat 1-4, joilla pääsee alkuun ohjelmoinnin alkeiden opettamisessa sellainenkin henkilö, jolla ei kokemusta ohjelmoinnin opettamisesta tai ohjelmoinnista yleensä. Nämä on käytännön tasolla kokeiltuja ja hyväksi havaittuja.

Ohjelmoinnin alkeita peruskoulussa:
https://drive.google.com/file/d/0B9NBzNK8wX3jemRsWHYwYVhJUFU/view?usp=sharing

Tietotekniikan perusteita leikinomaisesti koodauksen opettelun ohessa?

Mitä tarkoitan otsikolla?
Ohjelmoijan tulee tietää jotakin myös tietokoneista, jotta osaa käskyttää tietokoneita. Tässä yksinkertaisia esimerkkejä siitä, miten koodaus ja tietotekniikan perusasiat limittyvät yhteen:

  1. Tietokone on tyhmä.
  2. Tietokone ymmärtää vain nollia ja ykkösiä (=binääriluvut).
  3. Ihmisen on kerrottava koodaamalla tietokoneelle, miten sen pitää toimia (=ohjelmakoodi)
  4. Koodi tallennetaan tietokoneen muistiin (=tiedosto, kansio, tallennus tiedostoon ja kansioon).
  5. Tietokonekone suorittaa koodia prosessorilla (=prosessori).
  6. Ihminen komentaa tietokonetta eli käynnistää koodin esim. näppäimistöllä tai hiirellä tai koskeusnäytöllä (=näyttö, hiiri, näppäimistö).

Näinpä on luontevaa yhdistää koodaustunteihin tietotekniikan perusasioiden opiskelua jossain määrin. Tietotekniikan perusteisiin voi nykyää katsoa kuuluvan myös internetin toiminnan ymmärtämisen. Muutamalla kivasti toteutetulla harjoituksella opetusvuoden aikana voidaan innostaa oppilaita tietotekniikan pariin.

Kivoja esimerkkejä tarkoitukseen löytyy mm. Computer Science Fundamentals plugged sivustolta, joka tarjoaa valmiiksi suunniteltuja oppitunteja eri ikäisille. Kannaa tutustua, tekniikka ei ole aina tylsää!
Näitä tehtäviä tehdään ympäri maailman peruskoulussa, ja tehtäviä voi tehdä oli luokassa tietokoneet käytössä tai ei.

Pari esimerkkiä, jota olen onnistuneesti kokeillut 4.-6. luokkalaisten kanssa:

  • Sivustolla on mm. Internetin sanaston opiskeluun kiva esimerkki leikki. Se havainnollista sitä, miten viestit internetissä liikkuvat käyttäjältä toiselle ja ainahan viestit eivät edes mene perille 🙂
  • Toinen mielestäni hyvin oivallettu esimerkki on kertoa binääriluvuista kuvien avulla, kuten tämä linkin esimerkki.


Koodisatukirja: kokemuksia Hello Ruby kirjasta

 

helloruby_kansi

helloruby_tehtavat

 

 

 

 

 

 

 

Kerronpa esimerkin tosielämästä.

Viime viikolla oma tyttäreni 9v tuli koulusta ja kertoi lukeneensa koulussa Koodisatukirjan kokonaan läpi. Hän oli innostunut aiheesta ja halusi, että katsomme yhdessä kirjan tehtäviä. Kyseessä oli juurikin Hello Ruby- kirja!
Etenkin kartan piirtäminen kirjan päähahmon Rubin tyyliin ja ongelmien ratkominen tehtävissä tuntui hänestä kiinnostavalta. MUTTA, huomasin tytön ohittavan kirjan tehtävissä ohjelmoinnin termien määrittelyn ja siirtyvän suoraan tehtävään.

Olin hiukan hämmentyt asiasta, olinhan kokeilin koodisatukirjaa 1-4 luokkien kanssa Rauskin koodikoulussa Raudaskylällä. Juuri kukaan oppilaista eikä oma tyttärenikään tuolloin ollut kirjasta kovin innostunut…  tyttäreni ei ole ollut innostunut mistään koodausjutuista (on kuullut niistä liikaa kotona, olenhan puhunut koodikouluasioista 2014 vuodesta lähtien). Mutta nyt tämä kirja kolahti kunnolla!!

Nyt jälkikäteen pohdittuani minun lähestymistapani kirjaan koulun luokissa oli ehkä väärä: Eli minähän luin luokalle yhteisesti kirjaa pienen pätkän, ja osallistujat tekivät sitten muutamia harjoituksia. Yritin ennen harjoituksia selittää heille ohjelmoinnin termit, jota tehtävässä tulisi vastaan. VÄÄRIN meni. Parempi olisi antaa lasten lukea kirja kokonaan tai sitten lukea se heille pienessä porukassa. Ja tehtävien teossa ohjelmoinnin käsitteet on tarkoitettu ainoastaan opettajille, niitä ei tarvitse heti avata lapsille ollenkaan!!

Kokemuksesta viisastuneena NYT uskallan suositella Hello Ruby koodisatukirjaa muillekin!! Kannattaa kokeilla kirjaa, sen tehtävien avulla aikuinenkin voi tutustua koodauksen maailmaan. Kiitos kirjasta Linda Liukas 🙂

Kirjan saa ostettua mm. Adlibriksen verkkokaupasta – löytyy nimellä Linda Liukas.

Mytrendyphone PUHELINTARVIKKEET