Tuesday, November 29, 2011

Nädal 13. Kogukondlik tarkvaraarendus

Tänases postis tuleb võrrelda kahte vaba tarkvara projekti arenduse vaatenurgast.

Esimesena vaatleks sellist toredat tarkvarajuppi nagu POV-Ray-nimeline ray-tracing engine ehk kiirtejälitusmootor. Tegemist on võimsa modelleerijaga, mis võimaldab C-d meenutavas skriptimiskeeles kirjeldada suvaliselt keerulisi matemaatilisi objekte, moodustades nendest stseene, ning seejärel luua nende pealt elurealistlikke pilte (näiteid leiab kasvõi siit: http://hof.povray.org/).

POV-Ray sai alguse aastal 1986 kui ühemehe projekt Amiga platvormile. Juba aasta hiljem, lühidalt peale selle koodi avalikustamist, porditi seda ka PC-le, alustades kasutajaskonna suurenemist. 1991. aastaks ei suutnud rakenduse autor enam üksi soovitud funktsionalsust realiseerida, ning otsustas POV-Ray'd CompuServe programmeerimishuviliste rühmale üle anda.

Arendusmudeliks on klassikaline kogukondlik - koodile pääsevad ligi kõik soovijad - kuid ametlikke muudatusi koodibaasis saab teha vaid "POV-Ray Team", ehk kinnine arendajate meeskond, ning teiste panustajate poolt valminud muudatusi levitatakse patch-ide kujul läbi uudistegruppi (http://news.povray.org).
Kasutajatugi laieneb vaid ametlikutele versioonidele.

Kuigi sisuliselt on tegemist tüüpilise vaba tarkvaraga, on projekti loojad teadlikult hoidunud oma teosele GNU litsentsi rakendamast, kuna POV-Ray pärineb GPL-eelsest ajast. Kasutusele sai hoopis võetud omapärane kahest osast (General + Distribution) koosnev "POV-Ray litsents".


Võrdluseks viskaks pilku OpenOffice-i peale.

OpenOffice tekkis kui StarOffice-i (mis varem oli Sun-i, nüüd aga Oracle omandis) avatud lähtekoodiga versioon. Kuni käesoleva aasta maikuuni kõiki arendust puudutavaid otsusi langetas Oracle, ning projektiga liituda soovivatel arendajatel tuli alla kirjutada lepingule, mille kohaselt said kõik muudatused Oraclega kaasomandisse. Lähiajal aga võib OpenOffice-st saada Apache Sihtasutuse projekt (hetkel on see ootel Apache Inkubaatoris). Siiski,

Kuna, erinevalt POV-Ray-st, tegemist on hiigelprojektiga, koordineerib selle arendamist kogukonna nõukogu (community council), milles on esindatud ka projektitiimijuhid.

Ärimudeliks on tasuline kompetents: projektile pakutakse lisateenustena eksperttuge ja koolitus.

Monday, November 28, 2011

Nädal 12. Jagamiskultuur: motivatsioon, ärimudelid ja häkkerieetika

Seekord tuleb tuua omapoolset hinnangut Eric Steven Raymond'i artiklile "How To Become A Hacker", ehk "Kuidas häkkeriks saada".


Juba lugemist alustades on tunda, et autor kirjutas artiklit kirega, ning häkkerlus on tema jaoks sama loomulik kui hingamine. See on manifest, mis ei heida oskamatust või liiga lõdva pühendumust lugejale ette, vaid kutsub kaasa lööma, tehes seda rangelt, kuid sõbralikult. Kui tahad pingutada ja pingutad, jõuad edasi.

Põhiideeks on pidevalt arendada endas huvi uute teadmiste omandamise ja rakendamise vastu, ning üritada oma elu üha mitmekesisemaks muuta. Siin minu arust peitubki põhiline raskus - kuigi paljud on Raymond'i "häkkerluse skaalal" oma oskuste poole pealt mingi kindla tasemeni tõusnud, on nende edaspidine arengusoov kas külmunud või igapäevaste murede lahendamisele ära kulunud. Täismahus artikli punktide täitmise jaoks tuleb kas alustada varakult, või siis ohverdada mõnda elu "traditsioonilistest" koostisosadest.

Ausalt öeldes, innustas see artikkel ka mind kohe tegutsema hakata ja mõelda taas küsimusele: aga mida mina olen siiani jõudnud ära teha, ja mida oskan - ja KAS oskan? Peaks suutma öelda "ei" rutiinile.

Sunday, November 20, 2011

Nädal 11. Tarkvara- ja sisulitsentsid

Tänases postituses kirjutan Apache tarkvaralitsentsist.

Apache litsents on vabat levitamist võimaldav avavara (open source) litsents, mis on loodud ja hallatud Apache Tarkvara Sihtasutuse (Apache Software Foundation) poolt. Kehtivaks litsentsi versiooniks on 2.0 (jõustus 2004. aasta jaanuaris).

Litsents sobib kokku GNU Public litsentsiga, kuid ainult ühes suunas - see tähendab, et selle all arendatud tarkvara tohib küll saada mõne GPL-tarkvara koostisosaks, kuid mitte vastupidi. Piirangu põhjuseks on see, et GPL nõuab enda kaitstud tarkvara tuletiste levitamist samuti GPL-i all, Apache Sihtasutus aga nõuab kõigile oma tarkvarale Apache litsentsi.

 Wikipedia andmetel kuulub Apache litsentsi alla üle 6000 projekti SourceForge.net-s ning üle 25000 projekti Google Code-s.

Nädal 10. Paragrahvi-papi ja Interneti-põnn: intellektuaalomandi hiilgus ja viletsus

Selles postituses tuleb hinnata intellektuaalomandi ja autorikaitse hetkeseisu.

Autorikaitse suuremaks probleemiks on Interneti globaalsus ja selles teostatavate toimingute vabadus ja kiirus - kui teada saab üks, saavad teada kõik, ning ükski karistusmehhanism ei ole füüsiliselt võimeline informatsiooni levikut piirata. Isegi siis, kui tegemist on mingi kindla firma omanduses puhtalt elektroonilisel kujul oleva kinnise "know-how" infoga, alati leidub sisemisi "reetureid", kes on valmis kas mõõduka rahasumma eest või sportliku huvi pärast seda lekitada.

Veeb on võrk, mitte hierarhiline struktuur, ning sellepärast ei saagi siin olla ei täiuslikku tsensuuri ega kontrolli - teisisõnu igasugused katsed seadusi täita on alati hukka mõistetud.

Mis aga puudutab tarkvara patenteerimist, siis nõustun käesoleva teema õppeartiklis toodud väitega, et see pidurdab tarkvara arengut. Erinevalt patendisüsteemi esimestest aastatest, kus teadmisi tuli kaitsta vaid paari konkurendi (tootja) eest, näeme praegu hoopis vastupidist olukorda: tootmisesse ehk arendamisse on kaasatud sadu tuhandeid huvilisi. Loovuse jõud on palju tugevam ning ei talu enda piiramist.

Monday, November 7, 2011

Nädal 9. Vaba tarkvara kui oluline eeldus

Jooksva nädala ülesandeks on kirjeldada enda kogemusi mõne vabavaraga. Eelkõige nimetaks muidugi erinevaid Linuxi distributiive (Red Hat, Suse, Gentoo), ning muidugi Ubuntu, millega teen tööd juba viiendat aastat järjest ning olen sellega ülimalt rahul. Aga ka Windows-iga masinatel olen aastaid vabavaralisi rakendusi kasutanud, alustades igat värsket installi komplektist Winamp + IrfanView + Firefox + VLC või BSP mängija + Gimp + tosin erinevaid kasulikke utiliite.

Minu arust "õige" vabavara (ja mitte ainult avatud lähtekoodiga) üheks suureks eeliseks on püüdlus pakkuda kasutajale vaid vajalikku funktsionaalsust, ehk teisisõnu olla konkreetseks ja täiuslikuks tööriistaks.