Tietorakenteet ja algoritmit

kevät 2025

Kurssin II-osan loppuraportti

Kurssille osallistui 239 opiskelijaa, joista 144 (60.3 %) suoritti kurssin hyväksytysti.

Arvosanajakauma:

Yhteenveto

Palautteessa on paljon hyödyllisiä kokemuksia, havaintoja ja ehdotuksia. Kurssin kehitys jatkuu ensi lukuvuonna.

Seuraavassa on tarkempia kommentteja joihinkin esille tuotuihin asioihin.

”Kun viikkotehtävät ovat aina tietyn otsikon alla, ohjaa otsikko, millä systeemillä tehtävää kannattaa lähteä ratkaisemaan. Tosielämässä kukaan ei kerro otsikkoa, joten lopussa voisi olla vaikka yksi (vapaaehtoinen?) tehtäväsarja, jossa on tehtäviä kaikista aiheista.”

Kommentti: Tämä voisi toimia hyvin juuri vapaaehtoisena lisähaasteena. On totta, että ongelmanratkaisua voi ohjata paljon oletus siitä, millä tekniikalla tehtävä tulisi ratkaista.

”Tehtävänannoissa pitäisi määritellä täsmällisemmin kriteerit, millainen ohjelma suorittaa tehtävän hyväksytysti. Jäi epäselväksi, milloin ja mitä lisäkirjastoja (import) sai käyttää.”

Kommentti: Tehtävissä saa käyttää kaikkia Pythonin standardikirjaston moduuleja. Tämä tulee tosiaan huonosti esiin kurssin ohjeistuksessa ja asiaan on tulossa parannus.

”Näissä pitäisi mielestäni määritellä, kuinka kauan ohjelman suorittaminen saa kestää, ja mitä luokkaa syötteen suuruus enintään on tai kuinka monta kertaa suunnilleen kutsua ajetaan.”

Kommentti: Sallitun suoritusajan määrittelyssä vaikeutena on, että palvelimen suoritusympäristö ei ole luultavasti tarkalleen yhtä nopea kuin opiskelijan oma ympäristö. Tämän takia ei olisi välttämättä hyödyllistä ilmoittaa tarkkaa ylärajaa ajankäytölle. Tätä asiaa pyritään kuitenkin parantamaan tulevaisuudessa.

”Tehtävien palautus UI, jos annetussa pohjakoodissa on liian pitkä rivi on sitä hankala kopioida.”

Kommentti: CSES:ään on tulossa mahdollisuus kopioida tehtäväpohja mukavammin.

”Algoritmien toiminnan avaaminen askel askeleelta visuaalisesti voisi kuitenkin olla sellainen lisäys suoraan kurssimateriaaliin mikä auttaisi opiskelijoita ymmärtämään miten algoritmit toimivat.”

Kommentti: Palautteessa on melko paljon tällaisia toiveita. Tämä otetaan huomioon materiaalin kehityksessä.

”Kurssin tehtävien keskinäinen kontrasti on todella suuri. Tyypillisesti viikkoa kohden noin neljä-viisi tehtävää menee ihan vain materiaalia kopioimalla, mutta sitten seuraaviin kahteen menee päiviä.”

Kommentti: Tämä riippuu myös todella paljon opiskelijasta. Osalle viikon ensimmäisetkin tehtävät ovat vaikeita ja osalle kaikki tehtävät ehkä viikon viimeistä lukuun ottamatta ovat hyvin helppoja.

”Tai olisiko ehkä mahdollista supistaa oppimimistavoitteita ja käydä perusteellisemmin läpi vähemmän aiheita?”

Kommentti: Dynaaminen ohjelmointi tuntuu nykyisellä käsittelytavalla ehkä liian raskaalta tälle kurssille, ja tulevaisuudessa tätä aihetta mahdollisesti kevennetään kurssilla.

”tira 1 ja 2 kursseilla oli 2 tehtävää, joissa piti luoda tiedosto nimeltä components.py. Voisiko toisen näistä nimetä uudelleen, niin että molempien kurssien tehtävät voisi pitää kätevästi samassa kansiossa?”

Kommentti: Tämä olisi hyvä tavoite tulevaisuudessa. Tehtävien nimissä tuntuu tulevan yllättävän usein törmäyksiä.

”Joidenkin tehtävien esim. Listapelin tehtävänanto oli hämmentävä ja ajoi väärin johtopäätöksiin, joten varmistaisin että oikeaa tulkintaa varten ei joutuisi ensin kantapään kautta tehdä paljon töitä.”

Kommentti: Joissakin tehtävissä voisi tosiaan olla hyvä selostaa tarkemmin, miten algoritmin tulisi toimia esimerkiksi tietyllä syötteellä.

Kurssipalaute

Kurssipalautteen antoi 105 opiskelijaa.

Numeerinen palaute

Arvioi seuraavia väitteitä (1 = täysin eri mieltä, 5 = täysin samaa mieltä):

Kurssin raskaus (1 = turhan kevyt, 5 = turhan raskas):

Kurssin kokonaisarvosana:

Miten kehittäisit kurssia?

Muita huomioita