Avoin lähdekoodi.html

 
ca de en es fr it nl no pl pt ru ro fi sv tr vo


 

Avoin lähdekoodi (engl. open source, äännetään IPAn mukaan [əupən sɔ:s][1]) tarkoittaa ohjelmia, jonka lisenssi täyttää Open Source Initiativen määrittelemät vaatimukset (katso jäljempänä).

Avoin lähdekoodi yhdistetään puhekielessä esimerkiksi Linuxiin, joka on yksi avoimen lähdekoodin ohjelmistoista. Tosiasiassa Linux on myös vapaa ohjelmisto GNU/Linux-lisenssillä ja se on tullut sillä kuuluisaksi.

Sisällysluettelo

muokkaa Suljetun ja avoimen lähdekoodin ero

Avoimen lähdekoodin ohjelman käyttäjä näkee ohjelmakoodin. Ohjelmiston lisensseistä riippuen hän voi itse korjata ohjelmavirheitä ja lisätä uusia ominaisuuksia tai ehdottaa tekijälle korjauksia/lisäyksiä. Avointen lähdekoodien ohjelmien avoimen tuotantoympäristön ansiosta kuka tahansa voi tehdä tuollaisen muutoksen. Tästä seuraa se, että korjaukset tulevat nopeasti. Parhaissa tapauksissa viie on vain tunteja, jos sitäkään. Tämä on tärkeää esim. tietoturvahaavoittuvuuden korjauksissa.

Suljetun lähdekoodin ohjelmistossa käyttäjä ei näe ohjelmiston lähdekoodia. Mikäli ohjelmaan tulee vika, ohjelman käyttäjä joutuu raportoimaan siitä ohjelman tekijälle. Toinen vaihtoehto on, että hän sopeutuu vikaan ja yrittää minimoida haittavaikutuksia. Ohjelman tekijä korjaa raportoidun ohjelmavirheen ja julkistaa virheenkorjausversion ohjelmasta.

Avoimen lähdekoodin ohjelmien kehitys perustuu enimmäkseen vapaaehtoiseen kehitystyöhön. Lisäksi eri yritykset tekevät muutoksia avoimen lähdekoodin ohjelmiin. Avointa lähdekoodia kehitetään jatkuvasti. Sitä ei nähdä sanan perinteisessä mielessä valmiina vaan prosessina. Ehkä tästä johtuen joissakin avoimen lähdekoodin ohjelmissa esim. käyttöoppaiden kehitys jää puolitiehen.

Osa avoimien ohjelmien käyttäjistä osallistuu myös itse ohjelmien kehittämiseen ja niissä olevien virheiden poistamiseen. Tämä kehitys voi tapahtua jo ennen ohjelman julkistusta.

muokkaa Avoimen lähdekoodin kehittäjäyhteisö

Avoimen lähdekoodin ohjelmien kehitys perustuu julkiseen kehitysympäristöön. Ympäristöön kuuluu tyypillisesti versionhallinnalla varustettu lähdekoodin talletuspaikka (palvelin). Kehitysympäristöön kuuluu myös keskustelualueita ja virheenilmoitusjärjestelmä (johon voi kirjata myös toiveita).

Kehitysyhteisöön voi kuulua kotoistusryhmiä, jotka kääntävät (translate) ohjelman eri kielille. [2] Kotoistukseen kuuluu ohjelman kansainvälistäminen (internationalisointi) ja sitten kotoistus (lokalisointi). Kotoistukseen kuuluu tietokoneohjelman käyttämän kielen lisäksi idiomit, tekstin vierityssuunta, päivämäärän esitysmuoto, valuutta, desimaalierotin ja värit. Kotoistus sisältää myös käyttöoppaat ja lisenssit.

Kehittäjäyhteisöön voi kuulua laaturyhmä, joka huolehtii ohjelman laadusta. Ulkonäöllisiin seikkoihin kiinnittää huomion siihen keskittyvä ryhmä.

Avoimen lähdekoodin kehitysyhteisöihin voi liittyä kuka tahansa. Jäsenet voivat kertoa mielipiteensä uusista ominaisuuksista, testata ohjelmistojen toimivuutta, tarkistaa lähdekoodia, korjata virheitä ja kirjoittaa uutta lähdekoodia. Kilpailu kehittäjien välillä on kovaa. Etuna on se, että koodia kehitetään kunnianhimoisesti. Kovan kilpailun haittavaikutuksia ovat yhteisön sisäiset erimielisyydet teknisistä yksityiskohdista, termeistä, toteutuksesta, projektien organisoinnista ja tavoitteista. Kiistoista tunnetuin koskee termejä avoin lähdekoodi vai vapaa ohjelmisto.

muokkaa Avoin lähdekoodi vai vapaa ohjelmisto

Linuxin keksijä, suomalainen Linus Torvalds suosii termiä "avoin lähdekoodi". Se sopii hänen mukaansa paremmin yritysten käyttöön kuin "vapaa ohjelmisto" (free software). Englanninkielinen sana free tarkoittaa nimittäin sekä ilmaista että vapaata, eivätkä yritykset halua antaa asiakkailleen sitä vääristynyttä kuvaa, että kyse olisi ilmaisesta tuotteesta.

Vapaan ohjelmiston määritelmän kehitti alun perin GNU-projektin ja Free Software Foundationin johtaja Richard Stallman. Stallman on arvostellut avoimen lähdekoodin liikettä pragmaattisuudesta ja vapaiden ja "puolivapaiden" ohjelmien rajan hämärtämisestä. Ristiriidat eivät ole kuitenkaan olleet yhteensovittamattomia, vaikka termeissä on nyanssieroja. Asiaan perehtymättömän näkökulmasta kyseessä on kilpailevien leirien kukkotappelu tunnustuksesta, maineesta ja kunniasta.

Käytännössä kaikki vapaat ohjelmistot ovat myös avoimen lähdekoodin ohjelmistoja, ja avoimen lähdekoodin ohjelmistot vapaita, eli termit viittaavat samaan kohteeseen, vaikka painotus eroaakin.

muokkaa Avoimen lähdekoodin määritelmän pääkohdat

Avoimella lähdekoodilla voidaan tarkoittaa ohjelmistoa, jonka lisenssi täyttää seuraavat Open Source Initiativen (OSI) määrittelemät vaatimukset. OSI on organisaatio, jonka tarkoitus on edistää avoimen lähdekoodin ohjelmistojen käyttöä.

  1. Ohjelman täytyy olla vapaasti levitettävissä ja välitettävissä.
  2. Lähdekoodin täytyy tulla ohjelman mukana tai olla vapaasti saatavissa.
  3. Myös johdettujen teosten luominen ja levitys pitää sallia.
  4. Lisenssi voi rajoittaa muokatun lähdekoodin levittämistä vain siinä tapauksessa, että lisenssi sallii korjaustiedostojen ja niiden lähdekoodin levittämisen. Voidaan myös vaatia, ettei johdettua teosta levitetä samalla nimellä tai versionumerolla kuin lähtöteosta.
  5. Yksilöitä tai ihmisryhmiä ei saa asettaa eriarvoiseen asemaan.
  6. Käyttötarkoituksia ei saa rajoittaa.
  7. Kaikilla ohjelman käsiinsä saaneilla on samat oikeudet.
  8. Lisenssi ei saa olla riippuvainen laajemmasta ohjelmistokokonaisuudesta, jonka osana ohjelmaa levitetään, vaan ohjelmaan liittyvät oikeudet säilyvät, vaikka se irrotettaisiin kokonaisuudesta.
  9. Lisenssi ei voi asettaa ehtoja muille ohjelmille. Ohjelmaa saa levittää myös yhdessä sellaisten ohjelmien kanssa, joiden lähdekoodi ei ole avointa.
  10. Lisenssin sisällön pitää olla riippumaton teknisestä toteutuksesta. Oikeuksiin ei saa liittää varaumia jakelutavan tai käyttöliittymän varjolla.

Tekijänoikeudet säilyvät koodin kirjoittajilla. Näiden kriteerien pohjalta esimerkiksi seuraavilla lisensseillä varustettuja ohjelmistoja voidaan pitää avoimen lähdekoodin ohjelmistoina: GNU GPL:n ja BSD-lisenssit, Apache-ryhmä, IBM:n (IBM Public License), Intelin (Intel Open Source License), Applen (Apple Public Source License), Nokian (Nokia Open Source License), Sun Microsystemsin (Sun Industry Standards Source License ja Sun Public License) ja Mozillan (MPL 1.0 ja 1.1) lisenssit.

muokkaa Monilisensointi

Jotkin ohjelmistot, kuten MySQL, ovat saatavilla vapaasti GNU GPL:n alaisena ja lisäksi maksullisena versiona niille, jotka haluavat sisällyttää koodin osaksi omaa suljetun lähdekoodin tuotettaan. Tällöin tulee korostetusti esille, että vapaa ohjelmisto ei ole ilmainen siinä mielessä, että sen saisi omia itselleen, vaan muokattu koodi tulee antaa muiden käyttöön. Näin varmistetaan se, että kehittäjät saavat nauttia muiden työstä ja ohjelmiston kehittäminen jatkuu.

muokkaa Katso myös

muokkaa Viitteet

  1. Raija Hurme, Maritta Pesonen ja Olli Syväoja: Englanti–suomi suursanakirja. English–Finnish General Dictionary. WSOY ja Valitut Palat, 1995. ISBN 951-584-128-3.
  2. Suomen kielen kotoistuksen portaali http://www.lokalisointi.org/ (katsottu 2.1.2008)

muokkaa Aiheesta muualla

All Right Reserved © 2007, Designed by Stylish Blog.