Aiheet¶
Kurssin lopputyöaiheet löydät sisällysluettelosta tämän otsikon alta.
Lopputöihin liittyy kussakin harjoituksessa paitsi ensimmäisessä olevia lopputyötehtäviä, jotka tekemällä saat lopputyön toteutukseen tarvittavia palasia.
Kustakin aiheesta on tarkempi ohjeistus työn omalla sivulla. Aiheista tulee valita yksi.
Hyväksyttävä lopputyö¶
Tämän otsikon alle on kerätty kriteerit sille, millainen lopputyö voidaan hyväksyä arvosteltavaksi. Jos työ ei täytä tämän kohdan kriteerejä, sitä ei arvostella.
Viimeistään nyt, tekoälyn yleistymisen myötä, valmiiden ratkaisujen löytäminen internetistä on muuttunut hyvin vaivattomaksi. Kurssin arvostelun tulee kuitenkin perustua siihen, miten hyvin työn tekijä on saavuttanut kurssin oppimistavoitteet. Tätä arviointia on mahdoton suorittaa, jos koodista ei pysty sanomaan onko se opiskelijan omaa tuotosta, vai muualta lainattua. Ensisijaisesti kaiken koodin pitäisi näyttää saman henkilön tekemältä. Lisäksi perusoletuksena on, että koodi on kirjoitettu tämän kurssin opeilla. Koodissa tulee olla yhteneväinen tyyli sekä taso.
Tasolla tarkoitetaan sitä, onko koodissa käytetty samantyylisten asioiden tekemiseen saman osaamistason koodia. Usein internetistä löytyvät vastaukset ovat ammattilaisten tai pitkän aikaa harrastaneiden kirjoittamia, ja käyttävät kaikkia kielen ominaisuuksia hyödykseen - myös paljon sellaisia, joita ei peruskurssilla ehdi käsitellä. Jos tällaisen ratkaisun sisällyttää koodiin, joka on pääasiassa tämän kurssin opeilla kirjoitettu, se paistaa sieltä kuin Naantalin aurinko. Kaikilla näillä hienoilla ratkaisuilla on olemassa perustason koodilla kirjoitettavissa oleva vastine. Odotus on siis, että mikäli oikeasti ymmärrät löytämäsi ratkaisun toiminnan, osaat myös kirjoittaa sen perustasovastikkeen omaan koodiisi.
Jos sattuu niin, että olet jo kokeneempi Python-koodaaja ja käyt tätä kurssia, on tietenkin sallittua käyttää kaikkea hienostuneempaakin lopputyössä. Keskeistä on, että koodi on ns. veistetty samasta puusta. Tarkoitus ei ole siis rajoittaa kenenkään luovuutta.
Tekoäly tapaa tuottaa koodia, joka seuraa tietynlaisia kaavoja. Koska tekoälyn käyttö on kurssilla kielletty, kaikki koodit, jotka selkeästi näyttävät tekoälyn tekemältä jätetaan arvostelematta. Kurssin oppeja seuraten ei ole kovin helppoa kirjoittaa vahingossa saman näköistä koodia mitä tekoäly tuottaa. Turvallisinta on noudattaa ohjetta, ja unohtaa tekoälyn olemassaolo. Käytetään sitä oman älykkyyden voimaa.
Lainalähteet voidaan luokitella karkeasti neljään lajiin, joista kaikki käsitellään samalla tavalla: netissä oleva tutoriaali, tekoälyn antama vastaus, ja internetistä löytyvät vastaukset yksittäisiin kysymyksiin, ja viimeisenä kaverin koodi. Viimeinen koskee myös tilanteita, joissa koodi on kirjoitettu alunperin harjoitustehtävää varten. Mikäli koet aivan mahdottomaksi ratkaista jotain pientä osaa lopputyöstä itse, tulee lainatun osan lähde merkitä selkeästi näkyviin. Lainaus merkitään lainatun koodin yläpuolelle kommentilla, jossa on linkki lähteeseen. Muista tarkistaa oletko käyttänyt muualta otettua koodia harjoitustehtäväkoodissa, jos otat sitä mukaan lopputyöhön.
Kaikki koodit ajetaan samankaltaisuutta nuuskivan työkalun läpi, ja jos töiden välillä löytyy suuria samankaltaisuuksia, asia joudutaan käsittelemään yliopiston senhetkisten vilppiä koskevien ohjesääntöjen mukaisesti. Eli jos tuntuu, että yhteistyö ilman kopiointia kaverilta ei onnistu, valitse toinen aihe. Pienet lopputyöaiheet on suunniteltu siten, että aiheen vaihto kesken kurssin ei tuota ongelmia. Huomaathan, että tämä tarkoittaa sitä, että jos annat jollekin muulle luvan kopioida omaa koodiasi, saattaa oma suoritusmerkintäsi olla vaakalaudalla tai vähintäänkin viivästyä siihen asti, että asia on selvitetty.
Työn arvostelu¶
Työ pisteytetään vain kerran. Jos työ ei mene hyväksyttävästi läpi, kurssin arvosanaksi tulee 1-3. Tarkista siis työsi huolellisesti ennen lopullisen version palauttamista. Työstä arvostellaan viimeisin ennen palautusajan umpeutumista palautettu versio.
Arvosteluperusteet löydät lopputyösivuilta.