Politiikka: Merja Ra­sin­kan­gas vaihtaa kes­kus­tas­ta pe­rus­suo­ma­lai­siin, ko­koo­muk­ses­ta Oulun suurin val­tuus­to­ryh­mä

Oulun kaupunginjohtaja: Seppo Määtän joh­ta­ja­so­pi­mus hy­väk­syt­tiin – palkka 14 000 euroa

Luitko jo tämän: Bar­ta­ve­gen esit­tä­mä kri­tiik­ki jää­kie­kon ju­nio­ri­pe­lis­sä oli liikaa – se­los­tuk­set pantiin het­kek­si pannaan

Mainos: Tilaa Kaleva Digi koko vuodeksi samaan hintaan: 12,90 € / kk + 1 kk kaupan päälle, tilaa tästä

Mies väsyi VR:n lip­pu­kau­pan hi­tau­teen – koodasi pai­kan­va­lin­nas­ta mutkat suo­rik­si

Tuomas Saloa ärsytti VR:n netissä toimivan lippukaupan paikanvalinnan hitaus. Purnaamisen sijasta hän ryhtyi tuumasta toimeen ja kokeili, pystyisikö ostoprosessia vauhdittamaan pienellä koodinpätkällä.

VR:n lippukaupan paikanvaraus näyttää varaustilanteen junanvaunu ja kerros kerrallaan. Muut vaunut pitää ladata erikseen. Tuomas Salon No Flash -bookmarklet piirtää koko junan ja paikkavaraukset kerralla käyttäjän näkyville.
-
Kuva: Moilanen Jukka-Pekka

– Milloinkaan en tule tällä härvelillä säästämään yhtä paljon aikaa kuin sen tekemiseen meni. Enää ei kuitenkaan harmita käyttää VR:n verkkokauppaa, koodari Tuomas Salo nauraa.

Tampereella asuva Salo matkustaa usein junalla työnsä ja vapaa-aikansa vuoksi ja käyttää muiden junamatkustajien tavoin paljon VR:n lippukauppaa netissä tietokoneella ja mobiililaitteella. Saloa ärsytti VR:n lippukaupassa kaksi asiaa: puhelimella ei pysty lainkaan valitsemaan istumapaikkoja, ja tietokoneellakin selaaminen on hidasta, sillä istumapaikat pitää tutkia junavaunu ja kerros kerrallaan.

– Latausaika kahden vaunun välillä on puolitoista sekuntia ja se on nykypäivänä verkossa järkyttävän pitkä aika, Salo sanoo.

Salo päättikin muuttaa turhautumisensa hyödyksi ja kokeilla, olisiko VR:n lippukauppaa mahdollista "puukottaa" koodinpätkällä niin, että paikanvalinta näyttäisi koko junan kerralla, myös puhelimessa.

Ja olihan se.

– Aloin tutkia asiaa ja heti kun se näytti mahdolliselta, tuli sellainen olo, että nyt voisi signaloida jotenkin, että kamoon, näin se olisi pitänyt heti tehdä.

Salo käytti koodaamiseen "aika monta iltaa", mutta ennen pitkää No Flash oli valmis.

Yksinkertaistettuna Salon Javascript-koodi ohittaa VR:n lippukaupan paikanvalinnassa käytetyn Flash-sovelluksen, jolloin varaustilanne näkyy käyttäjälle koko junan osalta eikä vain junavaunu kerrallaan.

Eli siis. Sen sijaan, että tilanne olisi tämä:

VR:n lippukaupan paikanvaraus näyttää varaustilanteen junanvaunu ja kerros kerrallaan. Muut vaunut pitää ladata erikseen.
VR:n lippukaupan paikanvaraus näyttää varaustilanteen junanvaunu ja kerros kerrallaan. Muut vaunut pitää ladata erikseen.

Tilanne onkin tämä:

Tuomas Salon No Flash -bookmarklet piirtää koko junan ja paikkavaraukset kerralla käyttäjän näkyville.
Tuomas Salon No Flash -bookmarklet piirtää koko junan ja paikkavaraukset kerralla käyttäjän näkyville.

Lisäksi Salon koodia voi käyttää kuka vain. Koodin voi tallentaa verkkoselaimen kirjanmerkkeihin niin sanottuna bookmarkletina ja kun sen kerran on tehnyt, sitä voi käyttää aina paikanvalinnan yhteydessä. Tai, no, periaatteessa kuka vain voi käyttää sitä, mutta käytännössä se vaatii aika paljon viitseliäisyyttä tavalliselta käyttäjältä.

Salo teki No Flashin omaksi huvikseen, lähinnä kokeillakseen onnistuuko käyttöliittymän muokkaaminen.

- Oppimisprosessina tämä oli minulle antoisa. Lisäksi motivaationa oli näyttää, että tämän voisi korjata aika helposti. Pistin koodin jakoon, että sitä voivat ainakin muut nörtit käyttää, ja siinä on myös VR:lle viestiä, että tulisivat tälle vuosikymmenelle.

Harrastusprojektit voivat kannustaa muutokseen

VR on ollut aikaisemminkin yleishyödyllisen nörtteilyn kohteena. Julkisuudessa kerrottiin hiljan espoolaisesta Joonas Rouhiaisesta, joka koodasi junat.net-nettipalvelun, joka näyttää juna-asemien lähtevät junat ja niiden lähtöajat reaaliaikaisesti eli saman näkymän, joka on asemien näyttötauluilla.

– Loistavia parannuksia, ei muuta kuin lisää tällaista.
Mika Heijari, VR Groupin viestintäpäällikkö

VR on myös huomioinut harrastajien tekemiä parannuksia. VR twiittasi palkitsevansa Rouhiaisen kehittämän junat.net-palvelun. VR Groupin viestintäpäällikkö Mika Heijari on mielissään ihmisten tekemistä "hackeista".

– Kannustamme tällaista ehdottomasti. Se on myös meille painetta, meidän täytyy pystyä pistämään paremmaksi, Heijari sanoo.

Salon mukaan julkiset hakkeroinnit ovat osoitus koodarin omasta innokkuudesta ja saattavat olla myös urakehitystä jollekin. Oulussa vuosituhannen vaiheessa opiskellut Salo itse tekee päivätöikseen palvelinpuolen kehitystä melko laajalla työnkuvalla, mutta käytettävyys ja käyttöliittymät ovat lähellä hänen sydäntään.

– Sitä aina miettii, miten asiat voisi tehdä ihmisten kannalta paremmin. Tällaiset harrastusprojektit eivät välttämättä itsessään muuta maailmaa, mutta ne voivat ainakin kannustaa parempaan kehitykseen, Salo sanoo.

Salon tekemä No Flash -bookmarklet käyttöohjeineen löytyy osoitteesta http://vr.aarre.net/

Nörttiosasto – Miten No Flash toimii?

Tuomas Salo: "VR:n sivusto lataa Flash-palikan, joka kysyy kaupan varausjärjestelmästä tiedon, minkälaisia vaunuja junassa on ja miten niissä on vapaata. Varausjärjestelmältä voi kysyä, miltä tilanne näyttää edellisessä vaunussa tai seuraavassa vaunussa, ja jokainen kysely kestää puolitoista sekuntia.

Yksinkertaistettuna homma toimii siten, että Flashin lataamisen sijasta ladataankin vaunukartat ja käydään varaustilanne läpi kunkin vaunun osalta ja näytetään ne käyttäjälle kerralla. Vaunutyyppien vaunukartat on leivottu Flash-kikkareeseen ja isoin homma olikin saada sieltä Flash-tiedostosta vaunukartat järkevästi kuvina ulos, siten, että ne voi näyttää ilman Flashiä.

Flash-tiedosto kyseli varaustiedot XML-tiedostosta. Konvertoin vaunukartat SVG-tiedostoiksi, joita tuo korvattu loadFlash-funktio sitten lataa lennossa ja täyttää varaustiedot XML-pökäleen perusteella.

Loppu oli triviaalia.

Tätä penkoessani näytti siltä, että taustajärjestelmä on älyttömän kömpelö. Flash oli jo aikanaan huono valinta verkkokauppaan, sillä silloin oli jo iPhonet ja iPadit ja tiedossa se, että Flash on väistyvä teknologia."