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

Avointa lähdekoodia on kaikkialla, joten sitä kannattaa yrittää ymmärtää

Moni ajattelee, että avoimena lähdekoodina kehitetyt ohjelmistot ovat huonoja kopioita kunnollisista ohjelmista: että ne toimivat miten sattuu, niille ei ole saatavissa käyttäjätukea ja niiden tietoturva on pelkkä vitsi. Kuitenkin esimerkiksi avointa lähdekoodia oleva tietoliikennekirjasto on uskallettu ottaa käyttöön kymmenessä miljardissa nettiin kytketyssä laitteessa ympäri maailmaa sekä yhdessä laitteessa Marsissa.

Jukka Rahkonen, lyhythiuksinen, silmälasipäinen henkilö seisoo ulkona vehreässä ympäristössä.
Kuva:
Maanmittauslaitos

Ohjelmia, jotka olisivat täysin vapaita avoimesta lähdekoodista, on itse asiassa vaikea löytää. Monet avoimen lähdekoodin lisenssit sallivat koodin käyttämisen myös yhdessä suljetun lähdekoodin kanssa, ja tätä mahdollisuutta todellakin käytetään hyväksi. Niinpä tuoreen tutkimuksen mukaan 96 prosenttia ei-avoimista ohjelmistoista sisältää avointa lähdekoodia. Pilvipalveluiden tuottajista puolestaan 93 prosenttia kertoi käyttävänsä avoimen lähdekoodin teknologioita.  

Avoimia komponentteja käytetään, koska niiden avulla voidaan alentaa kustannuksia, nopeuttaa ohjelmistokehitystä ja parantaa laatua. Jos lisenssiehdot sallivat, miksi kirjoittaisi uuden ohjelmakomponentin, kun valmiin ja testatun voi ottaa käyttöön heti ilman lisenssikustannuksia?  Toki ohjelmointi, ylläpito ja tukipalveluiden käyttö maksavat myös avointa lähdekoodia käytettäessä.

Avoin lähdekoodi ei ole laadun tae

Perseverance-mönkijän mukana Marsiin lähetetyn pienen helikopterin tapauksessa Nasan ohjelmistokehittäjien valinta perustui laatuun eli siihen, että kopterin ohjelmistoissa käytettyjen avoimen lähdekoodin kirjastojen luotettavuus oli jo todistettu käytännössä. Jos luotettavampia vaihtoehtoja olisi ollut tiedossa, niin ohjelman 2,7 miljardin dollarin kokonaisbudjetista olisi todennäköisesti löytynyt rahaa lisenssimaksuihinkin.

Avoin lähdekoodi ei kuitenkaan ole automaattinen laadun tae. Yksistään GitHubissa, joka on suurin avoimen lähdekoodin kehittämisalusta, on 330 miljoonaa ohjelmistoprojektia. Näistä kaikki eivät ole sopivia sen enempää helikopterin lennättämiseen Marsissa kuin laadukkaiden ja turvallisten palvelujen tuottamiseen suomalaisen viraston asiakkaille. Valitettavasti aina ei ole helppoa tunnistaa edes sitä, mitkä avoimen lähdekoodin projektit ovat toimivia ja kestävästi ylläpidettyjä tällä hetkellä, tulevaisuudesta puhumattakaan.

Vertailukelpoisten tietojen löytäminen avoimen lähdekoodin projekteista on kuitenkin mahdollista ja usein helpompaakin kuin suljetuista ohjelmistoista, koska muun muassa virheraportit ovat kaikkien nähtävissä.

Seuraaviin kysymyksiin vastaamalla saat käsityksen avoimen ohjelmiston kestävyydestä

  1. Kuinka kauan ohjelma on ollut olemassa?
  2. Kuinka paljon ohjelmalla on käyttäjiä? Kiinnitä huomiota erityisesti merkittäviin IT-toimijoihin.
  3. Miten ohjelman kehitys rahoitetaan?
  4. Kuinka monta kehittäjää ohjelmalla on?
  5. Onko projekti riippuvainen yhdestä henkilöstä?
  6. Miten kehittäjiin saa yhteyden ja vastaavatko he yhteydenottoihin?
  7. Onko ohjelmalla paljon auki olevia virheraportteja ja korjataanko virheitä?
  8. Saako ohjelman käyttäjäyhteisöltä tukea?
  9. Saako ohjelmalle kaupallista tukea - jopa Suomesta?
  10. Kuinka kauan ohjelma säilyisi käyttökelpoisena, jos sen kehittäminen loppuisi tänään?

Jukka Rahkonen

Kirjoittaja työskentelee johtavana IT-asiantuntijana Maanmittauslaitoksessa.

Maanmittauslaitoksen blogissa eri kirjoittajat käsittelevät Maanmittauslaitoksen ajankohtaisia asioita.

Maanmittauslaitos
Vastuullisuus
Digitalisaatio

Uusimmat blogit