Liikuntasuoritusten seurantatyökalut: SportsTracker

Harrastan vapaa-ajallani tietotekniikan lisäksi myös liikuntaa, kesäisin maastopyöräilyä ja uintia ja talvisin lisäksi hiihtämistä. Toki aina ajoittain myös muitakin lajeja, kuten sulkapalloa, rullaluistelua, laskettelua ja lumilautailua. Koska tykkään seurata liikuntasuorituksiani, pidän taulukkolaskentaohjelman avulla taulukkoa mitä urheilin, missä, milloin ja kuinka paljon. Tilastoja onkin kertynyt jo useilta vuosilta.

Luin aiemmin keväällä Linux.com -sivustolla olleen esittelyn kahdesta avoimen lähdekoodin projektista, joilla voi pitää kirjaa urheilusuorituksista ja piirtää käppyröitä ja tilastotietoja. Jotenkin ei ole koskaan aikaisemmin tullut mieleen etsiä jotain ohjelmaa liikuntasuoritusten seurantaan, sillä omat taulukoinnit ovat olleet ja ovat edelleen ihan kätevä ja riittävä keino. Urheilusuoritusten seurantaan esiteltiin kaksi eri ohjelmaa: SportsTracker ja Pytrainer, josta kenties myöhemmin enemmän.

SportsTracker
SportsTracker on urheilusuoritusten seurantaohjelmisto, joka toimii käyttäjäystävällisesti sekä Linuxissa että Windowsissa. Ulkoasultaan ohjelma on selkeä ja erilaiset toiminnot ovat helposti löydettävissä. Sovellus on toteutettu käyttämällä C#:ia ja GTK#:ia, eli .NET:iä vastaavaa Mono -alustaa. Windowsille ei ole saatavilla valmista asennusohjelmaa, vaan käyttäjän pitää itse kääntää ohjelma skriptien avustuksella ja tarvittaessa asentaa vielä Mono-alusta. Kokonaisuutena ohjelman asennusprosessi oli kuitenkin yksinkertainen. Linuxissa valmiit paketoinnit löytyvät Ubuntulle, Debianille, Mandrivalle ja Gentoolle ebuild Bugzillasta. Testasin ohjelmasta 2.5.1-versiota.

Toiminnaltaan SportsTracker on selkeähkö ja ohjelmalla voidaan seurata urheilusuorituksia luomalla eri lajeille omat kategoriat ja alalajit kuten ”pyöräily” ja ”maastopyöräily”. Alalajien luonti on pakollista, joka tosin tuntuu hieman monimutkaiselta tavalta joidenkin lajien kohdalla. Harrasteuimarille uintityylien lajittelu krooliin ja sammakkoon tuntuu hieman turhalta, mutta urheilusuoritusten kategorisointi alaluokkiin on hyvä ja toimiva idea.

Käyttöliittymältään ohjelma on minimalistinen ja yleisesti ottaen hieman liiankin yksinkertainen ja asetuksia on vähän. Käyttö on helppoa, mutta urheilusuoritusten lisäämisessä toivoisi hieman enemmän kenttiä haluttujen tietojen tallentamiseen. Urheilusuoritusten tallettamisen jälkeen halutuista tai kaikista urheilulajeista näkee erilaisia tilastoja halutulta aikaväliltä, esimerkiksi kaikkien suoritusten kokonais-, keskimääräisen ja minimi ja maksimikeston. Suorituksista saa myös graafista tilastoa käppyrän muodossa, joka voi näyttää esimerkiksi matkaa, keskinopeutta ja kalorikulutusta. Graafisten tietojen näyttäminen ei tosin suostunut toimimaan Windowsissa, vaan ohjelma kaatui joka kerta kyseistä nappia painettaessa. Vielä on siis kehitettävää myös perustoiminnoissa.

Sykemittarin omistajat voivat tallettaa sykemittarin harjoitustiedostot integroidun PolarViewerin kautta ja liittää ne urheilusuorituksiin. Harmillisesti omasta sykemittaristani ei tietokoneliitäntää löydy. Ohjelma tukee Polarin ja CicloSportin sykemittareita, mutta SportsTracker ei osaa itse ladata harjoitustiedostoja mittareista, joten niiden lisäämiseksi tarvitaan vielä sykemittarien omia työkaluja.

SportsTracker tallentaa kaiken datansa XML -muodossa, joten urheilusuoritusten lukeminen onnistuu ilman ohjelmaakin ja myös mahdollinen siirto toisiin ohjelmiin on kohtalaisen helppoa verrattuna jos tiedot olisivat binäärimuodossa tai ohjelman omassa formaatissa.

SportsTrackerin sivuilta löytyy ruudunkaappauksia ohjelman eri toiminnoista Linuxissa käytettynä ja Windowsiin verrattuna ulkoasu on Linuxissa kyllä paljon nätimpi. Totesin ohjelman muutaman suorituksen lisäyksen jälkeen hieman liian yksinkertaiseksi omiin tarpeisiini, joten omien ruudunkaappausten näyttäminen ei sanoisi ohjelmasta mitään.

SportsTracker on varmasti ihan hyvä ohjelmisto urheilusuoritusten seuraamiseen ja suorituksista saa irti erilaisia tilastoja, jos sellaisia haluaa. Ohjelman ominaisuudet vain ovat hieman rajatut, mutta riippuen käyttötarpeista, varmasti ihan riittävät. Pikaisella testauksella ohjelman toimivuudesta on vaikea sanoa enempää, mutta ainakin Windowsissa asennuspaketoinnissa ja käppyrän piirrossa riittää vielä kehitettävää. Myös ohjelman ominaisuuksiin toivoisi hieman lisäystä.

Launchy tuo OS X -tunnelmaa ohjelmien käynnistämiseen

OS X:ssä ohjelmia voi käynnistää käyttämällä Spotlightia tai vielä helpommin Quicksilverillä; muutamalla näppäinpainalluksella. Samantapaista toimintoa Windows -maailmassa tarjoaa ilmainen ja avoimen lähdekoodin Launchy.

Launchy on joustava ja kevyt taustalla pyörivä apuohjelma ohjelmien ja dokumenttien aukaisemiseen. Launchy indekstoi ”Käynnistä”-valikon, käyttäjän määrittelemät hakemistot ja halutut tiedostotyypit ja tarjoaa ohjelmat parilla näppäinpainalluksella. Pikanäppäimen voi valita itse ja itse valitsin pikanäppäimeksi Win+Spacebar, joka on idealtaan hieman sama kuin Omena+Spacebar OS X:ssä.

Nyt ohjelmien käynnistäminen Windows XP:ssä sujuu hetkessä, eikä ”Käynnistä”-valikkoa tarvitse selata ja etsiä mistähän kansiosta haluttu ohjelma löytyisi. Riittää kunhan muistaa ohjelman nimen ja kirjoittaa siitä muutaman kirjaimen ja Launchy ehdottaa eri vaihtoehtoja.

Olen käytellyt Launchyä viime syksystä alkaen ja perustoiminnallisuuden lisäksi Launchy osaa nyt muitakin temppuja, kuten hakea muun muassa Googlesta, tarkistaa sään, selata hakemistoja ja toimia laskimena.

En ole vielä ehtinyt testailemaan, miten Microsoftin kopioitu Spotlight Vistan ”käynnistä” -valikossa toimii käytännössä, mutta toivottasti edes samalla tavalla kuin Spotlight tai Launchy, joten ei siitä enempää.

Onneksi saatavilla on kolmannen osapuolen ohjelmistoja, jotka tarjoavat käyttöjärjestelmäkehittäjien unohtamia ominaisuuksia. Miksei tälläisiä ohjelmia ole ollut jo vuosikausia, myös Windows -maailmassa?

Launchy search with open

Pikanäppäin ikkunan pienentämiseen Windowsissa

Tietotekniikassa aina oppii jotain uutta. Tänään opin, että Windowsissa pikanäppäin ikkunan pienentämiseen on Alt + Spacebar + N. Vastaavasti ikkunan maksimoimiseen + X ja palauttamiseen + R. Lähtökohtaisesti looginen pikanäppäin, kunhan tietää että Alt + Spacebar avaa ikkunavalikon.

Ilmeisesti ikkunan pienentäminen ei toimi kaikkien ohjelmien kohdalla, sillä ainakaan nuTTY ja RealVNC Viewer eivät totelleet pikanäppäintä, vaikka klikkaamalla ikkunan yläkulmaa ikkunavalikko aukenikin.

Kuvittelin, että kyseinen toiminto toimisi kaikissa ohjelmissa ja olisi liitetty Win-näppäimeen (esim. Win-H), mutta olihan se taas liikaa toivottua. Macissa tämäkin on toteutettu paremmin.

Asiasta toiseen. Tänään totesin, että kokeneellekin tietotekniikan ammattilaiselle kopioi/liitä/leikkaa -toiminto käyttämällä CTRL+C/V/X -yhdistelmää, voi olla uusi tuttavuus. Käyttöjärjestelmien kehittyessä varmaan moni muukin usein käytetty toiminto on löytänyt tiensä pikanäppäimiin, mutta vanhat toimintatavat muuttuvat hitaasti.

Tekstin liittäminen Wordiin ilman muotoiluja

Microsoft Word haluaa tekstiä, esimerkiksi PDF:stä, liitettäessä ottaa mukaan tekstissä olevat muotoilut, mutta en muista, että olisin montaakaan kertaa tai kertaakaan muotoiluja halunnut. En ainakaan Microsoft Word 2002:sta löytänyt asetusta, jolla liitä -komennon toimintaa olisi voinut muokata haluamakseen, eli että teksti liitettäisiin aina ilman muotoiluja. Valikoista kyllä löytyy ”Paste Special” -komento (suom. Liitä määräten), mutta toistuva käyttö on hieman hankalaa.

Tähänkin pieneen ongelmaan löytyi apu googlettamalla, joka tarjosi ratkaisuksi makron tekemistä ja sen liittämistä esimerkiksi CTRL-V -pikanäppäimeen. Aihetta käsittelevä kysymys ja ratkaisu löytyi Tech Support Guy! -foorumilta ja pikanäppäinvinkki usealtakin sivustolta.

Ohje menee hieman mukaillen seuraavasti:

Klikkaile valikosta ”Tools – Macros – Record Macro” ja anna makrolle nimeksi ”PasteUnformatted”. Valitse makro osoittamaan kaikkia dokumentteja ja klikkaa ”Keyboard” -kuvaketta, josta voit liittää makron esimerkiksi CTRL-V -pikanäppäimeen. Sulje ikkuna ja aloita makron nauhoittaminen.

Nauhoita makro klikkailemalla ”Edit – Paste Special”, ”Unformatted Text” ja ”OK”, jolloin teksti liittyy dokumenttiin ilman muotoiluja. Nyt makro on valmis ja voit lopettaa makron nauhoittamisen.

Avaa Alt-F11 -näppäinyhdistelmällä Visual Basic -editori ja näet juuri nauhoittamasi makron. Periaatteessa nauhoittamasi makron pitäisi toimia, mutta en itse ekalla yrittämällä sitä saanut toimimaan. Onneksi foorumilla oli annettu valmis makrokoodi, jonka voit kopioida nauhoittamasi päälle.

PasteUnformatted -makro:

Sub PasteUnformatted()
'
' Paste Unformatted Text Macro
'
Selection.PasteSpecial Link:=False, _ 
DataType:=wdPasteText, Placement:= _
wdInLine, DisplayAsIcon:=False
End Sub

Nyt aina CTRL-V -pikanäppäimellä teksti liittyy dokumenttiin ilman turhia muotoiluja ja tarvittaessa voi aina valita liitä -komennon valikoista klikkaamalla, jos haluaa säilyttää liitettävän tekstin muotoilut.

WebKit-selaimen asentaminen ja käyttö Windows- ja Linux-ympäristöissä: melkein kuin OS X:n Safari

Monday By Noon -blogi kirjoittaa WebKit -selaimen kääntämisestä Linuxille Qt-kirjaston kanssa. Koska tällä hetkellä pääkäyttöjärjestelmäni on vaihteeksi Windows XP, tuli mieleen kokeilla WebKit -selaimen kääntämistä Windowsin puolella. Linuxissahan se näytti onnistuvan helposti.

WebKit on avoimen lähdekoodin web-selainmoottori. WebKit nimellä tunnetaan myös Mac OS X:n järjestelmäympäristön versio kyseisestä moottorista, jota käytetään muun muassa Mac OS X:n Safari, Dashboard ja Mail -sovelluksissa. On kuitenkin huomattava, että Safari ja WebKit ovat kaksi täysin eri asiaa; Safari on selain, joka käyttää WebKitiä sivujen renderöimiseen. WebKitin HTML ja JavaScript koodit ovat saaneet alkunsa KDE -projektin KHTML ja KJS kirjastoista ja joitain WebKitiin tehtyjä muutoksia ja korjauksia nähdään myös KHTML:n koodissa.

Ennen WebKit-selaimen kääntämistä testasin Monday by Noon -blogikirjoituksen kommenteissa viitattua Swift -selainta Windowsille, joka käyttää moottorinaan WebKitiä. Swift on kehitysasteeltaan vasta 0.2 alpha ja osoittautuikin epävakaaksi. Myös selaimen perusominaisuuksissa oli suuria puutteita, eikä kestänyt kauaa, kun jo sain Swiftin kaatumaan. Jutun kommenteissa hieman viitattiin, että Swift näyttäisi CSS-renderöintivirheet samalla tavalla kuin Safari, mutta en tätä itse testannut. Jos kommentti pitää paikkansa, on Swift helppo, joskin tässä vaiheessa vielä epävakaa testiselain www-sivujen ulkonäön tarkasteluun.

Seuraavaksi testivuoroon WebKitin kääntäminen Windowsissa ja nopea katsaus Googlen löytämiin tuloksiin tarjosikin WebKitin Wikistä löytyvät ohjeet WebKitin kääntämiseksi Windowsissa, käyttäen cygwiniä ja muutamia tarvittavia lisäkirjastoja.

Windowsissa WebKitin kääntäminen vaati hieman pohjustusta muun muassa cygwin -ympäristön asentamisessa, mutta ohjeet olivat selkeät. Lisäksi tarvittiin WebKit -projektin checkout, eli lähdekoodien hakeminen, versionhallinnasta, muutamia lisäkirjastoja asennusskriptillä, muutaman paketin lataaminen ja lopulta kaikki tarvittavat materiaalit olivat valmiina. Kun vielä kääntämiseen oli tarjolla valmis skripti cygwiniä tai Visual Studio -projektia käytettäessä, tarvitsi vain aloittaa kääntäminen haluamallaan tavalla.

Rivit vilisivät ruudulla, kun kääntöprosessi sulatteli lähdekoodeja, mutta koska mikään ei ole koskaan liian helppoa, antoivat sekä cygwinissä että Visual Studiossa ajettu kääntö saman vastauksen: ”Build failed”. Ei onnistu. Liian helpoltahan tämä jo vaikuttikin.

Windows-arpa oli tällä erää kokeiltu ja tyhjähän sieltä paljastui. Kääntö aiheutti vielä sen verran runsaasti virheitä ja varoituksia, ettei mielenkiinto eikä aika riittänyt niiden tutkimiseen. Vaihtoehtona oli vielä WebKitin kääntäminen Linuxille Qt-kirjaston kanssa ja Linux-arvan katsomisen vuoro. Samalla tämän kirjoituksen otsikkokin muuttui aiheen lipsuessa Windowsista Linuxiin.

Linuxiin löytyikin jo valmiit ohjeet, joten terminaali auki, tarvittavien lisäkirjastojen asennus ja kääntö käyntiin annettujen ohjeiden avulla. Rivit vilisivät ruudulla, kunnes kääntö pysähtyi virheeseen. Ongelmaan auttoi WebKitin Wikistä lötyvän ”Building the Qt port on Linux” -kirjoituksen ohjeet muutamiin yleisiin käännösongelmiin. Tämän jälkeen WebKit kääntyikin ongelmitta. Vielä LD_LIBRARY_PATHin asettaminen osoittamaan ”WebKit/WebKitBuild/Releases/lib/”-hakemistoon, jotta QtLauncher löysi libWebKitQt:n ja selain oli käynnissä. Vaikka ohjeet olivat tehty käyttäen Ubuntua, onnistui kääntäminen samoilla ohjeilla myös 64-bittisessä Gentoossa.

Ei siis WebKit-selainta Windowsille, ohjeista huolimatta, vaan WebKit Linuxille. Voi hyvinkin olla, että tekiessäni checkoutin, oli kyseinen versio jostain hajalla ja ei siksi kääntynyt Windowsissa. Toisaalta veikkaan, että käyttäjässä oli vikaa. Onneksi kääntöprosessi on tehty kohtalaisen helpoksi, joten kääntämistä voi yrittää myöhemminkin vain parilla klikkauksella.

Linuxissa Qt-kirjastoa käyttävä WebKit on käytettävyydessä jotakuinkin hieman samaa tasoa, kuin aikaisemmin mainitsemani Swift-selain Windowsissa: näyttää web-sivut safarimaisesti ja sivuhistoriassa voi liikkua eteen- ja taaksepäin. Ja siihen selaimen toiminnallisuus rajoittuukin. Ulkoasukin on karu, sisältäen vain muutamat navigointinapit ja osoitekentän. Kokonaisuutena Swift tarjoaa kuitenkin parempaa selausta välilehtien ja viimeistellymmän ulkoasunsa ansiosta.

Odotin Linuxissa toimivalta WebKitiltä hieman enemmän, mutta kuten aikaisemmin kirjoitin, WebKit ja Safari ovat kaksi eri asiaa. Mielikuvat liikkuivat Safarimaisessa selaimessa, mutta sain pelkän selainmoottorin ja pari hassua nappia. Ohjesivuilla oli kyllä ruudunkaappauksia, mutta jotenkin sivuutin koko asian.

Periaatteessa WebKit-moottorilla Windowsissa tai Linuxissa renderöidyn web-sivun pitäis näyttää samalta kuin OS X:n Safarissa, mutta käytännössä tämä ei välttämättä toteudu. WebKitiä voi kuitenkin soveltaa nopeaan testaukseen, jos Safaria ei ole saatavilla. Linuxissa myös Konqueror, joka käyttää myös WebKitin pohjana olevaa KHTML-moottoria, soveltuu web-sivujen testaamiseen ja lukemani perusteella näyttää sivustot Safarimaisesti lomakkeita lukuunottamatta.

Parhain ja varmin testitulos web-sivujen testauksessa saavutetaan kuitenkin käyttämällä autenttista OS X -ympäristöä, virtualisoiden tai ilman. WebKit on kuitenkin vain osa Safarin tarjoamaa kokonaisuutta.

Lisäys 17.7.2007:
Apple julkaisi kesäkuussa WWDC:n yhteydessä Safari-selaimensa myös Windowsille. Nyt ei ole enää ei ole tarvetta viritellä WebKitiä ihan vain web-sivujen testaamiseksi. Safari 3 Public Beta tosin käynnistyi hieman ontuen, kun Windows-versiossa oli ikäviä toimivuusongelmia. Varsinaista Beta-tasoa.

Microsoftin suunnittelukukkasia: Vista ja UAC

Tietotekniikka ja ohjelmistokehitys on haastavaa, toiset siinä onnistuvat, toiset eivät. Testailin pari päivää sitten Microsoft Vistan Beta -versiota, kun sellainen hyllystä sattui löytymään. Asennus VMware Server -virtuaalikoneeseen sujui helposti klik-klik-klik ja hyvältähän tuo Microsoftin uusin tekele näytti: peruskuorrutus karkkia ihan sopivasti, valikot hieman sekavia, mikään ei löydy sieltä mistä luulisi ja User Account Control (UAC) on ärsyttävä. Vaikuttaa siis hyvältä.

Microsoftin ”ideoima”, turvallisuuden lisäämiseen tarkoitettu, User Account Control on jotain aivan kauheaa. Idea on hyvä, mutta toteutus ei toimi kyllä ollenkaan. UAC:n suunnittelussa on otettu mallia Mac OS X:n hieman vastaavasta ideasta, mutta lopullinen toteutus on jotain aivan muuta. Esimerkiksi jos haluat tarkastella Control Panelin asetuksia ja tutkia mitä löytyy mistäkin ja mikä on muuttunut, pitää joka toisessa välissä klikkailla esiin pompsahtavan ikkunan ”Continue” -nappia, vaikka juuri muutama hetki sitten vastasit samaan kysymykseen myöntävästi. Ei näin, ei.

Onneksi UAC:n saa kytkettyä pois päältä. My Digital Life -blogi esittelee useita eri tapoja UAC:n poiskytkemiseen ja Lifehackerin tarjoama ohje on aika selkeä. Tietenkin, kun Vistan asetukset on saatu kuntoon ja enimmät ohjelmat asennettua, kannattaa UAC kytkeä takaisin päälle. Ei siitä tosin ole paljon hyötyä, jos kysymyksiä klikkailee silmät ummessa.

Ettei koko kirjoitus menisi Vistan parjaamiseksi, vaikutti Vista ihan kivalta sekä ulkonäöllisesti että toiminnallisuudeltaan. Ainakin nopeasti testattuna. Vistan Sidebar ja Gadgetit näyttivät myös ihan järkeviltä ja laajakuvanäytöllä käytettynä tilaa sivupalkillekin riittää. Käkättimien eli Gadgettien hyödyllisyyttä on tässä vaiheessa vielä vaikea arvioida. Myös Vistan Aero -käyttöliittymän tarjoamat karkkiominaisuudet erikoistehosteineen jäivät virtuaalikoneessa leikkimisessä pois, mutta kun niitä aikaisemmin hieman testailin, eivät ne kovin häiritseviltä vaikuttaneet. Linuxissa Beryl tarjoaa kyllä paljon kattavammat, mutta toisaalta myös hieman liiankin karkkimaiset ominaisuudet työpöydän ehostamiseen, työn häiritsemiseen ja koneen hukkatehojen käyttämiseen.

Lopuksi linkki Applen Switch -mainosvideoon, joka kuvastaa hieman kärjistäen, mutta oivasti, Vistan User Account Controllin toimintaa.

Muutamia ruudunkaappauksia Vistasta:

Polar Clock -näytönsäästäjä: hieman erilainen kello

Pixel Breakerin Polar Clock -näytönsäästäjä on idealtaan ovela: ajan eteneminen on esitetty väriävaihtavilla, ympyrää kiertävillä palkeilla. Pixel Breakerin sivuilla voi testata flashilla toteutettua kelloa ja ladata näytönsäästäjän Mac OS X:lle.

Polar Clock v2 -näytönsäästäjä on saatavilla Mac OS X:n lisäksi myös Windowsille ja on hieman erilainen kuin alkuperäinen idea.

Näytönsäästäjänä Polar Clock on hieman turhan staattinen verrattuna perinteisiin ympäri ruutua vaeltaviin näytönsäästäjiin, mutta ideana toimiva.