Käyttöliittymän hahmottelua luonnostelemalla

Käyttöliittymien suunnittelussa ideoiden hahmottelu ja visualisointi käsiteltävään muotoon on yksi ensimmäisiä vaiheita ennen koodiin sukeltamista. Visualisointia voi suorittaa monella tapaa ja yksi kätevä keino on luonnostelu, eli piirtämällä kynällä karkea malli halutusta lopputuloksesta paperille. Yksinkertaista, helppoa ja nopeaa prototypointia, vaikka paperimallit eivät ole kovin joustavia ja muutokset ovat työläitä.

Luonnostelu on yksi yleisimmistä tekniikoista matalan tarkkuuden prototyyppien luomiseen. Menetelmässä käytetty ”kynä ja paperi-menetelmä on luonnollinen ja vähän vaivaa vaativa tekniikka, joka mahdollistaa abstraktien ideoiden siirtämisen konseptista nopeasti kiinteämmälle pohjalle. Erityisen hyödyllisen menetelmän tekee sen luovuuteen ja ajatteluun rohkaiseva luonne. Lisäksi luonnostelu rohkaisee useamman eri tekijän osallistumisen mallin luontiin, kun visuaalinen malli ja tekniikka on kaikille tuttua. Asiat jäävät myös riittävän epätarkoiksi, joka sallii tarkennusten tekemisen myöhemmin, estämättä luovuutta mallin kehittämisen aikana.

Luonnostelua voi suorittaa myös tietokoneella, hyödyntämällä Washingtonin yliopistossa kehitettyä avoimen lähdekoodin BSD-lisenssillä julkaistua DENIM-ohjelmistoa. Ohjelma tarjoaa käytännössä paperintapaisen käyttöliittymän mallien luontiin. DENIM on tarkoitettu tukemaan Web-kehittäjien alkuvaiheen suunnittelua informatiivisen luonnostelun kautta, ja tarjoaa suunnittelun tueksi kynällä luonnostelua, eri tarkkuuksille kohdentamista (sivukartta, kuvakäsikirjoitus, sivu), sivujen linkittämistä kuvakäsikirjoitusta varten, mallin ajamista esittämistä ja vuorovaikutusta varten ja mahdollisuuden luoda uudelleenkäytettäviä komponentteja. Lopputuloksen voi myös viedä linkitetyiksi HTML-sivuiksi. Javalla toteutettu DENIM on saatavilla Windowsille, Unixille ja Mac OS X:lle.

Denim Denim

DENIMillä luodut prototyypit muistuttavat kynällä ja paperilla luonnosteltuja malleja sekä hyvässä että pahassa, ja koska nyt piirtovälineenä toimii hiiri, on piirtojälki kynääkin karkeampaa. Paperimalleihin verrattuna sähköinen media tarjoaa mahdollisuuden elementtien siirtelyyn ja muokkaamiseen ja lopputuloksen dokumentointi ja säilöminen myöhempää käyttöä varten on helpompaa. Tietenkin kuten kynällä ja paperilla luonnostellessa, jää käyttöliittymän vuorovaikutuksen esittäminen ja mallin myöhempi hyödyntäminen vähäiseksi. DENIMin käyttö on suhteellisen yksinkertaista ja opasteen avulla hieman erikoinen käyttöliittymä ja sen tarjoamat toiminnot selviävät nopeasti, mutta tämänkin jälkeen työskentely on hieman hidasta ja monimutkaisen tuntuista.

DENIM tarjoaa mahdollisuuden sähköiseen luonnosteluun, mutta käyttö on hieman kömpelöä, joka tosin johtunee suurilta osin piirtovälineenä käytettävästä hiirestä. Piirtopöydällä käytettynä DENIM voisi olla pätevä apuväline, mutta nyt osa sovelluksen kätevyydestä menee hiiren epätarkkuuden kanssa hukkaan, vaikka ohjelmisto suoristeleekin piirrettyjä viivoja. Myös isolla kosketusnäytöllä, jolloin useampi henkilö voisi yhtä aikaa ilmaista ideoitaan, voisi ohjelman käyttö olla kätevää. Toisaalta, kynällä ja paperilla saa edelleen luotua nopeammin ja helpommin luonnoksia ja piirrosjälki on tarkempaa ja mahdollistaa pienempien ja tarkempien elementtien hahmottelun.

Mario AI Competition 2009: tekoälyn ohjaama Mario

Pelaamista voi harrastaa myös hieman erikoisemmalla tavalla, opettamalla tekoälylle keinot selvitä pelissä. Tekoälyihin liittyen onkin erilaisia kilpailuita ja yksi tällainen on Mario AI Competition 2009, jossa pitää kehittää ”ohjain”, joka selviää Super Mario Bros -tyylisessä pelissä mahdollisimman monta asteittain vaikeutuvaa kenttää läpi.

Kilpailu pohjaa muokattuun Markus Perssonin Infinite Mario Bros -peliin (Java), joka on Javalla toteutettu versio Nintendon Super Mario Bros -pelistä, lisättynä loppumattomilla satunnaisesti luoduilla kentillä. ”Ohjaimen” on tietyissä ajanjaksossa päätettävä minkä toiminnon suorittaa, vastatakseen peliympäristön haasteisiin. Kilpailua varten kehittäjillä on saatavilla pelin lähdekoodit, joiden pohjalta tekoälyn toimintaa voi kehittää.

Asiaa voi lähestyä varmasti monella tapaa ja Robin Baumgarten visualisoi Youtube-videoissa omaa ratkaisuaan muutamalla videolla: Infinite Mario AI – Long Level ja Infinite Mario AI: Mario follows Mouse, jossa Mario seuraa hiiren kursoria. Robin kertoo redditin ketjussa, että hyödyntää pelikehyksen tekniikkaa muun muassa fysiikkamoottorin osalta luoden vastaavan tilan ja suunnittelemaan sekunnin tai pari eteenpäin.

Pelimoottori on sinällään armollinen kehittäjille, sillä ilmeisesti se ei tarjoa mahdollisuutta Super Marioista löytyvien piilotettujen tiilien ja jekkujen toteuttamiseen. Siinä vasta olisikin haastetta. Mario AI Competition 2009 -kilpailu alkoi toukokuussa ja päättyy kaksivaiheisesti elokuun puolivälissä ja syyskuun alussa. Toivottavasti kilpailutöistä tulee samanlaisia video-otoksia, kuin Robinin tuotoksista.

Mplayer OSX Extended ei suostu toistamaan videoita

Mac OS X:ssä asiat yleensä vain toimivat, mutta välillä käyttäjä saa myös asiat hajoamaan. Päivitin taannoin macportsilla asennettuja ohjelmistoja ja kirjastoja, jonka jälkeen Mplayer OS X Extendedillä oli suuria ongelmia toistaa yhtäkään videota. Virheilmoituskin oli taas todella selkeä: ”Playback Error: Abnormal playback termination. Check log file for more information.”

Mutta mikä on rikki, on myös yleensä mahdollista korjata. Hieman asiaa tutkien apu löytyi MPlayer OSX Extendedin foorumilta, jossa neuvottiin seuraavat kolme korjausehdotusta:

  1. Poistaa ohjelman plist-tiedosto (~/Library/Preferences/org.mplayerosx.MplayerOSX.plist)
  2. Tyhjentää käyttäjän font cache (~/.fontconfig/)
  3. Tyhjentää järjestelmän font cache (/opt/local/var/cache/fontconfig/)

Ongelman pääsyy oli macportsista asennettu uusi fontconfig, joka sotki asiat. Font cachen tyhjentämisen jälkeen Mplayer OS X Extended toimii melkein normaalisti, mutta samaa virheilmoitusta näkyy vielä ajoittain. Toivottavasti ohjelman kehittäjä löytää ongelmaan ratkaisun, kuten foorumilla kirjoittaa.

Selkeästi ei pitäisi päivittää toimivaa järjestelmää :)

Mac OS X ja dynaamisten kirjastojen käyttäminen

Olen viime viikkojen aikana yrittänyt saada Firefoxin mozvoikko-lisäosaa toimimaan asiallisesti Mac OS X:ssä ja teoriassa lisäosa toimiikin. Ainoana negatiivisena puolena on, että se vaatii kirjastojen sijoittamisen hakemistoon, jonne ne kääntäessä asennettiin, eli esimerkiksi /usr/local/lib -hakemistoon. Linuxissa ja Windowsissa lisäosa toimii, kunhan vaadittavat kirjastot löytyvät lisäosan sisään leivottuina.

Mac OS X:ssä dynaamiset kirjastot toimivat hieman eri lailla ja haluavat täydellisen polun asennushakemistoonsa. Asiasta löytyy blogikirjoitus ja selventävä ohje, jotka kertovat miten asioiden laita on. Kirjoituksissa neuvotaan toimivien dynaamisten kirjastojen luontiin käyttämällä install_name_toolia ja LDFLAGS-muuttujien käytöllä.

Hieman asian ympärillä iteroiden ei kirjastojen kääntäminen toivotulla lopputuloksella kuitenkaan onnistunut. Vaikka LDFLAGS-muuttujiin laittoi ehdotetun -Wl,-dynamic,-install_name -Wl,@executable_path/kirjasto.dylib -loitsun, eivät lisäosan vaatimat gettext, iconv, glib-2, malaga, suomi-malaga ja voikko -kirjastot suostuneet toimimaan lisäosan sisältä. Gettextin libintl -kirjastoa varten joutui LDFLAGS-muuttujat lisäämään suoraan Makefileen, mutta muuten loitsiminen onnistui configuren parametreina.

En tiedä onko vika kirjoittajassa, vai missä, mutta ei voi sanoa, että asiaa olisi turhan helpoksi tehty. Joku jippo tässä täytyy olla, kun kirjastot kuitenkin /usr/local/lib -hakemistosta toimivat. Ehkä tämäkin asia joskus selkenee.

Skotlanti tarjosi hyvää viskiä ja värikästä historiaa

SASin kone laskeutui viime sunnuntaina Helsinki-Vantaalle ja näin oli vajaan viikon loma (14.7 – 19.7.2009) Skotlannissa ohitse. Hieno loma olikin, viskit maistuivat hyviltä ja tällä reissulla niitä oppi maistelemaankin kunnolla. Juomakulttuuriin tutustumisen lisäksi tuli vuokra-autolla kierreltyä katsomassa hieman Skotlannin linnoja ja niiden raunioita, sekä ihailemassa ylämaiden lampaiden kansoittamia maisemia.

Matkamme alkoi Helsingistä Blue1:n lennolla Heathrow:n kentälle Lontooseen, josta bmi:n kone jatkoi parin tunnin vaihtoajan jälkeen eteenpäin Skotlannin pääkaupunkiin, Edinburghiin. Vuokra-auto alle ja kohti noin kolmen kilometrin päässä Edinburghin keskustassa sijaitsevaa Royal Ettrick Hotellia. Ensimmäinen automatka väärällä kaistalla apukuskin paikalta ajettuna oli kuskin mielestä kuulemma ”mielenkiintoinen” ja apukuskia ajoittain hirvitti. Hotellimme oli pienehkö 16 huoneen viihtyisä kokonaisuus ja hintaan sisältyi aamiainen, joka tarjosi perinteisen puuro-jugurtti-muro-paahtoleipä -annoksen tai Skotlantilaisen aamiaisen pekonin, munan, haggiksen ja sienien kera.

Matkaohjelmamme rakentui suuripiirteisesti Skotlantilaiseen viskiin tutustumiseen, mutta nähtävyydet toimivat hyvinä välipaloina. Keskiviikkona suuntasimmekin kohti Edinburghin nähtävyyksiä kuten Edinburghin linnaa, jossa aikaa kului Skotlannin kansallisessa sotamuseossa, Sodan vangit -näyttelyssä ja rakuuna-museossa. Museoita ja linnojen kiertelyä varten hankimme Explorer -passin, jolla pääsi viiden päivän aikana vapaasti valittavina kolmena päivänä kaikkiin linnoihin ja raunioille. Passista sai vielä kätevästi opiskelija-alennusta. Juomakulttuurin puolesta keskiviikkona huolehti Scotch Whisky Experience -kierros, jossa opetettiin maistelemaan viskiä ulkonäön, hajun ja maun perusteella ja kerrottiin eri viskialueiden ominaispiirteistä.

Maisema Royal Mile
Säkkipillimies Closed

Torstaina suuntasimme kohti Fort Williamia ja Ben Neviksen tislaamoa, samalla käyden matkan varrella olleissa Blackessin linnassa ja Stirlingin linnassa. Stirlingin jälkeen alkoikin varsinainen ajomatka pitkin kapeita ja mutkaisia teitä kohti Fort Williamia, jonne saavuimme juuri parahiksi viimeiseen kierrokseen tislaamolla (16.40). Tislaamon miehellä oli rento asenne viskin tislaamiseen ja tarinoiden jälkeen matkaan tarttui pullo 12-vuotiasta Ben Nevis Deluxe Blended -viskiä. Sitten vielä hieman ruokaa ja takaisin kohti Edinburghia kiertäen maisemareittiä pitkin. Kuskikin pääsi pidemmän ajorupeaman aikana vauhtiin ja välillä takapenkilläkin tuntui, että peilit jäävät matkan varrelle.

Matkareittimme oli suurin piirtein seuraava:

Torstai Torstai
Navigaattori Maisemat

Perjantaina suuntasimme pitkin rannikkoa kohti Aberdourin linnan raunioita, josta pienen arpomisen jälkeen tähtäsimme Famous Grousen tislaamolle Crieffiin. Tänään olin itse ajovuorossa, joten viskin maistelu jäi niukoille, mutta matkaseurue nautti tislaamon viskivalikoimasta senkin edestä. Matka jatkui Loch Levenin linnan raunioille, jotka tosin jäivät järven keskelle. Kaikki nähtävyydet sulkevat ovensa ikävän aikaisin jo hieman virka-ajan loputtua (keskimäärin klo 17.30). Burger Kingin aterioiden jälkeen suunta kohti kiintopistettä ja pyörähtämään vielä Edinburghin keskustassa. Vuokra-autosta olin positiivisesti yllättynyt ja Vauxhall Astra 1.9 cdti hoiti homman mainiosti. Diesel ja turbo toivat ajoon sopivaa pehmeittä ja ripeyttäkin löytyi riittävästi. Aika nopeasti sitä tottui vaihtamaan vaihteita vasemmalla kädellä ja kapeat tietkään eivät häirinneet.

Reittimme kiersi rannikkoa mukaillen kohti sisämaata ja moottoritietä takaisin:

Torstai Torstai

Juomakulttuurin osalta Skotlantilaiset oluet kuten Belhaven Best, McEwan’s 80, Old Speckled Hen, Deuchar’s IPA ja Tennets Lager olivat erinomaisia ruokajuomia. Mutta oluita varten ei Skotlantiin matkattu, joten viskien osalta tuli tutustuttua 38 erilaiseen makuun. Viskit tarjoiltiin nippeinä, eli noin 2,5cl annoksina, jotka soveltuivat mainiosti maisteluun. Iän ja tislaamon sijainnin vaikutus makuun tarjosi paljon maisteltavaa ja suuriakin eroja eri juomien välille. Viskin juomisesta matkalla selvisi yksi yhtenäinen näkemys: ei jäitä, koska ne imevät maut. Vettä voi hieman lisätä maun selventämiseksi, mutta vain teelusikallisesta ruokalusikalliseen.

Eri viskejä on hankala laittaa paremmuusjärjestykseen, sillä hyvissä viskeissä on makua, mutta erilaisina luonteina. Ardberg ja Lagavulin olivat omaa luokkaansa savuisina ja maultaan vahvoina viskeinä ja pehmeämmistä, helposti lähestyttävistä, viskeistä Macallan, Highland Park ja Talisker kuin sulivat suuhun. Myös Balblair ja ancnoc olivat maukkaita ja pääsääntöisesti hyvät viskit vain paranivat iän kasvaessa. Toisaalta ”huonoa” viskiä kuten Tomintoulia ei ikä oikein pelastanut, kuin vasta 27 vuoden kohdalla. Sekoitetut viskit jäivät hieman pienemmälle painoarvolle, vaikka hyviä nekin muutamat oli, joita tuli testattua. Esimerkiksi Famous Grousessa on yhdistetty muun muassa Macallania, Highland Parkkia ja Glenturretia.

Pienet annokset, suuret maut:

Viskin maistelua
Viskit Viskit

Tislaamot olivat sisältä päin hyvinkin samanlaisia, tislauspannuja lukuun ottamatta:

Ben Nevis Famous Grouse

Skotlannista jäi hyvä mielikuva, vaikka sää koittikin ajoittain kastella. Ruoka toki oli mitä oli, kalaa ja ranskalaisia tai kuivahkoja hampurilaisia, mutta silti ihan maittavaa. Haggiskin oli kuin suomalaista maksalaatikkoa. Nähtävyyksissä oli oppaat kertomassa tarinaa värikkäästä historiasta rotevalla murteella, josta sai selvää aika hyvin, joten linnojen ja raunioiden kiertely ei ollut aivan oman mielikuvituksen varassa. Lauantaina kävimme vielä Edinburghin Deep Sea Worldissa, jossa oli muun muassa haita ja muita meren eläviä.

Skotlannin nähtävyyksistä jäi vielä paljon näkemättä, koska käytettävissä olleen ajan puitteissa keskityimme vain Edinburghin lähialueisiin. Skotlannin ylämailta löytyisi muun muassa Loch Ness, lisää linnoja ja enemmän kuuluisia viskitislaamoja. Eli seuraavaa reissua varten on jo kohdelista haarukassa. Ainakin Edinburghin alueelle kannattaa suunnata kolmen-neljän vuoden päästä, kun Stirlingin linnan restaurointi ja Edinburghin pääkadun, Princess Streetin, raitiovaunukiskot on saatu valmiiksi.

Kohti saarivaltakuntaa

Kävin viime perjantaina Finnconissa kuuntelemassa George R. R. Martinin Guest of Honour -puheen, joka conin teemaan liittyen käsitteli matkaa: mielikuvituksessa tai reaalimaailmassa. Puheen ydinajatuksena oli, että kirjoja lukemalla pääsee matkustamaan uusiin maailmoihin ja kohtaamaan uusia tuntemattomia asioita; paljon enemmän kuin fyysisesti matkaamalla.

Matka ei ole pelkästään paikasta A paikkaan B taivaltamista, vaan myös elämää: uuden oppimista ja henkistä kasvua. Usein matkustaminen yhdistää nämä matkan molemmat puolet, ja niinpä huomenna suuntaankin viikoksi kohti uusia maailmoja, päämääränä Edinburgh, Skotlanti. Yhdistyneiden kuningaskuntien saarivaltakunnan maa, josta ensimmäisellä ajatuksella tulee mieleen viski, kiltti, säkkipilli, haggis, linnat ja Roope Ankka. Saa nähdä mitä muuta viikon aikana tulee koettua vuokra-auton avustuksella, jolla on tarkoitus matkata kokemaan kulttuuria, viskitislaamoja ja maisemallisesta luontoa, palaten aina yöksi takaisin lähtöpisteeseen. Britannista löytyisi myös Martinin Tulen ja jään laulu -kirjojen maailman Muurin esikuvana toiminut Hadrianuksen valli, mutta mielenkiintoisuudestaan huolimatta se jäänee näkemättä.

Matka alkaa aina odotuksella kohti uusia jännittäviä maailmoja ja irtautumaan arjesta, ja tapahtui matka sitten mielikuvituksessa kirjojen avustuksella tai ei.