6.11.2026

Jo Otaniemen lukiota ensimmäistä kertaa tutkiskellessani huomasin mini-OPSissa TEC-01-ohjelmointikurssin. Tiesin jo siinä vaiheessa, että hakisin kurssille mukaan lukioon päästyäni. Niinhän siinä sitten kävi, ja nappasin kurssin heti kurssitarjottimesta, kun siihen sain mahdollisuuden. Ohjelmointikurssin järjesti Aalto-yliopisto ja sitä opettivat Aallon omat opettajat.

Ohjelmointikurssi suoritettiin Python-ohjelmointikielellä, ja se etenee suoraan täysistä perusteista, kuten print(“Hello World”), monimutkaisempaan olio-ohjelmointiin. Vaikka olin aiemmin oppinutkin jo Pythonin perusteet, kurssi antoi minulle nippelitietoa ja teoreettisempaa tietoa ohjelmoinnista. Esimerkiksi kurssi auttoi minua saamaan hieman tietokoneen rautaa läheisemmän perspektiivin, kun kurssi käsitteli pinoa (engl. stack) Pythonissa.

Mielestäni kurssi olisi kuitenkin voinut käsitellä vielä enemmän, mitä Python-kieli tekee kulissien takana. Miten Python-tulkki todellisuudessa muokkaa tietokoneen muistia? Kurssilla olisi voinut olla enemmän reunatapausten käsittelyä, jotka voivat johtua juuri muistiin ja muuttujiin liittyvistä ongelmista. Tämä oli varsinkin minulle ongelmallista, kun jouduin sähläämään muuttujien viittausten kanssa ja enkä oikein aluksi tajunnut, mitä tehdä. Kurssin pintapuolisuus oli kuitenkin ymmärrettävää, sillä kurssi oli suunnattu aloittelijoille.

Kurssi oli jaettu yhdeksään tehtäväkierrokseen, joissa jokaisessa oli monta tehtävää, yleensä neljä. Jokaisella kierroksella oli minimipistemäärä, joka oli saatava, jotta kurssista pääsee läpi. Monella kierroksella riitti minullekin pulmaa. Mikään ei ollut niin vaikeaa, ettei sitä olisi mitenkään saanut hahmotettua tai selvitettyä, mutta moni asia vaati pidempää pohdiskelua monista suunnista.

Tehtävien tekeminen oli usein hauskaa, ja niistä syntyikin mukavia ohjelmia, joilla oli hauska leikkiä jälkikäteen. Pelasin muun muassa yhtä tehtävänä koodattua tekstipohjaista matemaattista peliä tuttuni kanssa.

Aallolla oli käytössä koodin arviointiin hyvin kehittynyt mutta epäintuitiivinen automaattinen tarkistusjärjestelmä. Koodin piti tarkasti seurata ulostuloissaan tehtävänannon esimerkkejä, mutta ohjelmien sisäinen logiikka itsessään oli suurin piirtein vapaasti valittavissa. Kerran minulle kävi niin, että ohjelmani ei täysin noudattanut tehtävänannon vaatimia ominaisuuksia, ja jouduin hieman pähkäilemään tarkistusjärjestelmän ulostulojen avulla, mikä siinä oli vikana. Lopulta nämäkin ongelmat kuitenkin ratkesivat.

Kurssin läpi päästäkseen ja lukion parin opintopisteen saamiseksi opiskelijan on suoritettava viisi ensimmäistä tehtäväkierrosta, mutta tämä ei kuitenkaan ole kaikki, mitä kurssilla on tarjolla. Halutessaan opiskelija voi jatkaa eteenpäin ja suorittaa kaikki yhdeksän tehtäväkierrosta ja jopa tehdä tentin omasta Python-osaamisestaan. Tentin suorituksesta ja kaikkien tehtäväkierrosten tekemisestä saa 5 opintopistettä Aalto-yliopistoon.

Parasta kurssissa oli varmasti tunneilla läsnäolon lähes täysi vapaaehtoisuus. Ainoana ehtona oli, että jos oppilaan pistemäärä nykyisellä kierroksella oli alle minimimäärän, oppilaan oli pakko osallistua sen tehtäväkierroksen oppitunnille. Muuten oppitunneilta pystyi vapaasti olemaan pois ja tekemään kaikki tehtävät kotona.

Kurssi ei ollut hirveän hyvä yhteisöllisyyden kannalta, ja se noudattikin yleistä stereotypiaa, että koodarit ovat ujoja ja eivätkä halua puhua toisille ihmisille. Toimimmekin suurimmaksi osaksi yksilöllisesti, emmekä hirveästi keskustelleet luokan kesken. Kurssi ei siis ole paras valinta, jos sille hakeutuu vain tietotekniikasta kiinnostuneen yhteisön toivossa. 

Vaikka kurssilla ei hirveästi oppilaiden kesken puhuttukaan, pystyin nappaamaan pari haastattelua toisilta oppilailta heidän kokemuksistaan:

Mikä sai sinut alunperin hakemaan kurssille?

Vihan: Vanhempani suosittelivat kurssia minulle. Olin myös TET-jaksolla tekemisissä ohjelmoinnin parissa.

Tomi: Olin kiinnostunut koodauksesta etukäteen, se voisi olla minulle hyödyksi tulevaisuudessani.

Mikä on ollut kurssilla helpointa, ja mikä vaikeinta?

Vihan: Helpointa oli if-lausekkeiden kirjoittaminen. Kaikki helppoa, minulla ei ollut erityistä vaikeinta puolta kurssista..

Tomi: Helpointa ei oikein ollut mikään. Koko juttu oli aika vaikeaa minulle. Varmaan kaikista vaikeinta oli tehtävänantojen lukeminen.

Mikä on ollut kivointa, ja mikä huonointa?

Vihan: Kivointa oli kun Aallon algoritmi tarkisti tehtäväni. Huonointa oli se kun minun piti jäädä muiden kurssien jälkeen tunneille.

Tomi: Kivointa oli kun sain tehtäväni valmiiksi. Huonointa oli moniulotteisten listojen (engl. multidimensional array) kanssa työskentely.

Oletko tehnyt kurssin itsenäisesti vai tunneilla? Miten kurssin tekeminen on sujunut?

Vihan: Tein suurimman osan tehtävistä itsenäisesti, mutta tein jotkut tehtävät tunneilla. Hankin läpäisyrajan verran pisteitä kierroksiin.

Tomi: Tein tehtävät itsenäisesti. Olen saaut tehtyä kaikki kierrokset tähän mennessä.

Onko sinulla kurssia edeltävää kokemista koodaamisesta?

Vihan: Sain TET-jaksoltani kurssia edeltävää Python-kielen kokemusta. Mutta olin kurssia ennen silti taitotasoltani huono Python-kielellä.

Tomi: Minulla oli pientä kokemusta yläkoulun kursseista Python-kielellä. Kurssia edeltävää taitotasoani voisi verrata kurssin ensimmäisen kierroksen vaatimaan osaamiseen.

Mitä sanoisit kurssille hakevalle opiskelijalle?

Vihan: Jos ohjelmointi oikeasti kiinnostaa, kurssille kannattaa hakea. Kurssi voi olla hieman epämukava, sillä oppilaan on usein jäätävä koulupäivän lopuksi tekemään tehtäviä [jos kierroksen läpäisyrajaa ei ole saavutettu].

Tomi: On kivaa kun kurssin ansiosta ymmärtää asiat!

Vinkkejä hakijoille!

Kurssiin tarvitsee Aallon tunnukset. Tunnukset on ehdottomasti hankittava ajoissa. Tunnen monia, jotka yrittivät hankkia tunnukset ja liittyä kurssille myöhässä, mutta tunnusten rekisteröimisaika oli jo umpeutunut. Tehtävät suoritetaan Aallon ympäristössä, joten ilman tunnuksia kurssia ei voi suorittaa.

Kurssille tarvittiin myös IDE (integroitu ohjelmointiympäristö, eli koodieditori) Python-kielen kirjoittamiseen ja helppoon ajamiseen. Tunnilla otettiin käyttöön Visual Studio Code -IDE koulun teknisten rajoitteiden takia, jotka estivät Aallon itsensä suosiman editorin käytön. Käytän itse VSCodea myös lukion ulkopuolella, ja se on erittäin intuitiivinen ja ilman turhaa sähläämistä toimiva editori aloittelijoille.

TEC-01-ohjelmointikurssi sopii mainiosti niin kokeneille kuin aloitteleville koodareille! Aiempi ohjelmointikokemus kuitenkin helpottaa tehtävien tekemistä, mutta jos algoritmistä ajattelua ja sinnikkyyttä löytyy, tehtävistä selviää ilmankin aiempaa kokemusta!

Jos tietotekniikan opiskelu Aalto-yliopistossa kiinnostaa, tämä kurssi voi olla erittäin hyvä vaihtoehto!

Artikkelikuvan ottaja: Matias Leminen

Related Post