OLOwiBotti

Tarina alkaa sadasta muistilopusta ja päättyy yhdeksään moduuliin. Tulos on botti, joka omatoimisesti reagoi, trollaa ja spämmää – hyvän maun rajoissa tietenkin. Mutta mitä on hämmentävien irc-kommenttien takana, ja millaista koodin tekeminen oli? Tarina sadasta yhdeksään ja sen yli alkakoon. Lue loppuun

Mainokset

Irkkibotin arkkitehtuurin suunnittelu

Seitsemännen tapauksen oppimistavoitteena minulla oli miettiä IRC-botin arkkitehtuuri ja esitellä saavutukseni muille. Ajatuksien hahmottaminen joksikin konreettiseksi toi asiaan mielenkiintoista haastetta – käsien heiluttelu kun ei oikein tietokoneruudulla näytä niin hyvältä. Tavoitteenani oli saada arkkitehtuuri mahdollisimman joustavaksi siinä mielessä, että jokainen ryhmän jäsen voisi toteuttaa oman moduulinsa/luokkansa bottiin välittämättä siitä että miten toisten robotit sopivat sen kanssa yhteen. Jokaisen moduulin pitäisi olla irrallinen kokonaisuus ja samalla helppo koodata. Lue loppuun

Javan listoihin pureutumista

Tänään purimme tapaus kolmosen, jossa oppimistavoitteeni oli tutustua Javassa käytettäviin listoihin.

Tein aiheesta käsitekartan (samalla tutustuen ja leikkien käsitekarttaohjelmalla, jonka sain viimein ladattua koneelleni). Kaikki jo tiesivätkin listoista aika paljon, sillä Janne Käki oli juuri viime viikolla pitänyt aiheesta valaisevan luennon possujuna-esimerkkeineen, joten halusin pitää käsitekartan tiiviinä. Tässä tuotokseni:

 

Make me a sandwitch

Tapaus 2:n perusteella syntyi oppimistavoitteena tehdä voileiväteko-ohjeet aivottomalle ohjelmalle (=pikkuveljelle?). Tässä tulos:

 

Esitietovaatimukset:
– Tietää mikä on:
keittiö, jääkaappi, leipä, levite, leikkele, juusto, vihannes, veitsi
– Osaa:
kävellä, tunnistaa asioita, etsiä, leikata, levittää, syödä

Ohje:

1. Mene keittiöön (Tunnistaa keittiön, osaa kulkea sinne)
2. Avaa astiakaappi

– Ota lautanen (Tunnistaa lautasen)

– Ota veitsi ja juustohöylä

– Vie lautanen, veitsi ja juustohöylä pöydälle (Tietää mikä on pöytä, osaa kulkea, laskea lautasen)

3. Leipähylly
IF leipää on

  a) – Leivän valikointi (Tietää mikä on leipä, laadulla ei väliä)

        – laske pöydälle
ELSE leipää ei ole

   b)   –  odota aikamäärä x, palaa kohtaan yksi

4. jääkaappi
IF tuotteita on

a) – levitteen, leikkeleiden, juuston, kurkun valikointi

    – laske pöydälle
ELSE tuotteita ei ole

b)  – älä syö, odota aikamäärä x, palaa kohtaan yksi

5. levitteen levitys
– ota levitepaketti
– avaa levitepaketti
– ota veitsi
– ota veitsellä levitettä
– levitä veitsellä levitettä koko leipäpalan päälle n. 2mm kerros
6. kinkku
– ota kinkkupaketti
– avaa paketti
– ota yksi kappale leikkelettä
– aseta leivälle
7. juusto
– ota juustopaketti
– avaa paketti
IF juusto viipaleina

a) – ota yksi kappale juustoviipaleita

        – aseta leivälle
ELSE juusto palana

b) ota juusto ulos paketista

– ota juustohöylä

        – höylää juustohöylällä viipale
– aseta leivän päälle
8. kurkku
– ota kurkku
– ota veitsi
– leikkaa veitsellä palasia
– aseta palaset leivän päälle
9. istuminen pöydän ääreen tuolille
– ota leipä
– siirrä lautaselle

– istu tuolille pöydän viereen

10. syönti
– ota leipä lautaselta
– laita osittain suuhusi
– puraise pala irti
– pureskele
– niele
– toista