Atvirasis kodas

Straipsnis iš Enciklopedijos Lietuvai ir Pasauliui (ELIP).

Atviras kodas – programinė įranga, kurios išeitinį kodą galima laisvai studijuoti, tobulinti, kopijuoti ir platinti.

Atviro kodo apibrėžimas

Oficialiai pripažįstama tik versija anglų kalba 1.9
Pasikeitimų istorija yra čia.

Įžanga

Atvirasis kodas reiškia ne tik priėjimą prie išeitinio kodo. Atvirojo kodo programinės įrangos platinimas turi sutapti su žemiau esamomis nuostatomis

1. Laisvas platinimas

Licencija nedraudžia kam nors parduoti ar perduoti programinės įrangos kaip programinės įrangos distribucijos dalies, kurią sudaro programos iš kelių skirtingų šaltinių. Licencija nereikalauja honoraro ar kokio kito mokesčio už tokį pardavimą, tačiau nebūtinai privalo šitai drausti.

Mokami automatiniai GPL ir LGPL licencijas turinčių programų atnaujinimai – labiausiai paplitusi komercinė veikla.

2. Išeitinis kodas

Programa privalo turėti išeitinį kodą bei turi leisti platinimą išeitiniu kodu, o taip pat sukompiliuota forma. Jei kažkuri dalis neplatinama su išeitiniu kodu, turi būti aiškiai apibrėžtos galimybės įsigyti atvirajį kodą apmokant ne daugiau nei motyvuotas kopijavimo išlaidas, arba labiau priimtinai – atsisiunčiant internetu nemokamai. Išeitinis kodas turi būti pateiktas forma, kuria bet koks programuotojas galėtų jį modifikuoti. Tyčinis kodo modifikavimas, kuris suklaidintų programuotoją yra draudžiamas. Tarpinės formos, tokios kaip preprocesoriaus ar transliatoriaus rezultatai yra neleidžiamos.

3. Išvestiniai darbai

Licencija turi leisti atlikti modifikacijas bei kurti išvestinius darbus, o taip pat turi leisti tuos darbus platinti su tokia pat licencija kaip ir išeitinis kodas.

4. Autoriaus išeinamojo kodo neliečiamumas

Licencija gali uždrausti platinti modifikuotą išeinamajį kodą tiktai tuo atveju, jei ji leidžia platinti originalų kodą kartu su pataisymų failais (patches), kurie leistų modifikuoti galutinį produktą kompiliacijos metu. Licencija privalo aiškiai leisti iš modifikuoto išeinamojo kodo sukompiliuotų programų platinimą. Licencija gali reikalauti, kad modifikuoti produktai turėtų kitokį pavadinimą ar versijos numerį, nei autoriaus originalus produktas. GPL, LGPL ir daugelis kitų atviro kodo licencijų modifikuoto išeinamojo kodo platinti nedraudžia, tačiau pakeitimai turi būti dokumentuoti.

5. Jokios diskriminacijos

Licencija neturi diskriminuoti jokio asmens ar tam tikros jų grupės.

6. Jokių apribojimų panaudojimo sritims

Licencija neturi uždrausti programos naudojimo tam tikroje specifinėje srityje. Pavyzdžiui, licencija negali uždrausti naudoti programos komerciniams tikslams, arba genetinių tyrimų atlikimui.

7. Licencijos platinimas

Teisės ir pareigos, apibrėžtos šioje licencijoje, turi liesti visus, kuriems yra platinama programinė įranga ar jos išeitinis kodas. Ši licencija neturi būti platinama su kokia nors kita papildoma licencija, kurią būtų privaloma vykdyti arba su ja sutikti.

8. Licencija neturi būti specifinė produktui

Teisės priskirtos programai neturi priklausyti nuo to ar ji yra programinio paketo (distribucijos) dalis. Jei programa yra atskirta nuo programinio paketo ir panaudota ar išplatinta sutinkant su programos licencijos sąlygomis, visos šalys, kurioms programa yra išplatinta turi gauti tokias pačias teises, kaip ir tie, kurie gauna programą kartu su visu programiniu paketu.

9. Licencija neturi riboti kitos programinės įrangos

Licencija neturi riboti programinės įrangos platinimo kartus su licencijuojamomis programomis. Pavyzdžiui, licencija neturi reikalauti, kad visa programinė įranga platinama toje pačioje laikmenoje privalėtų būti Atvirojo Kodo (Open-Source).

Kas nėra atviras kodas

Kai kurie programinės įrangos gamintojai siekia populiarumo, pateikdami savo programas kaip atvirą kodą, nors jos tokios ir nėra. Dažniausiai pasitaiko tokie pavyzdžiai:

  • Sukompiliuota programa platinama nemokamai, tačiau jos išeities kodas (arba esminės šio kodo dalys) lieka gamintojo paslaptis.
  • Išeities kodas prieinamas, tačiau licencija draudžia jį bet kaip keisti bei platinti pakeistas versijas.
  • Išeities kodą galima keisti tik gavus papildomą gamintojo leidimą.
  • Licencija riboja teises prašyti atlygio už originalios ar pakeistos programos platinimą bei garantinį aptarnavimą.

Akivaizdu, jog tokios sąlygos neatitinka pateikto atviro kodo apibrėžimo.

Licencijos

Renginiai Lietuvoje

2002 m. kovo 4d. susitikimo su Eric Steven Raymond vaizdo įrašas (Atviras kodas/Informacija/2002 03 07) http://www3.lrs.lt/pls/inter/ivpk_print.doc_view?key=168659

Susitikimo su vienu žymiausių atviro kodo programų judėjimo ideologu E. S. Raymond stenograma (Atviras kodas/Stenograma/2002 03 04) http://www3.lrs.lt/pls/inter/ivpk_print.doc_view?key=162730

Daugiau žr… http://www3.lrs.lt/pls/inter/ivpk_qry.query?DateSince=&DateUntil=&Cathegory=&Subject=939&TWords=&BWords=&SubmitButton=Ie%F0koti

Nuorodos



Programų licencijų grupės

Almost block diagonal.png

Atviras kodas  | Uždaras kodas | Privatus kodas | Komercinis kodas | Laisvoji programinė įranga 


Sudarytojai, rašytojai ir redaktoriai

Kitur naudojant ar cituojant šį straipsnį, būtina nurodyti jo sumanytojus, sudarytojus, rašytojus ir redaktorius.
  • Vitas Povilaitis – autorius – 100% (+7494-0=7494 wiki spaudos ženklai).
  • Rimantas Lazdynas – autorius – 21% (+1587-0=1587 wiki spaudos ženklai).
  • Audrius Meškauskas – redaktorius – 0% (+22-14=8 wiki spaudos ženklai).