Tapaus 7 – Botista, irkistä ja netistä

Viime kerralla saatiin uusi lappuennätys, joten vähemmän yllättävästi tämäkin #purkusessio venähti. Vaikuttaa siltä, että purut vievät joka kerta noin tunnin, mutta parempi vain käyttää aikaa huolella kun ihmiset ovat paneutuneet aiheisiinsa kunnolla. Tämänkertaista purkua vaikeuttivat Emmin ja Hannan poissaolot, mutta onneksi Vesa hoiti tyttöjen tuurauksen kunnialla.

Lue loppuun

Tapaus 9 – Projektien pitchaus

Tällä kertaa oloilumme keskittyi edessä lymyävien projektiemme suunnitelmien esittelyyn. Kokoontumispaikkana toimi lähistöllä sijaitseva designfactory, josta meille oli varattuna oma tunnelmallinen nurkkahuone. Vaikka paikka sijaitsee Otaniemessä, tuotti sen löytäminen osalle meistä huomattavia vaikeuksia. Kaarlo ja Henri olivat tuoneet mukanaan glögiä ja pipareita, jotka olivat omiaan lisäävään jouluista tunnelmaa sopivasti kuun alkajaisiksi. Vierailevana tähtenä toimi Eeva toisesta oloiluryhmästä. Kaarlo ja Henri olivat myös tuoneet paikalle kaksi opiskelukaveriaan, jotka tulivat kertomaan hiljattain perustetusta start-up -firmastaan. Tämän mielenkiintoisen pläjäyksen jälkeen oli aika käydä itse asiaan eli projektisuunnitelmien esittelyyn.

Paulin ideana oli tehdä androidille sovellus, joka yhdistäisi hsl:n sekä google mapsin. Emmin tavoitteena oli tehdä hungry bunny -tyyppinen peli, jossa ylhäältä tipahtelee erilaisia esineitä, esimerkiksi kiviä ja vihanneksia. Hannan idea oli hyvin samanlainen sillä erotuksella, että myös maasta voisi kerätä syötävää.

Jaakko sekä allekirjoittanut lähtivät toteuttamaan matopeliä. Jaakon haaveena oli saada peliin jonkinlaisia erikoisomenia sekä jonkinlainen tuloslista/highscore. Omana lähtökohtanani oli pelin pitäminen mahdollisimman simppelinä. Ajatuksen tasolla oli kuitenkin jonkinlainen tasohyppely, jossa esiintyisi kokoajan vaikeutuvia sokkeloita.

Annukalla oli hauska idea pelistä, jossa tutkitaan luolastoa mielenterveyden toimiessa mittarina (kun se loppuu, peli hävitään). Toinen perusida oli, että raha tuo onnen. Jää nähtäväksi, miten tämä toteutuu käytännössä.

Eevan ideana oli Afrikan tähti -tyyppinen peli. Aarne sen sijaan ajatteli tekevänäs rakentelupelin, jossa rakennetaan/hoidetaan kasvia. Strategia näyttelisi pelissä suurta roolia.

Vesa asetti selkeästi riman korkealle: suunnitteilla oli palloilupeli, jossa hyödynnettäisiin liikevektoreita ja muuta fysiikkapelleilyä. Miikka ilmoitti haluavansa tehdä Arena 5 -tyyppisen hyppelypelin.

Kaiken kaikkiaan tilaisuus oli varsin mukava, ja projekteista sun muusta puhuttiin hyvässä hengessä. Mielenkiinnolla jäämme odottamaan, mitä ryhmän ponnistelut lopulta tuovat tullessaan.

Tapaus 5 – Purku

Tapaus 5 – purku

Pienten teknisten ongelmien vallitessa tapaus vitosen purku aloitettiin paperiversioilla  ja teorian läpikäynnillä.

Heti alkuun todettiin, että Javan poikkeuksista on varsin kattavasti tutussa kalakirjassa, josta saakin mainiosti aineksia kolmannen teoriakierroksen tekemiseen.  Emmi oli kahlannut aiheesta ”poikkeukset Javassa” tärkeimmät tiedot meille jaettavaksi ja asiaa riitti.

Todettiin myös, että virikkeeksi annettu koodinpätkä suorastaan kuhisi virheitä, ja että niiden etsiminen muiden koodista on aivan tarpeeksi masentavaa, kun sama pitäisi tehdä omalle koodille. Onneksi on Javan virheilmoitukset.

Muistivuodoista todettiin sen verran, että Javan roskienkerääjä iloisesti auttaa ohjelmoijaa tämän ongelman kanssa, joten Javassa ei oikeastaan muistivuotoja pääse tapahtumaan. Esimerkiksi kuitenkin tuli vielä C++:n muistivuodot, koska ko. ohjelmointikielessä työt täytyy tehdä itse.

Javan testausmenetelmiä käytiin läpi lyhyehkösti, samaten sitä, mitä ominaisuuksia ei Javassa voida testata. Käytiin vielä läpi mitä konstruktoreissa, attribuuteissa ja metodeissa tulee olla, ettei virheilmoituksia ala sadella. Mitään uutta ei kuitenkaan hirveästi tullut, sen verran monta on kyseisiä palasia tullut tehtyä.

Hetken huvittunut hengähdystauko saatiin, kun päästiin kuuntelemaan tarinoita pieleen menneistä ohjelmistoprojekteista. VR:n lipunmyyntijärjestelmät ja muut mielenkiintoisiin lopputuloksiin päätyneet ohjelmistoprojektit herättivät huvittuneisuutta koodariryhmässä.

Kun tekniikka päätti vihdoin alkaa toimia, päästiin esittelemään Javan debuggeria tositoimissa. Hirveästi ei kyllä siihen käsiksi päästy, koska moni koki että virheiden hakeminen Javan virheilmoitusten avulla ja tulostuksia tutkailemalla on helpompaa.

Vielä päästiin tutkailemaan diaesitystä Javan yleisimmistä poikkeuksista, joihin jokainen oli jo varmasti törmännyt, ja tutkailemaan pientä testausohjelmistoa, joka valitti kun nollalla yritettiin jakaa. Koodi oli varsin hieno, ja siitä saattoi jotain oppiakin.

Purkua seurailemassa oli nurkassa istuva tutkijatäti, joka veteli viivoja paperiin.

Tapaus 2 purkaminen

Edellisellä kerralla olimme määritelleet jokaiselle parille suunniteltavan ”ohjelman”. Suunnitteluun käytetty runsas aika toi tulosta ja ohjelmat olivat toimivia ja esitietovaatimukset ainakin osittain pitäviä.

Turtles-ohjelmasta totesimme seuraavaa: epäonnistumisen mahdollisuus huomioitu (jos lipastossa ei olekaan turtles-paitaa) ja lipasto tyhjennetään loogisesti läpikäyden lattialle (totesimme sen vastaavan hyvin ihmisten käytöstä lukuunottamatta Vesaa joka pitää vaatteitaan jo valmiiksi läjässä).

Teen keittäminen pseudokoodia noudattaen todettiin mahdolliseksi, vaikkakin vaatii paljon koodia.

Hipasta oli tarjolla kaksi eri koodia, joista yksinkertaisempi oli suunnilleen muotoa ”jahtaa tai pakene” ja poliisia ja rosvoa simuloiva versio olikin jo haasteellisempi. Onnistuimme listimään yhden bugin vaatimalla esitietoihin osallistujamäärän, jotta poliisit eivät jää jahtaamaan tyhjyyttä.

Yhteenlasku oli tylsän matemaattinen ja esitietoja tarvittiin lisää se että ohjelma ymmärtää lukujen ”pituuden”.

Voileivän tekeminen onnistuu, mutta jäi epäselväksi tiskautuuko astiat, kun ne laitetaan takaisin siihen kaappiin mistä ne otettiin. Paljon koodia arkisesta asiasta.

Viimeisin ohjelma ei ollut mitään pseudokoodia vaan aivan toimiva HSL-simulaattori. Koko ryhmä oli Olowi-luukku auki kun Vesan pikkuveli osasi nousta 102, maksaa (tai palata hakemaan rahaa), mennä istumaan ja jaksoi odottaa ennen tätä noin 15 kpl 510-busseja.

Lopputulemana: kaikille saattoi syntyä alitajuinen kuva ohjelman suunnittelusta, vaikka ei tätä olisi tajunnutkaan.