GNU/Linux – 25 vuotta avoimien ohjelmistojen aikakautta
Kaksikymmentäviisi vuotta sitten, elokuun 25. päivänä vuonna 1991, Linus Torvalds ilmoitti ensimmäisen Linux-versionsa julkistamisesta. Yhdessä Torvaldsin luoman käyttöjärjestelmäytimen kanssa, avoimien ohjelmistojen GNU-projektin tuottamat käyttöjärjestelmätyökalut voitiin lopultakin yhdistää täysiveriseksi käyttöjärjestelmäksi, joka tuli lopulta tekemään historiaa; Nykyään Linux on ylivoimaisesti maailman yleisin käyttöjärjestelmä asennettujen ohjelmistokerneleiden määrällä laskettuna.
Tämä kaikki on yleisesti tunnettua IT-historiaa, mutta se mikä useimmilta on jäänyt huomaamatta, on se, että tämä ensimmäinen läpimurron saavuttanut avoimen lähdekoodin (open source) sovellus aiheutti lopulta myös koko ohjelmistoteollisuuden perinpohjaisen mullistuksen.
Mullistus perustui avoiminen ohjelmistojen käyttämään vapaaseen lisensointimalliin. GNU/Linuxin tapauksessa GPL-lisensointiin (GNU Public Licensing). GPL-lisensointi on GNU-projektin perustajan Richard Stallmanin kehittämä lisensointiperiaate avoiminen ohjelmistojen lisensointia varten.
Lyhykäisyydessään GPL-lisensointi tarkoittaa sitä, että ohjelman lähdekoodi (source code) on vapaasti kenen tahansa ohjelmistokehittäjän käytettävissä, mikäli hän antaa siihen tekemänsä muutokset edelleen vapaasti muiden käytettäväksi.
Äkkiseltään ajateltuna on täysin älyvapaata antaa omia tuotoksiaan ilmaiseksi muiden käyttöön, mutta todellisuudessa se on johtanut huimaan tehokkuudeen kasvuun, josta kaikki hyötyvät; Pienen ja suljettun kaupallisen tuotekehitysyksikön sijaan yhtä ohjelmistoa saattaa kehittää satojen tai jopa tuhansien vapaaehtoisten koodareiden globaali yhteisö. Eivätkä patentit tai lisenssimaksut ole kehityksen hidasteena. Kaikki kehittäjät hyötyvät siitä, että alan parhaat ideat ovat heti kaikkien käytettävissä, jolloin tuotantotehokkuus ja sovellusten laatu paranevat merkittävästi.
Sama asia Torvaldsin omin sanoin:
"
To me open-source has always been about how I think it's a much better way of doing development. I think it's more productive when you cut through all the bullshit, through the borders between companies, and you can just work togheter with other people. That's why, obviously, it's so much more fun too, because you don't have to worry about who you are talking to. You can just take input from anybody who has a good idea. So I think open-source is just a technically much better way of doing things.
", Linux Magazine, November 2016
Torvaldsin ansio avoimuuden läpimurtoon oli toteutuskyky ja taito hallinnoida satojen ja tuhansien vapaaehtoisten koodareiden työtä tehokkasti. Torvalds oli myös erinomainen avoimien ohjelmistokehityksen puolestapuhuja ja markkinoija. Linuxin menestys sai lopulta koko ohjelmistoteollisuuden ottamaan avoimuuden periaatteen vakavasti.
—
Avointen ohjelmistojen kaltainen avoimuusperiaate ei sinänsä ajatuksena ole mitään uutta taivaankannen alla. Samaa periaatetta on noudatettu jo pitkään esim. tieteen kehityksessä; Kaikki tieteelliset tutkimukset ovat kaikkien käytettävissä, muokattavissa ja arvioitavissa. Ilman avoimuutta meillä ei edes olisi tiedettä sanan nykyisessä merkityksessä. Tätä tiedemaailmassa hyväksitodettua toimintamallia on vain noudatettu toisessa ympäristössä eli ohjelmistokehityksessä.
Avoimuusperiaate toimii erinomaisesti kaikessa immateriaalisessa, luovassa kehitystyössä. Myös taide on myös hyvä esimerkki avoimuusperiaatteen noudattamisesta. Mitä muuta taide onkaan kuin olemassa olevien ideoiden muokkausta ja kierrätystä? Taiteessa kaikki kopioivat ja muokkaavat toistensa tuotoksia ja luovat uusia kombinaatoita.
—
Avoimen lisensointimallin vaikutukset ohjelmistoteollisuuteen ovat olleet vallankumoksellisia. Nykyään merkittävä osa ohjelmistotyökaluista ja ohjelmistoille yhteisistä perusohjelmistokomponenteista kehitetään avoimena. Mm. internetin ohjelmistoinfrastruktuuri perustuu lähes kokonaisuudessaan avoimeen koodiin. Suositut internet-palvelut, kuten Facebook, Spotify, Youtube, Amazon, Google, perustuvat myöskin laajalti avoimiin ohjelmistoihin.
Se, että internet täyttyi hyvin nopeasti erittäin kehittyneistä, edullisista ja jopa ilmaisista palveluista, johtuu nimenomaan avoimuusperiaatteesta. Suljetut, kaupalliset yritykset, eivät olisi ikimaailmassa kyenneet itsenäisesti rakentamaan vastaavia edullisia palveluita samassa ajassa. Nykyinen internet ei siis olisi mitenkään mahdollinen ilman avoimia ohjelmistoja ja avointa lisensointia.
—
Mitä sitten jatkossa?
Ohjelmistomaailma ei ole aivan vielä valmis. Joitain esteitä on vielä purettavana, kuten esimerkiksi ohjelmistopatentit. Sellaisia jostain syystä edelleen myönnetään. Mielestäni se on sama kuin jos joku yrittäisi patentoida matemaattisen kaavan. EU:n onkin ryhdyttävä toimiin ohjelmistopatentoinnin lopettamiseksi EU-alueella.
Avoimuusperiaate on ilahduttavasti levinnyt myös Start-up-kulttuuriin ja saanut yritykset toimimaan entistä läheisemmässä yhteistyössä. Hienoin esimerkki lienee suomalainen peliala, jossa eri yritykset avoimesti tukevat toinen toisiaan. Ja menestyskin on ollut sen mukaista. Saman ilmiön soisi levittäytyvän laajemminkin suomalaiseen yrityskulttuuriin; Enemmän yhdessä tekemistä, toisten tukemista ja yhteisen edun (suuremman kakun) tavoittelua.
Suomalaisittain vapauttaisin myös työlupien myöntämistä EU:n ulkopuolisille ohjelmistokehittäjille. Meidän on huolehdittava siitä, että saamme houkuteltua huippuohjelmoijia maahamme. Yksi huipputason koodari työllistää helposti useita muitakin. Ulkomaalaiset huippukoodarit parantavat työllisyyttämme, eivätkä heikennä sitä.
Nykyinen maailmamme pyörii ohjelmistoilla, eikä siinä kisassa kannata jättäytyä jälkeen.
18.10, Lisäystä:
Open-source-malli sopinee kaikkeen teknologiakehitykseen. Rahastus suoritettaisiin vasta myytäessä lopputuotetta/palvelua. Patenttijärjestelmästä olisi luovuttava, sillä siitä on todnäk. enemmän haittaa kuin hyötyä bisneksenteolle.
Olen kyllä semmoisessa käsityksessä Linus tekemän Linux kerneli:llä ei ole juurikaan tekemistä GNU projektin kanssa, muutenkuin ehkä lisenssin kautta. Joten semmoista asiaa kuin GNU/Linux kerneli ei ole olemassa, ainakin Linus on aina käyttänyt omasta kernelistä nimeä ’Linux’-kernel.
Joo ehkä GNU projekti on forkannut Linux kernelin ja stripannut kaikki blob binäärit pois. Tämä on tosin varmaan yhtä käyttökelpoinen kuin Hurd-kerneli …
Ilmoita asiaton viesti
Juu, GNU/Linux on ollut Stallman:in esittämä nimitys kernelille, mutta Linus ei ole siihen suostunut. Hyvä niin.
Hyvä kirjoitus blogistilta.
Ilmoita asiaton viesti
Kiitos Heikki!
Laitoin otsikoinnin tunnustuksena myös Stallmanille open-source vaikuttajana.
GNU/Linux termiä ei tosiaan yleisesti käytetä kernelistä tai Linux jakeluista.
Ilmoita asiaton viesti
Ei Stallman ole kutsunut Linux-ydintä GNU/Linuxiksi. Hän on kutsunut käyttöjärjestelmää GNU/Linuxiksi. Tämä on paljolti asianmukaista, koska Linux-jakeluissa suurin osa käyttöjärjestelmäohjelmista tulevat, Linux-ydintä lukuun ottamatta, GNU-projektista.
GNU/Linux on siis käyttöjärjestelmä, jonka ytimenä (engl. kernel) on Linux.
Käytännössä GNU/Linux:sta ja sen lukuisista jakeluversioista kuitenkin käytetään nimeä Linux. Tämä yksinkertaistus hieman kismittää Stallmannia, mutta kyllä me useimmat tunnemme käsitteen merkityksen ja GNU-projektin panoksen.
Lisäksi sitten eri ”Linux”-jakeluiden mukana tulevista ohjelmista suurin osa on sekä GNU:n että Linux:n ulkopuolisia kerroksia.
Ilmoita asiaton viesti
Kuulostaa Marko loogiselta.
Oman kommenttini pohjasin Linusin omaan tulkintaan:
”Richard Stallman campaigned to change the name Linux to gnu/linux”
Lähde: Torvalds, Diamond: Just for fun, sivu 163.
Yhteydestä ei käy ilmi tarkoittiko Linus kerneliä vaiko käyttöjärjestelmää, mutta koska Stallman kohdisti vaateensa juuri Linusille, eikä distrojen kasaajille, voisi kuvitella, että hän erityisesti tarkoitti kerneliä.
Ilmoita asiaton viesti
Tämä oli täsmällinen vastaus, kiitos Marko!
—
Otsikossa halusin siis jakaa krediittiä myös Stallmanille.
Parempi kuitenkin, että open-source keulakuvaksi nousi kuitenkin Torvalds, joka on hyvin pragmaattinen henkilö ja konkreettisesti sai ns. paketin kasaan.
Käsittääkseni Stallman on henkilönä hankala ja liian puhdasoppinen.
Ilmoita asiaton viesti
Käyttöjärjestelmää kutsutaan osiota joka keskustelee rautakerroksen kanssa. Siis kernel ja käyttöjärjestelmä on Linux kernelin tapauksessa sama asia.
Linus kutsuu omaa kerneliä pelkäksi Linux-kerneliksi. Se ei ole mikään yksinkertaistaminen vaan ohjelmistopaketin ’isän’ etuoikeus.
Jos ottaa GNU jutut pois kernelistä ja korvataan toisella vastaavilla niin silloinkin LInux-kerneli on Linux-kerneli.
Mitä GNU projektista on otettu niin käytännössä GPL lisenssi joka mahdollistaa muutoksien tekemisen kerneliin ilman että Linus hyväksyisi ne itse henkiläkohtiasesti.
Ilmoita asiaton viesti
«Käyttöjärjestelmää kutsutaan osiota joka keskustelee rautakerroksen kanssa. Siis kernel ja käyttöjärjestelmä on Linux kernelin tapauksessa sama asia.»
Kyllä käyttöjärjestelmällä yleensä tarkoitetaan jotain laajempaa kuin pelkkä ydin. Sinällään koko käyttöjärjestelmä sekalaisine järjestelmäohjelmineen, kuten ikkunointijärjestelmä, ”keskustelee rautakerroksen kanssa”, mutta ydin keskustelee alimmalla tasolla. Sinällään ei ole selkeää teknistä tai arkkitehtuurista eroa järjestelmäohjelmien ja sovellusohjelmien välillä.
Jokin poiminta:
In 1991, Finnish computer science student Linus Torvalds, with cooperation from volunteers collaborating over the Internet, released the first version of the Linux kernel. It was soon merged with the GNU user space components and system software to form a complete operating system. (Wikipedia/Operating System)
Vastaavasti Android tai Chrome OS ovat käyttöjärjestelmiä, joiden ytimenä on Linux(-ydin). Sinällään puhutaan ”Linux-jakeluista”, kuten Debian tai Ubuntu, mutta oikeampi termi on Debian-käyttöjärjestelmä tai Ubuntu-käyttöjärjestelmä. Ei toki ole kamala väärinkäytös puhua niistä Linux-käyttöjärjestelminä.
Ilmoita asiaton viesti
Ehkä sitten kannattaisi antaa kreditit myös Andrew S. Tanenbaumille, joka julkaisi 1987 Minix käyttöjärjestelmäytimen.
Sinänsä sääli, että mikroytimeen perustuva käyttöjärjestelmä ei lyönyt itseään läpi.
Ilmoita asiaton viesti
Varmasti Tanenbaumkin on oikeutettu krediitteihin, samoin kuin monet muut unix vaikuttajat (mm. Kernighan & Richie).
Torvaldsin pääansio oli varmaankin johtamiskyky ts. kyky saada asiat oikeasti myös tehdyiksi ja sopivuus open-source keulakuvaksi/saarnamieheksi.
Ilmoita asiaton viesti