V tem članku bomo nekoliko govorili o avtorskih pravicah, predvsem pa o izbiri proste licence za RAD okvir. in za odprtokodne produkte na njeni osnovi. Povedali bomo o dovoljevalni licenci Apache 2.0, o tem, kar nas je pripeljalo do nje, in s kakšnimi rešitvami smo se srečali v procesu.
Postopek izbire licence je precej zamuden in do njega je treba pristopiti že dobro informirano, in če niste srečni imetnik pravne izobrazbe, se vam odpira neurejeno polje informacij o raznolkih prostih licencah. Osnovno, kar je treba storiti, je oblikovati vrsto omejevalnih meril. V postopku razprave in razumevanja boste s svojo ekipo lahko razumeli, kaj želite dovoliti uporabnikom vašega produkta in kaj prepovedati. Ko imate že nek opis, je treba to nalagati na obstoječe licence in izpostaviti tisto, kjer se je največ točk ujemalo. Zveni preprosto, a v resnici, običajno tudi po razpravi ostajajo vprašanja.

Najprej — povezava na , koristna spletna stran, ki smo jo aktivno uporabljali. Še posebej bodite pozorni na licenc po 13 osnovnih merilih. Naj bo z vami angleščina in potrpljenje.
Muke izbire
Začnimo s splošnimi znaki licenc za PSO pomeni izključno svobodno licenco, ki ne omejuje komercialne in nekomercialne distribucije po modelu. Zato, ko svoje programske opreme pod prosto licenco ne morete popolnoma omejiti pri prenosu, distribuciji in prodaji s tretjimi osebami, se je treba na to le moralno pripraviti.
Prosta licenca uporabniku daje pravico, da sam sodeluje v obratnem razvoju programske opreme ali jo spremeni z drugimi dostopnimi načini. Večina licenc ne dovoljuje preimenovanja produkta ali izvajanja kakršnih koli manipulacij, ki bi spreminjale pravice avtorja ali/ali lastnika sistema.
Glavna vprašanja, ki so nas zanimala, glede prostih licenc so bila:
- Spremembe, vnesene v programsko opremo, morajo biti zabeležene in nimajo nobene zveze s pravnikov lastnikom sistema?
- Ime derivativne programske opreme se ne sme ujemati z imenom programske opreme imetnika pravic?
- Ali je mogoče spremeniti licenco za vse nove različice na drugo, vključno s proprietary licenco?
Po podrobnem pregledu seznama najbolj pogostih licenc, smo izbrali nekaj, ki smo jih natančneje preučili. Potencialne licence za so bile: GNU GPLv3, Apache 2.0, MIT in MPL. MIT Smo skoraj takoj izključili MIT, kajti to je permissive non-copyleft licenca, ki omogoča uporabo, spreminjanje in distribucijo kode skoraj na vsak način, kar nam ni ustrezalo, saj smo želeli, da licenca ureja odnose med imetnikom pravic in uporabnikom. Večina manjših projektov na GitHubu je objavljena prav pod MIT licenco ali njenimi različicami. Licenca je zelo kratka, edina prepoved je navajanje avtorstva ustvarjalca programske opreme.
Naslednja je bila licenca MPL 2.0. Opravičujem se, do nje nismo hitro prišli, ampak smo jo hitro izključili po podrobnejšem pregledu, saj je njen glavni pomanjkljivost ta, da se licenca ne uporablja za celoten projekt, temveč za posamezne datoteke. Poleg tega, če uporabnik spremeni datoteko, je ne more spremeniti. V resnici, ne glede na to, kako prizadeven si pri spreminjanju open-source projekta, ga ne moreš monetizirati zaradi take licence. To se sicer ne nanaša na imetnika pravic.
Podobna težava se pojavi tudi pri licenci GNU GPLv3. Zahteva, da vsaka datoteka ostane pod njo. GNU GPL je copyleft licenca, ki zahteva, da so izvorne kode izpeljanih del odprte in ostanejo pod to licenco. To pomeni: če prepišete dve vrstice kode, boste prisiljeni zabeležiti svoje spremembe in ob nadaljnji uporabi ali distribuciji ohraniti kodo pod GNU GPL. V tem primeru je to omejitveni dejavnik za uporabnika našega projekta, ne za nas. Ampak sprememba GPL na katerokoli drugo licenco je prepovedana, celo znotraj različic GPL. Na primer, če spremenite LGPL (nadgradnja GPL) na GPL, poti nazaj k LGPL ne bo. In ta točka je bila odločilna pri glasovanju proti.
Na splošno je naš izbor sprva nagibal k GPL3 ravno zbog širenja modifikovanog koda pod istom licencom. Mislili smo da ćemo tako zaštititi svoj proizvod, ali smo uvideli manje rizike u Apache 2.0. Prema Free Software Foundation, GPLv3 je kompatibilan sa Apache License v2.0, što znači da uvek postoji mogućnost da se promeni licenca sa Apache License v2.0 na GPL v3.0.
Apache 2.0
— uravnotežena dozvoljavajuća licenca sa naglaskom na autorskim pravima. Ovo su neki odgovori koje je dala na pitanja koja nas zanimaju. Da li izmene u softveru moraju biti dokumentovane i nemaju nikakve veze sa nosiocem prava na sistem? Da, sve izmene moraju biti dokumentovane i mi ne snosimo odgovornost ni za izvorni kod, ni za izmenjeni. Datoteka s izmenama treba da bude priložena kodu u koji ste te izmene uneli. Da li ime derivatnog softvera može biti isto kao ime softvera nosioca prava? Da, derivatni softver treba da se objavi pod drugim imenom i drugim robnim znakom, ali uz navođenje autorstva nosioca prava. Da li se licenca može menjati za bilo koje nove verzije na drugu, uključujući i na proprijatnu? Da, možemo izdavati pod različitim licencama, Apache 2.0 ne ograničava primenu bilo kojih nekomercijalnih i komercijalnih licenci.
Takođe, kada izdavate nove proizvode na osnovu otvorenog koda pod Apache 2.0 ili proizvode dodatne funkcionalnosti, nije obavezno koristiti istu licencu. Ispod možete pogledati sliku sa uslovima i ograničenjima licence Apache 2.0.

Licenca postavlja zahtev za čuvanjem i navođenjem autorskih prava i licence pod kojom se softver izdaje. Obavezno prisustvo copyright notice sa imenom nosioca prava i licencom štiti prava prvobitnog autora softvera, jer čak i ako bude preimenovano, dato ili prodato pod drugom licencom, znak autora ostaje. Za to se može koristiti i datoteka NOTICE i priložiti je ili u izvorni kod ili u dokumentaciju projekta.
Sva naša proizvoda puštamo u otvoreni pristup na GitHub-u pod licencom Apache 2.0, osim , čiji je izvorni kod u aprilu ove godine objavljen pod licencom GPLv3 na GitHub-u od strane Dalekog Istoka Centra za socijalne tehnologije. Trenutno, pored samog і його so bili objavljeni napravljenih na frameworku. Na Habru smo već pisali o in .
Tehnične podrobnosti o okviru
IONDV. Framework – odprtokodni okvir na node.js za ustvarjanje visoko nivojskih spletnih aplikacij na osnovi metapodatkov, ki ne zahteva resnih programerskih veščin.
Osnova funkcionalnosti aplikacije je register podatkov – modul Registri. To je ključni modul, zasnovan za delo s podatki na osnovi struktur metapodatkov – vključno z upravljanjem projektov, programov, dogodkov in še več. V projektu se uporablja tudi modul portala za prikaz poljubnih predlog podatkov – v tem se nahaja sprednji del registra arhivskih zadev.
Za SGBD se uporablja MongoDb – v njej so shranjene nastavitve aplikacije, metapodatki in sami podatki.
Kako uporabiti licenco v svom projektu?
Dodajte datoteko LICENSE s tekstom licence v repozitorij vašega projekta in voilà, projekt je zaščiten z Apache 2.0. Potrebno je navesti imetnika pravic, to je obvestilo o avtorskih pravicah. To lahko storite v izvorni kodi ali v datoteki NOTICE (besedilna datoteka, ki navaja vse knjižnice, licencirane pod Apache licenco skupaj z imeni njihovih ustvarjalcev). Samo datoteko postavite bodisi v izvorno kodo bodisi v dokumentacijo, ki se porazdeli skupaj z delom. Pri nas to izgleda takole:
Copyright © 2018 LLC „ION DV“.
Licencirano pod Apache licenco, različica 2.0
Besedilo Apache licence 2.0
Apache licenca
Različica 2.0, januar 2004
Pogoji in določila za uporabo, reproduciranje in distribucijo
Definicije.
„Licenca“ pomeni pogoje in določila za uporabo, reproduciranje
in distribucijo, kot so opredeljeni v odstavkih 1 do 9 tega dokumenta.„Licencodajalec“ pomeni lastnika avtorskih pravic ali subjekt, ki ga pooblašča
lastnik avtorskih pravic, ki podeljuje licenco.„Pravna oseba“ pomeni združitev delujočega subjekta in vseh
drugih subjektov, ki nadzorujejo, so nadzorovani ali so pod skupnim
nadzorom s tem subjektom. Za namene te definicije
„nadzor“ pomeni (i) moč, neposredno ali posredno, da povzroči
usmeritev ali upravljanje takšnega subjekta, ne glede na pogodbo ali
kako drugače, ali (ii) lastništvo petdeset odstotkov (50 %) ali več
od izdanih delnic, ali (iii) koristno lastništvo takega subjekta.„Vi“ (ali „Vaš“) pomeni posameznika ali pravno osebo
ki uporablja dovoljenja, podeljena s to licenco.„Izvorna“ oblika pomeni preferirano obliko za spremembe,
vključno, vendar ne omejeno na izvorno kodo programske opreme, dokumentacijo
in konfiguracijske datoteke.„Objektna“ oblika pomeni katerokoli obliko, ki nastane zaradi mehanične
transformacije ali prevajanja izvorne oblike, vključno, vendar ne omejeno
na skompilirano objektno kodo, generirano dokumentacijo,
in konverzije v druge vrste medijev.„Delo“ pomeni avtorsko delo, ne glede na to, ali v izvorni ali
objektni obliki, na voljo pod licenco, kot je navedeno z
obvestilom o avtorskih pravicah, ki je vključeno v ali priloženo delu
(primer je naveden v dodatku spodaj).„Izvedena dela“ pomeni kakršno koli delo, ne glede na to, ali v izvorni ali objektni obliki
oblik, ki temelji na (ali izhaja iz) Dela in za katerega
so uredniške spremembe, pripombe, razširitve ali druge spremembe
predstavljajo kot celoto izvirno avtorsko delo. Za namene
tega Licenca, Izpeljana Dela ne vključujejo del, ki ostajajo
ločljiva od, ali zgolj povezujejo (ali vezano po imenu) na vmesnike
Dela in Izpeljanih Del tega.«Prispevek» pomeni katerokoli avtorsko delo, vključno
z izvirno različico Dela in kakršnimi koli spremembami ali dodatki
temu Delu ali Izpeljanih Delom, ki je namenoma
predloženo Licencodajalcu za vključitev v Delo s strani imetnika avtorskih pravic
ali posameznika ali pravne osebe, pooblaščenega, da predloži v imenu
imetnika avtorskih pravic. Za namene te definicije, «predloženo»
pomeni katerokoli obliko elektronske, verbalne ali pisne komunikacije, ki se pošlje
Licencodajalcu ali njegovim predstavnikom, vključno, vendar ne omejeno na
komunikacijo na elektronskih poštnih seznamih, sistemih za nadzor izvorne kode,
in sistemih za sledenje težavam, ki jih upravlja, ali v imenu,
Licencodajalec za namen razpravljanja in izboljšanja Dela, vendar
izključuje komunikacijo, ki je očitno označena ali drugače
določena pisno s strani imetnika avtorskih pravic kot «Ni Prispevek.»«Pridružitelj» pomeni Licencodajalca in katerokoli posameznika ali pravno osebo,
v imenu katerega je bil Prispevek prejet s strani Licencodajalca
in nato vključeno v Delo.Podelitev Licence za Avtorsko Pravo. Ob upoštevanju pogojev in določil
te Licenca, vsak Pridružitelj s tem daje Vam večno,
svetovno, neizključna, brezplačna, nepreklicna
licenco za avtorsko pravo za reproduciranje, pripravo Izpeljanih Del,
javno prikazovanje, javno izvajanje, podlicenciranje in distribucijo
Dela in takih Izpeljanih Del v Izvorni ali Objektni obliki.Podelitev Licenca za Patente. Ob upoštevanju pogojev in določil
te Licenca, vsak Pridružitelj s tem daje Vam večno,
svetovno, neizključna, brezplačna, nepreklicna
(razen kot je navedeno v tej sekciji) licenca za patente za izdelavo, imeti izdelano,
uporabljati, ponuditi za prodajo, prodati, uvoziti in drugače prenesti Delo,
kjer se ta licenca uporablja samo za tiste patentne zahteve, ki jih je mogoče
licencirati odtakega Pridružitelja, ki so nujno kršene s strani njihovih
Prispevkov samih ali v kombinaciji s svojimi Prispevki
z Delom, na katerega so bili ti Prispevki predloženi. Če Vi
začnete patentne obravnave proti katerikoli enoti (vključno z
cross-claim ali counterclaim v tožbi) in trdite, da Delo
ali Prispevek, vključen znotraj Dela, predstavlja neposredno
ali pomožno kršitev patenta, potem katere koli patentne licence
dane Vam pod to Licenco za to Delo prenehajo veljati
od datuma, ko se takšno tožbo vloži.Ponovna distribucija. Lahko reproducirate in distribuirate kopije
Dela ali Izpeljanih Del v katerikoli medij, z ali brez
sprememb, in v Izvorni ali Objektni obliki, pod pogojem, da Vi
izpolnete naslednje pogoje:(a) Morate dati vsem drugim prejemnikom Dela ali
Izpeljanih Del kopijo te Licence; in(b) Morate poskrbeti, da bodo vse spremenjene datoteke nosile opazne obvestila
o tem, da ste spremenili datoteke; in(c) Morate obdržati, v Izvorni obliki vseh Izpeljanih Del,
ki jih distribuirate, vsa obvestila o avtorskih pravicah, patenti, blagovne
znamke in
podatki iz Izvorne oblike Dela,
izključujoč tista obvestila, ki se ne nanašajo na noben delIzpeljanih Del; in
(d) Če Delo vključuje datoteko «OBVESTILO» kot del njegovega
distribucije, potem morajo katerikoli Izpeljanih Del, ki jih distribuirate,
vključevati berljivo kopijo obvestil o pričanju, ki so vsebovana
v takšni datoteki OBVESTILO, izključujoč tista obvestila, ki se ne
nanašajo na noben del Izpeljanih Del, na vsaj enem
iz naslednjih mest: znotraj datoteke OBVESTILO, distribuirane
kot del Izpeljanih Del; znotraj Izvorne oblike ali
dokumentacije, če so zagotovljeni skupaj z Izpeljanimi Deli; ali,
v prikazu, ki ga generirajo Izpeljana Dela, če in kdajkoli se obvestila tretjih oseb običajno pojavijo. Vsebine
vsebina datoteke NOTICE je zgolj informativna in
ne spreminjajte licence. Lahko dodate svoje lastne pripombe o
avtorskih pravicah v izpeljanih delih, ki jih distribuirate, poleg
ali kot dodatek k besedilu NOTICE iz dela, pod pogojem,
da dodatne pripombe o avtorstvu ne morejo biti razumljene
kot sprememba licence.Lahko dodate svoje lastne izjave o avtorskih pravicah na
svoje spremembe in
omogočite dodatne ali druge licenčne pogoje in določila
za uporabo, reprodukcijo ali distribucijo vaših sprememb ali
za katera koli taka izpeljana dela kot celota, pod pogojem, da vaša
uporaba, reprodukcija in distribucija dela sicer izpolnjujejopogojne določbe te licence.
Predložitev prispevkov. Razen če izrecno navedete drugače,
vsak prispevek, ki ga namerno predložite za vključitev v delo
licencorju, je pod pogojem in določili
te licence, brez kakršnih koli dodatnih pogojev ali določil.
Ne glede na zgoraj navedeno, nič v tej določbi ne prekliče ali spremeni
določb katere koli ločene licenčne pogodbe, ki ste jo morda skleniliz licencorjem v zvezi s takimi prispevki.
Blagovne znamke. Ta licenca ne daje dovoljenja za uporabo
trgovskih imen, blagovnih znamk, storitvenih znamk ali imen izdelkov licencorja,
razen če je to potrebno za razumne in običajne uporabe pri opisuizvora dela ter reprodukciji vsebine datoteke NOTICE.
Odziv na garancijo. Razen če je to zahtevano z veljavno zakonodajo ali
dogovorjeno pisno, licencor zagotavlja delo (in vsak
prispevek omogoča svoje prispevke) na osnovi »TAKŠNE KOT SO«
BREZ GARANCIJ ALI POGOJEV KAKRŠNEKOLI VRSTE, bodisi izrecnih bodisi
implicitnih, vključno, brez omejitev, kakršnih koli garancij ali pogojev
lastništva, odsotnosti kršitev, prodajnosti ali ustreznosti za
DOLGO PRVO NAMEN. Sami ste odgovorni za določitev
primernosti uporabe ali ponovne distribucije dela in prevzamete morebitnarisika v zvezi z uveljavljanjem dovoljenj po tej licenci.
Omejitev odgovornosti. V nobenem primeru in pod ničemer pravnim teoretičnem
principu, bodisi v škodi (vključno z malomarnostjo), pogodbi ali drugače,
razen če je to zahtevano z veljavno zakonodajo (kot so namerno in hudo
malomarne dejanja) ali dogovorjeno pisno, ne sme biti noben prispevek
odgovoren za vas za škodo, vključno z neposrednimi, posrednimi, posebnimi,
nekaterimi ali kasnejšimi škodami katere koli vrste, ki izhajajo iz
te licence ali iz uporabe ali nezmožnosti uporabe dela (vključno z
ampak ne omejeno na škodo zaradi izgube dobrega imena,
ustavljanja dela, okvare računalnika ali okvare, ali kakršna koli in vse
druge komercialne škode ali izgube), tudi če je bil tak prispevekobveščen o možnosti takih škod.
Sprejemanje garancije ali dodatne odgovornosti. Pri ponovni distribuciji
dela ali njegovih izpeljanih del lahko izberete,
in zaračunate strošek za sprejem podpore, garancije, odškodnine,
ali drugih obveznosti glede odgovornosti in/ali pravic v skladu s to
licenco. Vendar pa ob sprejemu takih obveznosti delujete le
v lasten imenu in na lastno odgovornost, ne v imenu
kateregakoli drugega prispevka, in le če se strinjate, da odškodnino,
obrnete in zaščitite vsak prispevek pred kakršno koli odgovornostjo
ali zahtevki, ki jih izrecno uveljavlja tak prispevek zaradivašega sprejemanja garancije ali dodatne odgovornosti.
KONEC POGOJEV IN DOLOČIL
PRILOGA: Kako uporabiti Apache License na svoje delo.
Za uporabo Apache License na svojem delu priložite naslednje
standardno obvestilo, pri čemer so polja, ki so vključena v oglate kvadrate «[]»,
zamenjana z vašimi identifikacijskimi podatki. (Ne vključujte
kvadratov!) Besedilo naj bo vključeno v ustrezno
sintakso komentarja za datotečni format. Prav tako priporočamo, da
se imenuje datoteka ali razred ter opredelitev namena vključita na
isto «tiskano stran» kot obvestilo o avtorskih pravicah za lažjoidentifikacijo v arhivih tretjih oseb. Copyright [yyyy] [ime lastnika avtorskih pravic]
Licenciran pod Apache Licencom, Verzija 2.0 (dalje «Licenca»);
ne smete koristiti ovu datoteku osim u skladu sa Licencom.
Kopiju Licence možete dobiti naOsim ako to ne zahteva važeći zakon ili nije dogovoreno pisano, softver
distribuiran pod Licencom se distribuiše na osnovu «AS IS»,
BEZ GARANCIJA ILI USLOVA bilo koje vrste, bilo izričitih ili podrazumevanih.
Pogledajte Licencu za specifičan jezik koji reguliše dozvole i
ograničenja pod Licencom.
Licenca = ugovor
Slobodna licenca, iako je slobodna, ne dopušta potpunu slobodu i već smo naveli primere ograničenja. Birajte licencu uzimajući u obzir kako svoje interese, tako i interese korisnika, jer je otvoreni softver namenjen upravo njemu. Korisnik projekta treba da percipira licencu kao svojevrsni ugovor između njega i nosioca prava, pa pre nego što preduzmete bilo kakve radnje sa izvorim kodom, pažljivo proučite ograničenja koja vam projektna licenca nameće.
Nadamo se da smo malo rasvetlili temu licenci i da, uprkos složenosti pitanja, ne bi trebala biti prepreka na vašem putu u Open Source. Razvijajte svoj projekat i ne zaboravite na prava, svoja i tuđa.
Koristne poveznice
Na kraju, evo nekoliko korisnih resursa koji su nam pomogli u potrazi za informacijama o postojećim licencama i odabiru najprikladnije za naše ciljeve:
- Super koristan od
Izvor: habr.com
