Esineiden internet pistää ohjelmoinnin uusiksi

|
Uutinen
Kuuntele

Niko Mäkitalon väitöstyössään luoma ohjelmointiympäristö auttaa rakentamaan entistä fiksumpia ohjelmia, jotka vapauttavat alituisesta kännykän näpräämisestä.

tevien kännykkäsovellusten piti helpottaa elämäämme, mutta toisin kävi – ne tekivätkin meistä ruutua tuijottavia zombeja.

–  Nykyiset mobiililaitteet appseineen ovat kuin korillinen kaukosäätimiä, joilla käyttäjä manuaalisesti kontrolloi muita laitteita ympärillään, tutkija Niko Mäkitalo kuvaa tilannetta. 

Tuskastuminen mobiiliohjelmoinnin nykytilaan synnytti Mäkitalon väitöskirjan parhaan paperin. Mäkitalon, hänen professorinsa Tommi Mikkosen ja espanjalaistutkijoiden yhteistyönä syntynyt Internet of People -manifesti ehdottaa uudenlaisia periaatteita, joita pian koittavan Internet of Things -aikakauden ohjelmistojen pitäisi noudattaa. 

– Nykyisin käyttäjän pitää kaivaa puhelin taskustaan, avata sovellus ja alkaa käyttämään sitä, Mäkitalo kertoo.

Viime vuosituhannen PC-maailmassa tämä olikin aivan toimiva tapa. Nykyajan mobiilisovellusten pitäisi sen sijaan tarkkailla ympäristöään ja käyttäjäänsä ja reagoida tilanteisiin automaattisesti, tutkijat ehdottavat. 

 

Tulevaisuuden sovellukset toimivat taustalla

Mäkitalon väitöskirjan Social Devices -konseptissa älylaitteiden sovellukset eivät vaadi käyttäjänsä huomiota, vaan ne ovat jatkuvasti käynnissä taustalla, ja vaihtavat tietoja muiden lähellä olevien laitteiden kanssa. 

– Konseptin tarkoitus on vähentää kännykän vaatimaa huomiota. Kännykkäsi pitäisi tuntea sinut, tietää missä asut, missä käyt töissä, mitä reittiä yleensä kuljet. Tästä henkilökohtaisesta tiedosta muodostuu sosiologinen profiili, jota voidaan jakaa muille lähellä oleville laitteille, tietysti yksityisyyttäsi suojellen, Mäkitalo selittää. 

Nykyisten mobiilisovellusten äly on vielä lapsenkengissä, mutta silloin tällöin esimerkiksi Google onnistuu yllättämään Android-puhelimen käyttäjän positiivisesti. Sähköpostiin tulleet lentoliput ilmaantuvat automaattisesti omaan kalenteriin, ja matkapäivänä puhelin hätistää lähtemään ajallaan lentokentälle. Kolikon toinen puoli on se, että mainosrahoitteisissa palveluissa henkilökohtaiset tiedot ovat arvokasta kauppatavaraa, jota tarjotaan mainostajille. 

– Tuo on se suunta mihin pyrimme. Erona Googlen palveluihin on se, että me haluamme, että data pysyy omassa kontrollissa, omassa päätelaitteessa. Ihminen voi itse päättää, mitä tietoja hän jakaa muille. 

 

Uusi ohjelmointimalli sosiaalisille laitteille

Vuonna 2014 matkapuhelinten lukumäärän arvioitiin saavuttaneen maapallon asukkaiden määrän. Matkapuhelin on tuonut internetin taskuumme, mutta Mäkitalon mukaan tämä on vasta alkua Internet of Things -aikakaudelle. Jo nykyään internet-päätelaitteita ovat kännyköiden lisäksi autot, jääkaapit ja valaisimet. Vuonna 2020 internetiin kytkettyjen laitteiden määräksi arvioidaan 26–50 miljardia laitetta.

– Olisi hullua, jos tuolloinkin kulkisimme kännykkä kädessä ja säätäisimme asioita ympärillämme manuaalisesti, Mäkitalo toteaa.

Ohjelmien koodaajille tämä merkitsee todellista vallankumousta.

– Yksittäisen laitteen tai käyttöliittymän sijaan pitää miettiä laitteiden yhteistoimintaa, ja sitä miten ne palvelisivat ihmisiä, Mäkitalo kertoo.

Nykyiset mobiilisovellukset ovat tyypillisesti asiakasohjelmia, jotka keskustelevat internetin yli palvelimen kanssa. 

– Ne hakevat tietoa palvelimen tietokannasta ja muokkaavat siitä käyttäjälle sopivan näkymän. Mutta kun halutaan hyödyntää useita laitteita kerralla, samalla tehden tietotekniikasta proaktiivista ja persoonallista, ei tämä perinteinen softan toimintamalli enää toimikaan. Tarvitaan uudenlainen ohjelmointimalli.

Tutkijoiden manifestin voisi helposti leimata korkealentoiseksi visioinniksi, mutta Mäkitalo myös näyttää, miten temppu tehdään. Väitöskirjansa toisessa suosikkipaperissa tutkija kuvailee rakentamansa avoimen lähdekoodin ohjelmointiympäristön, jolla uuden ajan mobiiliohjelmistoja rakennetaan. 

– Halusimme luoda avoimen ohjelmointimallin, jossa kuka tahansa yksityinen ohjelmoija – tai teknisesti osaava kadunmies – pystyisi luomaan valmiiden komponenttien pohjalta uusia ohjelmia. 

Hyvä esimerkki tulevaisuuden mobiilisovelluksesta on Mäkitalon koodaama CoffeeBreak -sovellus, joka tiedustelee toimistolle matkaavilta työkavereilta, maistuisiko aamukahvi. Jos kahvi näyttää maistuvan, käynnistää sovellus toimiston keittimen automaattisesti. Jos tuttua kahviseuruetta näyttää puhelinten sijaintitiedon perusteella jo olevan koolla, kutsuu sovellus automaattisesti muutkin lähistöllä olevat paikalle. 

 

Nykyappien loppu häämöttää

Mäkitalo ei ole näkemyksineen yksin. Esimerkiksi Facebookin ja Googlen johtohahmot ovat puhuneet julkisuudessa, että nykyisenkaltaiset mobiiliapplikaatiot ovat tulossa tiensä päähän. Applen ja Googlen sovelluskaupoissa on molemmissa jo pari miljoonaa mobiilisovellusta. Tästä huolimatta älypuhelinten käyttäjillä on käytössään keskimäärin vain 26 eri sovellusta, eikä lukumäärä enää näytä kasvavan, kertovat tutkimusyhtiö Nielsenin tilastot. 

Esimerkiksi Microsoft ja Facebook kehittävät jo mobiiliapplikaatioita korvaavaa chat bot -teknologiaa, jonka avulla esimerkiksi ruokaostokset tai lentolippujen hankkiminen sujuisi samaan tapaan kuin nykyisin chat-keskustelu kavereiden kanssa.

– Niiden kehittelemä bottiteknologia on sukua TTY:n aktiopohjaiselle ohjelmoinnille. Mutta meidän ajatuksemme menee vielä pidemmälle, kertoo Mäkitalo.

– On tärkeää haastaa nykyinen tapa toteuttaa ohjelmia. Se ei enää pysty palvelemaan ihmisiä, kun laitteiden määrä ympärillämme kasvaa.  

 

Koodausympäristö sosiaalisille mobiililaitteille

Mäkitalo rakensi väitöstyössään kehitysympäristön, jossa voi kokeilla uuden ajan ohjelmistokehitystä. TTY:n tutkijoiden aktiopohjainen ohjelmointimalli koostuu kolmenlaisista komponenteista: Apps, Actions ja Capabilities. Kehitysympäristön ydin on Orchestrator-middleware-ohjelmisto.

http://social.cs.tut.fi

 

Mitä haluaisit saada aikaan tekniikan tohtorina? 

Haluaisin, että tietotekniikka kerrankin palvelisi ihmistä. Se on monen haave; nähtäväksi jää tuleeko toteutumaan!

 

Suosikkileikkikalu 

Microsoftin Gadgeteer-alusta. Se on kuten Arduino, pienenpieni tietokone johon voi kytkeä erilaisia sensoreita, kameroita tai moottoreita, mutta paljon Arduinoa nopeampi ohjelmoida.

 

Lempiharrastus

Astangajooga ja melonta. Ne ovat hyvää vastapainoa tekniikalle.

 

Yhden miehen softavallankumous

Vuonna 2011 kaikki näytti hyvältä Social Devices -tutkimuprojektissa. TTY:n, Aallon ja Nokian tutkimuskeskuksen porukka rakensi uuden ajan mobiilisovellusten ohjelmistokomponentteja Nokian tulevaisuuden käyttöjärjestelmälle, Linux-pohjaiselle MeeGo-alustalle.  

Alun perin Nokia-lähtöinen tutkimushanke kuitenkin kuivui kasaan Nokian vaikeuksien myötä. 

– Jos olisi käynyt toisin, teknologia saattaisi olla jo käytössä matkapuhelimissa. Nyt olen kehittänyt tätä Social Devices -konseptia ja sen ohjelmointimallia aika pitkälti yksin, Niko Mäkitalo pohtii. 

Vuonna 2014 samoja tutkimusajatuksia löytyi Espanjasta. 

– Olin tutkijavaihdossa kesällä 2014 espanjalaisessa Extremadura-yliopistossa. Kun mietimme, miten tutkimusaiheitamme saataisiin yhdisteltyä, syntyi Internet of People -manifesti, Mäkitalo kertoo.

– Parin viime vuoden aikana alamme konferensseissa on ollut hauska huomata, että samoja ajatuksia on alkanut näkyä muuallakin.

Muutaman vuoden säästöliekillä elänyt ohjelmointivallankumous voi pian saada uutta puhtia. Nyt viritteillä on Tekes-hanke, jossa aktiopohjaista ohjelmointimallia hyödynnettäisiin puettavissa laitteissa ja Suomessa nopeasti kasvaneella hyvinvointitoimialalla.

– Ehdottomasti paras tilanne olisi, jos saisimme käyntiin ison EU-projektin, ja mukaan oikeaa bisnestä ja isoja yrityksiä.

Miltä mahdollisuudet näyttävät?

– Ihan mahdolliselta se tuntuu, meillä on hyvä idea taustalla, kontakteja yrityksiin ja eurooppalaisiin yliopistoihin. 

Mäkitalon tutkimusinto ei sammunut väitöskirjaan. Nyt hän on TTY:n Liquid software -ryhmässä. 

– Ajatuksena on, että ohjelmat liikkuvat liukkaasti laitteelta toiselle: kännykässäsi ajossa oleva ohjelma voi siirtyä liukkaasti autoon tai läppärillesi. Tämäkin on tutkimusta, jollaista ei monessa paikassa ole vielä mietitty, vaikka joitain yhtäläisyyksiä esimerkiksi Applen Handoff-teknologiaan löytyykin.