Kurssilla saa käyttää tekoälyä (käytännössä siis lähinnä kielimalleja) melko vapaasti, myös ohjelmakoodin generointiin. Harjoitustyö ei ole varsinainen ohjelmointikurssi ja tällainen käyttö ei ole ristiriidassa osaamistavoitteiden kanssa. Generoitukin koodi kuitenkin tulee ymmärtää perusteellisesti ja sen oikeellisuus on varmistettava. Tämän takia testien generointi on kielletty. Toinen syy testien generointikieltoon on siinä, että monilla osallistujilla yksikkötestaus tulee kurssilla uutena asiana, jota on syytä harjoitella. Myös dokumentointikäyttöön on rajoituksia, joista tarkemmin sivun loppupuolella.

Kurssilla on ollut kysely kielimallien käytöstä syksystä 2023 alkaen ja suurin osa vastaajista on jokaisella kyselykerralla käyttänyt kielimalleja. Tarkimmin on analysoitu kevään -24 vastauksia. Tuolloin 63 % vastaajista oli käyttänyt kielimalleja koodin paranteluun ja 59 % koodin generointiin. Käyttö oli kuitenkin melko maltillista, sillä vain 12 % arvioi generoineensa yli neljänneksen koodistaan. Yli 70 % näki kielimallien edistäneen oppimista. Yleisimmin todettiin kielimallien nopeuttaneen työskentelyä niin, että aikaa jäi kurssin kannalta oleellisten asioiden, kuten suunnittelun, testaamisen ja dokumentoinnin harjoitteluun. Jotkut mainitsivat myös mm. että kielimallit olivat lisänneet motivaatiota, niiden kanssa oli voinut keskustella eri vaihtoehdoista ja ne olivat auttaneet kun opiskelija koki ajautuneensa jonkinlaiseen umpikujaan. Toisaalta kielimallien tarjoamaan apuun ei aina oltu täysin tyytyväisiä.

Hyvä kurssimenestys liittyi koodin maltilliseen generointiin silloin kun se yhdistyi yleiseen tiedonhakuun kurssin aihepiiristä, ahkeraan koodin paranteluun tai ideointiin. Myöhempiin kyselyihin on tullut pitkälti samansuuntaisia vastauksia, joskin kielimalleja käyttäneiden osuus ja käytettyjen kielimallien suosio ovat jonkin verran vaihdelleet. Vaikka ChatGPT on ollut selvästi suosituin väline, myös esimerkiksi GitHub Copilotin käyttö on lisääntynyt.

Mainittujen tulostenkin pohjalta voi suositella sellaista kielimallien käyttöä, jossa pyritään todella ymmärtämään kurssilla käsiteltyjä asioita. Voi olla hyvä kysyä “miksi” ja “mitä” ja tarvittaessa kielimallia voi myös esim. pyytää selittämään koodia. Kielimalleja ei kannata yrittää käyttää vain kurssin suorittamista nopeuttavana oikotienä ja niiden tarjoamiin vastauksiin täytyy aina suhtautua kriittisesti. Pitää muistaa, että vastaukset eivät aina ole parhaita mahdollisia ja generoidussa koodissa voi olla erinäisiä ongelmia ja suoranaisia virheitäkin.

Kysymykseen generoidun koodin ongelmista kurssilla on usein vastattu, että kielimallit eivät välttämättä osaa hahmottaa kokonaisuutta tai kontekstia riittävän hyvin. Vaikka pienempien koodinpätkien generointi onnistuisikin, kokonaisuudesta saattaa helposti tulla jossain määrin sekava ja koodiin voi tulla liikaa toisteisuutta. Tämä on tietysti varsin harmillista mm. virheenjäljityksen, tietoturvan, ylläpidettävyyden ja laajennettavuuden kannalta (harjoitustyöstä saatavia pisteitäkään unohtamatta). Vastauksissa on myös mm. todettu, että toteutettavan asian vaativuus (odotetusti) lisää ongelmia ja kielimalli saattaa joskus tarjota sellaisia ratkaisutapoja, joita itse ei olisi käyttänyt. Toisaalta kielimallien generoima koodi on saanut enemmän kehuja kuin moitteita ja ongelmat on todettu havaitun useimmiten jo ennen varsinaista testausta.

Tekoälyn käyttöä on lisäksi rajattu kurssilla siten, että dokumentaatio tulee kirjoittaa pääosin itse. Kielimalleja voi kuitenkin käyttää dokumentaation asiasisällön luonnosteluun ja esityksen viimeistelyyn, eikä pienten katkelmien kopiointia ole kielletty. Älä kuitenkaan edes yritä generoida laajasti dokumentaatiota - lopputulos ei todennäköisesti ole sellainen, mitä kurssilla haetaan. Esimerkiksi edellä viitatut kielimallien ongelmat kokonaisuuden hahmottamisessa tulevat tässä helposti vastaan.