Usein kysyttyjä kysymyksiä - avoin lähdekoodi yrityskäytössä:

(Sanastoon kannattaa tutustua, mikäli avoin lähdekoodi on uusi asia.)

 

Avoin lähdekoodi - miksi haluaisimme käyttää sitä? / Mitä hyötyä siitä on yritykselle?

Avointa lähdekoodia käytetään tuotekehityksen nopeuttamiseen, parantamiseen ja kustannustason laskemiseen: lyhyemmin tuotekehityksen tehostamiseen. Loppukäyttäjäyrityksissä avointa lähdekoodia käytetään ohjelmistojen helppona ja edullisena hankintakanavana: kustannuksia laskemaan ja toimintoja tehostamaan.

Tilanteesta riippuen em. tavoitteet toteutuvat eri tavoilla. Perusajatusf on kuitenkin se, että kun joku asia on jo keksitty, ei sitä kannata tehdä uudelleen, jos se on jo avoimesti saatavilla.

 

Mistä avoimen lähdekoodin ohjelmistoja löytyy / kuka niitä tekee? Miksi niitä tehdään?

Hakukoneiden ohella lähdekoodirepositoriot ja ohjelmistokomponenttien hakemistot ovat käytännössä paras keino löytää avoimen lähdekoodin ohjelmistoja. Suurin ja tunnetuin lähdekoodirepositorioiden hosting-palvelu on tällä hetkellä GitHub. Erilaisia projekti- ja pakettihallintatyökaluja, kuten vaikkapa Mavenia (Javalle) ja npm:ää (JavaScriptille) käytetään usein yhdessä julkisten pakettihakemistojen kuten npm registryn ja Maven Central Repositoryn kanssa. Avointen ohjelmien tekijät vaihtelevat projektittain suuryritysten kehittämistä ohjelmistoista säätiöityihin projekteihin ja aina yhden ohjelmoijan omiin tarpeisiinsa laatimiin työkaluohjelmiin. Usein avoimen lähdekoodin ohjelmisto onkin saanut alkunsa, kun johonkin tiettyyn käyttötarkoitukseen ei löydy riittävän hyvää ohjelmistoa valmiina.

Avoimen lähdekoodin kehittäjien motiivi voi olla oman ongelman ratkaiseminen, maineen hankkiminen, yleishyödyllisyys, tuotekehityksen tehostaminen avoimella toimintatavalla, bisnesmahdollisuudet tai moni muu.

 

Mitä on avoin lähdekoodi? Onko tämä uusi juttu?

Avoimella lähdekoodilla tarkoitetaan ohjelmistoja, jotka on julkaistu ns. avoimen lähdekoodin lisenssillä. Näiden ohjelmistojen käyttöehdot sallivat ohjelmiston kopioimisen, muokkaamisen ja edelleen levittämisen varsin vapaasti. Open Source Initiative (OSI) ylläpitää määritelmää avoimesta lähdekoodista.

Avoimen lähdekoodin määritelmä luotiin vuonna 1998, mutta avointen / vapaiden ohjelmien ilmiö itsessään on vanhempi. Esimerkiksi Free Software Foundationin GNU-projekti on jo yli 30-vuotias. 

 

Mitkä ovat tunnettuja avoimen lähdekoodin ohjelmistoja? Missä niitä käytetään?

Tunnetuimpia ja merkittävimpiä avoimia ohjelmistoja ovat mm. Linux-käyttöjärjestelmän eri jakeluversiot (tunnetaan myös nimellä GNU/Linux), Apache www-palvelinohjelmisto, MySQL-tietokanta ja Firefox-internetselain. Käyttötavat liittyvät usein internetiin: miljoonat nettisivut ympäri maailmaa tallentavat tietonsa MySQL-tietokantaan ja toimivat Apachen www-palvelimilla, jotka on asennettu erilaisille Linux-alustoille.

 

Voimmeko ladata avoimen lähdekoodin ohjelmiston netistä itsellemme? Miten/miksi?

Voitte. Avoimen lähdekoodin ideaan ja määritelmään kuuluu ohjelmistojen vapaa levitettävyys. Siksi avoimet ohjelmat on käytännössä aina ladattavissa netistä. (Niistä johdetut ohjelmistot eivät välttämättä ole ladattavissa netistä, riippuen mm. siitä tahosta, joka on tehnyt johdannaisversion.)

Peruspointti on se, että avoimen lähdekoodin ohjelmisto projekti on sitä maineikkaampi ja ohjelmisto usein myös parempi mitä enemmän ihmiset sitä käyttävät. Suosittu projekti saa enemmän palautetta, siitä kiinnostuu useampi ihminen, sen jatkuvuus on turvattu, sen ympärille muodostuu palveluntarjontaa (niin ilmaista kuin maksullista) jne.

 

Minkälaiset ehdot avoimen lähdekoodin ohjelmistoja koskevat? Mitä ovat lisenssiehdot?

Avoimen lähdekoodin ohjelmisto lisensioidaan aina jollakin lisenssillä eli lisenssiehdoilla, jotka määrittelevät ohjelman muuttamista, kopioimista, käyttöä ja levittämistä koskevat ehdot, rajoitukset ja vaatimukset. Yleensä nämä lisenssiehdot ovat ainoat ohjelmiston käyttöä koskevat ehdot.

Koska ohjelmistot usein rakennetaan jo rakennettujen ohjelmistokomponenttien päälle tai johdetaan niistä, koskee avoimen lähdekoodin ohjelmistoja usein useampi lisenssi. Niistä muodostuu kokonaisuus, joka määrää ohjelmiston käytön ehdot. Tämä kokonaisuus ei aina ole hyvin hallinnoitu tai esitetty ja mm. näiden lisenssiehtojen selvitystyötä Validos tekee yritysten puolesta.

Lisenssiehtoja on lukuisia erilaisia. Avoimen lähdekoodin määritelmän mukaiset lisenssiehdot tarjoavat aina kuitenkin seuraavat vapaudet:

  • vapaus käyttää ohjelmia mihin tahansa tarkoitukseen,
  • vapaus tehdä ohjelmista kopioita ja levittää niitä eteenpäin (maksusta tai ilman maksua),
  • vapaus muokata ohjelmia ja levittää muokattuja versioita eteenpäin ja
  • vapaus levittää avoimia ohjelmia muiden ohjelmien kanssa.

Edelleen levittämiseen liittyy usein mm. määräyksiä, jotka edellyttävät, että edelleen levitettäessä ehtojen täytyy pysyä vapaina tai samoina kuin alkuperäisessä ohjelmassa.

 

Voimmeko muuttaa os-ohjelmistoja?

Kyllä voitte. Tämä on ehkä tärkein yksittäinen avoimen lähdekoodin ominaisuus.

 

Voimmeko levittää os-ohjelmistoja asiakkaillemme?

Kyllä. Avoin lähdekoodi ei aseta sille rajoituksia. Teidän on kuitenkin syytä tarkistaa asiakassopimuksenne mahdolliset rajoitukset tai vastuut ja miten kyseisen ohjelmiston lisenssit sopivat liiketoimintaanne.

 

Muuttuvatko ohjelmistotuotteemme avoimeksi lähdekoodiksi, kun  käytämme avoimen lähdekoodin ohjelmistoja?

Eivät muutu. Avoimen lähdekoodin lisenssien osalta käyttö yrityksen sisällä ei koskaan sisällä tällaisia lähelläkään olevia velvoitteita.

Mikäli tarkoititte käytön sijasta levittämistä asiakkaillenne, katsokaa seuraava vastaus.

 

Muuttuvatko ohjelmistotuotteemme avoimeksi lähdekoodiksi, kun levitämme os-ohjelmistoja tuotteemme kanssa?

Eivät muutu ilman teidän omaa päätöstänne (mutta lukekaa tämä tämä vastaus kuitenkin loppuun asti).

Avoimen lähdekoodin levittäminen asiakkaillenne on suunniteltava huolella, ja erityisesti silloin, jos teillä on suljetusti lisensioituja ohjelmistoja. Joissakin lisensseissä on niin sanottuja copyleft-ehtoja, joiden mukaan ohjelmistoon tehtävät muutokset ja lisäykset on edelleen lisensioitaessa lisensioitava samoilla ehdoilla kuin alkuperäinen ohjelmisto. Vaikka yrityksen ohjelmistotuotetta levitettäisiin copyleft-ehdon alaisen ohjelmiston yhteydessä, ei tämä copyleft-ehto kuitenkaan itsestään ”tartu” yrityksen ohjelmaan(*). Sen sijaan tällöin saatetaan loukata copyleft-ehdon alaisen ohjelmiston lisenssiehtoja, mistä voi seurata mm. tämän ohjelmiston lisenssin lakkaaminen (jos loukkaus on ollut tahallinen, kyseeseen voi tulla myös tekijänoikeusrikkomus tai -rikos).

On varsin yleinen väärinkäsitys, että GPL-lisenssin (yleisin avoimen lähdekoodin lisenssi) alainen ohjelmisto automaattisesti tarttuisi kaupalliseen ohjelmistotuotteeseen. Mitään automaattista tarttumismekanismia GPL ei kuitenkaan sisällä(*). Sen sijaan se sisältää velvoitteen, jonka mukaan tietyissä tilanteissa yrityksenne tulee lisensioida GPL-lisenssin alainen ohjelma ja sen kanssa levitetty sama kokonaisuus GPL:n ehdoilla. Mikäli ette ole lisensioineet koko kokonaisuutta GPL:llä, ja GPL-lisenssi tätä tapauksessanne vaatii, olette rikkoneet GPL-lisenssin ehtoja, mikä voi puolestaan johtaa mm. GPL-lisenssillä saamienne oikeuksien lakkaamiseen.

Kuten sanottu, teidän tuotteenne lisensioiminen GPL:llä tai millä tahansa muilla ehdoin on teidän oma päätöksenne, eikä GPL tai mikään muukaan tuntemamme lisenssi tartu tuotteeseenne automaattisesti(*). Suljetun ohjelmiston ja GPL:n alaisen ohjelmiston muodostaman kokonaisuuden levittäminen asiakkaillenne ei kuitenkaan aina ole mahdollista ja tulee joka tapauksessa suunnitella erityisen huolellisesti, jotta toimitte oikein ja minimoitte riskit.

Lukuisia avoimen lähdekoodin ohjelmia saa myös levittää ilman mitään tämän tyyppisiä oikeudellisia velvoitteita.

(*) Tiedossamme ei ole yhtään oikeustapausta (maailmanlaajuisesti), jossa GPL:n tai vastaavan lisenssin olisi todettu "tarttuvan" automaattisesti suljettuun ohjelmistoon. Oikeustapauksissa vaatimukset ovat pikemminkin perustuneet levityksen saattamiseen GPL:n mukaiseksi, tai mikäli tämä ei ole mahdollista, sen lopettamiseen. Tämä ei luonnollisestikaan poissulje sitä, että jokin tuomioistuin voisi ottaa toisenlaisen (mielestämme selvästi virheellisen) kannan.

 

Voimmeko pyytää tuotteestamme maksun, kun sen osana on os-ohjelmistoja?

Monet avoimen lähdekoodin lisenssit mahdollistavat avoimen koodin liittämisen osaksi suljettua ohjelmistotuotetta ilman, että tämä vaikuttaa ansaintamalliin. Sinänsä mitkään avoimen lähdekoodin lisenssit eivät estä maksun perimistä ohjemistosta, mutta ns. copyleft-ehdon sisältävät lisenssit joissain tilanteissa käytännössä kuitenkin estävät maksulliseen ohjelmistolisensiointiin perustuvan ansaintamallin.

Avoimen lähdekoodin liittäminen tuotteeseenne onkin suunniteltava huolella, aivan erityisesti silloin, kun kyseessä oleva ohjelmisto on lisensioitu osittain tai kokonaan copyleft-ehdon sisältävillä lisensseillä.

 

Voimmeko tarjota palvelua verkossa asiakkaillemme, jos käytämme avoimen lähdekoodin ohjelmistoja? Entä jos käytämme myös omia, suljettuja tuotteitamme os-ohjelmistojen kanssa? Mitä on palvelun tarjoaminen verkossa?

Palvelun tarjoamisella verkon yli tarkoitetaan tilannetta, jossa itse tietojenkäsittely tapahtuu palveluntuottajan palvelimella ja ohjelmistoilla asiakkaan vastaanottaessa ainoastaan palvelun tuloksen. Tyypillinen esimerkki palvelusta verkon yli on Googlen internethaku: asiakas käyttää internetselaimellaan käyttöliittymää, mutta itse tietojenkäsittely tapahtuu Googlen palvelinkeskuksissa ohjelmistoilla ja laitteilla, jotka ovat täysin asiakkaan kontrollin ulkopuolella.

Lähes kaikkien avoimen lähdekoodin lisenssien näkökulmasta palvelun tarjoaminen verkon yli rinnastuu yrityksen sisäiseen käyttöön. Yritys itse käyttää ohjelmistoja, eivätkä asiakkaat pääse käsiksi ohjelmakoodiin tai pysty kontrolloimaan ohjelmien ajamista. Asiakkaat käyttävät vain ohjelmiston käyttöliittymää.

Näin ollen tällainen käyttö on varsin vapaata. Tunnetuin poikkeus on ns. Affero GPL -lisenssi, joka nimenomaisesti on laadittu kattamaan palveluna tarjoaminen rinnastamalla se levittämiseen.

 

Käytämmekö avoimen lähdekoodin ohjelmistoja kaupallisesti? Onko se sallittua?

Ohjelmistojen kaupallinen käyttö on epämääräinen termi. Kaupalliseksi käytöksi voidaan ymmärtää kaikki käyttö yrityksen toimesta (laajasti ymmärretty) tai sitten vain ohjelmiston kopioiminen ja levittäminen maksua vastaan (suppeasti ymmärretty) tai kaikki mahdollinen edellisten väliltä. Validoksessa me puhumme ohjelmistojen yrityskäytöstä, mikä kattaa kaiken mahdollisen ohjelmistojen käytön yrityksen toimesta.

Avointa lähdekoodia saa käyttää yrityskäytössä (ja kaikissa mahdollisissa kaupallisissa käytöissä). Avoimen lähdekoodin määritelmään kuuluu, että lisenssinsaajia ei saa asettaa eri asemaan käyttötarkoituksen perusteella. Internetissä on ladattavissa myös ohjelmia, joiden osalta kaupallista käyttöä on rajoitettu eri tavoin: tällaiset eivät ole avoimen lähdekoodin määritelmän mukaisesti lisensioituja. Kummassakin tapauksessa ohjelmistojen käyttöehdot on silti syytä tuntea hyvin, jotta niitä voi noudattaa oikein.

 

Mitä riskejä avoimen lähdekoodin ohjelmistojen käyttämiseen liittyy?

Avoimen lähdekoodin ohjelmistoihin liittyvät riskit ovat perusluonteeltaan samanlaisia kuin kaikissa muissakin ohjelmissa. Ne voivat liittyä mm. ohjelman toimintaan, tietoturva-aukkoihin, tuen saatavuuteen, tiedostojen tai formaattien yhteensopivuuteen tai oikeudellisiin seikkoihin. Riskin merkittävyys vaihtelee projekteittain (ihan samalla tavalla kuin suljetuissakin ohjelmistoissa): osa on parempia, osa huonompia.

Yksi erityinen riski liittyy avoimen lähdekoodin yhteisöön: jos yritys rikkoo ohjelmiston lisenssiehtoja tai muuten toimii yhteisöä vastaan, saattaa yhteisö reagoida yritystä vastaan. Yhteisö voi sisältää yrityksen omia työntekijöitä, asiakkaiden tai toimittajien työntekijöitä ja ihan vain muita aktiivisia avoimen lähdekoodin yhteisöön osallistujia. Jos yritys näyttäytyy negatiiviselta yhteisön näkökulmasta, voi tämä myös johtaa yrityksen kannalta negatiiviseen julkisuuteen. Kokemuksemme kuitenkin on, että monet yhteisöaktiivit pyrkivät selvittämään mahdolliset epäselvyydet suoraan yrityksen kanssa. 

Toisaalta avoimeen lähdekoodiin liittyy usein vähemmän riskejä kuin suljettuihin ohjelmistoihin: avoimen lähdekoodin osalta yritys ei ole niin riippuvainen toimittajastaan, ohjelmistoa on mahdollista muuttaa tai korjata ja toimittaja voidaan vaihtaa. Lisäksi avoimen lähdekoodin ohjelmistoja on lähes aina helpompi kokeilla ja tutkia etukäteen ennen valinnan tekemistä.

Ehkäpä merkittävimmät oikeudelliset riskit liittyvät lisenssiehtojen noudattamiseen: miten ohjelmisto on lisensioitu, mitä eri lisenssiehtoja se sisältää ja millä ehdoin tiettyä osaa saa käyttää. Kun lisensiointi on selvillä, voidaan kysyä, voiko ohjelmistoa yhdistää omiin ohjelmistotuotteisiimme, voimmeko levittää komponenttia asiakkaillemme, miten levittäminen tulee tehdä, täytyykö meidän lisensoida tekemämme muutokset tietyllä lisenssillä, pitääkö meidän myöntää muutoksiin patenttilisenssi jne. Jos levitätte avoimen lähdekoodin ohjelmistoa lisenssiehtojen vastaisesti,  kyseessä on todennäköisesti ainakin tekijänoikeuden loukkaus. Katso myös vastaus kysymykseen siitä, muuttuvatko tuotteenne avoimeksi lähdekoodiksi. 

Mikäli olette sitoutunut voimakkaasti (kaupallisesti tai teknisesti) johonkin GPL:n alaiseen ohjelmistoon, jota levitätte yhteisenä kokonaisuutena oman, suljetusti lisensioidun ohjelmistonne kanssa, on mahdollista (tilanteesta riippuen), että loukkaatte GPL-lisenssin ehtoja. Tällöin, esimerkiksi kun GPL-ohjelmiston oikeudenhaltija esittää vaatimuksia teille ("noudattakaa GPL:ää tai lopettakaa levittäminen"), voi syntyä tilanne, jossa mieluummin jatkatte GPL:n alaisen ohjelmiston levittämistä ja päätätte jatkossa levittää oman ohjelmistonne myös GPL:n alaisuudessa kuin että luopuisitte GPL:n alaisen ohjelmiston levittämisestä. Näin voi olla, kun GPL-ohjelmiston vaihtaminen toiseen on liian hankalaa tai muuten epäedullista.

 

Mistä saamme lisätietoja avoimen lähdekoodin ohjelmistoista ja lisensseistä?

Suomenkielisiä lähteitä:

- www.validos.org - sivusto (ts. tämä sivusto)

- www.coss.fi - COSS:in sivusto, ks. mm. OS ABC (COSS:in sivustoja uusitaan parhaillaan) 

Validos hoitaa yritysten puolesta OS ohjelmistojen validoinnin eli yrityskäyttöön soveltuvuuden selvittämisen. Jos tarvitsette oikeudellisia neuvoja johonkin yksittäiseen tilanteeseen liittyen tai tarkempaa oikeudellista konsultaatiota, kannattaa olla yhteydessä asiantuntevaan asianajotoimistoon. Validoksen palveluntuottajana toimii HH Partners, joka palvelee myös yleisemmin yrityksiä. COSS:illa on myös jäsenilleen tarkoitettu License Helpdesk, jonka puitteissa COSS neuvoo jäseniään avoimen lähdekoodin lisenssien osalta.

Englanninkielisiä lähteitä:

validos.github.io - valikoituja avoimen lähdekoodin compliance-resursseja

- www.opensource.org/faq - usein kysyttyjä kysymyksiä avoimesta lähdekoodista,

- opensource.mit.edu - MIT:n lista tieteellisistä open source -artikkeleista ja julkaisuista ja

- www.gnu.org/licenses/gpl-faq.html - usein kysyttyjä kysymyksiä GNU-projektin lisensseistä.

 

Miksi emme hyödyntäisi avoimen lähdekoodin ohjelmistoja?

Niin, miksipä ette? Tiettyjä isoja projekteja, kuten vaikkapa Apachen HTTP-serveriä, on varsin hankala välttää, jos ohjelmistoalalla on mukana. Jos ette todellakaan käytä mitään avointa lähdekoodia, saattaa olla aika muuttaa suuntaa. Asiakkaanne todennäköisesti haluaisivat edullisempia, nopeampia ja/tai parempia tuotteita/projekteja.

Toisaalta, aina on erilaisia tilanteita ja koskaan ei ole vain yhtä vastausta. Sekään ei ole täysin tavatonta, että asiakkaanne on kieltänyt teitä käyttämästä avointa lähdekoodia. Voi myös olla, että tiettyyn tarpeeseenne sopivaa projektia ei löydy. Saattaa hyvin olla, että löytyy ohjelmia, jotka teknisesti täyttäisivät tarpeenne, mutta niiden lisensiointi ei sovi teille. Tai saattaa olla, että sinänsä sopivan ohjelmiston lisensiointi on niin sekava, että ko. projektin ohjelmistoa ei mahdollisten oikeudellisten riskien takia haluta sisällyttää tuotteeseen. Tällöin tilanne on se, että tuo kyseinen projekti ei sovi teille, mutta joku muu voi sopia.

On myös sanottu, että avoimen lähdekoodin hallinta tulee yritykselle kalliimmaksi kuin ajateltu ilmaisuus. On totta, että yrityksen täytyy käyttää resursseja avoimen lähdekoodin ohjelmistojen hallintaan ja niitä ei voi ottaa käyttöön täysin harkitsemattomasti. Validos on osaltaan vastaus tähän kritiikkiin: kun monet yritykset osallistuvat kustannuksiin ja jakavat työn tulokset, Validos helpottaa avoimen lähdekoodin hallinnassa, käyttöönotossa ja laskee hallinnan kustannuksia. Validos mahdollistaa myös avoimen lähdekoodin laajemman käytön muun muassa sen takia, että validoinnit voivat jo olla valmiina, jolloin päätökset avoimen lähdekoodin käytöstä ovat helpompia (ei tarvitse odottaa validointiprosessin valmistumista). Validos myös tarjoaa mahdollisuuden oppia avoimesta lähdekoodista toisilta, jotka ovat vastaavanlaisissa tilanteissa.

Emme keksi mitään syytä olla kokonaan käyttämättä avointa lähdekoodia.

 


Validos-yhteistyö on sitä hyödyllisempää kaikille jäsenille, mitä enemmän jäseniä siinä on mukana. Siksi Validos on avoinna uusille yritys- ja yhteisöjäsenille. Katso lisää tietoa toiminnasta ja jäsenyydestä. Pyydä lisätietoja tai ota yhteyttä!