Kuutio

Viivästetty videoviestintä

28.10.2011 klo 13:32

Mietin tänään sähköpostia kirjoittaessa, että voisi olla kiinnostavaa viestiä tekstin sijaan videoina. Eli sähköpostit tehtäisiin nauhoittamalla video ja toisten sähköposteihin vastattaisiin videoin. Keskusteluthreadi koostuisi videopätkistä ja toisten videoissa olevaan sisältöön voisi kommentoida videoin (vähän Soundcloud-kommenttien tapaan).

Onkohan aiheitta tutkittu?

Bret Victorin maailma

28.10.2011 klo 11:16

Törmäsin reaktiivisen Tangle projektin kautta Bret Victoriin, jonka projektit ovat aika kiinnostavia. Victor oli viime vuoden loppuun asti Applella tekemässä prototyyppejä iOs-käyttöliittymistä. Taustaltaan hän on sähköinsinööri.

Tangle pohjautuu reaktiivisen ohjelmoinnin ajatukseen siitä, että datojen välisten dynaamisten yhteyksien ohjelmoinnin pitäisi olla mahdollisimman helppoa. Käyttöliittymässä tämä tarkoittaisi sitä, että kun esimerkiksi jotakin parametrin arvoa muutetaan, kaikkien sitä parametria käyttävien elementtien tulisi päivittyä.

Bret Victor on tehnyt muutakin kiinnostavaa. Hänen Magic Ink -esseessään kuvataan polveilevasti, mikä on nykyisissä käyttöliittymissä ongelmana ja miten niitä tulisi parantaa. Hyvänä ajatuksena esseessä oli, että turhaa interaktiota tulisi välttää (ja sen sijaan, kun mahdollista, keskittyä informaation selkeään esittämiseen – visualisointiin). Esseessä myös lähdetään mukavan lennokkaasti miettimään oppivaa ohjelmointia, hypertekstin historiaa ja niin edelleen.

Tavallaan Victorin pohdintojen idealismi on naiivia. Mutta toisaalta on hienoa, että joku yrittää oikeasti yhdistää eri tyyppisiä, rohkeita ajatuksia käyttöliittymien tekemisestä ja interaktiosta.

Victor vaikuttaa hiukan egomaaniselta ja myös keräilijätyypiltä. Sivuilla on aikajanat siitä, mitä Victor on tehnyt eri vuosina ja tallenteita herran ikivanhoista webbisivuista ja projekteista. Aikajanojen perusteella nyt olisi jonkinmoinen erakkovuosi alkamassa, ilman sosiaalista kanssakäymistä muiden kanssa (vaiko ainoastaan kodin/työn ulkopuolella?).

Luovalle kaverille ei ilmeisesti lopulta NDA:n alla protoilu enää maistunut. Ymmärrän tunteen, mutta ei kai nyt tuon olisi pitänyt olla mikään yllätys?

Vaatimattomasti Victor yrittää myös käydä matematiikan kimppuun kill math projektillaan. Ymmärrän (idealistisen) tuskan. Esimerkiksi lukiossa minustakin tuntui, että matematiikan ja fysiikan opetus ei ollut riittävän visuaalista. Monia konsepteja voisi opettaa hyvillä visualisoinneilla, esimerkiksi: sini ja kosini, integrointi ja derivointi, permutaatiot, newtonin menetelmä, lepo- ja liikekitka ja valon taittuminen.

Vuoden 2010 retrospektiivi

15.1.2011 klo 16:09

Ajattelin viime vuoden tapaan listata, minkälainen vuosi 2010 oli.

Perhe

Meille syntyi syksyllä uusi perheenjäsen, rauhallinen, iloinen ja utelias poika. Saara sai pikkuveljen ja oli mukavaa nähdä kuinka alkujärkytyksen jälkeen isosisko alkoi pitää huolta veljestään.

Moni asia on jo helpompaa toisen lapsen kanssa. Tarvittavat välineet — vaunut, kopat, tuttipullot, pinnasängyt — löytyvät jo kotoa ja lapsen hoito ei ole enää aivan vierasta. Silti vanhempana olemisen vastuu tuo mukanaan myös aina jonkun verran huolta lapsista.

Zoomooz

Harrasteprojekteja tein vuoden aikana oikeastaan vain yhden, Zoomoozin, joka sai mukavasti huomiota verkossa. Muun muassa Aza Raskin tweettasi siitä ja sitä kävi vuoden aikana katsomassa 32 000 kävijää.

Oli hauskaa huomata, kuinka konseptit lähtevät leviämään viraalisti verkossa.

Zoomoozille oli tarkoituksenani tehdä myös uusi webbisivusto ja saada se toimimaan IE:llä, mutta näitä en kerennyt vuoden aikana tekemään.

Frontend Finland

Viime vuoden aikana saimme käyntiin myös Frontend Finland -yhteisön. Vauvan vuoksi en ole ehtinyt olemaan sen toiminnassa ja suunnittelussa mukana aivan niin paljon kuin olisin toivonut, mutta ainakin sain sen ensimmäiseen tilaisuuteen Ilmari Heikkisen puhumaan, joka piti erittäin mainion presiksen WebGL:stä.

Ensimmäisen tilaisuuden paikat tulivat täyteen muutamassa tunnissa ilman sen suurempaa mainostamista, mikä oli myönteinen yllätys.

(Frontend Finlandin seuraava tilaisuus on muuten ensi viikon keskiviikkona, 19.1., ja sinne lienee vielä paikkoja vapaana.)

Matkat

Talvella kävimme perhelomalla Tukholmassa, jonne menimme Siljan muumi-kyydillä. Saara oli liikuttunut tavatessaan Muumi-Mamman. Valitettavasti Tukholmassa Saara sai vatsataudin ja paluumatkalla laivalla meillä oli kalpea tytär mukana. Ehkä seuraava Tukholman-reissu onnistuisi terveenä?

Östermalmin Scandic Anglais oli oikein mukava hotelli. Valitettavasti emme päässeet nauttimaan sen aamiaispöydästä, vaan vietimme viikonloppuaamun vatsataudin vuoksi tukholmalaisen lastenlääkärin vastaanotolla.

Reissasimme huhtikuussa yhdessä Saaran ja Ansun kanssa Nizzassa, jossa majoituimme apartment-vuokrakämppään. Kuten kaikki majoitus, senkinkin olisi voinut varata aiemmin. Mutta kämppä oli oikein siisti ja sijainti keskustassa oli hyvä, mikä oli mukavaa.

Kesäkuussa kävimme veljien kanssa reissussa Englannissa. Alkuperäinen ajatus Lontoon-matkasta laajeni kattamaan myös muuta Englantia Lontoon liepeiltä ja yhdistelmä autoilua, junamatkustamista ja kaupunkilomaa toimi hyvin. Kävimme myös katsomassa Stonehengen, joka oli livenä melko vaatimaton. Kaiken lisäksi sitä piti katsoa kaukaa turistiaitausten takaa. Mutta onpahan nähty sekin.

Lontoossa majoituimme Premier Inn London City -hotellissa, koska viime tinkaan varatessa kaikki kiinnostavammat paikat olivat täynnä. Siellä tajusi, että Lontoossa olisi paras majoittua keskemmällä, sillä syrjäinen sijainti latistaa iltaohjelmaa.

Reissu huipentui Enron-näytelmään ja sen jälkeen ateriaan pienessä, höyryävässä kiinalaisravintolassa West Endissä.

Kesällä Saara pääsi temmeltämään mökeillä ja nauttimaan Saimaan järvirannassa pulikoinnista.

Työt

Vuosi alkoi jatkamalla hommia Futuricella. Tein siellä kevääseen samaa pitkää projektia, jota olin tehnyt jo vuoden 2009 puolella. Kesällä pääsin tekemään kiinnostavaa, pienempää Javascript/HTML5 -projektia. Syksyllä hommat jatkoivat PHP:n Symfony-frameworkin parissa.

Elokuun lopussa sain sähköpostia Janne Jalkaselta Thinglinkistä, joka kyseli, olisinko kiinnostunut tulemaan sinne töihin. Homma tuntui sen verran kiinnostavalta, että aloitin Thinglinkissä työni vuoden loppupuolella.

Futuricella ehdin olla melkein kaksi vuotta ja opin sinä aikana paljon ohjelmistokonsultoinnista. Futuricelta jäi myös mieleen hyvä lean-mentaliteetti ja pyrkimys keveisiin, joustaviin softankehitysmenetelmiin.

Viime vuoden saavutuksia Thinglinkissä oli saada Javascript-koodi parempaan kuntoon ja sille testikoodit, jotta sen ylläpito olisi jatkossakin helpompaa. Tämän lisäksi teimme Thinglinkille uutta webbisivua, jonka ensimmäinen versio tuli liveksi tammikuun puolella. Uuden sivun osalta pääsin aika vapaasti miettimään wireframea, työstämään graafista ilmettä Valveen graafikon työn pohjalta ja toteuttamaan sivustoa.

On kiinnostavaa myös miettiä, miten sivustoa saisi markkinoitua blogaajille ja kuinka tehdä etusivusta mahdollisimman houkutteleva kävijöille. Ehkä kävijämäärän kasvaessa pääsisi myös tekemään enemmän A/B-testausta.

Pienessä firmassa työskentelyssä on hyvät puolensa: Pääsee tekemään vähän kaikenlaista, saa aika paljon vapauksia siinä mitä tekee ja näkee nopeasti työnsä jäljet. Futurice oli erittäin hyvä työpaikka, mutta ainakin näin aluksi nautin pienen firman hommien monipuolisuudesta.

(Me ollaan myös rekryämässä muutamaa hyvää frontti- ja backend-kehittäjää mukaan ideoimaan ja toteuttamaan Thinglinkiä. Kiinnostaisiko sinua tai jotakuta tuttavaasi tulla meille töihin?)

Seuraavalle vuodelle…

…oikeastaan enemmän kaikkea samaa! Kiinnostavia töitä, perheen kanssa puuhaamista, matkustamista, harraste- ja yhteisötoimintaa sekä silloin tällöin kavereiden näkemistä. Näillä eväin on hyvä jatkaa eteenpäin!

3d-printattuja puhaltimia

7.1.2011 klo 20:43

Haluaisin tehdä 3d-printatun huilun.

Video 3d-printatusta poikkihuilusta oli kiinnostava (ks myös juttu huilusta). Siinä perinteinen poikkihuilu oli tehty kokonaan 3d-tulostaen — tosin ilmeisesti soittimen toiminnassa oli vielä pieniä ongelmia. Toteutus oli vähän tylsä siksi, että soitin pyrittiin tekemään niin samankaltaiseksi kuin perinteinen poikkihuilu, mutta toisaalta se osoittaa aika hyvin 3d-printtauksen mahdollisuudet. Esimerkiksi hiilikuituinen Matit-huilu (ks myös tämä kuva) voisi olla fiksummin 3d-printattavissa.

Voisi olla hauskaa kokeilla tehdä jotain aivan erilaista. Jo yksikappaleellisista huiluista voisi saada aika hyviä 3d-printtaamalla. Huilun putkea voisi taivuttaa kaarelle, tai tehdä siihen 3d:nä esimerkiksi ornamentteja. Tai voisi tehdä pan-huilun, joka printataan yhtenä kappaleena ja olisi esimerkiksi kuution muotoinen. Puhaltimet ovat siitä hyviä 3d-printattavia, että ne saa soimaan oli ne tehty mistä kovasta materiaalista tahansa.

Oman 3d-mallin saisi printattua ainakin i.materializen kautta. Soittimien prototyypitys olisi kyllä hankalaa ilman omaa 3d-printteriä.

Yksinkertainen puinen huilu (tai fife) voisi olla hyvä ensimmäinen kokeilu 3d-monistettavaksi. Tai sitten perulainen Quena-huilu (ks. myös Quena-huilujen esittely ja täällä kauniita Quenoja).

Hmm, ehkä pitäisi vaan tehdä Quenan 3d-malli :).

Hyvää koodia?

13.9.2010 klo 13:38

Voisi ajatella että koodareiden olisi hyvä lukea ohjelmakoodia. Mitäköhän mainittavanarvoisia koodinpätkiä olisi joihin kannattaisi tutustua? Tällaisia tuli mieleen, Coders at Work -kirjan inspiroimana:

Kuuhunlaskeutumiskoodia.

MacPaintin lähdekoodi.

Knuthin Adventure-pelin Literate-versio (sama pdf-muodossa).

Webkitin koodi, esimerkiksi affinimuunnokset.

Kymmenen ajatusta käyttäjädatan analysoinnista

24.8.2010 klo 12:34

Monesti web-palveluita kehitettäessä on tarvetta datan keräämiseen käyttäjistä ja sen analysointiin. Tässä kymmenen ajatusta verkkopalveluista kerätyn datan analysointiin liittyen.

  1. Kerättävä data riippuu siitä, mitä halutaan tutkia. Eli ennen datan keruuta olisi hyvä ymmärtää, mihin (liiketoiminta-) ongelmiin datan haluaisi vastaavan ja miten sitä saadaan hyödynnettyä. On vaikeaa tietää etukäteen mitä dataa tarvitaan. Siksi “kerätään kaikenlaista dataa tulevan varalle” -strategia on hankala.
  2. Jos voi vaikuttaa siihen, minkälaista dataa kerätään, kannattaa yrittää kerätä data algoritmeille helpossa muodossa. Eli mitä siistimpää dataa, sen parempi.
  3. Jo alkuvaiheessa kannattaa jo miettiä, miten integroinnit, datan siirto yms voitaisiin tehdä keskeisten järjestelmien välillä — integrointi ja automatisointi on yleensä varsinaista data-analyysiä työläämpää.
  4. Parasta olisi jos kerättävää dataa voisi säätää ja muuttaa samalla kun kehitetään tapoja hyödyntää sitä. Eli käytännössä vuorotellaan hypoteeseja ja testejä kunnes saadaan ymmärrys havaittavasta kohteesta.
  5. Nopeaan datan testailuun R:n kaltaiset työkalut ovat käteviä. Vasta myöhemmin kannattaa alkaa tehdä raskasta ohjelmakoodia Javalla tai PHP:llä – jos silloinkaan.
  6. Datalta kannattaa yrittää kysyä avoimia kysymyksiä, silloin voi oppia jotakin uutta. Eli vaikka etukäteen olisi mielessä, mitä datasta saattaisi löytyä, kannattaa datan esitysmuodot rakentaa niin, että työkaluja voi käyttää eri tavoin ja että niiden avulla voi löytää myös uusia ja yllättäviä yhteyksia asioiden välillä.
  7. Eri käyttäjät käyttävät palveluita eri tavoin. Siksi käyttjiä kannattaa segmentoida iän, sukupuolen, tulon tai käyttäjien käyttötapojen perusteella.
  8. Data on mielekästä yleensä vain jos sillä on vetailukohtia. Eli yksittäinen vaikkapa tietyn sivun tunnusluku ei ole yleensä kiinnostava, ellei sitä pääse vertaamaan muiden sivujen tai päivien vastaaviin lukuihin.
  9. Dataa voi monesti hyödyntää myös osana palvelua, näyttämällä sitä loppukäyttäjille yhteenvetojen, yleiskatsausten ja samanlaisten kohteiden muodossa.
  10. Joskus valmiit työkalut, kuten Google Analytics tai Tableau, ovat riittävän hyviä. Monesti kuitenkin analyysitarpeisiin on vaikea vastata puhtaasti valmiita työkaluja käyttämällä.

Design laadun mittarina

23.8.2010 klo 8:51

Nykyään jotkut amatööriblogit näyttävät todella laadukkailta hienojen, ilmaisten blogitemplatejen ansiosta. Ennen on tuotteiden laatua voinut yrittää päätellä designin perusteella, mutta nykymaailmassa tämä ei enää aina päde. Fiilis on vähän sama kuin jos paikallislehti olisi paremmin taitettu ja paremmalla paperilla kuin design-aikakauslehdet.

Valokuvioita

10.8.2010 klo 8:29

Voisi tehdä joukon pieniä itsenäisiä laatikoita jotka voivat lähettää valoa ja jotka syttyvät kun niiden lähellä palaa valoa. Tavoitteena olisi saada aikaan jonkinmoisia emergenttejä valokuvioita, esimerkiksi aaltoja.

Javascript/fronttitapahtuma Helsingissä

6.8.2010 klo 15:05

Perustettiin sitten Frontend Finland -yhteisö, jonka ensimmäinen, Javascript-aiheinen tilaisuus järjestetään 15.9. Lisätietoja Fronted Finlandin sivulta.

Franticin toimistolla on rajoitetusti tilaa, joten tilaisuuteen kannattaa ilmoittautua pikapuoliin. Ilmoittautuminen alkaa tänään.

Juoksuapplikaatio äänellä

2.8.2010 klo 15:51

Mietittiin tänään lounaalla Petrin kanssa, että juoksuapplikaatio joka kertoisi äänellä milloin olet alle tavoitekeskinopeuden (ja milloin yli) olisi kätevä. Tai vaihtoehtoisesti voisi juosta edellisiä juoksujasi vastaan, vanhojen autopelien tyyliin. Ja iPhonen ruudulla näkyisi tietysti kartta jossa juoksureitillä vertailujuoksijat olisivat erivärisiä palloja.

Päivitys 3.8.2010, GhostRace tuntuisi tekevän jotain tämänsuuntaista, mutta se ei ole myynnissä suomen App Storessa.

Tilastoa kansanedustajista

10.6.2010 klo 14:32

Mietin tänään, että voisi tehdä webbipalvelun, jossa seurattaisiin, miten kansandustajien verkkonäkyvyys kehittyy ajassa, Tuijan postauksen pohjalta.

Tai sitten voisi vaan kirjoittaa jännityskirjan tietokoneviruksista autoissa ja lentokoneissa.

Javascript-tilaisuus Helsingissä?

18.5.2010 klo 10:20

Pitäisikö järkätä jonkinmoinen Javascript-meetup Helsingissä? Porukka voisi demota projektejaan tai sitten muita Javascript-kirjastoja tms joita on tullut vastaan.

Zoomooz: zoomauskirjasto Javascriptillä

8.5.2010 klo 14:06

Sain vihdoinkin perjantaina FrozenRails-loppupresiksen aikana Zoomooz-Javascript-kirjaston sellaiseen kuntoon, että kehtasin laittaa sen verkkoon jakoon. Kirjaston avulla voi zoomata sivua niin, että tietty html-elementti näkyy täysilevyisenä selainikkunan keskellä. Se toimii Webkitissä ja Firefoxissa.

Koska Firefox ei tue vielä css-transformaatioiden animointia, vaati Firefox tuki jonkin verran javascript-magiaa. Muutenkin oli hauskaa pyöritellä matriiseja javascriptissä. Ihme kyllä, javascript-temput tuntuisivat myös toimivan! Lähdekoodista voi ihmetellä tarkemmin, mitä kaikkea tuolla tapahtuu.

Tämä on myös ensimmäinen open source -kirjasto, jonka olen tehnyt. On kiinnostavaa nähdä, olisiko tällä käyttöä myös jollekin toiselle.

PageRank logistiikassa

22.2.2010 klo 12:00

Viime viikkoiseen suositusjärjestelmäpostaukseen liittyen tuli vastaan kiinnostava blogikirjoitus Panjivasta, joka käyttää PageRankia logistiikan ja liiketoimintaverkkojen optimoinnissa.

Ajatus on vähän vastaava kuin lokaaleissa hauissa: hyödynnetään tietoa siitä, kuka ostaa keneltä ja sitä kautta hahmotetaan keskeiset (ja luotettavat) toimittajat. Mielenkiintoista myös, kuinka nettialgoritmit voivat vaikuttaa perinteisen teollisuuden yritysten toimintamalleihin.

Ammuskelu-urheilupeli

17.2.2010 klo 14:10

Päivän huono idea: voisi tehdä futispelin jossa voisi myös ammuskella. Mitä enemmän aseita, sen hitaampaa liikkuminen ja maalien tekeminen olisi. Konsepti yhdistäisi kaksi suosittua peliformaattia. Kai joku tällaisen on jo keksinyt toteuttaa, kun kerran Lingerie Football Leaguekin on olemassa, onhan?

good buys on software pirodr! 666