Monday, August 17, 2009
Monday, May 11, 2009
GPL ja BSD litsentsi võrdlus kahe vaba projekti näitel
GPLiga kaitstud projekti vast tuntumaiks näiteks on Linux. Linuxi lähtekood on endiselt avalik ning tasuta, Red Hat’i poolt kirjutatud lähtekood kuulub kõigi reeglite kohaselt samuti GPL litsentsi alla ning on vabalt kättesaadav kõigile. Red Hat saab kasumit, müües lähtekoodile juurde teatud lisaväärtusi (lisarakendused, dokumentatsioon, kasutajatugi), mis on kommertskasutajale olulised (T.Jõesaar, 2008, Tarkvara hübriidne arendus- ja ärimudel, magistritöö). Red Hat rahastab samas ise avatud lähtekoodiga tarkvara loomist, makstes palka mitmetele Linuxi arendajatele.
BSD-d kasutatakse enim loomulikult BSDopsüsteemi arendusel (nt FreeBSD Unix opsüsteem). Mainitud opsüsteem kogub tuntust eelkõige oma lihtsuse, töökindluse ja turvalisuse poolest. Milline on nende arenduste vahe?
FreeBSD kernel ja enamus koodi on lastud välja BSD litsentsiga, samas on osa komponente kasutusel teiste avatud litsentsidega nagu GPL, LGPL või ISC. Linuxi kernel ja enamus tarkvara on litsentseeritud GNU GPLi litsentsiga, mis on teatavasti Free Software Foundationi poolt loodud. Erinevus on ka opsüsteemide arendustes ja nimelt selles, et Linuxi puhul arendatakse erinevad osad eraldi ja liidetakse alles tootestamisel. FreeBSD puhul toimub arendus aga ühe tervikuna. FreeBSD on leidnud kasutamist webiserverina (Yahoo! Sony Japan etc), desktopil toimetab aga vääramatult Linux. Lisaks on Linux kasutusel ka webiserverina. Aga mis kõige tähtsam - BSD boodib ja reboodib kiiremini kui Linux!
Allpool lühidalt ka sellest, millised on põhilised erinevused GPLi ja BSD vahel.
GPL tarkvara võib vabalt kopeerida, avada, muuta ja täiendada ning edasi levitada nii originaal- kui muudetud kujul. Kõige selle eest tuleb "maksta" vaid autori poolt lisatud (ja tema andmeid sisaldava) dokumendi ning GPL litsentsi (mis algab klausliga, et litsentsi võib vabalt levitada, kuid mitte muuta!) lisamisega edastatavasse tarkvarasse - nii on ka edasiantav tarkvara saanud GPL objektiks. (http://akadeemia.kakupesa.net/arhiiv/VR1/loengud/loeng8)
GNU avalikku litsentsi (GNU Public License, GPL) peetakse kõigi avatud lähtekoodi litsentside eelkäijaks ning see on siiani arendajate seas eelistatuim (mõningatel hinnangutel kuni 85% kõigist projektidest). [Woods&Guliani, 2005]
GPL ja BSD litsentside esimene erinevus seisneb selles, et GPL on copyleft ja BSD non-copyleft. Mitte-copyleft -litsentsid võimaldavad tuletatu koodist ka ärivara teha. Teine erinevus seisneb selles, et BSD litsentsi ei saa kitsendada, GPLi saab ning kolmandaks laieneb litsents GPLi puhul kõigile tuletistele, BDS puhul aga mitte. Oma olemuselt peetakse GPL litsentseerimist rangemaks ja keerulisemaks. BSD litsents võimaldab tarkvara probleemideta siduda teiste mitte BSD litsentsiga tarkvaraga ja sh ka kommertstoodete loomiseks. See säästab arendajate ressurssi ja raha olulisel määral.
Samas on mõlemal litsentsil ka teatud puudused ja kumbagi neist ei saa nimetada täiuslikuks, nagu ei saa täiuslikuks nimetada vist ühtegi litsentsi.
Kahe vaba projekti võrdlus arenduse vaatenurgast
Võrdleme Linuxit ja FreeBSD-d.
FreeBSD on parem kui Linux (geekmalaya.com - 22/01/2009).
1. BSD litsents lubab kasutajal modida programmi lähtekoodija ei kohusta avalikustama muudatusi
2. BSD on nn tuumiksüsteem (ilma lisanditeta)
3. BSD puhul installeeritakse kõik add-on paketid rangelt /usr/local directory
4. BSD on FFS failisüsteem
5. BSD jagab oma partitsioone sisemiselt
6. Kõik BSD süsteemid omavad Linux emuleerimise tuge
7. BSD kernelit saab seadistada mitmel erineval turvatasemel
8. BSD boodib ja reboodib kiiremini kui Linux
9. Võrreldes BSDga on enamus Linuxi tarneid ülepaisutatud
10. ...
Arenduse vaatenurgast on erinevus eelkõige selles, et BSD arendatakse kui tervikut aga Linuxi puhul arendatakse "juppe" eraldi ja need liidetakse alles nö tootestamisel. On ka rida väiksemaid erinevusi aga need ei ole kuigivõrd olulised arenduse kui protsessi vaatenurgast. Samas ei ole loomulikult võimalik öelda, kumb tarkvara parem on, sest kehtib ka siin reegel, et otsustavaks saab see, milleks on vaja tarkvara kasutada.
Eric S. Raymond, "The Cathedral and the Bazaar"
Eben Moglen, "Anarchism Triumphant"
This paper shows why free software, far from being a marginal participant in the commercial software market, is the vital first step in the withering away of the intellectual property system - see lause ütleb lühidalt ja täpselt ära selle, millest see artikkel räägib.
Autor arutleb üsna põnevalt erinevatel tarkvara arendust puudutavatel teemadel, annab lühiülevaate maailma ja arusaamade muutumisest 80-datel, selgitab kuidas tema näeb muutuste põhjuseid ja püüab vastata küsimusele miks? Sekka seletab Mogelen üsna põhjalikult vaba tarkvara litsentseerimisega seotud arenguid ja kirjeldab, kuidas on maailm jõudnud GPL-ini läbi GDB ja GNU. Ehk teiste sõnadega kirjeldab Richard M. Stallman'i ristiretke 80-date algusest.
Autoriga võib nõus olla, võib ka mitte. Põhiline on see, et ta annab tänases üdini materialiseerunud maailmas justkui elementaarsele olukorrale pisut teistsuguse lähenemisnurga ja paneb mõtlema, et kas me (täpsemini ärimehed ja juristid:) ei ole üle pingutanud omandiküsimustes ja seeläbi usinalt pidurdanud normaalset arengut?
Samas tundub, et antud küsimuses on tegemist omalaadse evolutsiooniga ja selline asjade käik oli/on mõnes mõttes paratamatu. Säilib aga lootus, et kunagi jõuame tagasi nö 70-datesse, tarkvara ei käsitleta omandina ning ühisarenduse tulemusena valmivad tõeliselt head ja veavabad tooted. Aga see eeldab esmalt seda, et tarkvara kasutajate-tarbijate teadlikkus on tõusnud sel määral, et nad oskavad eristada head halvast ja nn käivitajaks võiks siin olla avalik sektor. Üsna mitmed sajad miljonid (kui mitte miljardid!) kroonid kaovad täna litsentseeritud tarkvara ülevalpidamiseks avalikus sektoris selmet kasutada alternatiivset, töökindlamat ja tasuta tarkvara.
Mõelgem hetkeks selle peale, härrased ministrid!
Hacker-HOWTO by Eric S. Raymond
Sunday, May 10, 2009
Wesnoth - "roheliste" kampaania arvustus
Retsenseerimise hetkeks (10.05.09, kell 11:00 A.M) on kahjuks valmis ainult kahe tiimi mängud, "punased" ja "rohelised". "Punaste" liikmena tuleb siis kommenteerida - retsenseerida "rohelisi". "Rohelised" on oma kampaaniaga "Oravamaa seiklused" vaeva näinud. Mäng töötab st kriitilisi bugisid silma ei hakanud. Au ja kuulsus! Stoori on originaalne, tegelaste disain enamuses õnnestunud (v.a Rein Raevukas, kes on visuaalselt käkk) ja lugu mängitav.
Eriti ilus on mängu algus, kenad taustapildid, liigutav muusika. Kaartidega on vaeva nähtud aga võiks veel näha:). Kuna kõigis kolmes mängus on ainult üks vaenlane ja eesmärgiks vaenlane tappa, siis on mängude algus suhteliselt igav - tuleb jalutada palju mööda kaarti enne kui tegevust leiad. Sellise lahenduse korral oleks võinud kaardid väiksemad olla. Samuti võiks vaenlaseid olla rohkem ning mängu lugu võimaldaks ka keerukamat lahendust kui ainult vaenlase tapmine.
Mäng on tasakaalustamata ja seda "rohelised" ka kolmandal levelil ise ettenägevalt tunnistavad. Vaenlased on suhteliselt väetid ja nende alistamine ei ole just kõige keerulisem. Seda isegi raskemal tasemel.
Lugu mängides tekkis mitmelgi puhul nö äratundmisrõõm. See tähendab seda, et kergelt on spikerdatud "punaste" kampaaniast. No alates kasvõi nimest. "Joomasõprade seiklused" ver "Oravamaa seiklused". Oleks võinud veidi originaalsem olla ja nimetada nt "Oravamaa taplused" vms:)) Kohati kõlasid mängu tekstides tuttavad lausekonstruktsioonid. Aga need on juba sellised detailid, mis kokkuvõttes ei muuda suurt pilti.
Kõige rohkem on panustanud projekti Indrek ja Tehiskangelane. Teised kas ei ole üldse või on seda teinud nii kavalalt, et see lihtsalt ei paista välja. Mine tea, igal grupil oli vabadus ise otsustada, kes millisel etapil palju panustab.
Aga kui "rohelised" veel pisut pingutava, siis saavad ehk ka tõeliselt hea mängu valmis. Ainest ju oleks!
Monday, March 30, 2009
Ühe eduka vaba tarkvara projekti edulugu
How To Do Open-Source Development
Innovation Happens Elsewhere, Open Source as Business Strategy, Ron Goldman, Richard P. Gabriel (http://dreamsongs.com/IHE/IHE.html)
How To Do Open-Source Development
Selles peatükis kirjeldatakse üsna täpselt, mida tähendab endast avatud lähtekoodi arendus (OSD), täpsemini, mis on selleks vaja, et see saaks toimuda võimalikul paremal moel.
Üheks baaseelduseks on igakülgne ja avatud suhtlemine. Kuigi OSD korral reeglina arendajad teineteisega pärielus ei kohtu (vähemalt rahvusvaheliste projektide korral) on suhtlemine määrava tähtsusega. Siin on oma reeglid aga need ei erine kuigivõrd tavasuhtluses kasutatavatest reeglites.
Oma olemuselt ja ülesehituselt ei ole OSD loogika midagi erakorralist vaid suuremas osas on üle võetud nn best practises tavaelust ja viidud virtuaalsesse keskkonda, ainsa erinevusega, et kommuuni liikmed ei tea ja ei tunne teineteist ehk päriselus ning suhtlevad läbi virtuaalsete „kehade“. Igal projektil peab olema juht, meeskond, plaan, korraldatud testimine ja vigade haldus jne jne. Ehk siis ei tasu naiivselt arvata, et OSD juhtub niisama ja ei maksa midagi. Maksab ja kindlasti mitte vähem, pigem isegi rohkem, kui tavalised arendusprojektid. Piisab kui hakata kalkuleerima projekti panustavate inimeste tööaeg rahaks.
OSD kommuunile on iseloomulik selle loomulik kujunemine. Rollid selginevad, muutuvad ja arenevad projekti käigus ning see võimaldab tõsisel pühendujal teha virtuaalset karjääri. Kõik sõltub kommuuniliikmest endast, millise rolli ta endale “välja töötab“. Demokraatia missugune, kus mujal tänapäeval me seda kohata võime?! Vast ehk korteriühistud on koht, kus agaramad ja initsiatiivikamad tulevad jõudsalt pildile aga nad ei pruugi alati olla ka piisava kogemuse ja kompetentsiga. Teiseks erinevuseks on see, et KÜ-de puhul on tegemist ÜKT-ga ja kes see ikka nii väga viitsib oma vaba aega ohverdada? Pealegi kui on ette teada, et peale stressi ei saada sellest panustamisest suurt midagi. OSD kommuun on siin selgelt inimsõbralikum kooslus.
Mis siis artiklist olulist meelde-silma-kõrva jäi? Vaatamata sellele, et OSD on oma toimimise loogika kirjutanud maha tavaelust on paradoksaalselt sealt tänaseks üsna palju õppimisväärset just tavaellu tagasi võtta. Kuidas tuhanded inimesed võiksid teha tulemuslikult koostööd, kuidas ennast kehtestada, oma mina tahaplaanile suruda jne jne. Tuues paralleele tänase Eesti eluga, siis võiks päris huvitav (ja hästitoimiv) OSD projekt olla „Eesti Vabariik“J
Monday, March 16, 2009
Steven Levy Hackers
Huvitav materjal, esimene peatükk annab mõnusa ülevaate sellest, kuidas 50 aastat tagasi "maailm" loodi. Arvutimaailm kui täpne olla. Samuti heidetakse põgus pilk MIT geniaalsete "raudteepoiste" tegemistele eesotsas Peter Samson'iga. Üsna uskumatu, et sel ajal kui meie esivanemad nautisid Hruštsovi sulaajaga kaasnenud muutuseid ja kõva häälega räägiti helgest kommunistlikust homsest, loodi kuskil kaugel imperialistlikus Ameerikas arvutiajalugu ja meil polnud sellest õrna aimugi. Täna tundub suur osa kirjutatust elementaarne igale koolilapsele. Aga 50 aastat on ka möödas ja maailm ei ole enam kunagi endine. Kus me oleme 50. aasta pärast? Kui teaks, kas oleks hea?
Teine peatükk räägib häkkeri eetikast, seitsmest käsust. Tavainimese jaoks on siis tegemist omalaadse kristliku 10. käsuga. Need on selged ja arusaadavad "statemendid", mis on peatükis kenasti lahti seletatud. Need põhimõtted on sellised, millega võib rahulikult nõus olla ja mis on ilmselt enamuse jaoks üsna süütud. Erandina tekitavad need neuroose tarkvara äride omanikele, kes püüavad meeleheitlikult oma kasumit kaitsta.
Kokkuvõtvalt - hariv ja silmaringi laiendav lugemine, kui on võimalust, siis lugege!

.jpg)