Hyppää pääsisältöön

Vikasietotila: Vältä avoimen lähdekoodin ohjelmien sudenkuopat

Vikasietotilan tekijät Kari Haakana, Panu Räty ja Olli Sulopuisto.
Vikasietotilan tekijät Kari Haakana, Panu Räty ja Olli Sulopuisto. Vikasietotila

Avoimen lähdekoodin ohjelmistoilla on imago-ongelma. Moni tuntuu ajattelevan, että kaupalliset ohjelmat ovat aina parempia, koska eihän ilmainen tuote voi olla yhtä hyvä kuin maksullinen. Mielikuva ei ole täysin oikea, mutta ei täysin vääräkään. Olennaista on tietää, miten erottaa kehnon ohjelman toimivasta softasta, joten nyt tarjoamme siihen muutaman nyrkkisäännön.

1. Etsi elonmerkkejä

Tärkein merkki avoimen lähdekoodin ohjelmiston toimivuuudesta on yleensä se, millaisella tahdilla ohjelmaa kehitetään. Katso siis ensimmäisenä ohjelman versiohistoriaa: onko edellisestä päivityksestä kuukausi vai vuosi, onko päivityksiä julkaistu tasaiseen tahtiin, onko tempo kiihtynyt tai hidastunut?

Jos projekti on eloisa, voi suhtautua varsin luottavaisin mielin siihen, että ohjelmassa väistämättä olevia puutteita ja vikoja korjataan ajallaan. Jos taas kehitystyö on kovin hidasta, eivät ongelmat korjaannu itsestään ja silloin voi olla viisaampi etsiä vaihtoehtoinen ratkaisu.

Suosituimpien ohjelmistojen kehitystyö on hyvin määrätietoista. Esimerkiksi Wordpress-julkaisujärjestelmän versiohistoriasta näkee nopeasti, että sekä isompia että pienempiä päivityksiä tulee jatkuvasti. Moni avoimen lähdekoodin ohjelma käyttää versionumerointia, jossa ensimmäisen numeron vaihtuminen kertoo perustavanlaatuisista muutoksista ja viimeinen numero taas bugipäivityksistä. Täten siirtymä 4.8.2 -> 4.8.3 on pienempi kuin siirtymä 4.8.3 -> 4.9.

Käytännössä versiohistoria näyttää ohjelmiston pulssin ja elinkelpoisuuden. Tähän on muutamia poikkeuksia, kuten se että hyvin yksinkertaisissa ohjelmissa versiohistorian hiljaisuus voi olla hyvä merkki. Kenties ohjelma on saavuttanut pisteen, jossa se hoitaa tehtävänsä hyvin eikä sitä ole enää tarve muokata jatkuvasti.

2. Virheet ovat hyvä merkki

On muutama ristiriitaiselta tuntuva piirre, jotka ovat itse asiassa hyviä signaaleja ohjelman voinnista.

Niistä ensimmäinen on käyttäjien ilmoittamien bugien määrä. Jos katsoo vaikka Libreoffice-toimisto-ohjelmiston viimeisen viikon aikana listattuja virheitä, saattaa ajatella että reilut sata bugia on aika paljon. Mutta mikä olisi vaihtoehto? Jos virheitä ei löydy, on se todennäköisemmin merkki siitä, ettei ohjelmalla ole käyttäjiä jotka ilmoittaisivat bugeista, mikä taas on usein huono ennuste jatkuvuuden kannalta.

Samaan tapaan ei kannata huolestua, jos ohjelmistosta on tehty useita erilaisia versioita eli sen lähdekoodi on niin sanotusti forkattu, lohkaistu omaksi, erilliseksi haarakseen. Usein se nimittäin kertoo siitä, että joku haluaa muokata sen vastaamaan hieman erilaiseen tarpeeseen sen sijaan, että jättäisi koko asian sikseen.

Esimerkiksi tätä staattisten www-sivujen rakentamiseen käytettävien ohjelmistojen luetteloa voi selailla forkkausten määrän mukaan lajiteltuna, kun valitsee pudotusvalikosta kohdan Sorted by forks.

3. Miten yhteisö jaksaa?

Ohjelmat eivät ohjelmoi itse itseään, vaan siihen tarvitaan ihmisiä. Mitä useampi ihminen osallistuu ohjelmiston kehittämiseen, sitä parempi – avoimen lähdekoodin historia on täynnä hankkeita, jotka ovat nuupahtaneet innokkaan aloittajan uuvuttua. (Teoriassa on mahdollista, että joku jatkaa hänen työtään, koska kaikki lähdemateriaalit ovat saatavilla, mutta läheskään aina teoria ei toimi käytännössä.)

Siispä vilkaise, kuinka moni ohjelmoija on kantanut kortensa kekoon ohjelmiston puolesta. Frappe Charts on työkalu, jolla voi rakentaa infografiikoita www-sivuille. Sen lähdekoodi on julkaistu Githubista ja ohjelman projektisivulta näkee heti, kuinka moni kehittäjä on muokannut lähdekoodia. Kirjoittamishetkellä heitä oli 13, mikä on rajatun käyttötarpeen ohjelmistolle aivan passeli määrä.

Myös käyttäjämäärillä on väliä. On nimittäin monia tehtäviä, joita muut kuin ohjelmoijat voivat hoitaa parantaakseen ohjelmistojen toimivuutta. Jo aiemmin mainittu virheiden ilmoittaminen on niistä yksi, minkä lisäksi käyttäjät ovat usein avainasemassa, kun pitää saada apua ohjelman käyttämiseen.

Äänieditori Audacityn käyttäjien keskustelufoorumille on kirjoitettu yli neljännesmiljoona viestiä, joten on hyvin mahdollista, että joku on jo ehtinyt pohtia täsmälleen samaa ongelmaa kuin sitä, jonka kanssa sinä painit juuri nyt.

Entä onko ohjelma niin suosittu, että sille on mahdollista ostaa asennuspalveluita ja neuvontaa kolmansilta osapuolilta? Jos tällaisia palveluita on olemassa, voi olla lähes varma siitä, että softa on muidenkin mielestä käyttökelpoinen ja hyödyllinen, koska eihän sen ympärille muuten voisi rakentua maksullista ohjeistusta.

4. Löytyykö ohjeistusta?

Vanhan ohjelmoijasanonnan mukaan lähdekoodia ei tarvitse selitellä, koska hyvin kirjoitettu koodi selittää itse itsensä. Meille muille kunnollinen ohjeistus on kultaakin kalliimpaa, sillä maailman parhaastakaan ohjelmasta ei ole hyötyä, jos sitä ei osaa käyttää.

Siispä tarkista, millaista dokumentaatiota ohjelmasta on tarjolla. Löytyykö nettisivuilta käyttöohje, vastauksia usein kysyttyihin kysymyksiin, kuvakaappauksia tai Youtube-videoita, joissa esitellään ohjelman toimintaa.

Miten tuoreita ohjeet ovat? Harmillisen usein käy niin, että ohjeistus on kirjoitettu kerran ja sen jälkeen softa on muuttunut paljonkin, mutta kukaan ei ole ehtinyt päivittää ohjeistusta.

Entistä parempi on, jos ohjelma on niin suosittu, että sen dokumentaatio on tarjolla muillakin kielillä kuin englanniksi. Tällaisia tapauksia on kylläkin varsin harvassa – ellet sitten satu innostumaan niin paljon, että ohjelman tehokäyttäjäksi opittuasi kirjoitat itse sille suomenkieliset ohjeet.

Jakson linkit ja vinkit

Vikasietotila

  • Digitreenit: Miksi kannattaa hankkia Yle Tunnus?

    Luo oma Yle Tunnus, niin Areenaa on mukavampi käyttää.

    Yle Tunnus helpottaa Yle Areenan käyttöä: Voit luoda omia suosikkilistoja, saat tiedon uusista jaksoista ja voit jatkaa katselua tai kuuntelua kesken jääneestä kohdasta. Tunnuksesta on iloa myös muissa Ylen nettipalveluissa.

  • 10 kysymystä presidentin valtaoikeuksista

    Mitä kuuluu presidentin tehtäviin?

    Äänestysaktiivisuuden perusteella presidentinvaalit ovat vaaleista suosituimpia. Mutta onko presidentillä oikeasti valtaa? Mistä presidentti saa päättää, mistä ei? Testaa tietosi 10 kysymyksellä!

  • Ääni on toinen, uusi maailma

    Äänillä voi muuttaa kuvan tunnelman.

    Äänimaailma muuttaa kaiken. Äänillä - esimerkiksi musiikilla - voi muuttaa kuvan tunnelman. Äänellä voi tulkita kuvaa ja vaikuttaa katsojan tunteisiin voimakkaasti. Kuvauksissa alkuperäisen äänen taltiointi on tarkkaa työtä. Ääniä voidaan myös tehdä tarkoituksella erikseen ja niitä voidaan järjestää haluttuun järjestykseen.