Avoin Elämä: Luku 2
Luku 1 | Avoin Elämä: Luku 2 jossa Linus on diktaattori, laiskuus on hyve ja hakkerit taistelevat identiteetistään. Kirjoittanut Henrik Ingo |
Luku 3 |
Luku 2
muokkaaOpetuksia Open Source -maailmasta
muokkaaTämän kirjan tarkoituksena ei ole olla Linux-historiikki. Myöskään en aio kirjoittaa mitään teknistä selostusta siitä, miten Linux toimii. Koska olen insinööri, en myöskään aio kirjoittaa etiikasta niinkuin Himanen tekee.
Open Source -liike on ohjelmistoalalla menestyksekkäästi haastanut perinteisen ajattelutavan, jota edellä kutsuimme niinkin ikävällä sanalla kuin pihtaaminen. Mutta ohjelmistoala on vain pieni osa maailmaa. Henkilökohtaisesti uskon, että muilla liiketoiminnan aloilla olisi Open Source -liikkeestä paljon opittavaa. Ja yksityisinä henkilöinä meillä kaikilla on jotain opittavaa siitä, miten nämä ihmiset ovat onnistuneet haastamaan pihtaamisen kulttuurin. Suurin osa meistä ei ehkä edes huomaa elävänsä sellaisessa ajatusmaailmassa, jossa emme halua opettaa kaverillemme viinilasilla soittamista. Mutta vaikka huomaisimmekin, niin meillä ei ehkä kuitenkaan olisi mitään vaihtoehtoisia toimintamalleja.
Tämän kirjan tavoitteena on tutkia Open Source -yhteisön tapoihin, työntekoon ja liiketoimintaan liittyvää kulttuuria ja siihen liittyviä arvoja. Lähestymistapa on hyvin käytännönläheinen, paikoin jopa hieman tapaustutkimuksia muistuttava. Tässä luvussa tarkastelemme – opiksi ja opetukseksi – joitakin Open Source -yhteisön työssään arvostamia periaatteita ja käytäntöjä. Aloitetaan aiheesta, josta on takuuvarmasti kaikille hyötyä: stressinhallintaa a'la Linus Torvalds.
Kuolema deadlineille
muokkaaLinus Torvalds on siis Linux-käyttöjärjestelmän luoja ja johtaa edelleen sen kehitystä. Kun Linus helmikuussa 1997 valmistui Helsingin yliopiston tietojenkäsittelytieteen laitokselta hän siirtyi Kalifornialaiseen Transmeta-yhtiöön töihin. Koska Linux alkoi samaan aikaan olla jo suhteellisen kypsä käyttöjärjestelmä, se sai vähitellen myös lehdistön huomiota. Linuksen siirtyminen Amerikan mantereelle teki hänestä amerikkalaiselle lehdistölle helpommin tavoitettavan ja niin ujosta nörtistä tuli yhtäkkiä koko Open Source -liikkeen kansikuvapoju.
Yksi yleisimmistä kysymyksistä siihen aikaan oli: "Milloin julkaistaan Linuxin seuraava versio?". Tähän Linuksella oli aina vakiovastaus: "Sitten kun se on valmis."
Yksi Open Source -ohjelmistokehityksen kantavia periaatteita jo ennen Linuksen mukaantuloa on ollut, että ohjelma julkaistaan sitten kun se on valmis. Mitään deadlineja ei tunneta, eivätkä tekijät suostu antamaan edes viitteellisiä lausuntoja mahdollisesta valmistumisajankohdasta.
Legendaarisessa The Cathedral and the Bazaar5 -kirjoituksessaan Eric Raymond ruotii tätä periaatetta. Hän tulee siihen tulokseen, että ohjelmistoprojektissa, kuten missä tahansa muussa projektissa, asetetaan tyypillisesti kolmenlaisia tavoitteita: 1) Valmiissa tuotteessa tulee olla tietyt ominaisuudet, 2) tuotteen tulee täyttää tietyt laatukriteerit ja 3) sen tulee valmistua tietyssä aikataulussa.
Näiden kolmen vaatimuksen – ominaisuuksien määrä, laatu ja aikataulu – välillä on tietty jännite. Jos esimerkiksi aikataulu on liian kireä, ei ehkä kaikkia ominaisuuksia ehditäkään toteuttamaan. Jos projektipäällikkö kuitenkin on tiukka ja pitää kiinni asetetuista tavoitteista sekä ominaisuuksien määrän että aikataulun suhteen, joutuvat työntekijät hosumaan ja laatu kärsii. Raymond tulee kuitenkin siihen tulokseen, että jos tietoisesti suostutaan luopumaan yhdestä tavoitteesta, voidaan kahden muun osalta yleensä päästä hyviin tuloksiin.
Open Source -yhteisön periaate deadlineja vastaan on tätä taustaa vasten järkevä valinta. Se on todennäköisesti yksi syy Open Source -ohjelmistojen menestyksen takana. Toisaalta se on räikeä vastakohta muussa yritysmaailmassa vallalla olevalle projektikulttuurille, jossa ei ainoastaan ole yhtä deadlinea, vaan myös monta väli-deadlinea. Joskus tuntuu jopa siltä, että suurin osa projektipäällikön tehtävistä liittyy aikataulujen suunnitteluun, aikataulujen seurantaan ja aikataulujen uudelleenarviointiin. Itse tehtävä työ onkin sitten toisarvoista.
Sain itse kokea tämän jokin aika sitten, kun osallistuin erääseen projektiin, jossa asiakkaana oli eräs suomalainen tietotekniikka-alan yritys.6 Ensimmäisissä palavereissa asiakas ei vielä tarkalleen edes tiennyt projektin sisältöä, vaan tarkempi vaatimusmäärittely (ominaisuuksien määrä) oli osa projektia. Heti alusta yksi asia kuitenkin tiedettiin varmasti: aikataulu. Ennen kuin edes tiedettiin mitä haluttiin tehdä, oltiin lyöty lukkoon deadline. Aikataululle oli myös "hyvin perustellut" syyt. Projekti oli pakko toteuttaa seuraavan kahden kuukauden sisään, sillä siihen käytettävät varat tulivat meneillään olevan vuosineljänneksen budjetista. En tiedä kertooko tämä jotain asioiden tärkeysjärjestyksestä kyseisen yrityksen sisällä, mutta minua se ainakin huvitti.
Projektin deadlinen lähestyessä huvitus olikin tiessään, kun myöhään sunnuntai-iltana viimeistelimme tuotettamme. Projektin päätöspalaveri saatiin kuin saatiinkin pidettyä aikataulun puitteissa, ja lasku lähetettiin vuosineljänneksen viimeisenä päivänä ja kaikki olivat tyytyväisiä. Tähänkin liittyi tosin jonkin verran itsepetosta, sillä parin kuukauden päähän sovittiin vielä yksi palaveri, jossa käytäisiin läpi kaikki asiat joita ei ehditty tehdä päätöspalaveriin mennessä, ja niitä oli kyllä aika paljon. Hyvä niin. Parempi tinkiä sitten vaikka omasta rehellisyydestään kuin laadusta. Projekti todettiin siis onnistuneeksi ja ajallaan valmistuneeksi.
Laatu ja ominaisuuksien määrä ovat yritysmaailmaan ja tuotantoon liittyviä asioita. Ehkäpä joku projektipäällikkö voi hyödyntää Eric Raymondin ajatuksia seuraavassa projektissaan. Mutta vielä tärkeämpää on ymmärtää deadlinien vaikutus meidän jokaisen omaan elämään. Deadline on monille sananmukaisesti kuolemanvakava asia. Hosumme kuin hullut ja teemme yötä myöten töitä, jotta ehtisimme saada työn valmiiksi aikataulussaan. Kuitenkin hyvin usein tämä kuolemanvakava aikataulu on täysin hatusta vedetty tai – kuten omassa tapauksessani – jonkun täysin turhan byrokraattisen pikkuseikan seuraus. Tämänkö takia me olemme niin stressaantuneita?
Linus on pyrkinyt selvittämään omaa suhtautumistaan työntekoon periaatteella, joka tunnetaan Linuksen lakina. Linuksen laki vastaa kysymykseen, miksi ihminen tekee jotain? Ensinnäkin ihminen tekee jotain säilyäkseen hengissä. Toiseksi ihminen tekee asioita sosiaalisista syistä. Ja kolmanneksi ihminen tekee asioita huvin vuoksi. Ja nimenomaan siis tässä järjestyksessä.
Linuksen laki pätee siis esimerkiksi juuri työntekoon. Ihmiset tekevät työtä ensisijaisesti siksi, että saisivat palkkarahoilla ruokaa ja katon pään päälle. Mutta jos tämä olisi ainoa tavoite, riittäisi nykyistä huomattavasti vähäisempikin työn määrä. Joku on sanonut, että jos kysymys olisi vain välttämättömän ravinnon hankkimisesta, riittäisi länsimaiselle ihmiselle tehdä pari tuntia työtä viikossa. Olemme siis tienanneet välttämättömimmän osan palkastamme jo maanantai-iltapäivään mennessä. Sitä paitsi Suomen kaltaisessa hyvinvointivaltiossa olisi todennäköisesti täysin mahdollista säilyä hengissä koko elämänsä7 tekemättä työtä ollenkaan. Kuitenkin ihmiset haluavat tehdä työtä. Miksi?
Ihmiset käyvät töissä sosiaalisista syistä ja huvin vuoksi. Parhaat kaverimme löydämme yleensä koulusta ja työpaikalta. Tämä on siis sosiaalinen syy. Ja yleensä ihmiset pyrkivät pääsemään sellaiseen työhön, josta he nauttivat. He tekevät siis työtään huvin vuoksi. Mutta jos teemme työtä huvin vuoksi ja nauttiaksemme siitä, miksi sitten raadamme itsemme näännyksiin teennäisten aikataulupaineiden alla? Miksi raadamme kuin kysymys olisi edelleen elämästä ja kuolemasta? Linusin mielestä mitään järkevää syytä ei ole. Työstä kuuluu nauttia, koska sen takiahan sitä tehdään. Deadlinet ovat haitaksi sekä työn tekijälle, että itse työlle.
Linux 2.2 julkaistiin lopulta 25 tammikuuta 1999. Tämän jälkeen alkoikin arvuuttelu siitä, milloin julkaistaan seuraava versio 2.4.8 Nyt ollaan jo päästy versioon 2.6. Sen julkaisua lehdistö jaksoi jo odottaa rauhassa, eikä kukaan enää kysynyt Linukselta siihen liittyviä päivämääriä.
Lehdistö on oppinut jotain. Ota sinäkin oppia Linuxista. Ota rennosti ja nauti siitä mitä teet.
Tekemättömät työt
muokkaaToinen kysymys, jonka Linus ja monet muut Open Source -ohjelmoijat kuulevat usein on: "Miksi ohjelmassasi ei ole sitäjasitä ominaisuutta?". Tämän kysymyksen esittäjät eivät niinkään usein ole lehtimiehiä kuin esimerkiksi kyseisen ohjelman käyttäjiä, eli tavallaan tuotteen asiakkaita. Myös tähän kysymykseen on olemassa vakiovastaus: "Koska kukaan ei ole vielä tehnyt sitä."
Vastaus on päällisin puolin tarkasteltuna vähän töykeä. Varsinkin jos siihen vielä lisätään: "Ohjelman lähdekoodi on verkossa vapaasti saatavana. Jos tarvitset jotain ominaisuutta voit vapaasti tehdä sen itse." Ottaen huomioon, että kysymyksen esittäjä ei välttämättä edes osaa ohjelmoida, vastaus todellakin on vähän töykeä.
Vastaukseen sisältyy kuitenkin aimo annos tervettä itsesuojeluvaistoa. Suurin osa Open Source -ohjelmistoista on tehty vapaaehtoisvoimin. Esimerkiksi Linus aloitti Linuxin teon opiskellessaan käyttöjärjestelmien ohjelmointia. Se oli hänen harrastuksensa, ei mitään muuta. Kun Linuxista sitten tuli joten kuten toimiva versio, Linus edelleen kehitti sitä vain ja ainoastaan itseään varten, toteuttaen sellaisia ominaisuuksia, jotka kiinnostivat häntä itseään. Halusipa Linus sitä tai ei, Linuxista tuli kuitenkin suosittu. Muutkin kuin Linus itse innostuivat käyttämään hänen käyttöjärjestelmäänsä. Palautteen saaminen omasta työstään on varmasti ollut imartelevaa. Mutta palautteen mukana alkaa tulla myös erilaisia pyyntöjä: "Yksi juttu ei toimikaan minun koneellani, voisitko korjata sen?" tai "Olisi todella siistiä jos Linuxissa voisi tehdä myös..." Toisten miellyttämisen halu on inhimillinen taipumus. Varsinkin kun kyse on elämäntyöstämme, haluamme mielellämme, että ihmiset pitäisivät siitä. Mutta kun pyyntöjä tulee kohta tuhansia, niihin hukkuu.
Lisäksi täytyy ottaa huomioon, että maailmassa on valitettavasti paljon ihmisiä, joiden elämäntehtävänä on valittaa. Kun Linus on innoissaan tehnyt itselleen hienon käyttöjärjestelmän, kuuluu suosionosoitusten seasta myös: "Linuxissa ei ole sitä..." ja "Linux ei osaa tätä..." Nämä ovat niitä ihmisiä, jotka eivät ikinä ole tyytyväisiä mihinkään. Samaan kastiin kuuluvat myös ne propellipäät, jotka tulevat innoissaan esittelemään omaa ideaansa: "Olen ajatellut, että Linuxiin voisi lisätä sellaisen ominaisuuden..." Mutta jos heidän ehdottamansa ominaisuus ikinä lisättäisiin, he eivät ikinä tulisi käyttäneeksi sitä, sillä heillä olisi jo kymmenen uutta ideaa, joiden toteuttaminen olisi todella siistiä. Ohjelmoijaparka haluaisi mielellään miellyttää kaikkia näitä valopäitä, mutta jos hän sitä yrittää, hän kohta nääntyy kaikkien pyyntöjen alle. Mikä pahempaa, liiallinen suosio voi sitä kautta koitua jopa hyvin alkaneen projektin kohtaloksi.
Tätä taustaa vasten meidän tulee ymmärtää, että ohjelmoijan töykeähkö vastaus onkin tulkittavissa kohteliaaksi eiksi. "Koska teen tätä ohjelmaa harrastusluontoisesti ja omaksi ilokseni, minulla ei valitettavasti ole aikaa toteuttaa tuollaista ominaisuutta, jota en itse tarvitse. Mielestäni ideasi on kuitenkin mainio, ja jos haluat voin neuvoa miten voit itse toteuttaa sen, sillä koodi on vapaasti verkossa saatavana. Yhdessä tekeminen on muutenkin kivaa."
Vastaukseen sisältyy itsesuojeluvaiston lisäksi toinenkin pieni totuuden siemen. Onhan nimittäin totta, että jos kysyjä todella tarvitsisi kysymäänsä ominaisuutta, hän voisi tehdä sen itse tai ainakin palkata jonkun, joka osaa tehdä sen. Kuten juuri totesimme, monet näistä kysyjistä ovat kyllä innoissaan hyvästä ideastaan, mutta kun asia esitetäänkin heille tällä lailla, innostus laantuu. He eivät oikeasti usko loistavaan ideaansa niin paljoa, että olisivat valmiit panostamaan ideaansa sekuntiakaan – tai penniäkään.
Hyvä ystäväni on ammatiltaan pastori. Voin kertoa, että pastorin työ on paljon monipuolisempaa kuin voisi kuvitella. Jumalanpalvelusten ja häiden lisäksi pitää järjestää kaikenlaista ohjelmaa niin nuorille kuin vanhuksillekin. Tämän lisäksi pitää ymmärtää äänentoiston päälle ja olla mikrotukihenkilönä. Ja paljon muuta mielenkiintoista projektia hänellä on aina meneillään. Onpa hän saarnannut myös internetissä suorassa lähetyksessä.
Puhuimme kerran siitä, miten hän suunnittelee omia töitään. Hän kertoi, että yleensä kesä- ja joululoman jälkeen hän kirjoittaa paperille listan asioista ja projekteista, joita pitäisi tehdä. Listaan voi myös tarpeen vaatiessa myöhemmin lisätä rivejä, jos uusia hyviä ideoita syntyy. Sitten vaan valitaan listalta yksi tai useampi asia työn alle. Kun joku projekti saadaan päätökseen, voidaan sen yli vetää viiva.
Kun puoli vuotta on kulunut, on taas uuden listan vuoro. Moni vanhan listan projekti on saatu onnistuneesti päätökseen, mutta suurin osa on yleensä tekemättä. Kuten ohjelmoijillakin, myös pastoreilla tuntuu olevan enemmän ideoita kuin aikaa. Edelleen tekemättä olevat projektit voidaan ottaa mukaan uudelle listalle.
Joskus voi käydä niin, että joku loistoidea sitkeästi keikkuu vuodesta toiseen tekemättömien töiden listalla. Tällöin se poistetaan listalta, eikä muistella sitä sen enempää.
Tietämättään tämä ystäväni noudattaa töidensä priorisoinnissaan samaa periaatetta kuin Linus ja kumppanit. Heilläkin on lista ominaisuuksia, jotka he haluavat toteuttaa ohjelmassaan. Osa itse keksittyjä ja osa ehkä käyttäjiltä tulleita toivomuksia. Sitten kaikki tekevät mitä huvittaa.
Kun kaikki tekevät mitä huvittaa, niin usein tietenkin käykin niin, että joku tekemätön työ jää tekemättä pidemmäksi aikaa, kun ketään ei huvita tehdä juuri sitä. Linus ei ota tästä mitään paineita. Jos joku ominaisuus jää vuosiksi toteuttamatta, se ei voi olla kovin tärkeä, kun ilmankin on selvitty! Linuksen oppi tässä kohden siis on, että tärkeät työt valikoituvat automaattisesti tehtäväksi, eikä asiasta kannata sen vuoksi stressata.
Tänä päivänä Linux on miljardien dollarien bisnes. Pelissä mukana on sellaisia yhtiöitä kuin IBM ja HP. Jos jotain ominaisuutta oikeasti tarvitaan, he todella voivat tehdä sen itse – ja tekevätkin. Koodihan on vapaasti verkossa saatavana.
Vaikka sinulla ei olisi miljardeja dollareja, voit kuitenkin toteuttaa tätä Open Source -yhteisön periaatetta myös omassa elämässäsi. Kun seuraavan kerran pomosi tarjoaa kiireellistä uutta projektia, joka on todella tärkeä ja jonka pitäisi olla valmis heti, voit ajatella: Jos tämä projekti on firmalle todella näin tärkeä, siihen voidaan varmasti palkata joku, jonka ei tarvitse tehdä sitä ylitöinä.
Älä suunnittele mitään
muokkaaLinuxin syntymäpäivä lasketaan viestistä, jonka Linus lähetti Usenet-järjestelmän keskusteluryhmään comp.os.minix, 25. elokuuta 1991. Huomaa, että mitään Linux-aiheisia keskusteluryhmiä ei luonnollisestikaan ollut olemassa!
- From: Linus Benedict Torvalds (torvalds@klaava.Helsinki.FI)
- Subject: Mitä ominaisuuksia haluaisit nähdä minixissä?
- Newsgroups: comp.os.minix
- Date: 1991-08-25 23:12:08 PST
- Moi kaikki minixin käyttäjät -
- Olen tekemässä (vapaata) käyttöjärjestelmää (se on vain harrastus, siitä ei tule isoa ja ammattimaista niinkuin gnu:sta) 386(486) AT klooneille. Olen keitellyt tätä kokoon huhtikuusta asti ja se alkaa olla jo valmis. Haluaisin kuulla mistä asioista ihmiset pitävät/eivät pidä minixissä, sillä minun käyttöjärjestelmäni muistuttaa sitä jonkin verran (tiedostojärjestelmässä on sama fyysinen järjestys (johtuen käytännön syistä) ja pari muuta juttua).
- Olen jo portannut bash(1.08) ja gcc(1.40), ja homma tuntuu toimivan. Tämä tarkoittaa, että jo parin kuukauden päästä minulla pitäisi olla jotain toimivaa ja minua kiinnostaisi kuulla mitä ominaisuuksia ihmiset haluaisivat. Kaikki ehdotukset ovat tervetulleita, mutta en lupaa mitään :-)
- Linus (torvalds@kruuna.helsinki.fi)
- PS. Kyllä – siinä ei ole yhtään minix-koodia, ja siinä on monisäikeinen tiedostojärjestelmä. Se EI ole siirrettävä (käyttää 386 prosessinvaihtoa jne), eikä se varmaan ikinä tule tukemaan muuta kuin AT-kovalevyjä, koska muita minulla ei ole :-(.9
Viestissä on tiettyä ylevyyttä ja historian siipien havinaa. Mutta näin kolmentoista vuoden perspektiivissä se on naiiviudessaan myös hieman huvittava. Linux on iso ja kehitystyö sen ympärillä ammattimaista. Päälle päätteeksi se on todennäköisesti historian siirrettävin käyttöjärjestelmä. Nykyään Linux tukee ainakin kuuttatoista eri prosessoriarkkitehtuuria, IBM:n s390 suurkoneista pieniin kulutuselektroniikan prosessoreihin asti. Itse asiassa Linuxin koodin kehutaan olevan esimerkillisen modulaarista ja siksi helposti siirrettävää.
Ironiaa lisää se, että Linuksen mainitsema GNU-projekti ei ole vieläkään saanut valmiiksi omaa "isoa ja ammattimaista" Hurd-kerneliään. Kaikki kunnia kuitenkin heille siitä, että eivät ole vieläkään luovuttaneet. Olen itse seurannut Linuxin kehitystä läheltä yli puoli vuosikymmentä, ja koko sen ajan Hurd on ollut melkein valmis. On jotenkin huvittavaa nähdä, että tilanne oli sama jo kolmetoista vuotta sitten Linuxin syntyessä.
Käytämme yleensä ns. historian suurmiehiä esimerkkinä, kun yritämme itse löytää jonkinlaista menestystä omassa elämässämme. On jopa olemassa ihan oma psykologeista, filosofeista, tanssijoista ja ties mistä tyypeistä koostuva värikäs ammattikunta, joka ravaa yritystilaisuuksissa luennoimassa menestymisestä ja hakee inspiraatiota ja esimerkkiä muun muassa tällaisista lähteistä. Yleensä näissä luennoissa puhutaan suurista visioista, määrätietoisuudesta ja kovasta työnteosta.
Linus – kiistämätön suurmies tietotekniikan historiassa – on kuitenkin näiden hengennostatusluentojen sisältöön nähden hyvin poikkeava esimerkki. Näyttäisi siltä, että Linuxin kehittymistä ovat ohjanneet pikemminkin vision puute ja päämäärättömyys, tai ehkä kutsuisimme sitä mieluummin avoimuudeksi. Avoimuudeksi toisten ihmisten ehdotuksille. Avoimuudeksi sille, että suunnitelmat muuttuvat.
On mielestäni huvittavaa kuvitella, miten olisi käynyt, jos Linus olisi ollut esimerkiksi "määrätietoinen". Esimerkiksi kun joku Open Source -periaatteen mukaisesti ensimmäisen kerran lähetti Linusille koodia, jonka avulla Linuxia voi käyttää myös SCSI-tyyppisten kovalevyjen kanssa, hän olisi voinut vastata: "Kiitos, mutta ei kiinnosta. Tämähän on vain minun pieni ja epäammattimainen harrastukseni ja kuten kirjoitin, minulla ei ole SCSI-levyjä, joten en tarvitse tätä koodia. Sitä paitsi minulla on nyt vähän kiire, sillä teen kovasti töitä."
Vaikka ajatus naurattaakin, niin olen varma, että maailma on itse asiassa täynnä juuri vastaavanlaisia tarinoita. Tarinoita ihmisistä, jotka sanovat "kiitos, ei kiinnosta" elämänsä tilaisuudelle. Ja mahdollisesti juuri siksi, että joku luennoitsija on käskenyt heitä olemaan määrätietoinen ja tekemään kovasti töitä. Näitä tarinoita ei vain ikinä kuule, sillä näistä ihmisistä ei koskaan tule historian suuria miehiä tai naisia.
Mikä sitten on Linuksen suuruuden salaisuus? Mielestäni Linusin tarinasta voimme löytää ainakin seuraavat tärkeät periaatteet:
- Linus tekee jotain mistä on innoissaan.
- Sen lisäksi, että Linus on kiinostunut käyttöjärjestelmäohjelmoinnista itsessään, Linux on alusta asti vastannut myös konkreettiseen tarpeeseen: 1991 PC-koneiden käyttöjärjestelmät olivat joko surkeita (dos) tai kalliita (unix) ja siksi Linus päätti tehdä itse paremmin omia tarpeitaan vastaavan käyttöjärjestelmän.
- Voidaan myös sanoa, että Linus oli oikeassa paikassa oikeaan aikaan. Hän on itsekin todennut, että jos hän ei olisi tehnyt Linuxia, joku muu olisi.
- Linus oli kuitenkin se henkilö, joka oli oikeaan aikaan avoin tälle mahdollisuudelle silloin kun se tuli hänen eteensä, vaikka se ei kuulunutkaan hänen suunnitelmiinsa.
- Hän ei myöskään jäänyt työnsä kanssa omaan koppiinsa piilottelemaan, vaan jakoi työnsä tuloksia avoimesti ystävilleen.
- Ja vielä yksi tärkeä kohta: Linus ei toiminut yksin. Hän oli avoin muiden tarjoamille ideoille ja yhteistyölle. Sen lisäksi hän perusti työnsä muiden aikaisemmin tekemälle työlle (minix) ja käytti muiden tekemiä työkaluja (bash, gcc).
Tietenkin listaan voitaisiin lisätä muita, innostuskonsulttienkin hehkuttamia ominaisuuksia. On selvää, että Linus on lahjakkaimpia alallaan. Hän on myös tehnyt Linuxin parissa kovasti töitä, mutta olisi väärin kutsua tätä "kovaksi työksi". Pikemminkin on kysymys innostuneesta työstä, mikä on täysin eri asia. On siis väärin neuvoa ketään tekemään kovasti töitä, pitäisi neuvoa ihmisiä tekemään sitä mistä ovat innostuneita.
Tiivistäen tämän historian suurhenkilön opetus olisi siis: Älä suunnittele mitään, sillä et voi tietää mitä elämä tuo tullessaan.
Olisi epäreilua lopettaa tämä kappale tähän, ilman pientä huomionosoitusta GNU-projektia kohtaan. GNU-projekti on Richard Stallmanin 1984 aloittama projekti, ja hän on se henkilö, joka ensimmäisenä pyhitti elämänsä avointen ohjelmistojen tekemiselle. Vaikka Hurd-kerneli jäikin Linuxin jalkoihin, ovat lähes kaikki Linux-käyttöjärjestelmän perustyökalut peräisin GNU-projektista, mukaan lukien bash ja gcc, jotka Linuskin maintsi Linuxin syntymäviestissä. Vaikka siis hieman naurammekin Hurd-kernelille (johon Linus viittaa vain epäsuorasti), on reilua todeta, että Open Source -liikkeen menestystarinan takana on myös paljon GNU-liikkeen tekemää työtä. Ehkä onkin sopiva lopettaa tämä kappale Richard Stallmanin sanoihin, jossa hän kommentoi väitettä, että suurin osa Open Source -ohjelmista ovat syntyneet (vain) tekijän henkilökohtaisen kiinnostuksen tyydyttämiseksi: "Ehkä näin tapahtuukin joskus, mutta monet keskeiset GNU-ohjelmat on tehty nimenomaan vapaan käyttöjärjestelmän toteuttamiseksi. Ne eivät syntyneet hetken mielijohteesta, vaan niiden takana on visio ja suunnitelma."
Tee sitä mitä haluat
muokkaaNyt olemmekin päässeet tässä inspiroivassa Linus-analyysissämme niin hyvään vauhtiin, että olemme edellisessä kappaleessa jo melkein tulleet käsitelleeksi tämänkin kappaleen. Ei se mitään, innostuneisuus on hieno asia!
Open Source -liikkeen ideologiaan, jota esimerkiksi Pekka Himanen on kutsunut hakkerietiikaksi, kuuluu olennaisesti ohje: Tee sitä mitä haluat.
Open Source -ohjelmia on tähän saakka tehty paljolti vapaaehtoistyönä. Suomeksi voisimme sanoa että talkoovoimin. Vaikka tilanne onkin nyt muuttumassa ja mukana on yhä enemmän yrityksiä ja sitä kautta palkattua työvoimaa, elää tämä perinne kuitenkin edelleen vahvana. Vapaaehtoistyövoimasta seuraa yleensä suoraan, että mukana oleva porukka on innostunutta. Ketään ei ole pakotettu mukaan ja kukapa haluaisikaan vapaaehtoisesti tehdä jotain, mistä ei ole kiinnostunut. Tästä seuraa valtava innostuneisuuden ja kiinnostuneisuuden ilmapiiri. Tämän ilmapiirin onkin sanottu olevan toinen tärkeä syy Open Source -ohjelmien korkeaan laatuun. Kun ihminen tekee kahdeksasta-neljään periaatteella jotain tehtävää, johon hänet on käsketty, on jälkikin erilaista kuin jos ihminen innostuneesti tekee jotain, mistä todella nauttii ja minkä ehkä kokee myös elämäntyökseen.
Tee mitä haluat -periaatteessa on kuitenkin kysymys enemmästä kuin vain jostain talkoohengen seurauksista. Ainakin Linus itse on sisäistänyt tämän periaatteen paljon syvemmin ja osannut pukea sen sanoiksi. Sen lisäksi, että lehdistö alkoi 90-luvun lopulla kiinnostumaan Linuxista, samoin siitä kiinnostuivat lukuisat ohjelmoijat. Lukuisat tietotekniikan opiskelijat ja myös työelämässä olevat koodarit halusivat tutustua Linuxiin ja myös osallistua sen kehitykseen. Joillekin se tarjosi mielenkiintoisen haasteen ja toiset kiinostuivat varmaan vain siksi, että se oli niin siistiä, eli coolia.
Tällaisen muotivillityksen seurauksena myös Linus sai henkilökohtaisia yhteydenottoja ihmisiltä, jotka halusivat tulla mukaan Linuxin kehitykseen ja kysyivät Linukselta jonkinlaista neuvoa siitä, mitä heidän kannattaisi ruveta tekemään. Taas kerran Linuksen vastaus oli kuiva ja mitään sanomaton: Sinun pitää itse miettiä mikä sinua kiinnostaa, ja mennä siihen mukaan.
Linuksella oli vastaukseensa myös selkeät motiivit. Hän selitti asian niin, että jos hän mielivaltaisesti neuvoisi ihmisiä menemään mukaan johonkin projektiin, ehkä johonkin sellaiseen joka häntä itseään sillä hetkellä kiehtoi, niin hänen neuvonsa varmastikin osoittautuisivat huonoiksi. Eihän kysyjää todennäköisesti kiinnosta samat asiat kuin häntä itseään. Samaten kysyjän lahjakkuus ei ehkä ole samalla alueella kuin Linuksen. Jos kysyjä sitten tekisi niinkuin hän neuvoo, kysyjä ennen pitkää turhautuisi koko projektiin ja pahimmassa tapauksessa olisi sen jälkeen vihainen sekä Linusille että Linuxille. Sitä paitsi, eipä uudesta vapaaehtoistyövoimasta olisi ehdotetulle projektillekaan paljoa hyötyä, jos tekijä ei ole innostuneena mukana.
Yritysmaailmalle tämä periaate on taas kerran haaste. Ja samoin se on haaste Linuxille, nyt kun yritysmaailma on tulossa mukaan Linuxiin. Kuinka moni työelämässä tekee juuri sitä mitä haluaa? Kuinka moni tekee sitä mitä pomo käskee? Onko tällaista periaatetta edes mahdollista toteuttaa yritysmaailmassa?
Jos uskomme, että "tee mitä haluat" on yksi Open Source -yhteisön kulmakiviä, meidän on loogista uskoa myös, että sama periaate voi tuottaa yritykselle samanlaista menestystä kuin se on tuottanut Linuxille.
Yleensä yrityksen visiot ja strategiat sorvataan kokoon jossakin johtoportaassa, jonka jälkeen työntekijän tehtäväksi jää "tehdä mitä pomo haluaa". Joissakin yrityksissä tämä perinne on vahvempi, joissakin heikompi, mutta yleensä hyväksymme, että näin kuuluukin olla. Kuitenkin "tee mitä haluat" periaatteen mukaan yrityksen johdon pitäisi kokonaan lopettaa visioiden ja strategioiden tuottaminen ("älä suunnittele mitään" -periaatetta noudattaen) ja sen sijaan keskittyä siihen, että työntekijät voivat mahdollisimman hyvin toteuttaa omaa visiotansa. Monelle johtajalle tämä on varmasti täysin vieras ajatus.
Niille meistä, jotka emme ole yritysmaailman johtajia, jää jäljelle kysymys: Teetkö juuri nyt sitä mitä todella haluat? Kun valitsit nykyisen työpaikkasi, valitsitko sen missä oli korkein palkka vai valitsitko sen mikä kiinnosti sinua kaikkein eniten? Tämä kysymys ei ole olennainen vain sinulle oman mielenterveytesi kannalta, vaan sen pitäisi kiinnostaa myös työnantajaasi. Miksi yritysmaailman pitäisi tyytyä kahdeksasta-neljään suorittajiin, kun Linux-maailmassa asiat ovat paremmin?
Noudattavatko Linus ja kumppanit sitten itse omaa esimerkkiään? Kyllä noudattavat. Kaikki tärkeimmät Linux-ohjelmoijat ovat nykyään töissä yrityksissä, joissa heidän pääasiallinen työtehtävänsä on Linuxin ohjelmointi. Harrastuksesta ja elämäntehtävästä on tullut myös päivätyö. Voisiko parempaa tilannetta enää kuvitella? Älä sinäkään tyydy vähempään!
Laiskuus on hyve
muokkaaSaatat ehkä yllättyä, kun kerron, että ohjelmoijan tärkein hyve on laiskuus. Linux-yhteisössäkin tämä on jopa innostuneisuutta tärkeämpi ja tunnustetumpi hyve. No, jos olet naimisissa ohjelmoijan kanssa, olet ehkä todennutkin, että laiskoja ronttejahan nuo ovat, ei se ikinä tiskaa eikä pese pyykkiä, eikä aina muista syödäkään. Mutta monille saattaa olla vaikea käsittää miten esimerkiksi Linusta voisi väittää laiskaksi – poikaa joka sulkeutui huoneeseensa vuodeksi ohjelmoimaan yötä myöten Linuxin ensimmäistä versiota.
Väitteen logiikka menee näin: Mitä laiskempi ohjelmoija, sitä enemmän hän ohjelmoi. Kun ohjelmoija kohtaa tylsän, aikaa vievän ja paljon rutiineja sisältävän tehtävän, häntä alkaa laiskottaa. Laiska ohjelmoija ei mitään pahempaa tiedäkään, kuin tylsät rutiinitehtävät. Sen takia hän päättääkin tehdä tietokoneohjelman, joka voisi tehdä rutiinitehtävät hänen puolestaan. Tätä tietokoneohjelmaa hän sitten tekee yötä myöten, näennäisen ahkerasti. Hän ohjelmoi tekstinkäsittelyohjelman, koska kirjoituskoneella kirjoittaminen on niin vaivalloista. Ja koska kirjeen tulostaminen ja postiin vieminen, postimerkin nuolemisesta nyt puhumattakaan, on niin vaivalloista, hän ohjelmoi sähköpostin. Näetkö nyt, että ohjelmoijat tosiaan ovat laiskoja?
Laiskuus on siis ohjelmoijan hyve. Tämä ristiriitaisuudessaan vähän huvittavakin väite on hyvä muistaa. Usein nimittäin ihmiset saattavat unohtaa, minkä takia tietokoneet ja niiden ohjelmat – ja kaikki muukin teknologia – on alun perin keksitty.
Suomessa rakennetaan parhaillaan uutta ydinvoimalaa. Ydinvoimalan rakentamispäätöstä edelsi vilkas keskustelu, jossa kantaa otettiin sekä puolesta että vastaan. Eräs keskusteluun osallistuneista kansanedustajista oli sitä mieltä, että ydinvoimalan rakentaminen on Suomelle huono vaihtoehto, koska muut energiantuotantomuodot työllistävät paremmin. Haluan nyt korostaa, että mielestäni on monia hyviä syitä, miksi maailmaan ei lisää ydinvoimaa tarvitsisi rakentaa. Mutta tämä oli kyllä naurettavin perustelu, mitä olen koskaan kuullut missään väittelyssä käytetyn ja siksi kyllä pidätän itselläni oikeuden nauraa sille päin naamaa.10
Onhan tietenkin totta, että sähköä voitaisiin tuottaa esimerkiksi siten, että pistetään kaikki Suomen työttömät polkemaan kuntopyörillä, jotka on kiinnitetty dynamoihin, joista syötetään sähköverkkoon sähköä. Varmaan sillä ihan kohtuukokoisen kylän saisi valaistuakin ja ennen kaikkea saataisiin ihmiset työllistettyä. Mutta hölmöläisten hommaahan se olisi.
Sähkön koko olemassaolon tarkoitushan on, että ihmisten ei tarvitsisi tehdä töitä. Olemme keksineet sähköä käyttäviä koneita, jotka tekevät työn puolestamme samalla kun me makaamme sohvalla tuijottamassa sähköä käyttävää televisiota. Tämä yksinkertainen tosiasia kuitenkin helposti unohtuu monilta poliitikoilta, varsinkin kun puhutaan työttömyydestä.
Älkää ymmärtäkö minua väärin. Työttömäksi joutuminen on suurimpia vastoinkäymisiä mitä ihmisen elämässä voi sattua. Monet varmaan ottaisivat mieluummin sekä sairauden että avioeron, kunhan vaan saisivat pitää työnsä. Ja osittainhan työttömyys seuraakin aina teknologian edistysaskeleita. Kun traktori keksittiin, jäivät rengit ilman töitä ja ihmiset muuttivat kaupunkeihin. Onneksi saivat kaupungissa sitten tehtaan tuotantolinjoilta töitä. Mutta nyt kun tehdas uudistaa tuotantolinjaansa, lopputuloksena monesti on, että uudempi ja hienompi tuotantokoneisto vaatii toimiakseen aiempaa vähemmän työntekijöitä. Ja taas ihmisiä joutuu työttömäksi.
Mutta älkää syyttäkö insinöörejä. Insinöörien ansiosta meidän ei enää tarvitse tuhota selkäämme peltoa kuokkimalla. Insinöörien ansiosta koneet tekevät tehtaan raskaat työt, ja ihmiset katsovat vierestä. Insinöörien ansiosta voimme illalla maata sohvalla katsomassa televisiota. Tätä me kaikki halusimmekin, silloin kun traktoria vasta keksittiin. Koneiden, tietokoneohjelmien ja muiden keksintöjen tarkoitus on, että työtä ei tarvitsisi tehdä – tai ainakaan sitä ei tarvitsisi tehdä niin paljon.
Nyky-yhteiskunnan ongelma sitten on, että jäljelle jääneet työt jaetaan niin, että toiset jäävät tehtaaseen tekemään ihan yhtä paljon työtä kuin ennenkin ja toiset jäävät kokonaan ilman. Ehkäpä tässäkin olisi syytä ottaa oppia Open Source -ajattelusta, eli avoimuuden ja jakamisen periaatteista. Ehkäpä insinööri oli sen niin tarkoittanutkin, silloin kun traktoria keksi, että työtä olisi jokaiselle, ei liikaa, mutta sopivasti ja laiskottelukin jaettaisiin kaikille tasan.
Valistunut diktaattori
muokkaaNyt jätämme hetkeksi Linuksen ja hänen kavereidensa elämänarvojen tutkimisen ja otamme seuraavaksi oppia Open Source -yhteisön organisaatioista ja niiden hierarkioista. Miten hallitaan ohjelmistoprojektia, jonka kymmenet – tai Linuxin tapauksessa sadat – ohjelmoijat etätyöskentelevät eri puolilta maapalloa ja vieläpä vapaaehtoisvoimin, ilman mitään virallista työntekijäsuhdetta projektiin?
Linus on Linux-projektin valistunut diktaattori. Hän ei itse kylläkään käytä itsestään tätä nimitystä vaan se on peräisin Eric Raymondin The Cathedral and the Bazaar -kirjasta, jossa kirjoittaja tutkii Open Source -projektien eri organisaatiomuotoja. Vaikka diktaattorimalli ei ole ainoa tapa, joilla Open Source -projekteja johdetaan, se on selvästi yleisin ja samalla myös epämuodollisin. Python-nimisen ohjelmointikielen luojaa Guido van Rossumia kutsutaan python-piireissä ihan julkisesti tittelillä BDFL – Benevolent Dictator For Life (elinikäinen valistunut diktaattori). Ilmeisesti python-ohjelmoijat eivät aio suoda Guido-paralle eläkepäiviä lainkaan!
Valistunut diktaattori on projektin johtaja, jolla on yksin kaikki päätäntävalta.11 Usein tämä auktoriteetti on luonnollinen seuraus siitä, että johtaja on myös projektin alullepanija, kuten Linus on Linuxin tapauksessa.
Meille länsimaisissa demokratioissa eläville ihmisille puheet diktatuurista saattavat kuulostaa epäilyttäviltä. Vaikka diktatuuriin liittyvä suoraviivaisuus on varmasti kustannustehokasta ja organisaatiorakenne kevyttä, on historia opettanut meille myös diktaattoreihin liittyvistä ongelmista. Monet monarkeistamme ja diktaattoreistamme eivät ole olleet kovinkaan valistuneita. Joten vaikka demokratiaan liittyvät neuvottelut, kompromissit ja äänestykset tuntuvatkin usein kalliilta, tehottomilta ja ennen kaikkea tuskastuttavan turhauttavilta, olemme kuitenkin historian opettamina päätyneet juuri siihen. Jos Linus onkin meistä ehkä keskimääräistä valistuneempi, niin voimmeko luottaa siihen, että hänen seuraajansa – sitten kun se päivä koittaa – ei ole täydellinen katastrofi?
Voimme, sillä ei Linuskaan ole Linuxin johtaja, joka sattumalta ja onneksi sattuu olemaan valistunut. Asia on ihan päin vastoin. Hän on johtaja vain ja ainoastaan siksi, että on niin fiksu kuin on.
Open Sourcen periaatteista seuraa mielenkiintoinen dynamiikka, jolla on suoria seurauksia myös projektiorganisaation hierarkiaan ja organisaation jäsenten välisiin suhteisiin. Mitä tapahtuisi jos Linus jostain syystä päättäisi lyödä homman läskiksi ja alkaisi ihan ilkeyttään tekemään Linuxiin typeriä ratkaisuja? Heti seuraavana päivänä muut Linuxin ohjelmoijat jättäisivät Linuksen pelleilemään yksinään, kopioisivat Linuxin lähdekoodit johonkin, missä Linus ei pääse niihin käsiksi, ja jatkaisivat ilman häntä. Todennäköisesti hyvin pian projektille myös valittaisiin – enemmän tai vähemmän tietoisesti ja enemmän tai vähemmän demokraattisesti – uusi valistunut diktaattori.
Tämä kaikki on mahdollista siksi, että koodi on avointa ja vapaasti kenen tahansa käytettävissä. Linuksella on diktaattorina kaikki päätäntävalta, mutta toisaalta hänellä ei ole mitään valtaa. Muut pitävät häntä johtajanaan ainoastaan siksi, että hän on niin lahjakas, eli valistunut. Valta ja vapaus ovat mielenkiintoisessa tasapainossa. Diktaattorilla on kaikki valta, ja muilla on vapaus äänestää jaloillaan.
Samasta syystä diktaattorimalli ei toimi hyvin joissain muissa ympäristöissä. Jos pomosi ei ole tehtäviensä tasalla, se on ikävä juttu, mutta minkä teet? Jos armeija tottelee sokeasti ylipäällikköään, joka osoittautuu sairaaksi tyranniksi, minne pakenet? Näissä tilanteissa ei ole läsnä sellaista avoimuutta, mikä Open Source -prosessiin kuuluu erottamattomasti. Ilman avoimuutta emme myöskään pysty täysin luottamaan toisiin organisaation jäseniin, vaan joudumme turvautumaan raskaisiin demokraattisiin prosesseihin suojautuaksemme valtataisteluilta ja erilaisilta muilta pihtaamisen muodoilta. Open Source -projekteissa avoimuus on niin kiinteä osa järjestelmää, että tällaisia varotoimenpiteitä ei tarvita.
Linus diktaattorina on hyvin konkreettinen esimerkki avoimuuden periaatteen hyödyistä. Avoimuudesta seuraa suoraan, että Open Source -projektit eivät tarvitse raskasta projektiorganisaatiota, vaan voivat toimia hyvinkin kevyesti, ketterästi ja kustannustehokkaasti. Voisiko diktaattorimalli sitten toimia perinteisemmässä organisaatiossa? Tästä on olemassa ainakin yksi esimerkki.
WWW-konsortio, lyhyemmin W3C, on standardointielin, joka on luonut lähes kaikki webiin liittyvät tekniikat. W3C:n julkaisemia standardeja ovat muun muassa HTML, CSS-tyylisivut, XML, DOM – joka on osa JavaScriptiä – PNG-kuvaformaatti, SVG-kuvaformaatti ja monta muuta tekniikkaa, joita me internetin käyttäjät hyödynnämme päivittäin. W3C:n jäseninä on noin 450 IT-alan yritystä ja organisaatiota Microsoftista ja IBM:stä alkaen.
W3C:n päätöksentekoprosessi standardeja valmistellessa muistuttaa mielenkiintoisella tavalla Open Source -diktaattorimallia. Standardien valmistelutyö tapahtuu aiheeseen perehtyneessä työryhmässä, jonka työ on hyvin avointa. Standardeista julkaistaan useita esiversioita, joita kuka tahansa voi kommentoida. Kun työryhmä saa työnsä valmiiksi, tuodaan ehdotus äänestykseen. Äänestykseen saavat osallistua kaikki jäsenorganisaatiot ja jokaisella on siinä yksi ääni.
Äänestyksen jälkeen W3C:n johtaja yksin joko hyväksyy tai hylkää ehdotuksen. Johtaja voi siis täysin oman päänsä mukaan joko noudattaa tai olla noudattamatta äänestystulosta. Käytännössä W3C:n toiminta on hyvin konsensushakuista, mutta järjestelmä muistuttaa kuitenkin valistuneen diktaattorin mallia.
W3C:n johtajana on sen perustamisesta asti toiminut Tim Berners-Lee. Hän on sama mies, joka 90-luvun alussa CERN:ssä työskennellessään kehitti HTML:n ja muut webiin liittyvät tekniikat. Hän on siis webin Linus – luoja ja diktaattori.
Kuten W3C:ssä, myös Linuxin kehitystyössä päätökset tehdään yleensä perusteellisten keskustelujen pohjalta. Erityisesti Linus kuuntelee neuvoja lähimmiltä ja pitkäaikaisimmilta työtovereiltaan, joita yhteisö kutsuu hänen luutnanteikseen. He ovat siis eräänlaisia pikkudiktaattoreita, joilla on projektissa oma vastuualue. Aivan kuten Linuksenkin, myös heidän auktoriteettinsa perustuu vuosien aikana osoitettuun lahjakkuuteen ja sitä kautta saavutettuun luottamukseen. Tällaista järjestelmää kutsutaankin osuvasti meritokratiaksi.
Sellaistakin on tapahtunut, että diktaattori-Linus on lopulta joutunut murjottaen hyväksymään ratkaisun, jota enemmistö vaatii, vaikka hän itse on kovasti vastustanut sitä. Jos hän ei toimisi näin, hän ei ehkä joku päivä enää olisikaan diktaattori. Avoin järjestelmä toimii siis kevyesti mutta myös demokraattisesti.
Suvaitsevaisuus
muokkaaEdellä olemme tutustuneet eräisiin mielenkiintoisiin piirteisiin, jotka ovat Open Source -yhteisölle erittäin tunnusomaisia. Vaikka jatkammekin vielä tämän mielenkiintoisen yhteisön tutkimista, on tässä vaiheessa todettava, että suvaitsevaisuus ei ole mikään tunnusomainen Open Source -yhteisön piirre, eikä myöskään sille kuuluva yksinoikeus. Eri keskustelupalstoilta ja sähköpostilistoilta on helppo löytää lukuisia esimerkkejä Open Source -yhteisön jäsenistä, jotka ovat kaikkea muuta kuin suvaitsevia. Kuitenkin yhteisöstä on myös mahdollista löytää opettavaisia tarinoita suvaitsevaisuudesta, joista voi olla inspiraatioksi meille kaikille.
Palaamme tarinassamme taas kerran Linuksen henkilöön ja niihin vuosiin kun IT-alan lehdistö oli löytänyt mielenkiintoisen ja tuoreen Linux-käyttöjärjestelmän. Tämä tapahtui aikaan, jolloin Microsoft oli onnistunut valtaamaan monopoliaseman sekä käyttöjärjestelmissä että toimisto-ohjelmissa ja oli koko painollaan parasta aikaa syöksemässä Netscapea, kilpailijaansa www-selainmarkkinoilla, kohti lopullista tuhoa. Tähän aikaan käyttäjät ihan syystä tuskailivat vaihtoehtojen puutteesta ja olivat ärsyyntyneet sekä Microsoftin monopoliasemasta ja siihen liittyvistä väärinkäytöksistä, että toisaalta sen ohjelmistojen puutteista ja yllättävistä oikuista, mukaan lukien kiemurtelevat paperiliitinanimaatiot. Microsoftiin oli tietokonepiireissä alettu suhtautua suorastaan kaiken pahan alkuna ja siitä käytettiin esimerkiksi nimitystä "pahan valtakunta". Uusi haastaja Linux luonnollisesti kiinnosti toimittajia myös tästä näkökulmasta. Tulisiko Linux syrjäyttämään Microsoftin?
Taas kerran Linuksella oli lehdistölle yllättävä mutta viisautta henkivä vastaus. Hän totesi, että Microsoft ja sen tietokoneohjelmat eivät juurikaan kiinnosta häntä, sillä hän ei itse käytä Windowsia. Linuxia hän on tehnyt omaksi huvikseen, ei siksi että hänellä olisi jotain hampaankolossa Microsoftia tai ketään muutakaan kohtaan.
Vaikka silloin ja vielä enemmän tänä päivänä monet Microsoftin kilpailijat näkevät Linuxin nimenomaan Microsoftin haastajana, on hyvä ymmärtää, että Linuxin kehittäjät eivät ensisijaisesti ajattele tilannetta ylipäätään tästä näkökulmasta. Heillä todellakaan ei pääsääntöisesti ole mitään mielipidettä koko Windows-maailmasta, sillä he itse käyttävät Linuxia.
Vaikka itsekin Microsoftin ohjelmia käyttäneenä ymmärrän täysin toimittajien näkökulman, on kuitenkin vaikea kuvitella, että Linux olisi menestynyt, jos sen pääasiallinen tarkoitus olisi ollut vain Windowsin korvaaminen. Sellaisen projektin osallistujat tuskin olisivat olleet niin innovatiivisia kuin Linuxin ohjelmoijat, jotka tekevät työtään rakkaudesta käyttöjärjestelmäohjelmointiin. Sellainen projekti olisi jo lähtöasemistaan tuomittu vain Microsoftia apinoivaksi räksyttäjäksi, joka ehkä joiltakin osin kyllä haastaisi Microsoftin tuotteet, mutta toisilla alueilla olisi ihan yhtä surkea ja mielikuvitukseton kuin esikuvansakin.
Ennen kaikkea Linuksen suvaitseva asenne on kuitenkin järkevä hänen omaa mielenterveyttään ajatellen. Ei ole tervettä tehdä jotain, jonka pääasiallisena motivaattorina on viha ja pelko. Sitä paitsi, mitä tapahtuisi sitten kun Linux mahdollisesti jonain päivänä koituisi Microsoftin tuhoksi? Katoaako elämältä silloin tarkoitus? Täytyykö silloin löytää joku uusi pelottava uhka, jonka vastustamisesta voi hakea lisää energiaa?
Monet, joiden toiminta perustuu uhkakuva-ajatteluun, joutuvat tällaiseen kierteeseen. Esimerkiksi sopii vaikka USA:n armeija. Olisi voinut kuvitella, että Neuvostoliiton kaatuminen olisi ollut amerikkalaisille sotilaille ja CIA:n vakoojille onnen päivä. Mutta mitä vielä, kaikkea muuta! Sehän tarkoitti heille vain ja ainoastaan uhkaavaa työttömyyttä. Jostain oli äkkiä löydettävä uusi uhka. Ensin yritettiin maalata taivaalle tummia pilviä pelottavan kansainvälisen huumekaupan muodossa. Kun se ei kuitenkaan oikein tuntunut ydinasevallan veroiselta vastustajalta, piti keksiä muita vastustajia. Nyt on lopulta löytynyt ihannevastustaja, nimittäin terroristit, joita on kaikkialla, mutta joita ei kuitenkaan löydy mistään. Uhan torjumisessa on taas työtä tarpeeksi, rahahanat ovat auki ja motivaatio huipussaan. USA on taas voimissaan.
Vaikka USA:n ulkomaanpolitiikan haukkuminen on jopa kivempaa kuin ranskalaisten maanviljelijöiden, niin on hyvä tässä vaiheessa muistaa, että ennen kaikkea puhumme nyt omasta itsestämme ja omista motiiveistamme. Monet ihmiset perustavat elämänsä ihan samanlaiselle uhkakuva-ajattelulle ja löytävät dramatiikkaa milloin mistäkin. Se on heidän elinvoimansa lähde. Mutta todellisuudessa he ovat itse luoneet kaiken dramatiikan. Jos he haluaisivat, he voisivat onnellisina ja rauhassa puuhastella oman "Linuxinsa" parissa, ja nauttia siitä ilman teennäisesti luotua dramatiikkaa.
Linuksen esimerkki suvaitsevaisuudesta on mielestäni erittäin oivaltava. Vaikka hän ei lahjakkaana ohjelmoijana voikaan hyväksyä bugisia ohjelmia omassa tietokoneessaan, niiden olemassaolo ei sinänsä haittaa häntä. Hän osaa itse ohjelmoida paremmin ja on tyytyväinen omaan työhönsä. Mutta toisaalta häntä ei haittaisi, vaikka kaikki muut ihmiset haluaisivat Linuxin sijasta käyttää Windowsia. Eihän se ole hänen ongelmansa. Erilaisten valtataisteluiden ja uhkakuva-ajatteluiden maailmassa, Linuksen suvaitseva asenne on kuin virkistävä tuulahdus, josta jokainen voi ammentaa rauhallisuutta omaankin ajatusmaailmaansa.
Monimuotoisuus
muokkaaAdvogato-nimiseen Open Source -yhteisön keskustelufoorumiin kirjoitti kesällä henkilö, jonka mielestä Open Source -ohjelmistojen markkina oli liian pirstoutunut ja sekava. Jo pelkästään tekstieditoreita oli yli 100 erilaista. Linuxiin juuri siirtyneenä henkilönä tämä sai hänet tuntemaan itsensä lähinnä eksyneeltä. Olisi ollut parempi jos voitaisiin sopia mitä editoria käytetään, kehittää se huippuunsa ja opettaa kaikille sen käyttöä.
Keskustelunavaus ei saanut juurikaan vastakaikua. Lähinnä tyydyttiin toteamaan, että kirjoittaja ei ilmeisesti tunne Open Sourcea vielä kovin hyvin. Ne 100 editoriahan ovat esimerkki Open Source -maailman rikkaudesta. Tietenkin on totta, että suurin osa niistä saattaa olla monella lailla puutteellisia ja ovat syntyneet esimerkiksi jonkun tietotekniikkaopiskelijan harjoitustyön tuloksena. Mutta mitä se meitä haittaa? Hienoa, että hänkin on julkaissut työnsä avoimesti käytettäväksi, vaikka juuri minä en hänen editoriaan käytäkään.
Toisekseen niinkin yksinkertainen asia kuin puhtaiden tekstitiedostojen käsittely voi todellisuudessa tarvita hyvinkin erilaisia työkaluja. Esimerkiksi vi-niminen editori on peräisin 70-luvulta ja siksi varmaan yksinkertaisimpia ja kömpelöimpiä työkaluja mitä tietokonemaailma on ikinä nähnyt. Siitä huolimatta, tai oikeastaan juuri siksi, se kuuluu Unix-standardiin ja löytyy sen takia kaikista maailman Unix-koneista, mukaan lukien kaikki Linux-tietokoneet. Jos opettelet vi:n käytön, voit siis aina luottaa siihen, että saat työsi tehtyä. Se toimii kaikissa ympäristöissä, käytitpä sitä sitten etäyhteyden yli "terminaalissa" tai tavallisen PC:n "graafisessa ympäristössä". Toisaalta haluat ehkä joskus käyttää monipuolisempaa tekstinkirjoitustyökalua, esimerkiksi graafista sellaista. Silloin valitset jonkun niistä. Ja yllättävää kyllä, monet meistä valitsevat ohjelmansa paljolti myös henkilökohtaisten mieltymysten – esimerkiksi värin – perusteella. Vaikka siis ajatus siitä, että karsittaisiin päällekkäistä työtä ja kehitettäisiin Linuxia varten vain yksi tai korkeintaan pari tekstieditoria, on kaunis, niin käytännössä olisi ongelmallista päättää mikä editori tämän kunnian saisi. Kuka pääsee makutuomariksi?
Toinen asia missä samanlaista pirstaloituneisuutta näkyy on se, että Linux-maailmassa on tällä hetkellä kaksi eri graafista ikkunointiympäristöä:12 KDE ja GNOME. Tämä on aina välillä ollut huolenaihe Linux-maailmassa. Vaikka GNOME:a varten tehdyt ohjelmat toimivatkin KDE:ssä ja päinvastoin, ne saattavat kuitenkin näyttää erilaisilta ja noudattaa hieman eri toimintaperiaatteita. Kaikki tämä voi varsinkin aloittelijalle olla sekavaa. Tilanne voidaan myös kyseenalaistaa tehokkuusnäkökulmasta. Käytetäänkö ohjelmoijien resursseja epäoptimaalisesti, kun työvoima on hajautettu kahden kilpailevan projektin ympärille?
Näistä kaikista ongelmista huolimatta Open Source -yhteisössä ollaan yhtämielisiä siitä, että monimuotoisuus – olkoonkin, että se vaikuttaa joskus epäoptimaaliselta – on hyvä asia. Ensinnäkin meidän täytyy muistaa Open Sourcen perusperiaatteet, joita on tässäkin kirjassa jo käsitelty. Ohjelmoijathan tekevät sitä mitä haluavat. Jos joku haluaa tehdä GNOME-ohjelmia, niin kuka häntä voi estää? Ja ketä se haittaa jos joku tekee GNOME-ohjelmia, vaikka kaikki muut haluaisivat käyttää KDE-ohjelmia? Nämä perusperiaatteet johtavat automaattisesti monimuotoisuuteen, sillä Open Source -yhteisö ei ole mikään Neuvostoliitto, jossa kaikkien pitäisi toimia kulloinkin voimassaolevan viisivuotissuunnitelman mukaan.
Kahden erillisen projektin kilpailutilanteesta on myös monia hyötyjä. Graafisten käyttöliittymien tekeminen on aika nuorta tiedettä, eikä kukaan oikeastaan tiedä mikä on paras ja ainoa oikea tapa tehdä asioita.13 Kilpailevat projektit saattavat joissakin asioissa päätyä erilaisiin teknisiin ratkaisuihin ja vasta jälkeenpäin voidaan nähdä kumpi oli viisaampi ja toimivampi ratkaisu. Näin kahden erillisen projektin olemassaolo vähentää riskiä, että graafinen Linux-maailma päätyisi teknologiseen umpikujaan.
Kilpailevat projektit myös ovat toisilleen aidosti hyödyksi. Vaikka KDE on alusta asti ollut teknisesti kehittyneempi, niin GNOME tunnettiin alunperin hyvin taiteellisena ympäristönä. Erilaisia teemoja asentamalla omasta ympäristöstään pystyi saamaan hyvin eri näköisen ja ennen kaikkea oman näköisen. Yllättävän monet ihmiset muuten pitävät juuri tästä ominaisuudessa tietokoneessaan. Taustakuva ja ohjelman värit tuntuvat olevan paljon tärkeämpi asia kuin varsinainen työnteko. Niinpä KDE-ohjelmoijat ovatkin panostaneet vastaavien ominaisuuksien kehittämiseen omassa projektissaan ja nykyään KDE on vähintään yhtä värikäs ja taiteellinen kuin GNOME. Samanaikaisesti GNOME-ohjelmoijat taas ovat tehneet töitä ympäristönsä vakauden ja teknisten ominaisuuksien parantamiseen, jotta KDE:n etumatkaa tällä puolella saataisiin kiinni.
Kilpailutilanne siis hyödyntää molempia osapuolia. Mikä parasta, osapuolet myös itse ymmärtävät tämän. Vaikka internetissä usein törmääkin keskusteluihin, joissa väitellään KDE:n ja GNOME:n paremmuudesta – ja joskus jopa Advogato-kirjoittajan tapaan ehdotetaan yksinkertaisuuden nimissä toisen projektin lopettamista – niin nämä keskustelijat eivät koskaan ole KDE:n tai GNOME:n ohjelmoijia. Heillä ei ensinnäkään ole aikaa osallistua näin joutaviin keskusteluihin, sillä heillä on parempaa tekemistä. Mutta ennen kaikkea he eivät edes koe toisiaan kilpailijoiksi sanan perinteisessä merkityksessä, vaan ymmärtävät olevansa pikemminkin yhteistyökumppaneita – vaikka muu maailma ei sitä aina ymmärtäisikään.
Kysytäänpä siis lopuksi, taas kerran, miten muu maailma sitten asian ymmärtää?
Vaikka länsimaiseen markkinatalouteen nimenomaan kuuluu vapaa kilpailu, niin todellisuudessa yritykset eivät aina jaksa nähdä kilpailua positiivisena asiana. Kilpailu yleensä tarkoittaa vähemmän rahaa minun pussiini. Kilpailijoista kannattaa siis pyrkiä eroon keinolla millä hyvänsä. Microsoft on hyvä esimerkki siitä, että tällainen strategia on taloudellisesti kannattava – onnistuessaan erittäin kannattava. Tästä johtuen länsimaiset yritykset, joiden luulisi uskovan vapaaseen markkinatalouteen, ja jotka oikeastikin varmaan uskovat uskovansa vapaaseen markkinatalouteen, käytännössä kuitenkin tekevät kaikkensa estääkseen kilpailun syntymisen. Mikäli Linuxiin on uskominen, he samalla kaivavat myös omaa hautaansa.
Rohkeus ja uteliaisuus
muokkaaSuositun Debian Linux -jakelun asennusoppaassa käytetään käyttöjärjestelmän asennuksen jälkeisestä ensimmäisestä koneen käynnistyskerrasta sähköinsinööreiltä lainattua ja hieman pelottavalta kuulostavaa termiä "smoke test", suomeksi savutesti. Savutesti liittyy sähköinsinöörien rakenteluprojekteihin, esimerkiksi komponenttien juottamiseen piirilevylle. Kun piirilevy on valmis, on aika kytkeä siihen sähköä. Jos kaikki on tehty oikein, piirilevy toimii suunnitellusti. Jos taas jossain on oikosulku, levylle juotetut komponentit tyypillisesti poksahtelevat ja päästävät ilmoille pienen savupilven. Savu on siis merkki siitä, että piirilevy ei toiminutkaan.
Vaikka aineeton tietokoneohjelma ei savua pystykään tuottamaan, on vasta-asennetun tietokoneen ensimmäinen käynnistyskerta samalla lailla totuuden hetki. Se joko toimii tai sitten ei. Vastauksen saa tietää vain kokeilemalla.
Kuten insinöörejä yleisemminkin, myös Linux-ohjelmoijia vaivaa suunnaton uteliaisuuden palo. Heitä kiinnostaa esimerkiksi tietää, mitä kaikkea uutta ja hienoa Linusin uusimmassa Linux-kernelissä on, ennenkuin kerneli on edes valmis. Näitä ei-valmiita Linuxeja kutsutaan kehitysversioiksi, koska niitä siis vielä kehitetään ennen lopullista julkistusta. Vaikka niiden käyttöä ei suositellakaan, ne ovat samalla lailla saatavilla internetistä kuin virallisetkin versiot ja moni utelias Linux-käyttäjä päätyykin käyttämään niitä jo ennen lopullista julkistamista.
Tämä uteliaisuus on eräänlaista rohkeutta. Uuden tietokoneohjelman epävakaan kehitysversion käyttöönotto on aina riski. Se ei ehkä toimikaan. Varsinkin kun puhutaan kokonaisesta käyttöjärjestelmästä, on vaarana, että virheellisesti toimiva ohjelma saa koko tietokoneesi niin pahasti solmuun, että menetät peruuttamattomasti kaikki tietokoneellesi tallentamasi tiedostot. Tästäkin huolimatta uteliaisuus monesti voittaa ja innokas kokeilija ei välitä riskeistä ja työläistä varotoimenpiteistä. On pakko päästä kokeilemaan.
Minulle annettiin kerran työkoneeksi kannettava tietokone, joka toimi muuten hyvin, mutta akku oli rikki. Halusin selvittää oliko akku täysin kuollut, vai sellaista varsin yleistä mallia, joka jaksaa pitää koneen käynnissä noin viisi minuuttia ennenkuin sammuu. Tämän voisi tietenkin selvittää monella tavalla. Esimerkiksi lähettämällä akun huoltoon tai lainaamalla sähköinsinööriltä yleismittaria tai jollain muulla vastaavalla tavalla. Mutta yksi tapa oli kuitenkin kaikkia muita nopeampi ja siten paras tapa tyydyttää uteliaisuuteni. Kokeileminen.
Niinpä vedin sähköjohdon irti seinästä ja koneeni sammui välittömästi. Tämä oli sikäli ikävää, että en ollut muistanut tallentaa juuri kirjoittamaani tekstiä, joten jouduin kirjoittamaan sen uudestaan. Tästäkin huolimatta uteliaisuuteni oli vienyt voiton ja kokeileminen toi selkeän vastauksen kysymykseeni. Tiesin nyt, että kyseessä oli 100%:sti rikkinäinen akku.
Linux-ohjelmoijien kutsuminen rohkeiksi saattaa kuulostaa yllättävältä. Kun ajattelet keskiverto-ohjelmoijaa, mieleesi tulee ehkä suoratukkainen, huonosti kammattu ja epämuodikkaita silmälaseja käyttävä, ujo, varovainen ja hiljainen nörtti. Vaikka kaikki ohjelmoijat eivät tätä stereotypiaa noudatakaan, niin Linux-ohjelmoijat ehkä jossain määrin ovat juuri tämän stereotypian henkilöitymiä. Voi siis olla liioiteltua kutsua tätä ujoa ja hiljaista nörttilaumaa rohkeaksi, mutta edellä oleva tarkastelu antaa aiheen uskoa, että yleisestä varovaisuudestaan ja ujoudestaan poiketen nörtit ovat tietokoneiden parissa rohkeita. Tietokoneisiin kohdistuva uteliaisuus voittaa muuten vallitsevan varovaisuuden ja nörtti muuttuukin rohkeaksi.
Kun tämä kirja on tähän asti tarjonnut Linux-yhteisöä esikuvaksi meille lukijoille, niin voi olla, että juuri ujot nörtit itse voisivat tällä kertaa kaikkein eniten ottaa oppia itsestään rohkeuden alalla.
Kuvitellaanpa esimerkiksi, mitä todennäköisesti tapahtuu, kun ujo ja varovainen nörtti istuu yksin koulunsa tai työpaikkansa ruokalassa ja samaan pöytään istuu tuntematon kaunotar. Todennäköisestihän ei tapahdu yhtään mitään! Nörtti tuijottaa alas omaan ruokaansa, syö sen kaikessa hiljaisuudessa ja lähtee. Jos vastapäätä istuva kaunotar on myös ujo ja hiljainen nörtti – tämä ominaisuushan ei ole pelkästään miesten yksinoikeus – niin hän todennäköisesti tekee samoin. Mitään ei siis vahingossakaan pääse tapahtumaan, ja tämä siitä huolimatta, että he voisivat olla kiinnostuneita toisistaan.
Minkälainen ajatuskulku nörtin päässä johtaa siihen, että mitään ei tapahdu? Häntä kiinnostaisi luoda kontaktia vastapäiseen kaunottareen. Pitäisi siis sanoa jotain. Mitään järkevää ei tule mieleen. Mutta silloin ei synny kontaktiakaan. Pitäisi siis sanoa jotain, ihan mitä vaan. Mutta silloin kaunotar voi pitää nörttiä tyhmänä. Lisäksi noin kaunis nainen on todennäköisesti jo varattu tai vaikka ei olisikaan, olisi tuskin nörtistä kiinnostunut kuitenkaan. Nörtti ei uskalla ottaa riskiä tulla torjutuksi. Jos nörtti sanoisi jotain, voisi vastaus olla tyly. Sitäkään riskiä nörtti ei halua ottaa. Ja näin siis päädymme siihen, että nörtti ei sano mitään ja mitään ei tapahdu.
Jos nörtti käsittelisi kaunotarta kuin tietokonetta, hän toimisi toisin – rohkeammin. Kaunotar istuu vastapäätä, tämä on nyt totuuden hetki. On savutestin paikka! Nörtti päättää sanoa jotain, siitäkin huolimatta, että savupilvi voi poksahtaa naamalle tylyn vastauksen muodossa. Onhan savutesti epäonnistunut monesti myös piirilevyjen tai tietokoneohjelmien yhteydessä, eikä se ole nörttiä haitannut. Oikeastaan nörtti ei näitä epäonnistumisia edes koe epäonnistumisina. Ne olivat vain erilaisia kokeiluja ja yhtä hauskoja ja opettavaisia kuin onnistuneetkin kokeet. Ja epäonnistuneiden savutestien kautta lopulta päädytään myös onnistumisiin.
Jos nörtti lähestyisi naista tällä logiikalla, hän heti paikalla avaisi keskustelun. Kaunottaren reaktio voi olla positiivinen, tai se voi olla negatiivinen. Molemmat vaihtoehdot ovat nörtin kannalta hyviä, sillä ne tyydyttävät hänen uteliaisuuttaan ja kokeilunhaluaan. Edes torjuva vastaus ei ole nörtin kannalta epäonnistuminen, se on vain savutesti, jonka jälkeen voi yrittää uudelleen.
Nimet ja identiteetti
muokkaaOn mielenkiintoista panna merkille, että yhteisössä, jossa kovasti vannotaan avoimuuden ja jakamisen nimeen, yhdestä asiasta pidetään kovasti kiinni: nimistä. Jopa niin paljon, että yhteisö, joka on kääntänyt päälaelleen omistamiseen ja tekijänoikeuteen liittyviä käytäntöjä, näkee tavaramerkit – eli laillistetun nimisuojan – suhteellisen positiivisena asiana. Esimerkiksi "Linux" on Linus Torvaldsin rekisteröimä tavaramerkki, eikä mitä tahansa käyttöjärjestelmää tai muuta ohjelmaa sen takia saa kutsua Linuxiksi. Linus sallii Linuxiksi kutsuttavan vain hänen julkaiseman Linux-kernelin ja sen muunnelmien päälle tehtyjä käyttöjärjestelmiä.
Ihmisen tai projektin oman nimen kunnioittaminen on itse asiassa myös yksi avoimuuden puolustusmekanismeista. Open Source -termi itsessäänkin on suojattu, ja termiä "OSI certified Open Source" saa käyttää vain ohjelmista, jotka täyttävät tietyt avoimuuden kriteerit.
Open Source -yhteisössä jokainen on avoimesti sitä mitä on – oma itsensä. Julkaistessaan uusia Linuxin versioita Linus esiintyy omalla nimellään. Voit luottaa siihen, että ohjelma jota kutsutaan Linuxiksi on juuri Linuksen tekemä, ei jotain muuta. Nimi toimii laadun takeena. Tekijä on itse henkilökohtaisesti työnsä laadun takeena. Mutta toisaalta taas työ tuo kunniaa tekijälleen. Ohjelman tekijä tulee yleensä tunnetuksi juuri työnsä kautta. Vaikka työn tuloksia jaetaan avoimesti, kunniaa työstä ei jaeta. Ja miten voitaisikaan, eihän sellainen olisi edes rehellistä. Kunnia työstä kuuluu yksinomaan työn tekijöille. Yhteisössä, jossa kaikki on avointa ja jaettua, tästä pidetään kiinni. Johonkin on voitava luottaa.
Mutta Open Source -yhteisön suhde nimiin on paljon vahvempi kuin pelkät kysymykset tavaramerkeistä tai brändeistä. Jotkut sanat liittyvät vahvasti yhteisöä koskeviin identiteettikysymyksiin. Niistä pidetään kiinni kynsin hampain, vaikka muu maailma ei aina ymmärtäisi mistä on kysymys.
Yksi tällainen identiteettiin liittyvä sana on hakkeri. Suurin osa tämänkin kirjan lukijoista varmaan mieltää hakkerin synonyymiksi sanalle "tietokonerikollinen". Eli sellaiseksi ihmiseksi, joka esimerkiksi internetiä hyödyntäen murtautuu toisen tietokoneeseen, lukee sieltä salaisia tiedostoja ja mahdollisesti tekee jotain ilkivaltaakin. Jopa IT-alan lehdistö käyttää sanaa tässä merkityksessä.
Open Source -yhteisössä sana tarkoittaa kuitenkin jotain muuta. Tietokoneiden syntyaikoihin 60- ja 70-luvulla MIT:n ja muiden amerikkalaisten yliopistojen ohjelmoijat kutsuivat itseään hakkereiksi. Unix-käyttöjärjestelmän kehittyessä sana siirtyi sitä ympäröivään yhteisöön. Unixin ohjelmoijat olivat hakkereita tai Unix-hakkereita ja he olivat edelleen pääosin yliopistoväkeä. Sanaan ei liittynyt mitään rikollista, vaan ennemminkin siihen liittyi ajatus erityisen lahjakkaasta ohjelmoijasta, gurusta ja Unix-yhteisön jäsenestä, joka on intohimoisen innostunut ohjelmoinnista ja tekniikasta.
Alkuaikojen hakkerikulttuuri oli ideologialtaan hyvin samanlainen nykyisen Open Source -kulttuurin kanssa. Tosin Open Sourcea ei tunnettu erillisenä käsitteenä, vaan pikemminkin oli niin, että kaikki tietokoneohjelmat olivat avoimia. Yliopistoympäristössä syntyneelle kulttuurille tämä oli luonnollista. Muutos kohti sitä suljettujen ohjelmistojen kulttuuria, joka meidän mielestämme on normaalia, tuli vasta 80-luvulle siirryttäessä. Samalla hakkerikulttuuri jäi vähän sivuraiteelle. Pihtaamismalli, jolla suljettuja ohjelmistoja alettiin valmistamaan ja myymään, ei kuulunut hakkerikulttuuriin.
Jossain vaiheessa lehdistö alkoi raportoimaan tietomurroista ja syystä tai toisesta päätyi kutsumaan tekijää hakkeriksi. Nimitys ei ehkä alun perin ole ollut täysin huonokaan, sillä siihen aikaan – päin vastoin kuin nyt – on tietomurron tekijältä vaadittu paljon tietotaitoa ja lahjakkuutta, eli hän on siinä mielessä ehkä ollutkin hakkeri. Mutta tästä eteenpäin sana hakkeri tuli tarkoittamaan tietokonerikollista.
Olen monesti pohtinut, minkä takia Open Source -yhteisön jäsenet niin itsepäisesti haluavat edelleen kutsua itseään hakkeriksi? Sanan alkuperäinen merkitys on niin täydellisesti jäänyt uudemman merkityksen varjoon, että tuntuu suorastaan kummalliselta, että joku lainkuuliainen kansalainen haluaa enää kutsua itseään sillä nimellä. Jopa tietokonealan ammattilaiset menevät yleensä hämilleen, sillä hakkeri-sanan alkuperäistä merkitystä ei todellakaan hakkeripiirien ulkopuolella juuri tunneta. Eräskin lehtimies-raukka oli onnistunut kirjoittamaan pitkän artikkelin, jossa hän kuvasi miten pahamaineiset tietokonerikolliset olivat luoneet uuden Linux-nimisen käyttöjärjestelmän! Kukaan ei ilmeisesti ollut päässyt kertomaan hänelle hakkeri-sanan kahdesta eri merkityksestä. Artikkelia lukiessani en tiennyt olisiko pitänyt itkeä vai nauraa.
Mutta ymmärrän kyllä hakkereita. Miten kukaan voisi luopua nimestä, joka määrittelee oman identiteetin? Nimestä, johon liittyy niin pitkä ja kunniakas historia, aina ensimmäisiin tietokoneisiin ja tekoälylaboratorioihin14 asti. Nimestä, johon kiteytyvät koko yhteisön ideologiset peruspilarit, joista Stallman jaksaa saarnata yhä uudelleen ja joista filosofi Himanen niin ylevästi kirjoittaa kirjassaan Hakkerietiikka. Kaikesta sekaannuksesta huolimatta hakkerit ovat ylpeitä hakkeruudestaan. Ja täytyy myöntää, että koko sydämestäni ymmärrän heitä. Emmehän me suomalaisetkaan ole vaihtaneet maamme nimeä, vaikka monissa kielissä finni varsinaisesti tarkoittaakin mätäpaisetta!15
On olemassa toinenkin sanoihin liittyvä tarina, johon hakkerit suhtautuvat yhtä voimakkain tuntein kuin hakkeri-sanaan. Mutta päinvastoin kuin hakkeruus, nämä sanat eivät ole hakkereita yhdistäviä, vaan ne ovat olleet monen kitkerän väittelyn syynä.
Kun kaupalliset suljetut ohjelmistot yhä enemmän alkoivat vallata alaa pääosin yliopistoihin majoittuneelta hakkerikulttuurilta, jäljelle jäi yksi mies, joka päätti pyhittää elämänsä taistelulle pihtaamista vastaan. Vuonna 1984 Richard Stallman ilmoitti perustaneensa GNU-projektin. Projektin tavoitteena oli tuottaa vapaita ohjelmistoja – Free Software – ja jonain päivänä julkaista täysin vapaa käyttöjärjestelmä.16 Richard Stallman ei ollut mikä tahansa propellipää. Hän todella antautui projektilleen sataprosenttisesti. Hän irtisanoi itsensä tutkijan työpaikastaan yliopistolla, sillä hänen tuli varmistua siitä, ettei yliopisto voisi väittää omistavansa hänen tekemiä ohjelmia, eikä hän siksi voinut olla työsuhteessa yliopistoon. Stallmanin esimieheltä MIT:ssä ei puuttunut visionäärin kykyjä häneltäkään. Ymmärrettyään Stallmanin eron syyt, hän määräsi, että Stallmanin entinen työhuone ja yliopiston muut palvelut – erityisesti tietokoneet – olisivat edelleen hänen käytössään. Ilman tätä projektista tuskin olisi mitään tullutkaan. Rahapulaan joutunut Stallman jopa asui jonkin aikaa työhuoneessaan.
Näin alkoi vapaiden ohjelmistojen, eli Free Softwaren, historia. Projekti oli ilmeinen menestys, sillä jo vuoteen 1991 mennessä, kun Linus alkoi puuhastelemaan oman projektinsa parissa, lähes kaikki käyttöjärjestelmään kuuluvat työkaluohjelmat olivat valmiina ja puuttuva Hurd-kernelikin oli "melkein valmis". Kun Linux sitten oikeaan aikaan täytti tämän aukon, oli Stallmanin unelma vihdoin toteutumassa.
Suurin osa 90-luvusta kului internet-huuman vallassa, eikä vapaasta käyttöjärjestelmästä vielä paljoa tiedetty. Mutta pinnan alla internetin leviäminen kiihdytti myös vapaiden ohjelmistojen kehitystä ja leviämistä entisestään, sillä internetin ansiosta yhä useammat hakkerit pystyivät osallistumaan maailmanlaajuisiin Open Source -talkoisiin. Ja vaikka lehdistö ei Linuxista paljoa vielä kirjoitellut, niin todellisuudessa esimerkiksi Suomessa suurin osa internetin palvelimista toimi jo Linuxin varassa. Vuosikymmenen lopulle tultaessa sekä lehdistö että yritysmaailma alkoi tosissaan kiinnostumaan sekä Linuxista, että sen syntyyn liittyvistä avoimista kehitysmalleista.
Tässä vaiheessa kokoontui neuvonpitoon joukko hakkereiden johtajahahmoja. (Ei siis tietokonerikollisia, vaan Free Software -yhteisön johtohenkilöitä.) He näkivät tilaisuutensa vihdoin koittaneen. Jo lähes unhoon jäänyt hakkerikulttuuri oli uudelleen haastamassa kaupalliset ohjelmistotalot. Yritysmaailma oli aidosti kiinnostunut vapaista ohjelmistoista. Mutta miten tilanne saataisiin hyödynnettyä parhaalla mahdollisella tavalla? Miten saataisiin yritykset panostamaan Linux-järjestelmiin? Miten saataisiin ohjelmistotalot siirtymään avoimeen kehitysmalliin? Ja miten tulisi varautua Microsoftin väistämättömään vastahyökkäykseen?
Hakkeri-isät tulivat siihen tulokseen, että vapaat ohjelmistot tarvitsivat uuden brändin, jonka eteen tehtäisiin paljon pr-työtä. Näin syntyi vuoden 1998 alussa termi Open Source – avoimen lähdekoodin brändi.
Miten nimeen Open Source päädyttiin? Stallmanin Free Software -termiä oli kritisoitu epäselväksi. Englannin sana Free, joka tarkoittaa vapautta, tarkoittaa myös muun muassa ilmaisuutta. Ilmaisista ohjelmistoista puhuminen taas ei kuulostanut hyvältä idealta, kun haluttiin saada ohjelmistotalot kiinnostumaan asiasta. Ja Free-sanan semantiikasta keskusteleminen taas on hämmentävää ja johtaa väistämättä sivuraiteille ja varsinainen asia saattaa unohtua. Brändinhän tulee olla lyhyt ja ytimekäs, ei epämääräinen.
Sinänsä Stallman oli jo aikoja sitten joutunut selvittämään samaa semantiikkaongelmaa, ja keksinyt aika nasevan muistisäännön: "Free as in Speech, not Free as in Beer."17 Vaikka ilmainen olut on hieno juttu, on sananvapaus kuitenkin tärkeämpää. Ja tästä vapaudesta Stallman mielellään puhuikin – ja juuri siinä olikin koko ongelman ydin. Free-sanan moniselitteisyyden kanssa olisi ehkä vielä pystytty elämään, mutta kun tietokoneohjelmien yhteydessä joku alkaa puhumaan sananvapaudesta, niin siinä on jo uskottavuus vaakalaudalla. Eikä siinä vielä kaikki, Stallman puhui myös mielellään mielipiteistään, joiden mukaan suljettujen ohjelmien malli oli suorastaan epäeettinen!
Juuri nämä puheet olivat todellisuudessa Open Source -termin synnyn takana. Muut hakkerivanhimmat olivat päättäneet ottaa pesäeroa sinänsä kunniakkaan GNU-projektin liian ideologisesta retoriikasta. Sellainen ei sopinut Wall Street Journalin tapaisten lehtien haastatteluihin. Tarvittiin uusi identiteetti, joka olisi salonkikelpoinen sekä Wall Streetillä että ohjelmistoyrityksissä. Takkutukkainen Stallman haluttiin syrjään ja tilalle tarjottiin hymyilevää Linus-kansikuvapojua.
Mutta uuden identiteetin luomiseksi tarvittiin ensin uusi nimi. Open Source kertoi selkeästi mistä oli kysymys: koodi oli avointa. Avoimuudesta seurasi laatu, kuten Eric Raymond The Cathedral and the Bazaar -kirjassaan selvitti. Open Source = laatu! Jos haluat parhaita tietokoneohjelmia, luovu Windowsista, käytä Linuxia! Jos haluat halvimman vaihtoehdon, käytä Linuxia! Me emme tiedä etiikasta mitään, mutta tiedämme mikä menetelmä toimii tietokoneiden ohjelmoinnissa parhaiten: Open Source!
Open Source -brändi onnistui loistavasti. Linus sai hymyillä lehtien kannessa oikein olan takaa. Linux-yhtiö Red Hatin pörssikurssi nousi ensimmäisenä pörssipäivänään nelinkertaisesti. Yritykset alkoivat vähitellen käyttää Linuxia yhä enemmän. Netscapesta tuli ensimmäinen suljettu ohjelmisto, jonka koodi avattiin ja kehitystyö siirtyi Open Source -pohjaiseksi Mozilla-projektiksi. Myöhemmin muut ovat seuranneet perästä, mukaanlukien eräs aiemmin StarOfficena tunnettu OpenOffice-tekstinkäsittelyohjelma, jolla tämäkin kirja on kirjoitettu. Ennen kaikkea lehdistö ja tavallinen kansa oppi tuntemaan Open Source -käsitteen.
Mutta kaikki eivät olleet tyytyväisiä. Stallman ei hyväksynyt Open Source -termin käyttöä. Hänen mielestään oli tärkeää ymmärtää vapaiden ohjelmien taustaan liittyvää ideologiaa, eikä tyytyä "käyttämään sitä mikä toimii parhaiten". Ja vaikka Open Source -leiri saavuttikin enemmän vastakaikua hakkeriyhteisön ulkopuolella, niin hakkeriyhteisön sisällä moni pysyi uskollisena Stallmanille ja alkuperäiselle Free Software -ideologialle.
Vaikka katkerimmat taistelut Free Software ja Open Source -leirien välillä ovat onneksi jo takana päin, voi yhä tänään päätellä kumpaan leiriin henkilö kuuluu, siitä kumpaa termiä hän käyttää Linuxista puhuessaan. Kysymys ei ole vain mistä tahansa sanaparista. Kysymys on identiteetistä ja siihen liittyvästä ideologiasta. Ja niistä hakkerit pitävät kiinni.
Mitä on etiikka?
muokkaaKamppailu Free Software ja Open Source -leirien välillä johtaa meidät lopuksi yllättäen erään mielenkiintoisen kysymyksen äärelle. Mitä on etiikka?
Open Source -leirin tyypillisin edustaja on juuri Linus. Hänen asennettaan voisi kutsua insinöörimäisen käytännönläheiseksi. Tämä johtuu hänen luontaisen asennoitumisensa lisäksi myös osittain siitä, että Linus katsoo, että hänen asemansa Linux-projektin johtajana velvoittaa hänet olemaan mahdollisimman neutraali. Hän ei siksi halua sekaantua poliittisiin kysymyksiin. Hänen johtolauseenaan on suurin piirtein: Me teemme sen, mikä toimii parhaiten ja ohjelmoinnissa Open Source toimii parhaiten. Free Software -puolen oppi-isä Stallman taas pitää rajoittumista noin yksinkertaiseen ajatteluun hyvin vaarallisena. Hänen mielestään avoimen ja suljetun ohjelmistokehityksen välillä on huomattava ero, ja tällä erolla on vaikutus niinkin tärkeisiin asioihin kuin esimerkiksi tasa-arvo ja valtionhallinnon läpinäkyvyys, ja toisaalta moneen tärkeään tekniseen kysymykseen kuten tietoturvaan ja luottamussuhteisiin. Näistä kaikista syistä seuraa, että kysymys parhaasta ohjelmistojen kehitysmallista on ennen kaikkea eettinen. Mitä siis on etiikka?
Hullun lehmän taudinhan todettiin johtuvan siitä, että lehmien rehuihin oli alettu sekoittamaan lampaiden ja lehmien aivoista ja luista jauhettua sekoitusta. En tiedä mikä tässä eurooppalaisessa maataloudessa oikein on vikana, mutta tässä sitä taas ollaan! Hyvät aivot kun muuten olisivat menneet ihan hukkaan, niin päätettiin syöttää ne lehmille itselleen ja säästää siten oikean rehun kuluissa. Ja parin vuoden kuluttua siitä meillä on hullun lehmän tauti, ja kymmeniä eurooppalaisia kuolee syötyään näitä lehmiä. Vaikka Suomi säästyikin tältä lähinnä brittejä vaivanneelta epidemialta, niin kriisiä puitiin myös täällä. Eräässä television keskusteluohjelmassa pohjoissuomalainen maanvlijelijä kertoi, että aivorehua oli 90-luvun alussa tarjottu myös Suomeen. Suomessa maanviljelijät pitivät kuitenkin ajatusta lehmien lihottamisesta toisten lehmien teurasjätteellä täysin epäeettisenä ja kieltäytyivät ostamasta rehua.
Pohjois-Suomesta siis löysimme yllättäen maanviljelijän, joka puhui eettisyydestä. Nythän surullisen kuuluisa "lihaluujauho" on jo kielletty koko Euroopassa, kun kävi ilmi, että se oli hullun lehmän taudin syynä. Mutta Suomessa maanviljelijät olivat kieltäytyneet sen käytöstä jo kymmenen vuotta aiemmin, koska se ei heidän mielestään ollut eettistä! Ja koska lihaluujauhoa ei täällä oltu käytetty, Suomi myös säästyi hullun lehmän taudilta ja traagisilta ihmiskohtaloilta, joita siihen muualla Euroopassa liittyi.
Voisi sanoa, että lihaluujauhon kieltäminen on järkevää, koska se toimii. Kuka tahansa ymmärtää, että lehmille ei voida syöttää sellaista rehua, joka saa lehmät sairastumaan ja joka on hengenvaarallista myös lehmänlihan syöjälle. Mutta tämä on valitettavasti jälkiviisautta. Olisi tietenkin ollut parempi, jos lihaluujauhoa ei alunperinkään olisi syötetty lehmille ja siten oltaisiin säästytty niiltäkin turhilta kuolemilta, jotka epidemia aiheutti. Mutta miten kukaan olisi voinut arvata, että näin tulee käymään?
Aiheellinen kysymys! Ja kuitenkin oli myös niitä maanviljelijöitä, jotka eivät käyttäneet lihaluujauhoa. He eivät vedonneet mihinkään käytännön syihin, vaan eettisyyteen. Jälkikäteen katsottuna tämä ratkaisu kuitenkin säästi ihmishenkiä. Ja jälkikäteen katsottuna tämä ratkaisu oli se, joka toimi.
Kun Open Source -leirin kannattajat puhuvat epäpoliittisesti "vain siitä mikä toimii", he ovat tavallaan oikeassa. Mutta olisiko Stallman voinut käyttää samaa argumenttia vuonna 1984, kun suljettujen ohjelmistojen suuntaan oltiin vasta siirtymässä? Koska ohjelmistoala kaiken kaikkiaan oli niin nuori, ei voitu vedota faktoihin ja käytännön kokemuksiin kummankaan mallin puolesta. Siksi Stallman joutuikin puhumaan eettisyydestä. Ja hän oli oikeassa, mutta se tultaisiin näkemään vasta myöhemmin.
Myös Stallman päätyi Free Software -ristiretkelleen tavallaan juuri siksi, että hän havaitsi etteivät suljetut ohjelmistot toimineet yhtä hyvin kuin vapaat. Esseessään "The GNU Project" hän kertoo, kuinka heidän laboratoriossaan oli tulostin, jonka hallintaohjelma oli kömpelö ja siksi sen käyttäminen oli erittäin turhauttavaa. Lahjakkaana ohjelmoijana Stallman tiesi, että hän voisi korjata ongelman helpostikin, mutta laitteiston myyjäpä ei suostunutkaan antamaan tulostinohjelmiston lähdekoodia! Tämä episodi osaltaan vaikutti Stallmanin myöhemmin tekemiin johtopäätöksiin.
Ympyrä siis sulkeutuu. Kun Linus pitäytyy omassa "vain se mikä toimii" linjassaan, hän itse asiassa puhuu etiikasta! Eettiset ratkaisut ovat eettisiä juuri siksi, että ne ovat oikeita. Ja oikeat ratkaisut ovat oikeita siksi, että ne toimivat.