Friday, March 19, 2021

Avavara kaitsmisest


Suure tõenäosusega tuleb iga tarkvaraarendaja elus kord päev, kus ta loob avavara (open-source software). Vähemalt on tarkvaraarendajal tõenäosus avavara luua kõvasti suurem kui inimesel, kes pole koodi kirjutanud. Igal juhul, kui ühel päeval soovid oma saavutust ülejäänud maailmaga avavarana jagada, tasub pisut mõtiskleda, kuidas loodut kaitsta. Süvenedes avavara litsentside maailma, selgub, et see mõtisklus võib isegi kujuneda pikemaks. Nimelt - Open Source Initiative'i lehel on loetletud üle 100 avavarale heakskiidetud litsentsi. Populaarseimad ja laialdasemalt kasutatavad või tugeva kogukonnaga on: 

Kuigi litsentsinimekirja süvenemise asemel võib tunduda lihtsam jätta oma tööle litsents lisamata, on see pisut libe jää. Autoriõigused laienevad tööle automaatselt ja kui litsentsiga mitte täpsustada, siis ei tohi keegi teine tööd kopeerida, jagada või muuta, riskimata näiteks kohtuvaidlustega. Kurioosne on, et kui tööl on mitu autorit, siis kaasnevad ka sulle endale samad riskid, kui soovid hiljem töösse muudatusi teha [1]

Seega, et tagada piiramatu ligipääs oma tööle, kasutatakse avavara puhul:

  • copyleft-tüüpi litsentse, mis läbi õigusraamistiku tagavad jätkuva vaba ligipääsu tarkvarale ja selle lähtekoodile. Kaitsevad autoriõigusi ja neid võib kasutada kommertsiaalsetes rakendustes. Peamine nõue on, et tuletatud loomingut tuleb jagada samadel litsentsitingimustel, ehk õigused on "piiratud";
  • nn akadeemilisi ehk mitte-copyleft litsentse, millele on olnud alusepanijaks ülikoolid. Erinevalt copyleft litsentsidest ei pea akadeemiliste litsentside kasutamisel lähtekoodile viitama, seega on antud litsentsid "lubavad". Sinna alla kuuluvad näiteks:
    • Apache (näiterakendused Android, ASP.NET, Docker, Kubernetes)
    • MIT (näiterakendused Angular, GitLab, Jenkins, Node.js, Vue.js)
    • BSD (näiterakendused Django, NumPy, Ruby)[2]
      Laias laastus on need litsentsid üsna sarnased, erisused tulevad nüanssides, mida saab vaadata siit. Näiteid on ka mitte-copyleft'iga litsentside vahetamisest, näiteks React'i kaitses varem BSD litsents, aga nüüd MIT. Selline vangerdus tehti, et React'i ja React Native'i kasutajad ei peaks kartma, et Facebook neid kohtusse kaebab või nad oma patendid kaotaks [3].
Copyleft litsentsid jagunevad omakorda veel kolmeks:
  • GPL - tugeva copyleft'iga - tuntuim, kuna see on ühtlasi vanim ja seetõttu enim mainitud (näiterakendused Git, Linux kernel, MySQL, Notepad++, WordPress)
  • LGPL - nõrga copyleft'iga, väga sarnane eelnevaga, aga teatud tingimustel võib projekti osi kasutada ärivara loomisel (näiterakendused 7-zip, VLC media player)
  • AGPL - väga tugeva copyleft'iga, esimesega peaaegu identne, aga võimaldab veebirakenduste puhul küsida lähtekoodi. Seetõttu pole online'is kasutuseks mõeldud ärivara loomisel kõige mõistlikum taolise litsentsiga kaetud avavara kasutada (näiterakendused RStudio, Zotero)

Copyleft litsentsid on saanud kriitikat, et need on liiga piiravad. Teisalt võimaldab nende kasutamine tagada, et avavara ei kasutaks kommertsiaalsed ettevõtted, mis ei anna konkreetse avavara kasutamisel ühiskonnale midagi tagasi. Lisaks hoiab copyleft litsentside kasutamine ära seda, et projekti osi kasutatakse konkureerivate projektide loomisel [4].

Varasemalt on olnud copyleft'iga litsentsid populaarsemad kui mitte-copyleft'iga litsentsid, näiteks 2012. aastal vastavalt 59% ja 41%. Viimastel aastatel on mitte-copyleft'iga litsentsid oma populaarsust märgatavalt kasvatanud ja suhe oli mullu (2020. aastal) 76%:24% mitte-copyleft'iga litsentside kasuks. Neist omakorda kaks - Apache 2.0 ja MIT on kasutusel üle pooltes (vastavalt 28% ja 26%) avavarades ning neile järgnevad copyleft'iga litsentsid GPLv3 ja GPLv2 (mõlemad kasutusel ca 10% avavarades) [5].


Arvustus - mänguelemendid lastele suunatud tarkvaras

ITSPEA rühmatööde raames tegid  Margot Saare, Maris Salk, Ragnar Rääsk ülevaate m änguelementide eetilisest kasutusest lastele suunatud tar...