Kurssin II-osan palaute
Kurssipalautteen antoi 98 opiskelijaa.
Selkeä palautteesta tuleva viesti on, että kurssin työmäärä koetaan liian suureksi, arvostelutapa liian tiukaksi ja materiaali riittämättömäksi.
Tulevaisuudessa hyvä kokeilu voisi olla muuttaa kurssia niin, että viikoittaisen deadlinen sijasta kaikilla tehtävillä olisi vain yksi deadline kurssin lopussa. Tällöin kurssi joustaisi paremmin esimerkiksi silloin, kun opiskelija sairastuu kurssin aikana. Tässä on riskinä, että tehtävien ratkominen painottuisi kurssin loppuun, mutta toisaalta nykyinen viikoittainen deadline ei ainakaan tunnu toimivan hyvin monilla opiskelijoilla.
Palautteessa on monia toiveita, että kurssilla olisi enemmän luentoja ja ohjausta. Luentojen sijasta kurssilla on ollut eri aiheita käsitteleviä videoita, mutta tulevaisuudessa voisi taas kokeilla perinteisiä luentoja. Toisaalta haasteena tuntuu olevan opetuksen tavoittavuus. Kurssilla järjestettiin pajaohjausta kolmena päivänä viikossa, mutta vain noin kymmenen opiskelijaa viikossa osallistui ohjaukseen. Haasteena on siis, että ohjaus koetaan riittämättömäksi mutta samaan aikaan nykyisessä ohjauksessa on vähän osallistujia.
Palautteesta huolimatta kurssin vaikeustason laskeminen ei tunnu hyvältä idealta. Kurssia olisi mahdollista helpottaa vähentämällä vaadittujen tehtävien määriä ja muuttamalla arvosanarajoja, minkä jälkeen kurssin tulokset näyttäisivät luultavasti paremmilta. Kuitenkaan loppujen lopuksi oleellista ei ole saada tiettyä arvosanaa vaan oppia hyödyllisiä ja kiinnostavia asioita. Myöhemmillä kursseilla ja työelämässä ei ole väliä, minkä arvosanan sai Tirasta vaan mitä taitoja on oppinut.
Kurssi järjestettiin vuosi sitten syksyllä 2020 samalla formaatilla ja saman tasoisilla tehtävillä. Tähän verrattuna tämän syksyn palaute on selvästi kriittisempää ja tyytyväisyys kurssiin on laskenut. Syksyllä 2020 palautteen keskimääräinen kokonaisarvosana kurssille oli 4.42, kun se nyt on 3.96. Tämä on huomattava lasku, jollaista ei yleensä tapahdu kursseilla. Nyt onkin aihetta pohtia, mitä on tapahtunut ja mitä tässä tilanteessa kannattaisi tehdä.
Numeerinen palaute
Arvioi seuraavia väitteitä (1 = täysin eri mieltä, 5 = täysin samaa mieltä):
- Osaamistavoitteet olivat selvät: 4.43
- Toteutustapa tuki oppimistani: 3.90
- Materiaalit tukivat oppimistani: 3.86
- Arviointi mittasi oppimistani: 3.75
Kurssin raskaus (1 = turhan kevyt, 5 = turhan raskas):
- Työmäärältään opintojakso oli: 3.89
Kurssin kokonaisarvosana:
- Minkä arvosanan annat kurssille kokonaisuutena? 3.96
Sanallinen palaute
Miten kehittäisit kurssia?
- Lisää videoita, vaatimus viidestä tehtävästä viikko turhan raskas
- Itse tykkään vähän teoriapainotteisemmasta opetuksesta, mutta sitä versiota kun on tarjolla keväällä niin tämä kurssi on varmaan ihan hyvä pitää tällaisena.
- The end of the course might contains a week without any new content where you test all the things you learned thorughout the course
- Viimeisten viikkojen osalta kurssimateriaali poikkesi mielestäni aiemmista niin, että esimerkiksi pseudokoodeja ei ollut enää jokaisen algoritmin osalta, vaan niitä kuvattiin enemmän sanallisesti. En tiedä oliko se suunniteltua mutta omasta mielestä algoritmeja voisi kuvata myös loppupään osalta yksityiskohtaisemmin pseudokoodeina.
- Mielestäni arvosanarajat voisivat olla samat, mutta niin että ei olisi pakko suorittaa 5 tehtävää viikossa. Esimerkiksi jos elämässä tapahtuu yhtäkkiä mullistavia asioita (läheisen kuolema, sairastelu jne.) tuntuu että kurssi ei anna yhtään armoa sen suhteen.
- Työmäärä oli arvosanaan nähden liian raskas ja “koeleikkuri” liian jyrkkä. Nyt piti tehdä yli 60 % tehtävistä, että saa arvosanan 1, joka on mielestäni liikaa. Lisäksi miettisin onko pakko olla viikottaiset rajat, vai voisiko vain koko osiolla olla yksi palautuspäivä ja yksi yhteinen tehtävämääräraja. Olisin kaivannut teoriatehtäviä myös aikaisemmille viikoille, verkkojen kohdalla niitä oli ihan mukavasti. Luentomateriaali oli paikoitellen hieman epäselvää ja ympäripyöreää. Joistain videoista oli hyötyä, mutta se miten niiden aihe soveltuu sen viikon teemaan jäi jollain viikoilla hieman epäselväksi.
- Kurssin työmäärä on liian raskas ja minusta tuntuu, etteivät arvosanat ja opintopisteet heijasta tuntimäärää, jonka on kurssin parissa viettänyt. Viikottaiset minimimäärät tehtäviä, on liian tiukka, eikä ota huomioon opiskelijoiden muuttuvia tai erilaisia tilanteita. Se, että kurssilta putoaa kun ei saavuta yhden viikon tavoitteita on mielestäni turhan raaka. Uskon, että kurssi toimii hyvin, jos pääsee käymään pajoissa kampuksella, mutta etäopetuksena, ainakin minulle, turhan vaikea.
- Kurssi tarvitsisi luento-opetusta, vaikka kurssinvetäjällä on itsellään aivan erilainen mielipide asiasta, kurssin asioita kun “ei voi opettaa muille, vaan asiat tulee päätellä itse”. Koen tämän hieman erikoisena, että kurssilla olevia asioita ei voisi livenä edes esitellä opiskelijoille, vaan ohjataan katsomaan youtube-videoita ja lukemaan tira-kirjaa. Hieman huono näistä yrittää katsoa, mikäli asioita jää epäselväksi, koska ei voi reaaliajassa kysyä ja pyytää ohjausta. On myös hyvin erikoista, että Suomen “huippuyliopisto” ei näitä asioita opeta opiskelijoilleen, mutta esimerkiksi USA:n MIT-yliopisto kyllä opettaa, näistä on tehty myös Youtubeen videoita ja näihin jouduin itse ainakin todella paljon nojautumaan, kun omasta koulutuslaitoksesta ei opetusta saa. Olisi ollut kiva oppia tällä kurssilla tärkeitä asioita, mutta tämä on ollut lähinnä vain selviytymistä ja kokeilua. Aina ei ole edes ymmärtänyt asiaa, mutta tehtävä on tuurilla mennyt lävitse. Arvostelu on myös turhan kireä tällä kurssilla, ja on turhaa vedota siihen, että arvostelu on tällainen vain koska kurssilla ei ole tenttiä. Normaalisti kurssilla vaaditaan puolet oikein läpipääsyyn, kun nyt tarvitaan joka viikko 5/8 ja näillä saa juuri ja juuri arvosanaksi 1. Olisihan kurssiin voinut myös sisällyttää jonkilaisen loppukokeen. Koin myös itse, että en edes jaksa tuhlata osaan tehtävistä montaa tuntia aikaa, koska mikäli en saa tehtävää ratkaistua, tulee tästä automaattisesti 0 pistettä.
- Nykyinen tehtävien palautussysteemi ei mielestäni ole kovin hyvä; jos opiskelija panostaa kaikkensa edellisillä viikoilla saadaakseen parhaan arvosanan, mutta viimeisillä viikoilla tulee tehtäviä jota hän ei kaiken kaikkiaan vaan osaa, hän menettää lähes kaiken panostamansa aikansa ja joutuu tyytymään huonompaan arvosanaan. Tämän takia olen miettinyt muutamia korvaavia arvostelutapoja joista yhdistelemällä päästään nykyiseen systeemiin. Lisäksi mielestäni ehkä parempi tapa olisi, että näillä “luennottomilla” versioilla tehtävät tulisivat esimerkiksi kaikki yhtä aikaa. Sitten näitä tehtäviä voisi tehdä omaan tahtiin ja kurssin lopussa pitäisi kaikki tehtävät olla tehtynä samalle viikolle. Näin ollen joillain opiskelijoilla voi olla enemmän aikaa käyttää kurssin vaikeisiin tehtäviin, kuten “peitteet”, “laatikko” yms. Esimerkiksi minä, joka haluan tehdä kaikki edellisen viikon tehtävät ennen seuraavien tulemista on jokseenkin rankkaa tehdä myös nämä kaikki vaikeat tehtävät viikossa kun on muitakin kursseja. Luultavasti opsikelijat tässä tapauksessa tekisivät ensin joka viikolta 5 “helppoa” tehtävää ensin varmistaakseen kurssin läpipääsyn (5 tehtävää viikossa). Tämän jälkeen he luultavasti oman aikansa mukaan siirtyvät vaikeampiin tehtäviin korottaakseen arvosanaansa. Näin ollen myös ensimmäisessä kappaleessa tuomani ongelma poistuu, sillä efektiivisesti vaikeankin (myös vaikeimman) tehtävän tekemiseen voi varata aikaa yli viikko. Tämä tapa antaa myös mahdollisuuden sille, että opiskelijat palaisivat asiaan useamman kerran kurssin aikana, mikä tehostaisi oppisimista; kahden viikon sisällä tuskin kukaan aloittaa tehtävien tekemisen useammin kuin kerran. Lisäksi olen myös miettinyt sitä, miten 5t./viikko on toisellakin tapaa huono systeemi. Mielestäni jos jokaiseen viikkoon annetaan kaksi viikkoa aikaa tehdä tehtävät, niin mielestäni tällöin kurssin suorittamiseen pitäisi riittää 35 tehtävää kokonaisuudessaan riippumatta viikossa tehtyjen tehtävien määrästä. Näin ollen kurssin alkupäässä tehty työmäärä ei valu hukkaan mikäli jonkun viikon aihe on ylipääsemätön. Tässäkin formaatissa on ongelma, sillä tämä mahdollistaa sen, että opiskelijat eivät välttämättä jaksa panostaa viimeisellä viikolla enää jos heidän arvosanansa on tarpeeksi hyvä. Toisaalta, miten tämä eroaa siitä, että ennen 14. viikon tehtäviä olen tehnyt 18/21 “bonustehtävää”. Tässä bonustehtävällä tarkoitan, sitä viikottain pitää tehdä vähintään viisi tehtävää. Siten tehtävät 6…8 nostavat arvosanaa joten kutsun niitä bonustehtäviksi. Näin ollen nyt viimeisellä viikolla arvosananani on joko hylätty, jos en tee viittää tehtävää, tai 5 jos teen vähintään viisi tehtävää. Mielestäni tällainen joko hylätty tai arvosana 5 on jotenkin tyhmä, sillä vain nämä arvosanat ovat enää mahdollista saada, eikä enää mitään siltä väliltä. Ymmärtääkseni oikein, niin molemmilla ehdottamallani tavalla tämä ongelma korjautuisi: ensimmäisessä tapauksessa korjautuminen on ilmiselvää, sillä luultavammin opiskelijat ensin varmistaisivat kurssin läpipääsyn eli arvosanan 1 ja rupeaisivat kapuamaan ylöspäin parempiin arvosanoihin. Toisessa tapauksessa jos ei ole ahkeroinut edellisillä viikoilla, esimerkiksi on tehnyt vain 41 tehtävää viimeiselle viikolla siirtyessä, niin luultavasti kuka tahansa haluaa panostaa viimeisellä viikolla niin että pystyy korottamaan arvosanaansa, jos siihen on hänellä aikaa, eli tässä tapauksessa pääsemään yli 48:aan pisteeseen ja siten arvosanaan 3->4. Näin ollen molemmissa tapauksessa opiskelija halunnee panostaa myös viimeisellä viikolla, mikäli siis hyvän arvosanan saaminen on tavoitteena. Tämä näyttäisi olevan totta, mikäli katsoo kurssin ekan osan pistetilastoja; suurin osa pisteistä on juuri eri arvosanojen rajalla.
- Lisää helpompia tehtäviä joilla pääsee sisään aina uusiin aiheisiin helpommin.
- Luennot, materiaali ei omasta mielestä riitä
- Tehtäviin joku systeemi, että ei olisi niin mustavalkoinen (fail/pass) arvostelu; tämä toki vaatisi luultavimmin ihmisiä tarkistamaan niitä tehtäviä manuaalisesti jne. Ehkä mahdollisuus vertaisarviointiin jonkin tehtävän kanssa?
- Mera praktiska grejer i kursboken önskas, t.ex. exempel, och kanske en del tankegångar (eller förklaringar, “rautalankavääntöä”). Teori är också viktigt, men den hjälper inte alltid i lösningen av uppgifter, ifall man inte kan implementera teorin i praktiken.
- Tietyssä mielessä se tentti kuuluisi tähän kurssiin. Nyt aiemmat teemat unohtuvat suht nopeasti. Jos olisi tentti, jossa olisi lähinnä teoreettisia kysymyksiä (ei siis koodin kirjoittamista) niin sillä voisi mitata vielä, että miten kokonaisuus jäi haltuun. Tässä tavassa ehkä tehtävien painoarvoa/työllistävyyttä voisi vähän laskea. Kurssikirjaa voi aina parantaa. Se on kyllä riittävän hyvä, että asiat oppii, mutta paikoitellen kuvaukset ei aukea kovin hyvin/ovat vähän puutteelliset ja aukeavat käytännössä vasta koodatessa.
- Sen sijaan että viikon kaikki tehtävät umpeutuvat 2 viikon jälkeen, olisi mielestäni parempi että tähän viikottaiseen deadlineen vaadittaisiin vain se 5 tehtävää, jonka jälkeen viikon keskeenjääneitä tehtäviä voisi ratkoa koko loppukurssin ajan.
- Mielestäni kurssi on sopiva sellaisenaan. Erityisen hyvin toteutettu on kurssikirja, tulen säilyttämään sen varmasti kurssin jälkeenkin omaan käyttöön.
- Enemmän esimerkkejä
- Olisi mukava, jos tehtäviin käytetty aika ei menisi kokonaan “hukkaan” tehtävän jäädessä ratkaisematta, eli tehtävästä ei jäisi täysin pisteittä. En tosin keksi äkkiseltään hyvää tapaa tämän toteuttamiseen. Tehtävissä on myös suuri vaara hukata paljon energiaa pään hakkaamiseen väärään puuhun, eli tehtävän ratkaisun etsimiseen väärästä suunnasta. Olisi hyvä, että oppijalle kävisi mahdollisimman varhaisessa vaiheessa selväksi mistä suunnasta oikea ratkaisu löytyy.
- Muutamassa luvussa olisin kaivannut pseudokoodia.
- Enemmän materiaalia, varsinkin vaikeimpiin tehtäviin. Tira 1 oli enemmän materiaalia tehtäviä varten. Tira 2 ei ollut juuri mitään materiaalia.
- Mielestäni kurssi toimii loistavasti. Ehkä cses:ssä voisi lisätä riveille numeroinnit. :)
- Etenkin kurssin loppupuolella olisin kaivannut lisämateriaalia, jossa olisi näkynyt esimerkkikoodia tapauksista, joissa opiskeltavia algoritmeja hyödynnetään. Olisi myös kiva, jos suuri vaivannäkö palkittaisiin jotenkin sellaistenkin tehtävien kohdalla, joita tosissaan yrittää, vaikka lopulta ei saisikaan kaikkia testejä läpi. Vaihtoehtoisesti/lisäksi voisi olla jokin lisätehtäväpaketti, jonka avulla voisi paikkailla menneiden viikkojen suorituksia tai yrittää korottaa arvosanaa. Näin viikkodeadlinet eivät ehkä tuntuisi niin ankarilta ja stressaavilta.
- Kurssin teoriaosuutta voisi vähän laajentaa, esim. viikon johdattelevat tehtävät voisivat olla pidempiä monivalintatehtäviä ja koodin toiminnan selittämisen tulisi olla vaadittua ainakin joidenkin tehtävien kohdalla.
- Enemmän tehtäviä joista valita ja joissa harjoitella konsepteja sekä enemmän esimerkkejä. Esim 10 tehtävää joka viikko tms.
- Enemmän ei-kirjamaista esimerkkimateriaalia
- Lisää videoita ja esimerkkejä tehtävien ratkaisua varten
- Näin pitkällä kurssia alkoi tehtävien tekeminen jo kyllästyttää, eikä oikein jaksanut enää viikosta toiseen tuhlata valtavasti aikaa tehtävien tekemiseen. Tässä kohtaa myös ymmärrän paremmin negatiivisemman palautteen, koska kurssin suoritustyyli käy hyvin raskaaksi ja turhauttavaksi, jos jollakin viikolla ei saa kunnolla aiheesta kiinni. On vaikea kiinnostua oppimisesta, jos erittäin pitkän yrittämisen jälkeen ei vaan saa viimeistä tehtävää hyväksytyksi ja on putoamassa kurssilta ja kaikki aikaisempi työmäärä on menossa hukkaan. Tämä etenkin, kun tehtävät ovat hyvin pitkälti toistavia. Jos et siis osannut aikaisempaa, tuskin osaat seuraavaakaan. 14 viikkoa samanlaista vääntämistä ei ole kovin motivoivaa. Tietyllä tavalla voisi olla mukavaa, että suoritukseen tulisi jotain vaihtelua. Kuitenkin yleisesti koen, että olen oppinut kurssilla ja osaa tulevaisuudessa ainakin palata materiaalin ja esimerkkien pariin. Valitettavasti vain oppiminen tulee lähinnä mallivastausten näkemisen kautta ja jos ei meinaa päästä sinne asti nousee kyllä korvista savua. Olisi kiva myös saada hieman lisää ohjeistusta joihinkin tehtäviin esimerkiksi sen osalta, millaisia syötteitä käyttäjältä odotetaan. Nyt jotkit tehtävät tuntuu väliltä kompakysymyksiltä ja aika kuluu siihen, että korjaa alkuperäistä koodia käsittelemään jotain tapausta minkä ei alunperin ajatellut olevan edes mahdollista. Näiltä osin olisi kiva, jos voisi alusta asti keskittyä toimivan algoritmin toteutukseen. (Esim. odotetaanko, että käyttäjä voi tehdä saman syötteen uudestaan ja miten tämä pitäisi tulkita tehtävässä) Tämä on toki ymmärrettävää, jos opiskelijalle halutaankin opettaa että älä vielä juhli vaan varaudu yllättäviin tilanteisiin… :D Yleisesti kurssin aiheet ovat tärkeitä ja kurssi on tarpeellinen ja kiinnostava.
- Tykkäisin että olisi enemmän video/luentomateriaalia
- Itselle sopisi paremmin jos koko kurssilla olisi vain yksi deadline.
- Kaipasin lisää oppimateriaalia joissain osioissa. Pidin lyhyistä koodausvideoista erityisesti, niitä voisi olla enemmänkin.
- Hyvä kurssi, mutta tehtävät olivat välillä turhan vaikeita verrattuna aikaan mitä oli tehdä muiden kurssien ohella.
- Tira 2: kohdalla tuli selkeästi itselle esille puutteet tässä syksyn toteutuksessa jos ei ole mahdollista aktiivisesti osallistua esim algopajoihin. Kurssin loppupään asiat pelkän tirakirjan avulla tuntuivat välillä todella raskailta. Mielestäni kurssin materiaalit kohtaan voisi linkittää esim viimeisimmän kevään toteutuksen videoita. Näitä sekä ulkopuolisten lähteiden videoita tuli itse katseltua reilusti. Pelkän tirakirjan avulla voi olla todella hankalaa sisäistää ja oppia haluttuja asioita. Esim joitain algoritmeja on vain mainittu sanallisesti tirakirjassa , kun taas luennoilla käydään niiden pseudokoodia läpi ja selitetään toimintamalleja sanallisesti.
- Kurssin sisältö itsessään on hyvä ja näistä saa myös kivan historiallisen kehityskulun näkyviin sen suhteen, mitä laskennalliset tieteet ovat ja minkälaisien vaiheiden kautta olemme päätyneet 1990-luvulle, jos omaa riittävät taustatiedot. Kurssi ei sinänsä myöskään ehkä ole liian vaikea, mutta ajankäytöllisesti ehkä hieman ongelmainen, kun tehtäviin ja opiskeluun käytetty aika ei korreloi arvosanaan suoraan. Itse olisin varmaan jaksanut tästä vitosen tehdä, jos ei olisi ollut muita kiireitä, kun koitan puskea kandin yhteen vuoteen ja samalla tehdä muita projekteja. Kurssin tokalla puolella oli mielestäni selkeästi enemmän aiempien tehtävien ratkaisujen päälle rakentuvia ratkaisuja, mutta tämä voi johtua lähinnä siitä, että itselleni graafit ovat ennestään tuttuja tai ehkä se että kurssin toimintalogiikka oli tutumpi ja tästä syystä joitakin asioita oli helpompi seurata. Pedagogisen kehyksen puute on ehkä kurssin isoimpia ongelmia.
- Lisää opetusvideoita!
- En tiedä tarvitseeko kurssilla varsinaisesti perehtyä sen enempää algoritmien todistamiseen tai tuleeko näitä vastaan enemmän muilla kursseilla, mutta esimerkiksi video koodin toimivuuden todistamisesta johonkin ongelmaan liittyen olisi hienoa. Tira-kirjassa onkin paljon esimerkkejä näistä, mutta muutama videoesimerkki olisi hyvä lisä kurssiin. Kurssin tehtäviä tehdessä tuli monesti kysyttyä itseltä, että miksi tehtävään sovellettu algoritmi toimii, mutta sitä ei aina pystynyt itselleen täsmällisesti perustelemaan.
- Olisi kiva jos kurssin jälkimmäisessä osassa olisi hitusen matalampi pisteraja arvosanaan 5 tai jos olisi olemassa jokin lisätehtävien sarja jolla voisi koittaa korottaa arvosanaa. Lähipajoja kaipaisin myös enemmän.
- Jotenkin tuntuu siltä, että kurssin kokonaisarvosana määräytyy aina jokaisen viikon kahden viimeisen vaikeamman ongelmanratkaisutehtävän perusteella. Jos jommankumman näiden tehtävien ideoista oivaltaa ensimmäisellä pohdiskelukerralla, niin kurssiarvosanan suhteen tuskin tarvitsee hätiköidä. Jos taas molempien tehtävien pohtimiseen täytyy käyttää tuntikaupalla aikaa ja ratkaisun kirjoittamiseen vielä enemmän, niin arvosana varmasti putoaa erittäin nopeasti sellaisella opiskelijalla, joka tekee tehtäviä täysin itsenäisesti ja suorittaa muitakin kursseja samaan aikaan; jälkeenpäin tehtäviä ei voi enää koittaa uudelleen, jolloin arvosanan korottaminen ei myöskään onnistu. Tämän perusteella toivoisin ainakin jonkinnäköistä parannusta joko tehtävien palautuksen määräaikaan tai kurssiarvosanan määräytymiseen. Muuten tehtäviä oli hauska ratkoa ja näiden tekemisestä oppi paljon.
- Mielestäni kurssi oli oikein kiva, en keksi mitään lisättävää. Mielestäni useampi kurssi voisi olla samalla tavalla järkätty.
- Ohjelmoinnin kursseilla on korostettu, että muuttujien nimet pitäisi nimetä mahdollisimman kuvaavasti, mutta tämän kurssin esimerkeissä käytetään usein (erityisesti videoilla) sellaisia muuttujien nimiä kuin a, b, x, z, minkä takia ainakin monimutkaisemmista esimerkeistä oli välillä vaikeaa saada kiinni. Opetusmateriaalissa voisi siis käyttää havainnollisempia nimiä, sillä konkreettisemmat mielikuvat auttoivat ainakin minua ymmärtämään algoritmien logiikkaa paremmin.
- Vaikka tämä syksyn toteutusmuoto on simppeliydessään tosi hyvä, niin se on myös tosi rankka. TIRA I ja II putkeen on ollut aika rutistus - joka viikkoinen vaara pudota ja tietoisuus, että sitten joutuisi melkein kaiken aloittamaan alusta ei houkuttele. Paineet siis aika kovat suoriutumiseen. En tiedä olisiko hyvä olla lisää jotain keskitason tehtäviä (esim. yksi lisää tason 4 tai 5 tehtävä), jolla voisi ansaita lisäpisteitä/buustata arvosanaa. Omalla kohdallani (suoritan töiden ohessa) tein kurssin minimitehtävämäärällä, koska aikaisemman Tira I-kokemukseni ja discordin keskustelujen perusteella, tehtävien 6,7,8 vaativuustaso nousee niin kovasti, että en näe arvoa panostaa kymmentä tuntia yhteen tehtävään, jota en välttämättä saisi edes ratkaistua. Tällaisia kokemuksia mahtui muutamia tira-taipaleelle - ja ne ovat ollet tosi lannistavia ja vaikuttaneet (kai) alentavasti opiskelumotivaatioon. Tämän takia olisi ollut kiva, jos olisi jotain kohtuullisia lisätehtäviä, joiden avulla olisi voinut saada edes 2:n. Välillä oli mukavaa, kuten esim. vko:t 12,13,14 alkupään tehtävissä, joissa oli ajattelutehtäviä, eikä pelkkää ohjelmointia. Syksyn kurssiversio suosii selvästi jo hyvän ohjelmointikokemuksen omaavia. Ehkä uusin kurssin jossain vaiheessa, treenattuani algoritmeja ensin koulun ulkopuolella, sen verran ottaa päähän 1:n, siitäkin huolimatta, että koen oppineeni kurssilla paljon sekä tietorakenteista, algoritmeista, ohjelmoinnista sekä ongelmanratkaisusta.
- Viikoittaiset ohjevideot olivat tosi informatiivisia, mutta niitä oli aina vain 2-3 per viikko. Olisi hienoa jos niitä olisi vähän enemmän!
- Videomateriaalia tirakirjan tueksi olisi hyvä saada. Videot (jotka olivat hyviä) tukivat mielestäni tehtävien teossa hyvin, mutta videoita algoritmien teoriasta olisin kaipaillut.
- Malliratkaisujen läpikäynti ohjaajan johdolla voisi olla kiinnostavaa; ratkaisun koodi on joskus melko niukkaa, ja kaikki asiat eivät välttämättä aukea omin päin pähkäillessä. Viiden viikottaisen tehtävän ehdoton leikkuri on aika brutaali; yksikin vähän uuvuttavampi flunssa voi kaataa koko kurssisuorituksen.
- Monet tehtävät olivat tyyppiä: laske ratkaisujen lukumäärä. Hiukan käytännönläheisemmältä kuulostaisi: laske ratkaisujen lukumäärä ja joku esimerkkiratkaisu. Tietty paikoin voisi tehtävät vaikeutua näin huomattavasti.
- Enemmän testejä kooditapauksiin..
- Kurssi oli suhteellisen tiukka paketti. Minimiarvosanaan vaadittu työmäärä tuntui sopivalta, ja sen pystyi suorittamaan työnteon ohella menettämättä unia. Uskoisin, että korkeampiin arvosanoihin vaadittu työmäärä yltäisi asteikolla “Melko raskaaseen”, sillä loppupään tehtävät vaikuttivat haastavilta.
- Teoriaosuutta voisi lisätä, esimerkiksi n. tunnin videoluento joka viikolle.
- Tuntui, että tirakirjan loppua kohden käytännöllisemmät esimerkit (esim. pseudokoodit) olivat vähemmässä mitä alussa. Niitä voisi ehkä olla enemmän, ellei se sitten ole ideana, että kurssin loppua kohden olisi enemmän itsenäistä tekemistä. Huomasin myös että Unitubesta löytyy kurssin vanhempia luentoja. Ehkä näitä voisi linkata suoraan jonnekkin kurssisivulle, koska niiden sisältö näytti olevan linjassa kurssin nykyisen sisällön kanssa. Itseäni auttoi ymmärtämään jotain aiheita paremmin. En tiedä kuinka laajasti muut käyttivät.
- Joidenkin algoritmien tapauksessa olisi kaivannut esimerkkikoodia. Arviointi on turhan kyllä/ei -luonteista. Ymmärrän, että se on vaikea ellei mahdoton toteuttaa, mutta siinä saisi olla jotain vihjeitä jotka opastaisivat oikeaan suuntaan, vähän samaan tapaan kuin Moodlessa on mahdollista luoda että jos vastaus on tietyllä tavalla väärin, siitä saa vihjeen että yritäpä sitä tai tätä.
- Kurssisuoritusten palautusaikoja tulisi tehdä joustavammiksi niin että kaikilla olisi mahdollisuus tehdä vaikeimmat kurssin tehtävät.
- Lisäisin Tira kirjaan esimerkit ohjelmointikielillä
- Apua pitäisi olla saatavilla varsinkin päivänä jolloin tehtävät tulee olla tehynä, ja mielellään myös sitä edeltävänä päivänä. Jos kurssi suoritetaan etänä tämä apu pitäsi myös olla saatavissa etänä. Tämän voisi toteuttaa niin että tehtävät tulee olla tehtyna perjantaina, eikä sunnuntaina, ja etä-työpaja olisi myös avoinna perjantaina. Kurssin tehtävät pitäisi aivopähkinöiden sijaan toimia enemmän välineenä opetetun sisästämiseksi ja tämän mittaamiseksi. Ongelmaratkaisua on siinänsä tärkeätä harjoitella, mutta tällä kurssilla ei saada (tarpeiksi) pisteitä itse opetetun sisäistämisestä ja soveltamisesta. Vaikeimmissa tehtävissä (tehtävät 6-8 / viikko) varsinaiset pisteet saa sitten aivopähkinöistä, joiden ratkeamiseksi ei riitä opetetun sisäistäminen ja soveltaminen vaan olennaista on jonkun tietyn erityisen asian hoksaaminen. Vaikka ongelmaratkaisukyky on se asia jota kehitetään sisäitämällä ja kehittämällä algoritmikkaa, ovat nämä eri asioita tuntuu välillä siltä että tällä kurssilla käydään käytännössä kahta kurssia: algoritmiikan kurssi, ja ongelmaratkaisun tehtäväkurssi. Opintopisteita saa kuitenkin vain viisi. 5-8 tehtävää per viiikko tuntuu alka raskaalta. Jos tälläinen määrä pitäisi suorittaa, pitäisi joka saada enemmän opintopisteitä, tai olla mahdollisuus vielä korottaa arvosanan kurssin jälkeen suorittamalla tekemättä jääneitä tehtäviä jos kerta kaikkiaan ei ole ehtinyt muiden opintojen oheessa suorittaa hyväksi arvosanaksi tarpeiksi tehtäviä kurssin aikana.
- Kurssilla olisi hyödyllistä mielestäni olla pisteytykseen kuulumattomia lisätehtäviä, joilla voisi halutessaan harjoitella joitakin konsepteja lisää, ja kerrata ym. Joinakin viikkoina ihan kaikkia kirjan opettamia rakenteita ja algoritmeja ei ollut pakko ollenkaan käyttää tehtävien ratkaisemiseksi ja jäin miettimään, jäävätkö sellaiset vähän huonommin mieleen sitten kun ei ole käytännössä tullut harjoiteltua. Deadline joka ikiselle viikolle oli myös perheellisenä melko raskas, koska lasten syksyiset flunssassa olot aiheuttivat hankaluuksia suorittaa ajoissa tehtäviä. Omassa elämäntilanteessani olisi ollut paljon helpompi suorittaa kurssi, jos olisi ollut vaikka vain kaikkien tehtävien deadline kurssin lopussa, näin olisi voinut sovittaa työpainetta paremmin niille ajoille kun aikaa on enemmän.
- Tuntui, että asiat unohtuvat hyvin nopeasti. Ehkä lisää tehtäviä, jotka hyödyntävät aikaisempien viikkojen tietoja?
- Esim. vinkkejä annetaan palautuksen jälkeen, jos tehtävä menee väärin. Tai aikavaativuutta ilmoitetaan ennen tehtäväantoa
- Arvostelussa voisi olla hieman joustoa niin että painopiste olisi tehtävien kokonaismäärässä. Jos jollakin viikolla ei saa viittä tehtävää täyteetn tätä voisi kompensoida tekemällä seuraavalla viikolla enemmän tehtäviä sen sijaan että putoaa kurssilta.
- Piste- ja tehtäväjärjestelmän kehitys siten, että vaikeimmista tehtävistä saisi osatavoitteiden (esimerkiksi rajaamalla syötteen kokoa) saavuttamisesta jo joitain pisteitä. Tämä kannustaisi yrittämään vaikeimpia tehtäviä. Erilaisen kokeilujen perusteella myös pääsee syvemmin tehtävään ja ymmärtää paremmin kurssin asioita, kun joutuu etsimään ja kehittämään ideoita. Osaamistavoitteiden osalta mielestäni voisi olla jokaiselle viikolle selkeitä osaamistavoitteita, esimerkiksi muotoa “tämän viikon jälkeen osaan - asian 1 - asian 2 - asian 3 …” Tällä tavalla jokaisen viikon lopussa voisi kysyä itseltä, että osaanko jokaisen asian, jos en, niin palaan takaisin asiaan ja opin. Tehtävien kautta ei välttämättä tule kaikki viikon asiat esille, sillä kun erilaisia työkaluja alkaa kertyä, niin tehtävä saattaa ratketa aiempien viikkojen asioilla. Esimerkiksi 7.8 Kaikki keot ja 6.8 Puun tyhjennys voidaan muuntaa samaksi ongelmaksi ja ratkaista aiemmilla tiedoilla. Tuo 7.8 oli erikoistapaus 6.8 ongelmasta, tuo keon muodostaminen voidaan aloittaa n:stä ja poistamalla puun lehti saadaan seuraava pienempi alkio.
- Pilkkoisin palautuksia ja niiden aikarajoja pienempiin osiin.
- Mielestäni erinomainen kurssi, en keksi mitään erityistä kehitettävää. Mallivastauksissa voisi olla ehkä esimerkkejä useammasta ratkaisumallista, etenkin niissä tilanteissa joissa useat kyseisessä kappaleessa esitellyt algoritmit toimivat tehtävässä.
- Osa tirakirjan selityksistä jäi epäselväksi ja jouduin etsimään paljon ulkopuolisia videoita, jossa teoria selitettiin tarkemmin auki.
- Videoita.
- En osaa sanoa.
- Kahden viikon deadlinea voisi pidentää siten, ettei satunnainen sairastuminen tai muu kiire romuttaisi kurssin arvosanaa.
- Kaipaisin esimerkkejä miten algoritmeja käytännössä sovelletaan ja systemaattisempia tapoja algoritmien muodostamiseen
- tässä vaiheessa ei ole kehitysehdotuksia
- Mielestäni kurssi on hyvä sellaisena kuin se on, toki tehtäviin liittyviä videoita voisi olla enemmän.
- Tira2 oli jatkokurssina ymmärrettävästi työläämpi sekä vaikeampi kuin ensimmäinen kurssi. Luentovideot auttoivat minua todella paljon oppimisessa, niitä lisää. Myös käytännön harjoittelua voisi olla vielä enemmän – muutamia helpompia ja vaikeampia tehtäviä suoritettavaksi / viikko lisää.
- Paneutuisin lisää verkkojen perusteisiin ja miten verkkoja voisi luoda esim labyrinttitehtävissä. Tira kirjaan lisäisin pseudokoodit jokaiseen algoritmiin, jotta voisi opetella ne ilman netin apua.
- Kurssille osallistujat voisi jakaa A- ja B-luokan oppilaisiin. Kaiken jo osaavalle ja kokeneelle A-luokan eliitille voisi antaa myös vaikeimmat tehtävät ja B-luokalle pääosin helpompia/helpotettuja tehtäviä, mutta mahdollinen maksimiarvosana jäisi matalammaksi, esim. 3. Tällöin kiireiset (normaalit tutkinto-opiskelijat, työssäkäyvät jne.) ja ensikertalaiset kurssin suorittajat voisivat saada enemmän onnistumisen iloa ja näin koodaaminen aiheuttaisi positiivisia mielleyhtymiä myös tulevaisuudessa.
- Olisi kiva tietää vähän enemmän mitä testeissä tapahtui. Eritysesti olisi kiva tietää jos esim alle 10% testeistä meni läpi, jolloin tietäisi että idea ei toimi ollenkaan.
- en
- Ensinnäkin lisäisin kurssille sen verran aitoa opetusta, että se on ylipäätään mahdollista suorittaa paremmin kuin minimiarvosanalla ilmoitettujen esitietojen pohjalta. Tämäkin toteutusmuoto on opintopalvelussa varsin harhaanjohtavasti nimetty luento-opetukseksi, ei verkko-opetukseksi, vaikka käytännössä kurssi on kokonaan itsenäistä opiskelua verkossa. Kurssimateriaali ei todellakaan valmenna riittävästi vaativampiin tehtäviin kuten eivät myöskään Ohpe, Ohja ja JYM, joten opetuksen puuttuminen johtaa siihen, että kurssin suorittaminen itsenäisesti on hyvin vaikeaa ilman vaadittua parempaa esitietotasoa. Viikkojen alkupään tehtävät kyllä pääosin valmentavat toisiinsa, mutta joka viikko vaikuttaa olleen vähintään yksi tehtävä, johon ei ole kerrassaan mitään materiaalia eikä osoitusta siitä, miten ongelman ratkaisua tulisi edes lähestyä. Tällainen vaikuttaa olevan ulkoistettu kokonaan algoritmipajaan tai kurssin Discordiin, mutta ensimmäisen saatavuus on sekä ajallisesti että osallistujamäärältään huomattavasti luento-opetusta rajallisempaa; jälkimmäisen opetusarvo on puolestaan hyvin vaihtelevaa (toisaalta ei ole opiskelijoiden vastulla opettaa toisiaan). Herää kysymys, miksi kurssilla on joka tapauksessa arvosanaan vaikuttavia tehtäviä, joihin se ei kuitenkaan tarjoa opetusta. Ehkä tällaiset tehtävät sopisivat paremmin lisätehtäviksi niille, jotka kaipaavat enemmän haastetta. Toiseksi pohtisin kurssin arvioinnin muuttamista sellaiseksi, että yrityksestä tai osittain toimivasta ratkaisusta hyötyy jollain tapaa. Nykyisessä toteutusmuodossa on mahdollista tuhlata tuntikausia ratkaisun yrittämiseen ja jäädä silti täysin tyhjin käsin, jos ratkaisu ei vaivasta huolimatta onnistu. Tällainen ei motivoi ketään – päinvastoin se turhauttaa, lannistaa ja suututtaa. Opiskelun ei kuuluisi olla opiskelijan ajan ja vaivannäön uhkapeliä. Kolmanneksi miettisin keinoja kohtuullistaa kurssin aikataulua tai viikottaista leikkuria. Ei vaikuta tarkoituksenmukaiselta tai kenenkään edulta, että kurssin voi teoriassa reputtaa jos ei onnistu suorittamaan viittä tehtävää viimeisellä viikolla vaikka olisi suorittanut kaikki tehtävät aiemmilta viikoilta.
- Hyppy aineistosta tehtäviin on joskus turhan suuri.
- Ainoa huomio, mitä voisi ehkä vielä selkeämmin näkyä tira mooc sivulla on se että aina kummankin kurssin kahdella ensimmäisellä viikolla on sama deadline, sillä itse en sitä ihan heti huomannut kun kiinnitin huomion ainoastaan ensimmäisen viikon deadlineen. Ehdin kyllä siis tehdä viikon 9 tehtävät ihan hyvin sillä satuin huomaamaan sen ajoissa kun se siellä kuitenkin selkeästi lukee. Mutta esim voisi hyvä että se oli vaikka jotenkin korostetusti vielä näkyvissä että iskisi silmään vaikkei niin tarkasti katsoisikaan.
- Olisi kiva, jos tehtävien palautteesta kävisi ilmi, mikä testitapauksista epäonnistui
- Tuo edellinen arviointi, että opontojakso oli turhan raskas, osasyynä oli se, että ei oikein halunnut antaa periksi ja tyytyä minimitehtävämääriin. Discordissa oli jo noiden tehtävien tarkistukseen hyviä ideoita. Mutta itse en pärjäisi ilman noita tukimahdollisuuksia, (+ekstatuki täällä kotona)
- enemmän esimerkkejä ja tukea, algoritmipaja discossa on vitsi
- Enemmän esimerkkejä
- Kurssimateriaali voisi olla laajempi ja siinä voisi olla enemmän esimerkkejä.
- Mielestäni kurssi on jo nyt todella toimiva kokonaisuus. Se on hyvä, että joka viikko on joku selkeä aihe ja kaikki viikon tehtävät pyörii aiheen ympärillä. Tira-kirja ja opetusvideot ovat hyvin tehtyjä, ja niistä saa tarpeeksi tietoa viikon tehtävien ratkaisuun ja asioiden oppimiseen. Itselleni rekursio oli uusi aihe ja olen kamppaillut sen kanssa koko kurssin ajan. Siksi olisi hyvä, jos jossain materiaalissa olisi myös jotain vinkkejä/ohjeita hyvän rekursion laatimiseen. Rekursioon ei tarvitse käyttää kokonaista viikkoa, mutta tämä rekursio-osuus voisi olla ns. lisämateriaalina opiskelijoille, joille rekursio on uusi/ vaikea asia.
- Ehdottomasti kannatettava idea olisi varsinaisten työviikkojen jälkeen tehtävät vapaaehtoiset extratehtävät yhdellä viikolla, joilla olisi mahdollista jollain skaalalla korottaa arvosanaa. Samalla tulisi kerrattua jo opittua.
- Enemmän käytännön esimerkkejä tehtäviä varten.
- Enemmän esimerkkivideoita viikottaisista aiheista, jotta algoritmien rakenteen ja toiminnan hahmottaminen olisi helpompaa. Toisaalta, en koskaan ollut mukana algoritmipajoissa, joten en osaa sanoa olisiko siellä ollut esimerkkejä, joiden avulla olisi saanut asioita paremmin hahmotettua. Nyt katsoin paljon Youtubesta apua materiaalin tueksi, mutta suomeksi olisi ollut helpompaa :D Mutta tiedostan myös toki sen, että sekä englannin kieli, että itsenäinen tiedonhaku netistä on syytä alalla osata, eikä tehtävien hahmottaminen mahdotonta ollut.
- Välillä on vaikea saada ajatuksesta kiinni, että millaista ratkaisua haetaan. Ehkä voisi olla enemmän “suuntaviivoja” jotta saisi paremmin ajatuksesta kiinni, eikä menisi aikaa hukkaan turhaan jumittamiseen.
- Kurssi on melko raskas sen takia että joka viikko pitää tehdä vähintään viisi tehtävää. Monen viikon työ voi mennä hukkaan jos sairastaa tai tapahtuu jotain muuta arvaamatonta. Itselleni melkein kävi näin. Joskus tehtävään menee monta tuntia (6+) ilman että löytää vastauksen. Hyvistä yrityksistä voisi antaa vaikka puolikkaita pisteitä. Tehtävien selitys on usein myös epäselvää, ja lyhyt testi joka annetaan tehtäväpohjassa ei auta tässä. Itse olen ohjelmoinut useamman kerran väärän ohjelman joka pääse läpi annetuista testistä (mutta ei cses testeistä), koska en saanut selvää tehtävän selityksestä.
- Discord-kanava oli erittäin hyödyllinen: miettisin miten siitä voisi saada vielä enemmän irti. Toisaalta joskus kanavalla jaetut keskeneräiset ratkaisut olivat mielestäni hieman liian lähellä oikeita ratkaisuja ja jotkut vinkit olivat turhan hyviä - varsinkin viikonloppuisin. En tosin tiedä miten tätä korjaisi mutta kanavalle voisi kehittää jotkut selkeät säännöt. Kaiken kaikkiaan olin erittäin tyytyväinen kurssin toteutukseen.
- tulin suorittamaan tira 2:sta ja toteutustapa oli muuttunut aika paljon keväästä - parempaan suuntaan kyllä. Tosin sairastelu välissä sotki tehtävien tekemistä ja jäi tehtäviä tekemättä. Jokin korvaavuusmalli olisi hyvä, jos viikottaiset deadlinet paukkuu. Toteutusmalli on parempi kuin aiempi, mutta monesti tuli hakattua päätä seinään jonkun tehtävän kanssa turhan pitkään kun toteutus ei auennut. Ainakin itse olen sellainen oppija, joka oppii paremmin opetuksesta kuin tuskastumisesta tehtävän kanssa. On hyvä että pitää keksiä ja oivaltaa miten jokin asia ratkeaa, mutta ehkä kurssin läpipääsemiseksi pitäisi olla se minimitaso, joka selviää opetuksesta ja maksimiarvosanan saisi sitten keksi, oivalla onnistumisilla.
- eos
- Ehkä enemmän videoita
- I would give little bit more examples on how the algorithms work (visualization for example what happens in each step.) Other than that, I have nothing to add.
Muita huomioita
- Pidin kurssista ja siitä, että sen voi suorittaa etänä tehtäviä palauttamalla.
- Tämä kurssi ei mielestäni kaipaa tenttiä, sillä kurssin oppiminen tapahtuu miettimällä: 1) tehtävän asettelun läpi, 2) miten se ohjelmoidaan ja 3) miten ohjelmaa tehostetaan. Kuten pitkässä kehittämisehdotuksessanikin mainitsin, niin mielestäni on lähes järjetöntä, että kurssin viimeisellä viikolla arvosana ei voi olla mikään muu kuin hylätty tai 5.
- Kurssi oli mielestäni selkeästi ykkösosaa haastavampi.
- Minulle on tosi hyvä, että voi suorittaa etänä näitä. :)
- Ymmärrän, että etäopetus voi tuottaa huomattavia rajoituksia kurssin toteutukselle, mutta mielestäni näitä ei ole kompensoitu riittävästi ja lopputulos on, että vähäisemmällä ohjelmointitaustalla varustetulla opiskelijalla on merkittävä riski hukkua kurssin raskauteen yksin. Kurssi on nykymuodoltaan laiskaa ja petollista pedagogiikkaa.
- Tiedonhakua helpotti huomattavasti, että tirakirjassa oli merkitty sulkuihin termit englanniksi.
- Kiitos! , Tirakirja on mahtava, mutta muuta materiaalia voisi vielä viilata. :)
- Kurssin aihealue, opittavat asiat ym. olivat ehdottoman tärkeitä ja koin kurssin siksi todella hyödylliseksi. Myös vaikeustaso oli minusta sopiva - että asioita joutui todella miettimään ja eksperimentoimaan. Kiitos
- Tosi raskass :( Etänä kiva, mutta samalla ei kiva ongelmatapauksissa, onneksi oli sentään discordi
- Great thanks to Antti and Phoebe for the course assistance, especially I would like to thank Leo Varis for helping me every Tuesday and Thursday in Tira Paja. He somehow manages to figure out what you doing in your code in just less than 15 seconds and knows what is wrong. Not only that he gives really good detailed pictures on how to go forward without giving too much hints, which is the best way to learn algorithms in my opinion!
- Erittäin hyödyllinen ja mielenkiintoinen kurssi!
- Kurssin vetäjän ja assareiden intohimo ja läsnäolo on merkillepantavaa. Tämä tekee kurssista työmäärästä huolimatta positiivisen kokemuksen.
- Kurssin raskautta on vaikea arvioida. Toisaalta jotkut viikot meni n.s. vasemmalla kädellä, mutta etenkin loppua kohti tehtäviä joutui välillä miettimään päiväkausia, ja osa jäikin ratkaisematta. Siltä osin työmäärä tuntui kohtuuttomalta. Joidenkin algoritmien tapauksessa olisin kaivannut esimerkkikoodia, ja siinä joutuikin turvautumaan Wikipediaan yms. joka helposti johdattelikin sitten vaihtoehtoisiin algoritmeihin tarkoitettuihin nähden. Esimerkiksi viimeisen viikon Ratsut menikin Hopcroft-Karpilla, joka ei varsinaisesti olekaan maksimivirtausalgoritmi vaan spesialisoitu maksimiparitusalgoritmi. Koska tehtävästä sai hyväksytyn kunhan täytti vain tietyt vaatimukset, arviointi ei varsinaisesti kyllä mitannut sitä, oliko tietty algoritmi sisäistetty vaiko ei. Arviointi on turhan kyllä/ei -luonteista. Ymmärrän, että se on vaikea ellei mahdoton toteuttaa, mutta siinä saisi olla jotain vihjeitä jotka opastaisivat oikeaan suuntaan, vähän samaan tapaan kuin Moodlessa on mahdollista luoda että jos vastaus on tietyllä tavalla väärin, siitä saa vihjeen että yritäpä sitä tai tätä.
- Kiitos hyvästä kurssista!
- Kurssin toinen osa tuntui helpommalta kuin ensimmäinen, ehkä siis algoritmisen ajattelun saralla on tapahtunut oppimista.
- hive
- Näin jälkikäteen ajateltuna omaan oppimistyyliin ja ohjelmointikokemukseen (pelkät ohpe, ohja, tikape) kevään versio olisi ehkä tuottanut paremman arvosanan. Kaikesta huolimatta halusin suorittaa kurssin syksyllä, koska luotan Laaksosen opetustyyliin (saa ohjelmoinnin näyttämään niin helpolta ja loogiselta!) ja syksyn suoritusmuoto on aikatauluista riippumaton (pl. viikkodeadlinet). Olen mielestäni oppinut paljon sekä tietorakenteista, algoritmeista, ohjelmoinnista sekä ongelmanratkaisusta. Koen, että kurssiarvosana (1) ei täysin kuvasta oppimistani. Uskon kuitenkin, että kurssin opeista on varmasti hyötyä jatkossakin. Erityiskiitokset etäalgopajasta (to&ti), jota ilman en kyllä olisi pärjännyt!
- Itselläni on useamman vuoden kokemus pelillisten sisältöjen koodaamisesta, ja tulen nähtävästi läpäisemään Tiran hyvällä arvosanalla. Minua kuitenkin hiukan hirvittää niiden kanssafuksien puolesta, joilla ei ole juurikaan ohjelmointitaustaa ennen opintojen aloittamista. En ole varma, valmistaako Ohjelmoinnin perusteet ja jatkokurssi riittävästi Tiraan? On ikävää ja sääli, jos ihmiset kurssin myötä lannistuvat ja alkavat epäilemään omia kykyjään (kuten olen ollut huomaavinani kommenteista esimerkiksi Discordissa). En oikein tiedä, mitä asialle pitäisi tehdä. Valmistava Pre-tira-kurssi?
- Olen ehdottomasti sitä mieltä että tämä syksyn tentitön versio on ehdottomasti parempi kuin tentillinen. Itse tentin olen tehnyt jo pariin otteeseen, mutta jotenkin siinä ei niin lyhyessä ajassa vaan yksinkertaisesti ehdi saada aikaan tarpeeksi kun miettimiseen menee aikaa tai sitten vain lähdin tekemään itse tehtäviä liian monimutkaisesti aikarajaan nähden. Koen että vaikka olen ennen tenttiä hyvin osannut asiat olen silti onnistunut mokaamaan tentin jo kahteen otteeseen pahasti ajanloppumisen ja tästä johtuvan paniikin vuoksi. Tämän vuoksi on mielestäni hyvä juttu että tämä tentitönkin suoritustapa on olemassa niin voi suorituksen tehdä ja osoittaa osaamisensa myös toisella tavalla. Myös mm. video-materiaalit ovat todella hyviä tässä kurssissa.
- Kiitos kurssista vetäjille. Sain kurssista paljon ajateltavaa ja palaan varmasti vielä myöhemminkin kurssin materiaaliin. Kiitos siis hyvästä Tira-kirjasta!
- Tämä kurssi on ollut yksi parhaista ja opettavaisimmista kursseista, joihin olen koskaan osallistunut. Jopa vähän harmittaa, että kurssi on nyt ohi ja ei ole niitä jokaviikkoisia ohjelmointiongelmia, joita ratkaista. Olen kehittynyt mielestäni erittäin paljon ohjelmoijana. Kurssi vaatii paljon itsenäistä opiskelua, mikä sopii omaan opiskelutyyliini. Mielestäni on hienoa, että kurssi on saatu onnistumaan näin hyvin täysin verkkokurssina.
- En tietä, onko tulkittava, että algoritmit eivät ole oma juttu, sillä paikoin kurssi on tuntunut äärimmäisen haastavalta ihan ahkerasta työnteosta huolimatta. Viikoittainen deadline on hyvä, mutta välillä on kuitenkin turhauttanut melko lailla, kun aikaa on toisinaan yhteen tehtävään saattanut kulua 8 tuntia eikä se välttämättä ole siltikään tullut ratkaistuksi. Tällä kurssilla työnteosta ja yrittämisestä palkitaan aika vähän, kun ainoastaan täysin oikeasta ratkaisusta saa pisteen. Aikaa materiaalin tutkimiseen (kirja + videot + apuväylät) olen käyttänyt viikoittain noin 20h ja näyttää siltä, että kakkonen napsahtaa. Kaikki pajat ovat olleet päällekkäin itselläni sellaisten luentojen kanssa, joista ei tule tallenteita, joten niihin en ole voinut osallistua vaikka olisin halunnut. Discord on ollut aika nihkeä avunhakupaikka…
- Itse tein kurssia kokopäiväisten töiden ohella ja oli selvää minun kohdallani että 5 oli mahdotonta pyrkiä. Minulla oli suuria ennakkoluuloja kurssia kohtaan, mutta loppujen lopuksi kurssi oli mielestäni onnistunut. Apua sai helposti jopa viikonloppuna discordissa opettajilta, ja kurssissa oli myös etänä järjestetty paja, joka helpotti ainakin itseäni tosi paljon. Itse olen koodannut jonkin verran (hyvä en ole), mutta voin kuvitella jos tämä kurssi olisi pelkän ohja:n ja ohpe:n jälkeen laitettu suorittamaan niin olisi ollut varmasti paljon haastavampi.
- Mielenkiintoinen kurssi, jonka tehtävien parissa puurtaminen oli päaosin mukavaa, vaikkakin välillä aika haasteellista. Turhautumisiakin välillä tuli, mutta kaipa sekin on osa oppimista.
- Yleisesti on kyllä kiva kurssi :)
- Tässä kurssin toisessa osassa positiivista oli, että tehtävät liittyivät ensimmäistä osaa selkeämmin kurssimateriaaliin. Edelleen kurssiin oli mahdollista käyttää todella paljon aikaa ja hyvän arvosanan saaminen olisi edellyttänyt enemmän aikaa, kuin minulla nyt oli käytettävissä. Ongelmanratkaisuun haastavana ihan parhaita opiskelukokemuksia, siitäkin huolimatta että arvosana jäi tästä osasta kolmoseen. Erittäin mukava ja antoisa kurssi!
- Suosittelisin lämpimästi tutustumaan Michael Commonsin teoriaan Model of Hierarchical Complexity; Commons on tutkinut useita kognitiivisten ongelmien ratkaisutilanteita aikuisväestöissä ja päätynyt matemaattiseen malliin, joilla kompleksisuutta ja tehtävän vaikeutta voidaan arvioida ikään kuin objektiivisesti. Usein suurin osa väestöstä pystyy suoriutumaan alimmasta tasosta ja melko suuri osa myös toisiksi alimmasta tasosta, mutta kolmannen ja neljännen taso onnistuu harvoilta ilman kognitiivisia työkaluja. Tämä mielestäni näyttäisi pätevän myös tähän kurssiin ja siihen miten työelämä ohjelmistoalalla on rakentunut: 1) Alimmalla tasolla tehdään looppeja ja sorttaamista; data virtaa tarvitsee ainoastaan puskea eteenpäin oikealla tavalla ja ongelma ratkeaa 2) Toisiksi alimmalla tasolla käytetään jonoja, pinoja, kaosja ja puurakenteita; datan virtaan puututaan parametrisesti, jotta optimaalinen polku tulee suoritetuksi Ensimmäiset kaksi tasoa ovat aika hyvin jokaisen ammattilaisen hallussa, kakkos taso vaatii toisinaan hieman opettelua. 3) Rekursiossa ei tehdäkään top-down prosessointia “datasetin rakenteesta käsin”, vaan käytetään bottom-up menetelmää, jossa lähdetään rullaamaan vastausta datan hännästä päin. Tämä on monille vaikeaa ja usein työelämässäkin tämmöistä algoritmiikkaa käyttävät osat ovat “jonkun muun tekemiä” avoimia kirjastoja, joita uudelleen käytetään työkaluina. 4) Dynaamisessa ohjelmoinnissa lisätään bottom-up ratkaisuun muisti, jonka avulla vältetään “itsensä kanssa samannäköisten” (fraktaali) ratkaisujen uudelleen laskeminen, tämmöiset algoritmit ovat usein rekursiivisia algoritmejakin syvemmällä. Rekursiivisiin ja dynaamisen ohjelmoinnin algoritmeihin olisi hyvä käyttää design patterneja, koska niiden suunnittelu ei ole ilmeistä. Tämmöinen kilpakoodaus kurssi on sinänsä hauska, koska se palkitsee ongelman ratkojaa ihan kivasti, kun pystyy päättelemään jotain hankalaa, mutta samaan aikaan tämä taito ei välttämättä ole sellaisenaan hyödyllinen työelämässä tai tutkimuksessakaan. Mikään ei ole niin ikävää, kuin törmätä puoli vuotta myöhemmin omaan tai jonkun muun tekemään kolmannen tai neljännen tason algoritmiin, jota ei ole dokumentoitu. Ja sitten toisaalta, jonkinlaisen dokumentaation kirjoittaminen voisi edistää ongelmanratkaisijan kyvykkyyttä jäsennellä omia ratkaisukokeilujaan paremmin. Commons jaottelee ongelmat vertikaalisiin tasoihin (1-4 tässä), sekä horisontaalisiin koordinointi tehtäviin. Hyvät design patternit omaavat myös tämmöisiä rakenteita. Ymmärrän toki senkin, että luova ongelmanratkaisutaito on myös opettamisen arvoinen, mutta Tira on aika keskeinen kurssi ja sillä voisi olla parempia yleissivistäviä tavoitteita; luovan ongelmanratkaisun soisi toki olevan mukana kokonaisuudessa; en vain osaa sanoa, että mihin kurssille se kuuluisi. Periaatteessa ohjelmistotuotannon puolella käsitellään enemmän humanistisia puolia ja vähemmän algoritmisia kokonaisuuksia ja näkisin tämän ehkä enemmän kuuluvan sen puolen piiriin. Toki jos luovaa ongelmanratkaisutaitoa olisi kurssin esitiedoissa jotenkin niin kurssin voisi ehkä toteuttaa pedagogisesti rikkaampana. Toisaalta design patterni vetoisuus ja hyvin dokumentoitu työskentelytapa ovat olleet tapetilla varmaan niin pitkään kuin alalle on koulutettu ihmisiä ja jostain syystä tässä ei vaan onnistuta. Itse haluaisin kuitenkin uskoa, että Internetin aikaan tässä voitaisiin ainakin onnistua paremmin.
- Tämä syksyn toteutus sopii minulle paremmin kuin kevään toteutus, vaikka deadlinet ovatkin tiukkoja.
- Kiva ja erittäin tärkeä kurssi, mutta koska aihe on monille melko haastava, toivoisin arvosteluihin helpotusta
- Tämä kurssi on ollut suuri hupi cobol-koodaaja-eläkeläisen syksyyn. Kurssiaikataulu toi sopivasti ryhtiä läpikäyntiin: alussa pientä stressiä pysyykö mukana aikataulussa, sitten viikonloppujen yli odottelua että maanantai toisi uudet tehtävät.
- Kiitokset kurssista, oli oikein mielenkiintoinen ja opettavainen!