Jos sinulla on avointa dataa excelissä, sen julkaiseminen koneluettavassa muodossa on usein hankalaa, jos sinulla ei ole sopivaa webbipalvelua/tietokantaa olemassa. Tiedoston tallentaminen csv-muodossa tekee siitä helpommin koneluettavaa, mutta edelleen tiedosto pitää tallentaa webbipalvelimelle polkuun, joka pysyy takuuvarmasti aina samana.
Keksin jännän tavan tehdä taulukkomuotoisesta datasta koneluettavaa käyttämällä hyväksi Google Docs -palvelua.
Jos lähteenä on Excel-tiedosto, tee näin:
1) Siirry sivulle http://drive.google.com
2) Paina vasemmalla ylhäällä olevaa "Upload"-nappia
3) Valitse "Files" ja valitse levyltäsi haluttu excel-tiedosto
4) Paina "Start upload"
5) Avaa dokumentti ja valitse "File" / "Export to Google Spreadsheet"
Google Spreadsheetin julkaisu (esimerkki)
1) Tarkista dokumentin maa-asetukset, jotta desimaaliluvut ja päivämäärät tulevat oikein: "File" / "Spreadsheet settings"
2) Valitse "File" / "Publish to the web"
3) Paina "Start publishing"
4) Maalaa muodostettu webbilinkki ja ota leikepöydälle
5) Avaa uusi selainikkuna ja liitä webbilinkki
6) Muuta linkin lopussa oleva teksti "&output=html" muotoon "&output=csv" ja paina enter (esimerkki)
Nyt selaimesi lataa aineiston suoraan Googlen palvelimilta csv-muodossa! Ko. url viittaa tästälähin suoraan aineistoon. Voit halutessasi generoida linkille urlilyhennöksen esim. tinyurl tai bit.ly -palveluissa.
Jos esim. tekisit hirsipuupelin, voisi kysyttävistä sanoista tehdä Google Spreadsheetin, jota useampi ihminen voi editoida. Itse peli voisi hakea sanat näin julkaistusta csv-tiedostosta.
Yritin löytää Googlen käyttöehdoista pykäliä, onko näin tehdyille julkaisuille jotain rajoituksia esim. latausmäärien suhteen, mutta en löytänyt. Löydätkö sinä?
torstai 13. syyskuuta 2012
sunnuntai 10. kesäkuuta 2012
BlindSquare ja maailmanvalloitus
Pohdiskelin edellisen postauksen lopussa, mikä mahtaa olla kymmenes julkaistava sovellukseni, kun neljä oli työn alla. Tiesin kyllä jo silloin, mikä niistä on tärkein ja oli mukava saada BlindSquare valmiiksi.
Edellisessä Apps4Finland-kisassa hyvin pärjänneille Forum Virium järjesti Mobile AR devcampin, jossa sparrattiin lisätyn todellisuuden sovellusten ideoimiseen. En ehtinyt osallistua devcamppiin, mutta aloin kuitenkin ideoimaan, miten minä tekisin AR-softan (augmented reality = lisätty tai laajennetu todellisuus). Lähes kaikki AR-softat käyttävät videota, lähes kyllästykseen saakka. Koska olen tätä jo kokeillut, päätin aloittaa pohdinnan, kuinka audiota voisi käyttää lisäämään tietoa ympäristöstä.
Pieni sivupolku: Nykyään on muodikasta tehdä webbisivuja ns. Responsive Web Design -periaattein. Eräs tärkeä teema siinä on suunnitella webbisivu niin, että sen esitystapa skaalautuu automaattisesti eri kokoisille päätelaitteille. Tämä ajattelu helpottuu, kun alkaa miettimään sisältöjä "Mobile First"-ajattelulla: Mikä on kaikkein oleellisin sisältö, joka näytetään silloin, kun näyttötilaa on rajoitetusti käytössä. Myös Google on tehnyt palvelunsa jo pitkään näin.
Samaa teemaa mukaillen: Jos teen lähes pelkästään ääneen perustuvan sovelluksen, kuinka saan tiivistettyä viestiin vain oleellisen? Päästäkseni sisään tähän ajatukseen, päätin valita kohderyhmäksi sokeat. En tuntenut entuudestaan yhtään näkövammaista, joten aloin mielikuvittelemaan, miltä tuntuisi olla sokea. Aloin myös tutkimaan ympäristöäni seuraavalla ajatuksella: Mitä avointa dataa olisi saatavilla, minkä kertomisesta olisi hyötyä, jos et näe.
Opiskelin aihetta lukemalla näkövammaisten kirjoittamia blogeja ja kuuntelemalla podcasteja. Etenkin tästä Ronjan blogista opin paljon. Kuinka vaikeaa onkaan tulla uudelle paikkakunnalle, löytää ratikkapysäkki, hypätä oikean ratikan kyytiin ja tietää, missä pitäisi jäädä pois. Nopeasti keksin, että yhdistämällä GPS-tieto, muutama avoimen datan lähde ja puhesynteesi, olisi mahdollista tehdä jotain mitä kukaan ei ole vielä keksinyt tai ainakaan toteuttanut.
Puhesynteesiin lisensioin teknologiaa Ruotsista: Acapelalla on 26 kieltä tukeva puhesynteesi, joka tuottaa puheen suoraan iOS-laitteessa. Jos haluat kuunnella, kuinka kaunista puhetta se tuottaa, voit kokeilla sitä täällä: http://www.acapela-group.com/text-to-speech-interactive-demo.html
Varsinaiseksi datalähteeksi valitsin kaksi avoimen rajapinnan tarjoavaa palvelua: FourSquare ja OpenStreetMap (OSM). FourSquaresta haen lähistön paikat, niiden kategoriat sekä tiedot paikan suosiosta. Näillä tiedoilla saan kerrottua mm. mikä on halutulla säteellä suosituin kahvila. Sovellus myös kertoo etäisyyden ja suuntiman paikkoihin. Haluttaessa paikka voidaan ottaa seurantaan, jolloin BlindSquare opastaa perille.
Koodattuani sovellusta pari kuukautta "sokkona" vain blogeista opittuun perustuen, lähdin etsimään koekäyttäjiä. Ensimmäisenä aloittikin Ronja (kts. aiempi blogilinkki). Kun näin hänen hymynsä hänen kuullessaan ensi kertaa BlindSquaren tarinointia, tiesin, että tästä tulee hyvä :-)
Esittelin sovelluksen alfa-versiota myös Näkövammaisten keskusliitossa, josta sain myös positiivisen vastaanoton ja lisää testikäyttäjiä.
Löysin myös maailmalta testikäyttäjiä niin, että lopulta n. 10 henkilöä Suomesta, USA:sta ja Australiasta käytti sovellusta päivittäin, kertoen haasteista ja onnistumisista.
Tein myös käyttäjätutkimusta Ronjan kanssa: Olin kaupungilla sokeaoppaana, Ronjan käyttäessä BlindSquarea ja suorittaen erilaisia tehtäviä. Ronjalla oli iPad repussa, bone conduction kuulokkeet päässä, bluetooth-ohjain repun toisessa hihnassa ja GoPro-videokamera toisessa (harmi, ettei tästä ole valokuvaa :-). Kun ajoimme ratikalla kohden Kruunuhakaa, saimme ihmetteleviä katseita, kun sokea kertoi minulle mitä ympärillä "näkyy". Ronja näki myös asioita, joita me muut emme nähneet, koska säde oli säädetty vähän laajemmalle kuin mitä lähistön talot meiltä muilta peitti.
Käyttäjätestien ja saatujen palautteiden pohjalta BlindSquare oppi uusia asioita: Jotta voi muodostaa kartan ympäristöstään, pitää tietää tiet ja risteykset. Tätä tarkoitusta varten otin käyttöön OpenStreetMapin. Jos käyttäjä kulkee jalan, luetaan silloin tällöin lähimpiä risteyksiä tyyliin "Lähin risteys Aleksanterinkatu ja Keskuskatu, 30 metriä suunnassa kello 2". Hypättäessä bussiin sovellus vaihtaa risteysautomatiikan moodiin, jossa haetaan lähistön risteyksiä, mutta luetaan se vasta kun bussi kääntyy. Tämä on ensimmäinen apu aiemmin maintsemaani ongelmaan, mistä voi tietää, milloin pitäisi jäädä kyydistä pois.
Sovellus julkaistiin toukokuun lopulla ja sen suosio yllätti minut. About Foursquare -palvelu kirjoitti pienen jutun, minkä jälkeen Twitter alkoi lämpenemään. Sain sen jälkeen seuraavan twiitin: "@ilkkapirttimaa Hello. Are you a BlindSquare dev? @Mashable would love to chat with you about the app. Email joann ät mashable.com Thanks!!"
Tämän saatuani tuli kiire. Onneksi Ronja lupautui kaiken muun lisäksi myös malliksi. Kävimme ottamassa muutaman valokuvan käyttötilanteesta ja sovin Mashablen kanssa Skype-haastattelusta.
Pari päivää tästä Mashable julkaisi tämän artikkelin: http://mashable.com/2012/06/01/blindsquare-app/
Artikkelin julkaisun jälkeen Twitter lämpeni toden teolla. Minun mittausvälineet lakkasivat toimimasta 100k twiitin jälkeen. Olen löytänyt artikkelin pohjalta tehtyjä käännöksiä mm. seuraavilla kielillä: Venäjä, saksa, italia, thai, japani, hollanti ranska, indonesia, portugali...
Keskittyminen tiukasti valittuun kohderyhmään oli hyvä ratkaisu. Vain muutama viikko App Storessa ja sovellus on löytänyt tyytyväisiä käyttäjiä jo maailman jokaiselta mantereelta!
Pitkä postaus, mutta mukaan mahtuu vielä muutama erikoiskiitos: Kiitos Mirva, Ronja, Heikki, Iiro, Stefan, Johanna, Jaana, David, Austin, Mike, Elena, Giovanni, Viljami, Sari, Erkka, Toni ja Jyrki!
Kuvassa: Vasemmalla minä, oikealla Ronja. Kummallakin on päässään Bone Conduction -kuulokkeet, Ronjalla on kepissä bluetooth-ohjain, jolla ohjataan taskussa olevaa iPhonea tai repussa olevaa iPadia. Kuvan otti Viljami Pirttimaa.
Sovellus löytyy AppStoresta ja kyllä sitä saa näkevätkin käyttää!
Edellisessä Apps4Finland-kisassa hyvin pärjänneille Forum Virium järjesti Mobile AR devcampin, jossa sparrattiin lisätyn todellisuuden sovellusten ideoimiseen. En ehtinyt osallistua devcamppiin, mutta aloin kuitenkin ideoimaan, miten minä tekisin AR-softan (augmented reality = lisätty tai laajennetu todellisuus). Lähes kaikki AR-softat käyttävät videota, lähes kyllästykseen saakka. Koska olen tätä jo kokeillut, päätin aloittaa pohdinnan, kuinka audiota voisi käyttää lisäämään tietoa ympäristöstä.
Pieni sivupolku: Nykyään on muodikasta tehdä webbisivuja ns. Responsive Web Design -periaattein. Eräs tärkeä teema siinä on suunnitella webbisivu niin, että sen esitystapa skaalautuu automaattisesti eri kokoisille päätelaitteille. Tämä ajattelu helpottuu, kun alkaa miettimään sisältöjä "Mobile First"-ajattelulla: Mikä on kaikkein oleellisin sisältö, joka näytetään silloin, kun näyttötilaa on rajoitetusti käytössä. Myös Google on tehnyt palvelunsa jo pitkään näin.
Samaa teemaa mukaillen: Jos teen lähes pelkästään ääneen perustuvan sovelluksen, kuinka saan tiivistettyä viestiin vain oleellisen? Päästäkseni sisään tähän ajatukseen, päätin valita kohderyhmäksi sokeat. En tuntenut entuudestaan yhtään näkövammaista, joten aloin mielikuvittelemaan, miltä tuntuisi olla sokea. Aloin myös tutkimaan ympäristöäni seuraavalla ajatuksella: Mitä avointa dataa olisi saatavilla, minkä kertomisesta olisi hyötyä, jos et näe.
Opiskelin aihetta lukemalla näkövammaisten kirjoittamia blogeja ja kuuntelemalla podcasteja. Etenkin tästä Ronjan blogista opin paljon. Kuinka vaikeaa onkaan tulla uudelle paikkakunnalle, löytää ratikkapysäkki, hypätä oikean ratikan kyytiin ja tietää, missä pitäisi jäädä pois. Nopeasti keksin, että yhdistämällä GPS-tieto, muutama avoimen datan lähde ja puhesynteesi, olisi mahdollista tehdä jotain mitä kukaan ei ole vielä keksinyt tai ainakaan toteuttanut.
Puhesynteesiin lisensioin teknologiaa Ruotsista: Acapelalla on 26 kieltä tukeva puhesynteesi, joka tuottaa puheen suoraan iOS-laitteessa. Jos haluat kuunnella, kuinka kaunista puhetta se tuottaa, voit kokeilla sitä täällä: http://www.acapela-group.com/text-to-speech-interactive-demo.html
Varsinaiseksi datalähteeksi valitsin kaksi avoimen rajapinnan tarjoavaa palvelua: FourSquare ja OpenStreetMap (OSM). FourSquaresta haen lähistön paikat, niiden kategoriat sekä tiedot paikan suosiosta. Näillä tiedoilla saan kerrottua mm. mikä on halutulla säteellä suosituin kahvila. Sovellus myös kertoo etäisyyden ja suuntiman paikkoihin. Haluttaessa paikka voidaan ottaa seurantaan, jolloin BlindSquare opastaa perille.
Koodattuani sovellusta pari kuukautta "sokkona" vain blogeista opittuun perustuen, lähdin etsimään koekäyttäjiä. Ensimmäisenä aloittikin Ronja (kts. aiempi blogilinkki). Kun näin hänen hymynsä hänen kuullessaan ensi kertaa BlindSquaren tarinointia, tiesin, että tästä tulee hyvä :-)
Esittelin sovelluksen alfa-versiota myös Näkövammaisten keskusliitossa, josta sain myös positiivisen vastaanoton ja lisää testikäyttäjiä.
Löysin myös maailmalta testikäyttäjiä niin, että lopulta n. 10 henkilöä Suomesta, USA:sta ja Australiasta käytti sovellusta päivittäin, kertoen haasteista ja onnistumisista.
Tein myös käyttäjätutkimusta Ronjan kanssa: Olin kaupungilla sokeaoppaana, Ronjan käyttäessä BlindSquarea ja suorittaen erilaisia tehtäviä. Ronjalla oli iPad repussa, bone conduction kuulokkeet päässä, bluetooth-ohjain repun toisessa hihnassa ja GoPro-videokamera toisessa (harmi, ettei tästä ole valokuvaa :-). Kun ajoimme ratikalla kohden Kruunuhakaa, saimme ihmetteleviä katseita, kun sokea kertoi minulle mitä ympärillä "näkyy". Ronja näki myös asioita, joita me muut emme nähneet, koska säde oli säädetty vähän laajemmalle kuin mitä lähistön talot meiltä muilta peitti.
Käyttäjätestien ja saatujen palautteiden pohjalta BlindSquare oppi uusia asioita: Jotta voi muodostaa kartan ympäristöstään, pitää tietää tiet ja risteykset. Tätä tarkoitusta varten otin käyttöön OpenStreetMapin. Jos käyttäjä kulkee jalan, luetaan silloin tällöin lähimpiä risteyksiä tyyliin "Lähin risteys Aleksanterinkatu ja Keskuskatu, 30 metriä suunnassa kello 2". Hypättäessä bussiin sovellus vaihtaa risteysautomatiikan moodiin, jossa haetaan lähistön risteyksiä, mutta luetaan se vasta kun bussi kääntyy. Tämä on ensimmäinen apu aiemmin maintsemaani ongelmaan, mistä voi tietää, milloin pitäisi jäädä kyydistä pois.
Sovellus julkaistiin toukokuun lopulla ja sen suosio yllätti minut. About Foursquare -palvelu kirjoitti pienen jutun, minkä jälkeen Twitter alkoi lämpenemään. Sain sen jälkeen seuraavan twiitin: "@ilkkapirttimaa Hello. Are you a BlindSquare dev? @Mashable would love to chat with you about the app. Email joann ät mashable.com Thanks!!"
Tämän saatuani tuli kiire. Onneksi Ronja lupautui kaiken muun lisäksi myös malliksi. Kävimme ottamassa muutaman valokuvan käyttötilanteesta ja sovin Mashablen kanssa Skype-haastattelusta.
Pari päivää tästä Mashable julkaisi tämän artikkelin: http://mashable.com/2012/06/01/blindsquare-app/
Artikkelin julkaisun jälkeen Twitter lämpeni toden teolla. Minun mittausvälineet lakkasivat toimimasta 100k twiitin jälkeen. Olen löytänyt artikkelin pohjalta tehtyjä käännöksiä mm. seuraavilla kielillä: Venäjä, saksa, italia, thai, japani, hollanti ranska, indonesia, portugali...Keskittyminen tiukasti valittuun kohderyhmään oli hyvä ratkaisu. Vain muutama viikko App Storessa ja sovellus on löytänyt tyytyväisiä käyttäjiä jo maailman jokaiselta mantereelta!
Pitkä postaus, mutta mukaan mahtuu vielä muutama erikoiskiitos: Kiitos Mirva, Ronja, Heikki, Iiro, Stefan, Johanna, Jaana, David, Austin, Mike, Elena, Giovanni, Viljami, Sari, Erkka, Toni ja Jyrki!
Kuvassa: Vasemmalla minä, oikealla Ronja. Kummallakin on päässään Bone Conduction -kuulokkeet, Ronjalla on kepissä bluetooth-ohjain, jolla ohjataan taskussa olevaa iPhonea tai repussa olevaa iPadia. Kuvan otti Viljami Pirttimaa.
Sovellus löytyy AppStoresta ja kyllä sitä saa näkevätkin käyttää!
lauantai 21. huhtikuuta 2012
3 vuotta iOS-devaajana
Noin kolme vuotta sitten päätin opiskella, kuinka kehitetään sovelluksia iPhonelle. En tuntenut ketään muuta iOS-kehittäjää, joten paras apu opiskelussa oli Google, muutama kirja ja “iTunes U”:sta löytyvä Standfordin yliopiston iOS-kurssivideo “iPhone Application Programming”. Kirjoista parhaaksi on osoittautunut Erica Sadunin teos nimeltä The iPhone Developer’s Cookbook. Kirjan vanhan painoksen esimerkkikoodit löytyvät GitHubista.
Alussa vaikeinta oli ymmärtää Objective-C:n ideologia. Kirjoittelin muistiota alkuvaikeuksista tänne. Toisaalta aloittaessani Applella oli vielä kehitystyökalut varsin levällään: Silloin XCode ei sisältänyt sisäänrakennettua käyttöliittymäeditoria (Interface Builder), versiohallintaa saatikka palikkaa, jolla sovellukset lähetetään App Storeen. Nyt kehitysympäristössä on kaikki tarvittava integroituna nättiin pakettiin. Jopa yksikkötestaus ja sovellusten instrumentointi tarkempia analysointeja varten löytyy yhdestä työkalusta.
Matkan varrella olemme saaneet myös useita uusia laitteita: iPadit ja muutama sukupolvi iPhoneja. Myös iOS on kehittynyt hurjasti. On mukavaa, kuinka helpoksi koodarille on tehty kaikkien laitemallien tukeminen. Käytännössä mikään sovellukseni ei ole mennyt rikki, kun on tullut uusia laitteita tai uusia iOS-versioita. Kiitos Apple, että arvostat koodareita ja pidät homman läjässä.
Kuten linkkaamastani päiväkirjasta voi päätellä, alku oli hankalaa. Ensimmäisen sovelluksen (Trendy Hangman) valmistuminen App Storeen kesti 8 kuukautta. Sen jälkeen sovelluksia on syntynyt nopeammin, App Storessa niitä on jo 9.
TrendyHangman oli ensimmäinen sovellukseni. Päätin tehdä hirsipuun, johon sanat haetaan netin erilaisista trendipalvelimista. Arvattava sana on sellainen, joka trendaa juuri twitterissä tai on suosittu hakusana Googlessa. Arvailun jälkeen pääset lukemaan netistä, miksi sanan on suosittu juuri nyt. Tähän sovellukseen tyttäreni (silloin 11-V) piirsi kuvituksen, poikani (14-V) mallinsi nappulat ja tuttava sävelsi musiikit.
Toinen sovellukseni Kyyti valmistui jo alle kahden kuukauden iltapuhteina. Osallistuin sillä HSL:n mobiilikisaan, jossa se voitti yleisöäänestyksen. Sillä on nyt jo yli 30000 käyttäjää. Uusi versio on tekeillä, jossa on mukana mm. livejunat ja mahdollisesti lisätyn todellisuuden kameranäyttö.
Apps4Finland 2011 -kisaan osallistuin neljällä sovelluksella. Niistä Kierrätys tuli sovellussarjan kakkoseksi ja YLE Hirsipuu voitti YLE:n erikoispalkinnon. Näistä jälkimmäinen käyttää TrendyHangmaniin tehtyä pelimoottoria. YLE:stä sanojen haun toteutin livenä verkossa, kirjoitin tästä code casting-konseptista aiemmin.
Ehkäpä hienoimmat sovellukseni tein omista tarpeista lähtien. Koska en käytä itse viikkonumeroita, koin hankalana, kun joku kertoi asian tapahtuvan sillä ja sillä viikolla. Viikko-sovellus päivittää viikkonumeroa iPhonen ja iPadin kotisivulla ja näyttää lisäksi pyhät ja liputuspäivät. Huomasin, että monikaan iPhonen käyttäjä ei osaa järjestellä sovellusikoneita, joten sisällytin sovellukseen myös opetusvideon.
Viimeisin sovellus Parkkikiekko hälyttää, kun parkkiaika on loppumassa ja opastaa takaisin autolle. Tämä oli myös ensimmäinen sovellus, jossa opettelin lokalisoinnin. Samainen sovellus tunnistaa puhelimen kielen ja toimii suomeksi, englanniksi, ruotsiksi tai saksaksi. Ruotsin App Storesta sen löytää nimellä P-skiva.
Huh! Paljon on tullut siis opittua 3 vuodessa. Nyt työn alla on 4 sovellusta, mikähän niistä valmistuu seuraavaksi :-)
Alussa vaikeinta oli ymmärtää Objective-C:n ideologia. Kirjoittelin muistiota alkuvaikeuksista tänne. Toisaalta aloittaessani Applella oli vielä kehitystyökalut varsin levällään: Silloin XCode ei sisältänyt sisäänrakennettua käyttöliittymäeditoria (Interface Builder), versiohallintaa saatikka palikkaa, jolla sovellukset lähetetään App Storeen. Nyt kehitysympäristössä on kaikki tarvittava integroituna nättiin pakettiin. Jopa yksikkötestaus ja sovellusten instrumentointi tarkempia analysointeja varten löytyy yhdestä työkalusta.
Matkan varrella olemme saaneet myös useita uusia laitteita: iPadit ja muutama sukupolvi iPhoneja. Myös iOS on kehittynyt hurjasti. On mukavaa, kuinka helpoksi koodarille on tehty kaikkien laitemallien tukeminen. Käytännössä mikään sovellukseni ei ole mennyt rikki, kun on tullut uusia laitteita tai uusia iOS-versioita. Kiitos Apple, että arvostat koodareita ja pidät homman läjässä.
Kuten linkkaamastani päiväkirjasta voi päätellä, alku oli hankalaa. Ensimmäisen sovelluksen (Trendy Hangman) valmistuminen App Storeen kesti 8 kuukautta. Sen jälkeen sovelluksia on syntynyt nopeammin, App Storessa niitä on jo 9.
TrendyHangman oli ensimmäinen sovellukseni. Päätin tehdä hirsipuun, johon sanat haetaan netin erilaisista trendipalvelimista. Arvattava sana on sellainen, joka trendaa juuri twitterissä tai on suosittu hakusana Googlessa. Arvailun jälkeen pääset lukemaan netistä, miksi sanan on suosittu juuri nyt. Tähän sovellukseen tyttäreni (silloin 11-V) piirsi kuvituksen, poikani (14-V) mallinsi nappulat ja tuttava sävelsi musiikit.
Toinen sovellukseni Kyyti valmistui jo alle kahden kuukauden iltapuhteina. Osallistuin sillä HSL:n mobiilikisaan, jossa se voitti yleisöäänestyksen. Sillä on nyt jo yli 30000 käyttäjää. Uusi versio on tekeillä, jossa on mukana mm. livejunat ja mahdollisesti lisätyn todellisuuden kameranäyttö.
Apps4Finland 2011 -kisaan osallistuin neljällä sovelluksella. Niistä Kierrätys tuli sovellussarjan kakkoseksi ja YLE Hirsipuu voitti YLE:n erikoispalkinnon. Näistä jälkimmäinen käyttää TrendyHangmaniin tehtyä pelimoottoria. YLE:stä sanojen haun toteutin livenä verkossa, kirjoitin tästä code casting-konseptista aiemmin.
Ehkäpä hienoimmat sovellukseni tein omista tarpeista lähtien. Koska en käytä itse viikkonumeroita, koin hankalana, kun joku kertoi asian tapahtuvan sillä ja sillä viikolla. Viikko-sovellus päivittää viikkonumeroa iPhonen ja iPadin kotisivulla ja näyttää lisäksi pyhät ja liputuspäivät. Huomasin, että monikaan iPhonen käyttäjä ei osaa järjestellä sovellusikoneita, joten sisällytin sovellukseen myös opetusvideon.
Viimeisin sovellus Parkkikiekko hälyttää, kun parkkiaika on loppumassa ja opastaa takaisin autolle. Tämä oli myös ensimmäinen sovellus, jossa opettelin lokalisoinnin. Samainen sovellus tunnistaa puhelimen kielen ja toimii suomeksi, englanniksi, ruotsiksi tai saksaksi. Ruotsin App Storesta sen löytää nimellä P-skiva.
Huh! Paljon on tullut siis opittua 3 vuodessa. Nyt työn alla on 4 sovellusta, mikähän niistä valmistuu seuraavaksi :-)
torstai 10. marraskuuta 2011
iPhone ja iPadin yrityskäyttö
App Storesta löytyy jo yli 450 000 sovellusta. Suuri osa näistä ovat kuluttajasovelluksia, mutta toimiiko iPhone tai iPad yrityskäytössä?
Helpoimmin yrityskäyttö onnistuu, jos käyttää jo entuudestaan pilvipalveluita: Jos sähköpostit ja kalenterit on Gmailissa, puhelin toimii oivana päätelaitteena tähän tietoon.
Toinen välimalli kevytintegraatiolle on tehdä iPadissa/iPhonessa Evernote-muistiinpanoja, jolloin evernoten tiedot ovat luettavissa työkoneella Evernoten www-palvelusta. Suosittelen tällöin Evernote Premiumia, jolloin mukaan tulee korotettu tietoturvataso ja mm. OCR-tekstintunnistus/tekstihaku valokuvatuista käyntikorteista jne.
Varsinaiseen oikeaan yrityskäyttöön iOS-laitteista löytyy seuraavia ominaisuuksia:
Helpoimmin yrityskäyttö onnistuu, jos käyttää jo entuudestaan pilvipalveluita: Jos sähköpostit ja kalenterit on Gmailissa, puhelin toimii oivana päätelaitteena tähän tietoon.
Toinen välimalli kevytintegraatiolle on tehdä iPadissa/iPhonessa Evernote-muistiinpanoja, jolloin evernoten tiedot ovat luettavissa työkoneella Evernoten www-palvelusta. Suosittelen tällöin Evernote Premiumia, jolloin mukaan tulee korotettu tietoturvataso ja mm. OCR-tekstintunnistus/tekstihaku valokuvatuista käyntikorteista jne.
Varsinaiseen oikeaan yrityskäyttöön iOS-laitteista löytyy seuraavia ominaisuuksia:
- Mahdollisuus yritys-VPN:n käyttöön (mm. Cisco ja Juniper)
- Laitteistotason muistikryptaus (AES-256) ja avaimen etäpoisto
- Alfanumeerinen lukituskoodi ja muistikryptauksen avaimen poisto liian monen väärän arvauksen jälkeen
- Natiivi Exchange-sähköpostituki
- Keskitetty laitehallinta
- Yrityksen WLAN-verkkojen tuki (WPA2 Enterprise)
- Yritysasetusten asennus yhden XML-tiedoston avulla
- Yrityksen omien sovellusten jakelu laitteisiin sisäverkon WIFIn yli
keskiviikko 14. syyskuuta 2011
Koodari on tulevaisuuden rokkitähti
Jos koodi on tulevaisuuden laki, koodari on tulevaisuuden rokkitähti!
Kun aloitin itse koodaamisen 13 vuotiaana, maine bittinikkarina ja nörttinä oli taattu. Sittemmin koodauksesta on tullut hivenen helpommin “suuren yleisön” ymmärtämää ja arvostamaa, yksi ammattikunta muiden joukossa. Meillä on muurareita, maalareita ja sitten niitä koodareita. Niitä, jotka tekevät niitä tietsikkajuttuja.
Suomessa on vihdoin näkyvissä datan avautuminen. Olen itsekin osallistunut mm. Apps4Finland-kisaan, jossa kehitellään uusia ideoita ja sovelluksia avoimen datan rajapintoja hyödyntäen. Datan avautuminen on kuitenkin vain mahdollistaja. Varsinaiset palvelut syntyvät koodarien käsissä: Koodari on artisti, jota tarvitaan datan esittämiseen tavalla, joka palvelee suurta yleisöä. Kuten hyvällä artistilla, myös koodarilla on ympärillään jengi, jolla uusia tuotoksia syntyy nopeasti ja laadukkaasti. SIlloin puhutaan mm. määrittelijöistä, graafikoista, testaajista, markkinoinnista jne.
Minkälaista se koodarin arki sitten on? Parhaimmillaan se on taidetta, jossa sekä lopputuote, ratkaisumalli ja ohjelmakoodi on toimivaa, jonkin silmissä jopa kaunista. Hyvin kirjoitettu koodi on myös ylläpidettävää: Vaikka sovelluksessa olisi virhe, kauniista koodista se on helppo korjata.
Vaikka olen IT-työläinen, en omassa työssäni ole enää koodari. Se on kuitenkin edelleen rakas harrastus, jonka kautta haluan oppia uusia asioita. Viimeisen 3 vuoden aikana olen opetellut koodaamaan iPhone ja iPad -laitteille. Käytännössä tämä on tarkoittanut myös kokonaan uuden ohjelmointikielen, Objective-C:n opiskelua. Pieni koodauspäiväkirja löytyy täältä.
Mutta siitä rokkitähteydestä vielä. Kukapa nostaisi koodarin esiintymislavalle, jos ei koodari itse. Olen päättänyt avata koodausta ja tulen järjestämään koodaussession netissä, jota kuka tahansa voi tulla seuraamaan. Silloin koodaan ainakin yhtä peliä, jolla tulen osallistumaan tämän vuoden Apps4Finland-kisaan. Käytän mikkiä, videokameraa ja näytönjako-ohjelmaa siten, että Google+ Hangoutissa 9 henkilöä voivat osallistua seuraamaan koodarin työtä. Otan myös livenä vastaan kehitysideoita ja voin myös esitellä, miltä näyttää iPhone-kehitystyökalut ja koodi, jota olen aiemmin kirjoittanut.
Jos olet kiinnostunut saamaan lisätietoa koodaussession ajankohdasta ja osallistumisohjeita, voit jättää sähköpostiosoitteesi minulle tämän lomakkeen kautta.
edit: Tilaisuus sujui hienosti. Livekatsojia oli parhaimmillaan yli 100. Koodatessa sattui ja tapahtui paljon, mm.
Kun aloitin itse koodaamisen 13 vuotiaana, maine bittinikkarina ja nörttinä oli taattu. Sittemmin koodauksesta on tullut hivenen helpommin “suuren yleisön” ymmärtämää ja arvostamaa, yksi ammattikunta muiden joukossa. Meillä on muurareita, maalareita ja sitten niitä koodareita. Niitä, jotka tekevät niitä tietsikkajuttuja.
Suomessa on vihdoin näkyvissä datan avautuminen. Olen itsekin osallistunut mm. Apps4Finland-kisaan, jossa kehitellään uusia ideoita ja sovelluksia avoimen datan rajapintoja hyödyntäen. Datan avautuminen on kuitenkin vain mahdollistaja. Varsinaiset palvelut syntyvät koodarien käsissä: Koodari on artisti, jota tarvitaan datan esittämiseen tavalla, joka palvelee suurta yleisöä. Kuten hyvällä artistilla, myös koodarilla on ympärillään jengi, jolla uusia tuotoksia syntyy nopeasti ja laadukkaasti. SIlloin puhutaan mm. määrittelijöistä, graafikoista, testaajista, markkinoinnista jne.
Minkälaista se koodarin arki sitten on? Parhaimmillaan se on taidetta, jossa sekä lopputuote, ratkaisumalli ja ohjelmakoodi on toimivaa, jonkin silmissä jopa kaunista. Hyvin kirjoitettu koodi on myös ylläpidettävää: Vaikka sovelluksessa olisi virhe, kauniista koodista se on helppo korjata.
Vaikka olen IT-työläinen, en omassa työssäni ole enää koodari. Se on kuitenkin edelleen rakas harrastus, jonka kautta haluan oppia uusia asioita. Viimeisen 3 vuoden aikana olen opetellut koodaamaan iPhone ja iPad -laitteille. Käytännössä tämä on tarkoittanut myös kokonaan uuden ohjelmointikielen, Objective-C:n opiskelua. Pieni koodauspäiväkirja löytyy täältä.
Mutta siitä rokkitähteydestä vielä. Kukapa nostaisi koodarin esiintymislavalle, jos ei koodari itse. Olen päättänyt avata koodausta ja tulen järjestämään koodaussession netissä, jota kuka tahansa voi tulla seuraamaan. Silloin koodaan ainakin yhtä peliä, jolla tulen osallistumaan tämän vuoden Apps4Finland-kisaan. Käytän mikkiä, videokameraa ja näytönjako-ohjelmaa siten, että Google+ Hangoutissa 9 henkilöä voivat osallistua seuraamaan koodarin työtä. Otan myös livenä vastaan kehitysideoita ja voin myös esitellä, miltä näyttää iPhone-kehitystyökalut ja koodi, jota olen aiemmin kirjoittanut.
Jos olet kiinnostunut saamaan lisätietoa koodaussession ajankohdasta ja osallistumisohjeita, voit jättää sähköpostiosoitteesi minulle tämän lomakkeen kautta.
edit: Tilaisuus sujui hienosti. Livekatsojia oli parhaimmillaan yli 100. Koodatessa sattui ja tapahtui paljon, mm.
- Infra petti (adsl-purkki savusi ja kävin hakemassa uuden)
- Rikoin projektin ja sen jälkeen palauteltiin dataa versiohallinnasta ja NAS-backupeilta
- Vanha koodi hajosi datassa olevan virheen takia. Tähän toteutettiin ratkaisu, jolla koodi korjattiin niin, että ei rikota muita projekteja ja selvitään vastaavasta virhetilanteesta
Koodaus aloitettin klo 14 ja puolen yön jälkeen projekti oli kutakuinkin valmis. Lopputuote voitti Apps4Finland 2011:n YLE-erikoispalkinnon! Kiitos myös kaikille teille, jotka osallistuitte ideointiin ja autoitte koodauksessa!
Löydät koko päivän Bambuser-kanavaltani. Välillä video pätki, joten se on useassa osassa. Ensimmäinen osa löytyy täältä.
lauantai 18. kesäkuuta 2011
Muovikuorisen Macbookin DIY-korjaus
Ostin n. 1,5 vuotta sitten 13" Macbookin. Kyseinen muovikuorinen malli on toiminut hienosti, mutta sen pohjassa oleva kumi alkoi irvistää puolisen vuotta sitten. Apple onkin myöntänyt, että kyseessä on tyyppivika joka korjataan veloituksetta.
Tässä videossa näet, kuinka korjauksen voi tehdä myös itse, jos ei halua viedä laitetta huoltoon.
Lisävinkki kaikille läppärin omistajille: Siltä varalta, että joskus joudut viemään laitteesi huoltoon, tee jo nyt siihen erillinen huolto-tunnus, jonka salasanan voit antaa huollolle oman salasanasi antamisen sijaan.
Tässä videossa näet, kuinka korjauksen voi tehdä myös itse, jos ei halua viedä laitetta huoltoon.
Lisävinkki kaikille läppärin omistajille: Siltä varalta, että joskus joudut viemään laitteesi huoltoon, tee jo nyt siihen erillinen huolto-tunnus, jonka salasanan voit antaa huollolle oman salasanasi antamisen sijaan.
lauantai 27. marraskuuta 2010
Sirukortinlukijoiden käytettämättömyys
Luulin jo osaavani käyttää sirukortinlukijoita, mutta toisin kävi. Yllättäen vain huomasin, että homma ei enää toimikaan. Syyksi paljastui Sagem-merkkisen lukijaan tehty softapäivitys.
Lähtökohtaisestihan sirukortilla maksaminen on suoraviivainen prosessi: Valitaan debet/credit + annetaan pin-koodi. Harmi, että jokaisella laitevalmistajalla on oma näkemyksensä siitä, miten tämä pitää tehdä ja kuluttajaparat joutuvat opettelemaan nämä kaikki.
Olen törmännyt seuraaviin variaatioihin debet/credit-valinnassa:
Palataanpa tähän Sagemin päivitykseen, joka edustaa vaihtoehtoa 2. Arvaan, että heille on tullut palautetta, että miksei debet/credit-vaintojen edessä voi olla numeroita. Ovat nyt sitten lisänneetkin, eli näytöllä on "1 Credit" ja toisella rivillä "2 Debet". Harmi vain, numerolla ei voi tehdä valintaa!! Auts!
Eräälle kauppiaalle tätä ihmettelin ja hän kertoi, että käyttöliittymä muuttui softapäivityksessä, jossa toki moni asia oli muuttunut parempaan suuntaan, mutta tämä käsittämätön ominaisuus on aiheuttanut ongelmia myös muille.
Lähtökohtaisestihan sirukortilla maksaminen on suoraviivainen prosessi: Valitaan debet/credit + annetaan pin-koodi. Harmi, että jokaisella laitevalmistajalla on oma näkemyksensä siitä, miten tämä pitää tehdä ja kuluttajaparat joutuvat opettelemaan nämä kaikki.
Olen törmännyt seuraaviin variaatioihin debet/credit-valinnassa:
- Valinta tehdään numerolla 1 tai 2 (tykkään)
- Valinta tehdään nuoli ylös/alas + hyväksyntänappi
- Näytöllä näkyy Debet tai Credit, vieressä on nappi, jolla vaihdetaan, toinen jolla hyväksytään. Tässä haasteena on arvata, tarkoittaako teksti tehtyä valintaa vai nappulan tekstiä
- Näytöllä näkyy Debet ja Credit, kummallekin on oma nappi joka tekee valinnan (tykkään)
Palataanpa tähän Sagemin päivitykseen, joka edustaa vaihtoehtoa 2. Arvaan, että heille on tullut palautetta, että miksei debet/credit-vaintojen edessä voi olla numeroita. Ovat nyt sitten lisänneetkin, eli näytöllä on "1 Credit" ja toisella rivillä "2 Debet". Harmi vain, numerolla ei voi tehdä valintaa!! Auts!
Eräälle kauppiaalle tätä ihmettelin ja hän kertoi, että käyttöliittymä muuttui softapäivityksessä, jossa toki moni asia oli muuttunut parempaan suuntaan, mutta tämä käsittämätön ominaisuus on aiheuttanut ongelmia myös muille.
Tilaa:
Blogitekstit (Atom)


