Razlika između besplatnog i otvorenog koda softvera. Što je open source i zašto je važan za kriptovalute i otvoreni blockchain

Otvoreni kod i besplatni softver
07.07.2009 12:25

Među programerima ima ljudi koji su spremni da besplatno obezbede rezultate svog rada, uz mogućnost da ih promene i unaprede. Radi se o o proizvođačima takozvani softver otvorenog koda, koji je dugi niz godina bio predmet kontroverzi u globalnoj IT zajednici. Neki kažu da je softver otvorenog koda budućnost, dok ga drugi, naprotiv, smatraju opasnim i nepotrebnim. Ali ko je na kraju u pravu? Teško da postoji definitivan odgovor na ovo pitanje.

Dakle, šta je softver otvorenog koda? Možda najčešća definicija ovog pojma otkriva njegove glavne karakteristike. Softver otvorenog koda je sav softver otvorenog koda, softverski proizvodi na osnovu kojih su dostupni ne samo za gledanje, već i za modifikaciju, što vam omogućava da koristite već kreirani kod za pisanje novih verzija softvera, za ispravke grešaka i poboljšanja otvorenog koda program. Vrijedi napomenuti da ova definicija, prema pristašama otvorenog koda, ne odražava u potpunosti samu suštinu koncepta. Sa njihove tačke gledišta, softver otvorenog koda je, pored izvornog koda dostupnog za uređivanje, i čitava filozofija čije je značenje stvaranje informacionog društva kroz sveobuhvatnu upotrebu otvorenih softverskih proizvoda u svim oblastima ljudskog života. aktivnost.

U čemu je ljepota softvera otvorenog koda? Prema predstavnicima ovog trenda, softver otvorenog koda omogućava:

  1. prilagoditi softverski proizvod zahtjevima određenog korisnika ili grupe korisnika;
  2. popraviti greške prethodnih programera;
  3. rafinirati i poboljšati softvera.

Osim toga, softver otvorenog koda je uglavnom besplatan, što je posebno privlačno malim i srednjim preduzećima koja, na primjer, trenutno nisu u mogućnosti da sebi obezbijede komercijalne softverske licence. Također, pobornici ideje otvorenog koda ističu njegovu sigurnost kao prednost, odnosno softver otvorenog koda, zbog svoje nepopularnosti, praktički nije podložan virusnim napadima. A ako se prijetnja ipak otkrije, onda se ona eliminira u najkraćem mogućem roku, jer, u pravilu, dosta profesionalaca i amatera koji su u kontaktu jedni s drugima imaju pristup izvornom kodu. Shodno tome, sigurnosna prijetnja, koja je već otkrivena, brzo se eliminira od strane nekog od članova zajednice ili zajedničkim naporima.

Vrijedi napomenuti da u globalnom pogledu softver otvorenog koda uključuje direktno softver otvorenog koda, kao i druge vrste softverskih proizvoda koji se mogu besplatno distribuirati i dati izvorni kod za promjene. Takav softver uključuje besplatne (besplatni softver) i besplatne (slobodni softver) programe.

Dakle, termin open source (softver otvorenog koda) prvi su upotrijebili 1998. godine programeri Eric Raymond (Eric Steven Raymond) i Bruce Perens (Bruce Perens). Bili su sigurni da je termin slobodni softver (slobodni softver) na engleskom dvosmislen i da u nekom smislu može čak i uplašiti poduzetnike koji su potencijalni korisnici takvog softvera. Open Source je sada zaštitni znak Open Source Initiative, koji distribuira softver otvorenog koda. Osim toga, postoji i posebna komisija koja odlučuje da li se licenca određenog programa može nazvati otvorenim kodom.

Ovdje je vrijedno pojasniti da je većina softvera otvorenog koda također besplatna. Definicije otvorenog koda i slobodnog softvera, iako nisu potpuno iste, uglavnom su slične, a većina softverskih licenci odgovara oba.

Razlika između otvorenog koda i slobodnog softvera leži u prioritetima. Na primjer, ističu zagovornici otvorenog koda za efikasnost rad sa otvorenim kodom kao metodom razvoja, modernizacije i održavanja programa. Zagovornici termina "slobodni softver" smatraju da su prava na slobodnu distribuciju, modifikaciju i proučavanje programa glavna prednost besplatnog softvera otvorenog koda, čime se fiksira autorstvo određenog softverskog proizvoda.

Osnivač koncepta slobodnog softvera je američki programer Richard Matthew Stallman. On je prvi formulisao koncept slobodnog softvera, koji je odražavao principe otvorenog razvoja softvera u naučnoj zajednici koji su se razvili na američkim univerzitetima 1970-ih. Stallman je formulirao jasne kriterije za slobodni softver. Ovi kriterijumi određuju prava koja autor slobodnog softvera daje svakom korisniku. Tako, korištenjem slobodnog softvera, korisnik dobiva "četiri slobode": pokreće, proučava, distribuira i poboljšava program.

  • "Nulta sloboda" - program se može koristiti u bilo koju svrhu.
  • "Prva sloboda" - možete proučiti kako program radi i prilagoditi ga za svoje potrebe. Uslov za to je dostupnost izvornog koda programa.
  • "Druga sloboda" - možete distribuirati kopije programa - da pomognete programeru.
  • "Treća sloboda" - program se može poboljšati i objaviti njegovu poboljšanu verziju kako bi koristio cijeloj zajednici. Uslov za to je i dostupnost izvornog koda programa.

Program koji zadovoljava sve ove principe može se smatrati besplatnim, odnosno garantovano otvoren i dostupan naučnoj zajednici i jednostavno zainteresovanim ljudima i organizacijama. Mora se naglasiti da ovi principi utiču samo na dostupnost programa za opštu upotrebu, kritiku i unapređenje, ali ne predviđaju srodne sa namazom programe odnosa s novcem, uključujući i ne podrazumijevaju besplatne.

Način na koji besplatni softver funkcionira je da su softverski proizvod i njegov izvorni kod po defaultu zaštićeni autorskim pravima, što nosiocu autorskih prava daje punu moć da distribuira i modificira program, čak i ako je izvorni kod javno dostupan. Odnosno, autor ima pravo, uključujući i prodaju svog proizvoda. Međutim, jednom korisnici nije predviđeno pravo na dobijanje izvornih kodova programa, njihovo modifikovanje i distribuirati dalje, tada softver postaje vlasnički - bez obzira na druge uslove.

Što se tiče uslova distribucije i korišćenja besplatnih softverskih programa, njihovo kopiranje je često zabranjeno, a obrnuti inženjering, modifikacija, redistribucija su predviđeni ugovorom o licenci.

Međutim, postoje programi koji, prema nekim stručnjacima, potpadaju pod definiciju otvorenih, ali nisu besplatni. Takvi programi uključuju, na primjer, UnRAR, raspakivač RAR arhive. Činjenica je da je njegov izvorni kod u javnom vlasništvu, ali licenca zabranjuje njegovu upotrebu za kreiranje RAR kompatibilnih arhiva.

Naravno, takođe je važno da se kategorije softvera otvorenog koda razlikuju, jer uključuju različite stepene slobode u odnosu na radnje korisnika. Istovremeno, ponekad se može uočiti značajna razlika između definicije besplatnog softvera i softvera otvorenog koda. Softver otvorenog koda, odnosno softver sa (otvorenim) izvornim kodom (Open Source Software), je metoda razvoja softvera u kojoj je generisani izvorni kod programa otvoren, odnosno javno dostupan za pregled i modifikovanje. To svakome omogućava korištenje već kreiranog koda za svoje potrebe i, možda, pomoć u razvoju programa otvorenog koda. Besplatni softver je pravo korisnika, ali ne i obaveza proizvođača, jer Otvorena licenca ne zahtijeva da se softver uvijek daje besplatno. Međutim, mnogi od najuspješnijih projekata otvorenog koda su još uvijek besplatni.

Softver otvorenog koda je također ključna karakteristika slobodnog softvera, tako da se kasniji termin "Open Source Software" koji je predložio Eric Raymond nekima čini čak prikladnijim za fenomen slobodnog softvera nego što je Stallman u svoje vrijeme predložio "slobodni softver".

Imajte na umu da se prednosti besplatnog razvoja za korisnika ne smiju preuveličavati. Nije sav besplatni softver jednako dostupan za modifikacije od strane korisnika, što, s druge strane, nema nikakve veze s licencom za njihovu distribuciju. Važnu ulogu igra obim programa: ako sadrži desetke hiljada linija (kao, na primjer, u OpenOffice.org, analogu Microsoft Officea), onda će čak i kvalificiranom stručnjaku trebati dosta vremena da pronađete i popravite grešku. count za programere, koji će odgovoriti na sve komentare i sugestije korisnika i odmah ispraviti program, takođe je nemoguće, jer ne snose nikakve obaveze prema korisniku u pogledu kvaliteta programa. U tom smislu, korisnik vlasničkog programa može biti u boljoj poziciji.

Vrijedi napomenuti da se svi učesnici u procesu otvorenog softvera obično upuštaju u određeni program iz interesa ili zato što im je ovaj softver neophodan alat za bilo koju aktivnost. Vrijeme utrošeno na razvoj programa nije plačeno stoga nema nade da se okolnosti neće promijeniti, a razvoj neće sasvim stati. Postoje slučajevi kada je razvoj programa počeo zahvaljujući jednom autoru-entuzijasti koji je privukao mnogo ljudi da učestvuju u njemu, tada entuzijazam vođe izbledi, a time i razvoj softvera obustavljen. Nažalost, danas postoje hiljade besplatnih programa koji nikada nisu uspjeli doći do pune radne verzije. Osim toga, program može biti neophodan, ali ne od interesa, što znači da za njega nema besplatnih programera.

Mjesto slobodnog softvera na današnjem softverskom tržištu je veoma značajno, a mnogo i komercijalno i država preduzeća koriste besplatni softver direktno ili indirektno. Na primjer, svi korisnici Interneta, doduše indirektno, koriste besplatni program Bind, koji pruža DNS uslugu. Osim toga, mnoge organizacije (posebno one koje pružaju usluge putem World Wide Weba) koriste besplatni Apache web server od čijeg rada može direktno ovisiti profit poduzeća, a da ne spominjemo servere na Linux platformi.

Prednost korišćenja besplatnog softvera otvorenog koda je očigledna: obično ne morate da platite za njega, a ako jeste, košta mnogo manje od vlasničkog softvera. Glavni nedostatak, sa stanovišta komercijalnog korisnika, je to što programeri slobodnog softvera nemaju nikakvih obaveza osim moralnih. To jest, oni, u stvari, nisu odgovorni za kvalitet softvera.

Na primjer, u jednoj od javnih licenci (GNU) postoji čak i standardna formulacija u kojoj se navodi odsustvo garancija: „Ovaj program se pruža na osnovu „kao što jeste“. Osim ako nije drugačije navedeno u pisanoj formi, autor i/ili drugi nosilac autorskih prava ne prihvata nikakve garancijske obaveze, bilo izričite ili i podrazumevano program, uključujući implicirana jamstva za prodaju i prikladnost za određenu namjenu, i sve druge garancije."

Inače, trenutno je GNU sistem, poznatiji kao GNU/Linux ili jednostavno Linux, prilično uobičajen, posebno na tržištu servera, i predstavlja kompletan softverski proizvod. Sastoji se od velikog broja GNU projektnih programa (prvenstveno sistemskih uslužnih programa i GNU alata), Linux kernela — dijela sistema koji je odgovoran za pokretanje drugih programa, uključujući drajvere uređaja i tako dalje — i mnoštva drugih besplatnih programe.

Stoga danas postoji tendencija da velike IT korporacije poput Intela, Oraclea ili IBM-a pokušavaju da podrže projekte razvoja besplatnog softvera plaćajući rad zaposlenih na tim projektima tako da stepen odgovornosti programera bude na visokom nivou. Zašto to rade, jer im je otvoreni i besplatni softver konkurentan? Odgovor je jednostavan - u tome vide prednost, koju nastoje ne propustiti, jer se svakodnevno pojavljuju mnogi programi bazirani na open source softveru, od kojih neki kasnije mogu postati jaki komercijalni proizvodi.

Postoji nekoliko glavnih licenci koje se trenutno koriste za distribuciju besplatnog softvera: AROS javna licenca, BSD licenca, CDDL, zajednička javna licenca, GNU licenca za slobodnu dokumentaciju, GNU opšta javna licenca, GNU manja opšta javna licenca, MIT licenca, Mozilla javna licenca, otvoreni imenik Licenca, itd. Sve slobodne licence, na ovaj ili onaj način, karakteriše usklađenost sa principima copyleft-a (copyleft je igra reči copyright). U kontrastu Tradicionalni pristup autorskim pravima koji ograničava slobodu kopiranja djela, princip copyleft-a koristi zakone o autorskim pravima kako bi osigurao da je nemoguće da bilo ko ograniči pravo na korištenje, modificiranje i distribuirati i sam rad i djela zasnovana na njemu. Ideja copyleft-a je da svako ko distribuira program, sa ili bez promjena, nema pravo ograničavati slobodu njegove dalje distribucije ili modifikacije. Copyleft garantuje da je svaki korisnik slobodan u svojim akcijama.

Broj licenci koje su u skladu sa Definicijom otvorenog koda (otvorenog softvera), u ovom trenutku ima više od pedeset. Open Source je zaštitni znak Open Source Initiative. Postoji posebna komisija koja odlučuje da li se licenca može nazvati otvorenim kodom. Jedna od najvećih svjetskih web stranica za programere otvorenog koda je dobro poznati portal SourceForge.net. Na ovoj stranici programeri mogu objavljivati ​​i zajednički razvijati svoje softverske projekte. Trenutno na SourceForge.net hostuje nekoliko stotina hiljada projekata, a broj registrovanih korisnika prelazi milion.

Naravno, otvoreni i besplatni softver sve više osvaja publiku. Programe otvorenog koda prilično uspješno koriste i privatni korisnici i i komercijalni državne i javne organizacije. Softver baziran na otvorenom kodu i besplatnom softveru se već koristi kao predinstalacija za neke modele laptopa i netbooka različitih proizvođača. Osim toga, softver otvorenog koda postepeno osvaja tržište sistema automatizacije za mala i srednja preduzeća.

Pojava programa ove klase povezana je s idejom stvaranja softvera koji je oslobođen ograničenja cirkulacije. 1998. godine, na prijedlog američkih programera Brucea Perensa i Erica Raymonda, stvorena je Open Source Initiative.

(Inicijativa otvorenog koda, OSI). Ovaj pokret je razvio i objavio "Definiciju softvera otvorenog koda".

Licenca softvera otvorenog koda pruža sljedeća ovlaštenja:

  • 1) pristup izvornom kodu;
  • 2) da promeni računarski program;
  • 3) distribuirati izmenjeni program pod istim uslovima pod kojima je softver primio korisnik licence;
  • 4) imalac licence da koristi računarski program za njegovu namenu;
  • 5) za dalju distribuciju od strane korisnika programa bez plaćanja odbitaka i naknade.

Kao dodatna ovlaštenja, licence za softver otvorenog koda mogu uključivati:

  • 1) opis promena koje je izvršio svaki od imaoca licence;
  • 2) odbijanje davanja garancija,
  • 3) odricanje od odgovornosti za štetu;
  • 4) regulisanje pitanja patenata;
  • 5) odredbe o usklađenosti ove licence sa drugim licencama;
  • 6) regulisanje autorskog prava u tekstu otvorene licence;
  • 7) naznaku izvršenih promena u primljenom otvorenom kodu;
  • 8) odredbe o merodavnom zakonu i nadležnom sudu.

Međutim, to ne znači da je licenca otvorenog koda nužno besplatna, mogu postojati opcije za plaćeno pružanje (na primjer, plaćena servisna podrška ili komercijalna licenca za korištenje besplatnog koda za razvoj softvera). Upotreba programa otvorenog koda znači da je kod otvoren, da se može obraditi i na osnovu takvog koda kreirati sopstveni program – „izvedeni rad“. Softver čiji korisnici nemaju pravo da modifikuju otvoreni kod je neslobodan softver, bez obzira na bilo koje druge uslove.

Od januara 2012. godine, po prvi put u Ruskoj Federaciji, uveden je koncept programa otvorenog koda, kao softvera koji se distribuira pod uslovima jednostavne (neekskluzivne licence) ili ekskluzivne licence, koja korisniku omogućava pristup izvorni kodovi programa.

Različite licence otvorenog koda pružaju različita prava i obaveze. U nekim licencama za korišćenje programa otvorenog koda, prilikom distribucije revidiranog, modifikovanog programa, autor takvih izmena je dužan da obavesti o tome koje su funkcije, procedure originalnog programa izmenjene ili novokreirane. Takve radnje su predviđene da se informišu drugi korisnici, kako se ne bi naštetili autori originalnog programa u slučaju da se izvedeni program pokaže da je nekvalitetan i nefunkcionalan.

Koncept slobodnog softvera zasnovan je na četiri osnovne slobode:

  • 1) slobodu umnožavanja na računaru i pokretanja programa u bilo koju svrhu;
  • 2) slobodu proučavanja rada programa i prilagođavanja potrebama korisnika;
  • 3) slobodu umnožavanja i distribucije primljenih primeraka slobodnog softvera;
  • 4) slobodu unapređenja programa, tj. modificirati i distribuirati u modificiranom obliku.

Samo kompjuterski program koji zadovoljava sve principe može se smatrati slobodnim softverom. Slobode uključuju slobodu određivanja naknade po takvom licencnom ugovoru za korištenje kompjuterskog programa. Dakle, može se tvrditi da se besplatni softver može distribuirati uz nadoknadu, uz poštovanje slobode korisnika da dobije izvorni kod programa, modificira ih i dalje distribuira.

Postoje sljedeće vrste licenci otvorenog koda:

  • – Opšta javna licenca (GPL);
  • – Apache softverska licenca;
  • – licenca Berkeley Software Distribution (BSD);
  • – licenciran od strane Massachusetts Institute of Technology (MIT);
  • – Mozilla javna licenca (MPL) itd.

Opći smisao GPL, BSD, MIT je proširiti prava korisnika programa i istovremeno mu nametnuti neke obaveze koje nisu karakteristične za licence predviđene zakonima Ruske Federacije i stranih zemalja. Ali trenutno je razvoj takvog softvera počeo da se podržava u Ruskoj Federaciji. Osim toga, usvojen je Koncept administrativne reforme u Ruskoj Federaciji i Federalni ciljni program „Elektronska Rusija“.

Hajde da navedemo glavne karakteristike softvera otvorenog koda.

1. besplatna distribucija

Ugovor o licenci ne smije ograničavati pravo na prodaju ili distribuciju softvera koji je komponenta kompozitnog softvera koji uključuje programe iz različitih izvora.

2. Izvor

Program mora sadržavati izvorni kod, koji se, kao i kompajlirani obrasci, može redistribuirati. Neke varijante proizvoda se distribuiraju bez izvornog koda. U ovom slučaju, trebali bi postojati dobro poznati načini da se izvorni kod dobije po razumnoj cijeni ili da se može dobiti besplatno putem interneta. Izvorni kod mora biti u takvom obliku da programer može modificirati program. Namjerno zamagljen izvorni kod, srednji oblici kao što su izlazni uređaj za pretprocesor ili prevodilac nisu dozvoljeni.

  • 3. sekundarni proizvodi. Ugovor o licenci treba da daje pravo na modifikaciju i razvoj sopstvenih izvedenih proizvoda, na distribuciju softvera pod istim uslovima kao i licenca originalnog programa.
  • 4. Očuvanje izvornog koda autora. Ugovor o licenci može ograničiti distribuciju proizvoda čiji su izvorni kod modificirala treća lica. Ugovor može dozvoliti distribuciju priloženih datoteka izvornog koda radi modifikacije programa u vrijeme kreiranja. Licenca mora dati pravo na distribuciju vašeg vlastitog programa kreiranog modificiranjem izvornog koda. Ugovor o licenci može sadržavati zahtjeve za promjenu naziva softvera ili broja verzije izvedenih proizvoda.
  • 5. Nema ograničenja za pojedince ili grupe korisnika. Ugovor o licenci mora biti dostupan svim podnosiocima zahtjeva.
  • 6. Nema ograničenja u pogledu opsega. Ugovor o licenci ne bi trebao sadržavati ograničenja za korištenje programa u određenom području aktivnosti, kao što su komercijalna ili druga istraživanja.
  • 7. Distribucija licence. Prava vezana uz program moraju se primjenjivati ​​na sve koji ga koriste. Za ovo nije potrebna dodatna licenca.
  • 8. Ugovor o licenci ne mora biti specifičan za dio proizvoda. Prava stečena softverskim paketom odnose se na svaki pojedinačni element softverskog paketa. Ako je program preuzet iz distribucije i korišten izvan nje, na program se primjenjuju uslovi ugovora o licenci za distribuciju.
  • 9. Ugovor o licenci ne smije sadržavati ograničenja za drugi softver, tj. softverskih alata koji se distribuiraju sa licenciranim softverom. Licenca takođe ne bi trebalo da sadrži zahteve za otvorenost softverskih alata koji nisu kreirani prema ovom ugovoru o licenci.
  • 10. Licenca mora biti tehnološki neutralna. Uslovi licenciranja ne mogu se zasnivati ​​na pojedinačnim tehnologijama i stilovima interfejsa.

Usklađenost sa gore navedenim uslovima prilikom zaključivanja ugovora o licenci omogućava da se računarski program oceni kao softver otvorenog koda.

Softver otvorenog koda je sličan slobodnom softveru, ali sa značajnom razlikom - u slučaju slobodnog softvera, ekskluzivna prava na izvorni kod ostaju na nosiocu autorskih prava programa, a u slučaju softvera otvorenog koda takva prava nisu zadržava nosilac autorskih prava programa, ali se zadržavaju samo neimovinska prava, kako originalni programer tako i svi kasniji programeri.

U 2006. godini, u Ruskoj Federaciji, u skladu sa Naredbom br. 83 Ministarstva informacija i komunikacija Ruske Federacije od 29. juna 2006. „O aktivnostima Ministarstva informacija i komunikacija Rusije za 2006. godinu na implementaciji glavnih odredbi Obraćanja predsjednika Ruske Federacije Federalnoj skupštini Ruske Federacije“, izrađen je akcioni plan za promoviranje razvoja, kao i korištenje u javnim organima slobodnog softvera (otvorenog koda). Plan je sadržavao sljedeće aktivnosti:

  • 1) izradu zahteva i preporuka za korišćenje otvorenih standarda i specifikacija u izradi računarskih programa za državne i opštinske potrebe;
  • 2) evaluacija isplativosti implementacije ISO/IEC 26300:2006 (otvoreni format dokumenta za kancelarijske aplikacije);
  • 3) organizovanje učešća predstavnika uprave za komunikacije Ruske Federacije u međunarodnim organizacijama za standardizaciju u oblasti informacionih tehnologija, kao i omogućavanje i koordinaciju učešća predstavnika ruskih kompanija u međunarodnim organizacijama za standardizaciju (ukoliko je učešće državni organi u takvim organizacijama nisu predviđeni);
  • 4) razvoj i sprovođenje postupka za dobijanje (uključujući određivanje obima i ocenjivanja) i šeme upravljanja za prava na računarski softver dobijena od kupaca kao rezultat obavljanja poslova za državne i opštinske potrebe;
  • 5) unapređenje mehanizama za praćenje uslova konkurencije u cilju kontrole obezbeđivanja jednakih tržišnih uslova za programere različitih softvera;
  • 6) izradu koncepta i akcionog plana u cilju povećanja stepena stručnog obrazovanja i osposobljenosti korisnika u oblasti infokomunikacionih tehnologija;
  • 7) izrada liste vrsta (vrsta) slobodnog softvera za računare, čiju je svrsishodnost i valjanost pretežne upotrebe dokazala svetska praksa i (ili) prepoznat od značajnog broja učesnika na tržištu, kao i razvoj drugih klasifikatora za različite svrhe, uključujući i svrhe standardizacije;
  • 8) izradu koncepta i akcionog plana za razvoj u Ruskoj Federaciji, uključujući državne i opštinske potrebe, uslužnog modela distribucije računarskih programa.
  • antikorupcija;
  • sigurnost;
  • zaštita nacionalnih interesa;
  • ljubaznost prema građanima;
  • lakoća prilagođavanja;
  • ekonomsku korist.

Kvalitet ovakvih kompjuterskih programa je srazmeran komercijalnim programima. To je zbog činjenice da ovaj softver svi testiraju, mijenjaju, poboljšavaju, tako da je broj programera koji rade na poboljšanju programa jednak osoblju komercijalnih programera softvera zatvorenog koda (iu nekim slučajevima značajno premašuje njihov broj) .

Pozitivno je to što se takav softver pokazao ne samo javno dostupnim, već i pouzdanim, a sloboda kreativnosti za autore takvog softvera važnija je od naknade. Naravno, neimovinska prava u takvim licencama moraju se poštovati, tj. Za autore distribuiranih softverskih licenci otvorenog koda posebno je važno poštovanje neimovinskih prava, kao što je stavljanje zaštitnog znaka, godina prvog objavljivanja i ime autora ili drugog nosioca autorskih prava.

Sve ovo nam omogućava da kažemo da softver otvorenog koda dobija veliku popularnost, a ne samo vodeće svetske korporacije poput IBM-a i Hewlett Packarda, već i ruske kompanije među onima koji koriste i razvijaju ove programe, uključujući i za strane kupce.

Uredba Vlade Ruske Federacije od 18. oktobra 2007. br. 1447-r utvrđuje pravo korištenja bilo kojeg softvera sa otvorenim kodom u školama Ruske Federacije. Federalna služba izvršitelja je 2009. godine izvijestila o uvođenju softvera otvorenog koda – Open Office, u cilju implementacije državne politike u oblasti korištenja slobodnog softvera. „U aprilu – maju 2009. godine održane su videokonferencije sa rukovodiocima teritorijalnih organa Federalne službe izvršitelja Rusije uz korišćenje slobodnog softvera.

U cilju pravovremenog i redovnog objavljivanja informacija na službenoj web stranici centralnog ureda FSSP Rusije, kako bi se sistematski informirali građani i organizacije o aktivnostima FSSP-a, Odjeljenje za informacione tehnologije je izvršilo radove na finalizaciji softverske platforme i dizajna sajta. , što je omogućilo značajno proširenje funkcionalnosti stranice, povećanje informativnog sadržaja i posjećenosti“.

Koncept razvoja slobodnog softvera u Ruskoj Federaciji pretpostavljao je stvaranje sljedećih proizvoda prije 2010. godine:

  • 1) standardna integrisana kancelarijska rešenja za državne službenike, kao i zaposlene u javnom sektoru;
  • 2) tipska rješenja za obezbjeđivanje rada obrazovno-vaspitnih ustanova;
  • 3) softver za tačke kolektivnog pristupa internetu;
  • 4) softver za internet stranice javnih servisa;
  • 5) integraciona platforma za potrebe e-uprave;
  • 6) sigurna rješenja za kritične objekte;
  • 7) razvoj servisno orijentisanog modela distribucije računarskih programa.

U ovom trenutku, mnoge od navedenih tačaka su ispunjene. Dakle, specifičnosti ugovora o licenci za korišćenje softvera otvorenog koda određene su obimom ekskluzivnih prava koja se prenose na nosioca licence. Važno je napomenuti da ovakvi licencni ugovori ni na koji način ne utiču na lična neimovinska prava autora programa, već u većoj meri štite takva prava. Ovi programi su pouzdaniji i sigurniji, jer se programski kod može provjeriti i po potrebi reprogramirati, što, u okviru implementacije Doktrine informacione sigurnosti Ruske Federacije, kao i Strategije nacionalne sigurnosti Ruske Federacije Federacije do 2020. godine, temeljni je zadatak osiguranja nacionalne sigurnosti. U Strategiji nacionalne bezbjednosti sredstva obezbjeđenja nacionalne sigurnosti obuhvataju, između ostalog, tehnologije, kao i tehnička, softverska, jezička, pravna, organizaciona sredstva, uključujući i telekomunikacione kanale koji se koriste u sistemu nacionalne bezbjednosti za prikupljanje, formiranje, obradu, prenose ili primaju informacije o stanju nacionalne sigurnosti i mjerama za njeno jačanje.

Upotreba programa otvorenog koda na teritoriji Ruske Federacije ne samo da će diverzificirati kompjuterske programe, već će i povećati broj programera, čime će se smanjiti broj monopolista. Osim toga, ovo simbolizira razvoj kvalitativno novih pojava u odnosu između autora kompjuterskog programa i korisnika softvera otvorenog koda na teritoriji Ruske Federacije. Još jedan pozitivan faktor je činjenica da u programima otvorenog koda nema teritorijalnog obilježja korištenog po zakonu za ekskluzivna prava. Stoga će korištenje takve klase programa na teritoriji Ruske Federacije doprinijeti otklanjanju mnogih kršenja autorskih prava.

Sa uvođenjem 2012. Nacionalnog standarda Ruske Federacije GOST R 54593-201, besplatni softver je sigurna, pouzdana i finansijski atraktivna platforma za izgradnju informacionih sistema u korporacijama i javnom sektoru. Besplatni softver obezbeđuje: tehnološku nezavisnost razvoja i korišćenja softvera od monopolista; nezavisnost u izboru hardverske platforme; niska početna cijena opreme; rano otkrivanje grešaka u softveru i mogućnost njihovog brzog otklanjanja; nema obaveznog plaćanja za pravo korištenja proizvoda.

Slobodni softver koristi principe otvorenih sistema koji su trenutno glavni trend u razvoju oblasti informacionih tehnologija, sistema, kao i računarske tehnologije koja podržava ove tehnologije. Ideologiju otvorenih sistema u svojim najnovijim razvojima implementiraju sve vodeće kompanije - dobavljači računarske opreme, prenosa informacija, softvera i razvoja primenjenih informacionih sistema.

Dakle, hajde da otkrijemo ovlašćenja koja se prenose pod različitim vrstama licenci za kompjuterske programe sa otvorenim izvornim kodom.

  • Vidi: Nacionalni standard Ruske Federacije GOST R 54593 201 "Informaciona tehnologija. Besplatni softver. Opšte odredbe", odobren naredbom Ministarstva industrije i trgovine Ruske Federacije i Federalne agencije za tehničku regulaciju i mjeriteljstvo od 6. decembra, 2011. br. 718-st.
  • Odobreno od strane predsjednika Ruske Federacije 9. septembra 2000.: pogledajte web stranicu ruskog ministarstva vanjskih poslova mid.ru/ns-osndoc.nsf/d06bd3f5303124fe432569fa003a70ff/4db27 49a4b55f02f
  • Ukaz predsjednika Ruske Federacije od 12. maja 2009. br. 537 „O Strategiji nacionalne sigurnosti Ruske Federacije do 2020. godine“.

Softver otvorenog koda je metoda razvoja softvera u kojoj je generisani izvorni kod programa otvoren, odnosno javno dostupan za pregled i modifikaciju. Ovo omogućava svakome da koristi već kreirani kod za svoje potrebe i eventualno pomogne u razvoju programa otvorenog koda.

"Otvorena" licenca ne zahtijeva da se softver uvijek daje besplatno. Ali mnogi od najuspješnijih projekata otvorenog koda su ipak besplatni.

Ogromna većina otvoren programa je u isto vrijeme besplatno(GNU GPL) i obrnuto, jer su definicije otvorenog koda i slobodnog softvera bliske, a većina licenci odgovara objema.

razlika između pokreta open source i besplatni softver se uglavnom odnosi na prioritete. Zagovornici otvorenog koda se fokusiraju na efikasnost otvorenog koda programi kao razvojni metod. Zagovornici slobodnog softvera polaze od ideoloških razmatranja i smatraju da je upravo tako prava distribucija, modifikacija i proučavanje programa su glavna prednost besplatni softver.

OS Microsoft Windows

Rice. 39. OC Windows logo.

MS Windows (izgovara se Windows) je porodica Microsoftovih operativnih sistema. Šef korporacije Microsoft - Bill Gates.

Od 1995. godine Windows je najpopularniji operativni sistem na tržištu personalnih računara – de facto standard. Do 2005. godine, Microsoft Windows je instaliran na više od 89% personalnih računara.

Međutim, mnogi korisnici su se odlučili za Windows jer uopće nisu upoznati s alternativama kao što su MacOS, Linux, BSD. U Rusiji su se do ranih 2000-ih skoro svi personalni računari prodavali sa unapred instaliranim Windows operativnim sistemom. Borba protiv distribucije piratskih verzija softverskih proizvoda dovela je do pojave interesovanja za druge operativne sisteme. Tako je, na primjer, postalo moguće kupiti personalni računar s unaprijed instaliranim Besplatni Linux OS.

Istorija izdanja Windows verzija


Windows 1.0 (1985)

1. Windows 2.0 (1987)

2. Windows/386 (1987)

3. Windows 3.0 (1990)

4. Windows 3.1 (1992)

5. Windows NT 3.1 (1993)

6. Windows NT 3.5 (1994)

7. Windows 95 (1995)

8. Windows NT 4.0 (1996)

9. Windows 98 (1998)

10. Windows 2000 (2000)

11 Windows Me (2000)

12. Windows XP (2001)

13. Windows 2003 (2003)

14. Windows Vista (2007)

15. Windows radni naslov Beč (2010)


Integrirani softverski proizvodi i aplikativni softver

Operativni sistem Microsoft Windows uključuje standardne aplikacije kao što su Internet Explorer pretraživač, Outlook Express mail klijent, Windows Media Player.

Mnogo je kontroverzi i diskusija oko činjenice da su takvi standardni proizvodi uključeni u Windows operativni sistem, jer to stvara ozbiljnu prepreku distribuciji konkurentskih proizvoda.

Rice. 40. Logo paketa MS Office.

Za MS Windows postoji vrlo zgodan i savladan od strane većine korisnika Microsoft Office paket aplikacija, uključujući:

obradu teksta MS Word,

procesor tabela MS Excel,

Organizator MS Outlook,

Aplikacija za pripremu prezentacija MS PowerPoint,

Aplikacija za upravljanje bazom podataka MS Access.

Ne zaboravite da i Windows i velika većina popularnih Windows aplikacija imaju licencu za autorska prava, tj. su vlasnički ON. Shodno tome, svaki primjerak takvog programa mora se kupiti za novac. Na primjer, na kraju 2006. cijena za Windows XP Home Edition Russian BOX (SP2) bila je 185 dolara, a Office 2003 ruski CD bio je 322 dolara.

Korištenjem nelicenciranog (piratskog) softvera zaštićenog licencom za autorska prava, kršite zakone o autorskim pravima.

GNU/Linux OS

Rice. 41. Logo GNU/Linux OS-a je Tux pingvin.

GNU/Linux operativni sistem (izgovara se "gnu linux") je besplatni operativni sistem sličan UNIX-u. Obično, iz istorijskih razloga i zbog sažetosti, ovaj sistem se jednostavno naziva "Linux". To je najmoćnija alternativa MS Windows-u, popularan kao serverski operativni sistem i ubrzano dobija na popularnosti kao desktop operativni sistem posljednjih godina, zbog povećane primjene licencirane upotrebe Windows OS-a od strane Microsofta u verzijama XP i Vista.

GNU/Linux operativni sistem takođe često uključuje programe koji dopunjuju ovaj operativni sistem i aplikativne programe koji ga čine punopravnim multifunkcionalnim operativnim okruženjem.

Za razliku od većine drugih operativnih sistema, GNU/Linux ne dolazi sa jednim "zvaničnim" paketom. Umjesto toga, GNU/Linux dolazi u velikom broju tzv distribucije, koji povezuje GNU programe sa Linux kernelom i drugim programima. Najčešće distribucije u svijetu:

američko crvena kapa i njegovog naslednika Fedora Core;

Deutsch SuSE;

francuski Mandriva(bivši Mandragora);

Međunarodna distribucija bez nacionalnog značaja Debian GNU/Linux;

Jedna od najstarijih distribucija Slackware;

Relativno mlada distribucija koja se aktivno razvija Gentoo;

Mlada, ali obećavajuća distribucija ubuntu linux.

Kreator Linux kernela - Linus Torvalds. GNU/Linux nema centar za geografski razvoj. Ne postoji organizacija koja posjeduje ovaj sistem; ne postoji čak ni jedan koordinacioni centar. Programi za GNU/Linux su rezultat hiljada projekata. Neki od ovih projekata su centralizovani, neki su koncentrisani u firmama, ali većina okuplja programere iz celog sveta koji se poznaju samo preko prepiske. Svako može kreirati vlastiti projekat ili se pridružiti postojećem, a ako bude uspješan, rezultati rada će postati poznati milionima korisnika. Korisnici učestvuju u testiranju besplatnog softvera, komuniciraju direktno sa programerima, što im omogućava da brzo pronađu i poprave greške i implementiraju nove funkcije.

Na tržištu serverskih operativnih sistema u Australiji, Linux je već zauzeo oko 30%. Australijance su pratili Brazilci. Brazilska vlada odlučila je da se odmakne od trošenja novca na softver i pređe sa Microsoftovih proizvoda na sisteme otvorenog koda, posebno na operativni sistem Linux. Glavni razlog za promjene je ekonomski. Kod nas je Linux tržište još uvijek malo.

Sistem podataka

Sve informacije u računaru se pohranjuju u fajlovima, sa kojima operativni sistem radi.

File(fajl)- je imenovani niz bajtova, mjesto trajnog skladištenja raznih vrsta informacija.

Fajlovi su organizovani u imenici, nazivaju se i direktoriji ili fascikle. Katalog je datoteka koja pohranjuje informacije o drugim datotekama: ime, veličinu, datum kreiranja, adresu datoteke na disku.

Svaki direktorij može sadržavati proizvoljan broj poddirektorijumi, od kojih svaki može pohraniti datoteke i druge direktorije.

Svaki disk ima glavni ili korijenski direktorij, koji sadrži sve druge direktorije, zvane poddirektorijumi, i neke datoteke. Dakle, stvara hijerarhijska struktura. Poziva se direktorij s kojim korisnik trenutno radi struja.

Datoteke i direktoriji su najvažniji objekti u sistemu datoteka. Sistem podataka- propis kojim se uređuje način organizovanja, čuvanja i imenovanja podataka o medijima. Definira format za fizičko skladištenje datoteka. Određeni sistem datoteka određuje veličinu imena datoteke, maksimalnu moguću veličinu datoteke, skup atributa datoteke.

Naziva se način na koji su podaci organizovani u bajtove format datoteke. Da biste pročitali datoteku, kao što je tabela, morate znati kako bajtovi predstavljaju brojeve (formule, tekst) u svakoj ćeliji; da biste pročitali datoteku uređivača teksta, morate znati koji bajtovi predstavljaju znakove i koji fontovi ili polja i druge informacije.

Sve datoteke se uslovno mogu podijeliti na dva dijela - tekst i binarni.

Tekstualne datoteke- najčešći tip podataka u kompjuterskom svijetu. Za pohranjivanje svakog znaka najčešće se dodjeljuje jedan bajt, a kodiranje tekstualnih datoteka se izvodi pomoću posebnih tablica kodiranja.

Ali čisti tekstualni fajlovi su sve ređi. Ljudi žele da dokumenti sadrže slike i dijagrame i da koriste različite fontove. Kao rezultat, pojavljuju se formati koji su različite kombinacije tekstualnih, grafičkih i drugih oblika podataka.

Binarnosti, za razliku od tekstualnih, nije tako lako pregledati i, u pravilu, u njima nema riječi koje su nam poznate - samo puno nerazumljivih znakova. Ove datoteke nisu namijenjene da ih ljudi direktno čitaju. Primjeri binarnih datoteka su izvršni programi i grafičke datoteke.

Svaki fajl na disku je označen ( puno ime), koji se sastoji od 2 dijela: ime i ekstenzije, odvojeno tačkom.

Ekstenzija naziva datoteke- opcioni niz znakova koji se dodaje imenu datoteke i ima za cilj da identifikuje tip (format) datoteke. Ovo je jedan uobičajeni način na koji korisnik ili kompjuterski softver može odrediti vrstu podataka pohranjenih u datoteci.

U ranim operativnim sistemima, dužina ekstenzije je bila ograničena na tri znaka, u modernim operativnim sistemima ovo ograničenje nije.

Operativni sistem ili upravitelj datoteka mogu mapirati ekstenzije datoteka u aplikacije.

Kada korisnik otvori datoteku sa registrovanom ekstenzijom, automatski se pokreće program koji odgovara toj ekstenziji. Neke ekstenzije ukazuju da je sama datoteka program. Često je ekstenzija datoteke prikazana korisniku ikonom.

Vozači

Različiti uređaji se mogu povezati sa računarom: video kartica, zvučna kartica, štampač, skener, manipulatori, disk jedinice, digitalne kamere, mobilni telefoni... Svaki od njih ima svoj skup komandi - svoj "jezik". Da bi određeni operativni sistem mogao da kontroliše određeni uređaj, pribegavaju se pomoći programa „prevodioca“ koji znaju, s jedne strane, komandni jezik određenog uređaja, as druge strane jezik određenog uređaja. operativni sistem pod kojim bi ovaj uređaj trebao raditi.

Takav program se zove vozač(driver) i isporučuje se s uređajem od strane njegovog proizvođača. Proizvođači hardvera obično također objavljuju upravljačke programe uređaja koje kreiraju na svojim web stranicama.

Peter Van Valkenburgh, šef istraživanja u Coin Centeru, član upravnog odbora Zcash fondacije, objašnjava zašto Razvoj softvera otvorenog koda važan je za izgradnju povjerenja i sigurnosti u blockchain mrežama.

Računalni kod koji stoji iza svih glavnih kriptovaluta i otvorenih blockchain projekata razvijen je kao softver otvorenog koda. Regulatori i kreatori politike koji pokušavaju da shvate šta su kriptovalute, ali nisu upoznati sa takvim softverom, mogu biti zavedeni verujući da ove sisteme razvija (i treba da ih) razvija jedna ili više komercijalnih kompanija. Iako su mnogi poznati softveri zaista razvijeni na ovaj način (na primjer, Microsoftov Windows ili Oracle RDBMS), stvari su drugačije s projektima otvorenog koda, a ta razlika može i treba da oblikuje javno mnijenje. Softver otvorenog koda nastaje u saradnji, slobodno se distribuira, javno objavljuje i razvija se kao proizvod zajednice, a ne vlasništvo jedne kompanije ili pojedinca. U ovom slučaju nema monopola, nema nijedne kompanije ili pojedinca koji bi kreirao i prodavao softver, koji bi ga posjedovao. Kao što ne postoji nijedna kompanija koja posjeduje bitcoin mrežu, ne postoji niti jedna kompanija koja proizvodi softver koji, radeći na kompjuterima povezanim s internetom, formira ovu mrežu. Ova vrsta decentralizacije donosi neke fundamentalne prednosti koje može biti teško razumjeti ljudima koji nisu upoznati s razvojem softvera. Da biste bolje razumjeli snagu i prirodu otvorenog koda, korisno je imati uvid u jedan posebno uspješan dio softvera otvorenog koda. Govorimo o Linux operativnom sistemu.

Otvoren izvor svuda

Teško je izračunati koliko puta dnevno koristite Linux, jer je ovaj operativni sistem osnova većine servera na Internetu. Kad god posjetite Facebook, Google, Pinterest, Wikipedia i hiljade drugih velikih stranica, usluge koje vam pružaju ove (tako različite) stranice, imate posla sa računarima koji najvjerovatnije rade na Linux operativnom sistemu. Linux se može naći mnogo bliže; najvjerovatnije ga imate na dohvat ruke. Recimo da je operativni sistem Android pametnih telefona baziran na Linuxu. Ako imate Chromebook, onda koristite laptop zasnovan na Linuxu. Ovaj operativni sistem se sve više koristi u televizorima, termostatima, multimedijalnim sistemima u avionima, automobilima itd.

Zašto je zanimljivo? Jer Linux nije proizvod jednog programera, pa čak ni grupe programera; za razliku od MacOS-a ili Windows-a, nije ga razvila jedna ili čak desetak korporacija. Linux ima hiljade saradnika. Otprilike 14.000 programera iz više od 1.300 različitih kompanija dalo je isječke koda, prema Linux fondaciji (neprofitnoj organizaciji koja promoviše otvoreni razvoj operativnog sistema) 2015. godine. Samo u 2015. godini, 2.355 programera je po prvi put doprinijelo poboljšanju koda. Tako se ekstrapolacijom može izračunati da je do 2017. godine oko 18.000 ljudi dalo doprinose, a taj broj će rasti.

Ko bi rekao, čak i prije pet godina (1991.), da se operativni sistem svjetske klase može, kao magijom, oblikovati u koherentnu cjelinu od fragmenata slobodnog rada nekoliko hiljada programera raštrkanih širom svijeta i povezanih samo sablasnim nitima interneta?

Prednosti otvorenog koda

U svojoj knjizi, Raymond govori o tome kako je open source revolucionaran način stvaranja tehnologije. Linux, sa hiljadama nezavisnih programera koji rade u javnoj saradnji, predstavlja primer modela otvorenog koda. Kriptovalute slijede isti obrazac, ali o tome ćemo govoriti u nastavku.

Raymond je istakao nekoliko prednosti modela otvorenog koda. Ključne u kontekstu naše rasprave su sljedeće:

  • Svaki dobar komad softvera počinje sa zadovoljenjem lične želje programera. Većina programera otvorenog koda motivirana je željom da lično koriste proizvode koje kreiraju. Oni nisu vezani ugovorom koji ih obavezuje da stvore nešto za drugoga; imaju ličnu potrebu koju zadovoljavaju. Tako se javlja kvalitativno drugačija motivacija koja stvara detaljno poznavanje problema.
  • Dobri programeri znaju šta da napišu. Veliki znaju šta da prepišu (i ponovo upotrebe). Kada je razvoj otvoren, redundantnost se može izbjeći, a problematični, komplikovani ili suvišni kodovi mogu se identificirati i pojednostaviti.
  • Kada izgubite interesovanje za program, vaša posljednja dužnost prema njemu je da ga predate kompetentnom nasljedniku. Ljudi ulaze i izlaze iz projekta otvorenog koda na osnovu svojih interesa i stručnosti. Niko ne zaglavi radeći na projektima koji više nisu interesantni. Pojavljuju se svježi umovi koji nude različita gledišta na stare probleme ili nove perspektive.
  • Doživljavanje korisnika kao kolega programera je najlakši način da poboljšate kod i efikasno otklanjate greške u softveru. Mnogi korisnici otvorenog koda pomažu u prepoznavanju problema, pa čak i predlažu rješenja. Granica između potrošača i proizvođača softvera otvorenog koda je zamagljena: rad na softveru je transparentan, vodi se pred javnošću, a učešće u procesu kreiranja dostupno je svima.
  • Uz dovoljno veliku bazu beta testera i programera, skoro svaki problem će biti brzo kvalifikovan, a njegovo rješenje će nekome sigurno biti jasno. Ovaj postulat se zove Linusov zakon u čast Linusa Torvaldsa, tvorca Linux kernela, koji je dugo vremena ostao glavni programer ovog operativnog sistema. Kada je proces razvoja koda zatvoren, programeri rizikuju da propuste slabu tačku ili ne primjete određenu grešku. Razvoj u okruženju naprednog korisnika s jedinstvenom vizijom povećava vjerovatnoću da se greške identifikuju i poprave, čineći softver otvorenog koda sigurnijim i otpornijim.

Rezultat ovog razvoja je vrlo robustan kod kreiran od strane korisnika za korisnike. Cilj nije stvoriti nešto što obogaćuje kompaniju koja proizvodi i prodaje proizvode, već rješavanje problema koji je dovoljno uobičajen da velika zajednica talentiranih programera rado da svoj doprinos. Ljudi bez vještina programiranja imaju velike koristi od takvog modela. Čini se da se besplatni softver materijalizira iz ničega, besplatan je za svako korištenje i prima ažuriranja sve dok su korisnici na nivou stručnjaka također zainteresirani za korištenje.

Zakon i besplatni softver

Sadašnje zakonodavstvo podržava i u nekim slučajevima podstiče razvoj softvera otvorenog koda. On je, kao i sav softver, zaštićen autorskim pravima, ali njegovi autori objavljuju kod uz licencu koja dozvoljava svakome da ga koristi i modificira bez posebne dozvole ili bilo kakvog plaćanja autorima (tj. uz licencu koju je razvio Massachusetts Institute of Tehnologija - MIT).

Neke licence uključuju zahtjeve da se derivati ​​softvera izdaju pod istim uslovima. Kroz ovu šemu, baza otvorenog koda raste i širi se. Ovaj fenomen je poznat kao licenca slobodnog softvera, ili LGPL-3, manja opšta javna licenca.

Otvoreni kod u kriptovalutama i projektima tokena

Linux je možda najveći i najvažniji primjer modela otvorenog koda, ali postoje i drugi. To uključuje sve glavne kriptovalute i blockchain projekte. Svi oni stvaraju kompjuterske mreže koje omogućavaju učesnicima da postignu dogovor o zajedničkim podacima (blokchain kriptovalute).

Softver koji omogućava bilo kom učesniku da se poveže na mrežu naziva se klijent i to je softver otvorenog koda. Često klijentski softver razvija nekoliko nepovezanih strana kao najjednostavniju verziju mrežnog softvera (tj. tzv. referentni klijent), na osnovu kojeg se može izgraditi softver za rudarenje, novčanik, razmjenu ili drugi softver kompatibilan s mrežom.

Bitcoin Core klijent je rezultat rada preko 450 nezavisnih programera koji su ukupno doprinijeli preko 15.000 razvoja koda. Softver je dostupan za besplatnu upotrebu i modifikaciju pod MIT-ovom licencom za slobodan softver, a cjelokupna povijest razvoja dostupna je za gledanje u javnom spremištu na Githubu, cloud servisu koji omogućava svakome da kreira račun, učita novi kod i prati promjene . Ako je spremište koje kreirate otvoreno za javnost za pregled, komentare i sugestije za izmjene, onda ne morate čak ni plaćati Github račun.

Javni repozitorij takođe prati takozvane viljuške originalnog klijenta. Fork stvara klon originalnog softvera, koji se zatim može modificirati za jednu ili drugu svrhu bez promjene originalnog spremišta. Programeri slobodno razdvoje Bitcoin Core Github spremište kako bi kreirali ili specifične aplikacije kompatibilne s bitcoinima (kao što je novčanik za pametni telefon) ili novu kriptovalutu koja više nije kompatibilna s bitcoin mrežom i uključuje stvaranje nove mreže kriptovaluta (kao što je bila s Litecoin ili Zcash). Do danas, originalni Bitcoin Core klijent je forkiran više od 10.000 puta, a nova spremišta koja se pojavljuju pokazuju da se rad na derivatima nastavlja.

Sada postoji najmanje 121 spremište na Ethereumu, od kojih se svako fokusira na određeni aspekt projekta (na primjer, programski jezici za pisanje pametnih ugovora, grafički pretraživači za interakciju krajnjeg korisnika sa Ethereum mrežom, kompatibilni klijenti za sudjelovanje u mreža, itd.). Postoji najmanje osam projekata fokusiranih na razvoj Ethereum kompatibilnih klijenata, sa stotinama nezavisnih programera koji rade na najpopularnijim klijentima (go-ethereum i Parity). Ethereum kod i njegova potpuna istorija, kao i kod i istorija Bitcoin-a, javno su dostupni na Githubu i drugim mrežnim repozitorijumima, a svi kodovi su objavljeni pod licencom LGPL-3, što zahteva da se svi budući derivati ​​objavljuju pod ista licenca..

Čak i nedavni projekti koje su pokrenuli komercijalni start-upovi pokazuju privrženost kredu otvorenog koda. Kompanija Zcash razvija Zcash protokol putem javnog spremišta. Nekoliko vodećih programera ne radi za kompaniju, a posebno stvorena neprofitna organizacija je pozvana da osigura da postoji postepeni prelazak sa razvoja koji pokreće kompanija na razvoj koji vodi zajednica. Baza izvornog koda Zcash objavljena je pod licencom Massachusetts Institute of Technology. Protocol labs, programer Filecoina, namjerava kreirati sličan otvoreni model i već ga je testirao u svom IPFS projektu, radeći s kodom u otvorenim repozitorijumima i puštajući ga pod MIT licencom.

Zašto je otvoren izvor važan

Kriptovalute i otvoreni blockchains mogu pružiti funkcionalnost koja bi bila regulirana da dolazi iz jedne korporacije. Centralizovani izdavaoci digitalnih valuta, kao što su Liberty Reserve ili E-gold, bili su finansijske usluge i morali su da se registruju u Uredu za sprovođenje finansijskih zločina Ministarstva finansija SAD i dobiju dozvolu za transfer novca u svakoj državi. Ako se takvi tokeni promoviraju na tržištu kako bi privukli investitore, oni se mogu izjednačiti s vrijednosnim papirima, u kom slučaju će biti potrebna registracija kod američke Komisije za vrijednosne papire i berze. Ova ograničenja imaju smisla jer centralizirane usluge riskiraju da strana u središtu cijele šeme neće moći ispuniti svoja obećanja tako što će adekvatno testirati proizvod i učiniti ga sigurnim.

Međutim, tehnologije poput bitcoina mogu ponuditi sličnu funkcionalnost budući da su otvorene mreže bez vlasništva. Ovde nema korporacije. Korisnici se pridružuju ovim mrežama, a softver otvorenog koda stimuliše njihovu spremnost za saradnju. Na kraju, svi učesnici se dogovore oko svakog podatka koji je potreban za kreiranje valute. Decentralizacija počiva na dva stuba: otvorenim mehanizmima konsenzusa i softveru otvorenog koda. Da kod nije otvorenog koda, kako bi učesnici (ljudi koji se ne poznaju jedni druge na internetu) mogli razumjeti i vjerovati sistemu kojem se pridružuju?

Zapravo, projekti tokena bazirani na vlasničkom kodu mogu se pokazati samo centraliziranim uslugama koje se kriju iza profesionalnog slenga i „blokčejn gluposti“. Međutim, za “prave” projekte, kod koji stvara decentraliziranu mrežu, omogućavajući učesnicima da vjeruju jedni drugima, imaju zajedničku motivaciju i kažnjavaju prevarante, sam je decentraliziran. Pred svima ga razvijaju stotine entuzijasta, dostupan je svima u svijetu za korištenje i modifikacije i potpuno je nezavisan od korporativnih interesa.

Mark Roberts
Direktor upravljanja proizvodima (direktor, upravljanje proizvodima)
QNX softverski sistemi
e-mail: [email protected]

anotacija

Ovaj članak se fokusira na prednosti, strateška razmatranja, prepreke i mogućnosti povezane s korištenjem softvera otvorenog koda u komercijalnoj proizvodnji. Koristeći Integrisano razvojno okruženje (IDE) zasnovano na Eclipse platformi kao primjer, raspravljat ćemo o razlikama između zaštitnih (zaštitnih) i nezaštitnih (nezaštitnih) licenci izvornog softvera. Kada se integriše ili povezuje otvoreni izvorni kod sa "vlasničkim" zatvorenim izvornim kodom, često je potrebna dužna pažnja i pažnja. Postoje i različita pravna pitanja kojih treba biti svjesna, kao što je mogućnost kršenja patenta. Pokušaćemo da objasnimo i zašto se osnovni principi korišćenja softvera otvorenog koda u okruženju informacionih tehnologija (IT) ne primenjuju na komercijalne proizvode za ugrađene uređaje.

Razvojno okruženje QNX Momentics kao primjer otvorenog koda

Davne 2001. godine, kada su se mnoge softverske kompanije borile da prežive suočene sa opštim kolapsom na berzi IT kompanija, posebno onih povezanih sa elektronskim poslovanjem na Internetu, QNX Software Systems je doneo stratešku odluku da počne razvoj novog integrisanog razvojno okruženje (IDE) za tržište, ugrađeni sistemi. Kompanija je već imala solidno iskustvo u razvoju niza alata koji se koriste u razvoju ugrađenih uređaja, ali je menadžment kompanije shvatio da će im kreiranje IDE-a omogućiti da ostanu na vrhu talasa u veoma konkurentnom okruženju. Odluka o kreiranju IDE-a također je vođena promjenom naglaska na zahtjevima korisnika. Tokom poslovnog pada, kupci s nedostatkom novca postali su zainteresiraniji za rješenja koja bi mogla maksimizirati produktivnost i učiniti ih mobilnim (fleksibilnijim) u svom radu, što bi poboljšalo ukupnu ekonomsku efikasnost.

Za QNX, razvoj IDE-a je bio "klađenje za budućnost" jer su u to vrijeme troškovi i trud oko razvoja projekta bili nedostižni za većinu dobavljača alata za ugrađene sisteme. Na sreću, QNX je blisko sarađivao sa IBM-om na različitim segmentima tržišta ugrađenih uređaja. Kroz blisku saradnju, IBM je sa QNX-om podelio svoje planove za izdavanje integrisanog razvojnog okruženja otvorenog koda koje je kasnije postalo osnova za Eclipse platformu.

IBM je ponudio da iskoristi iskustvo QNX-a za prilagođavanje IDE tehnologije potrebama programera uključenih u kreiranje ugrađenih aplikacija zasnovanih na jeziku C/C++. Stručnjaci QNX-a su gotovo odmah ukazali na neoborive privlačne aspekte korištenja open source kodova za IDE. Na primjer, za takvo okruženje bilo bi moguće:

  • eliminirati ovisnost o jednom dobavljaču, što je obično povezano s potrebom licenciranja prozorske platforme;
  • ponuditi izvorni kod za prilagođavanje potrebama kupca;
  • privući ozbiljne igrače u industriji da podrže i stvore ekosistem komplementarnih tehnologija i dodataka;
  • pružiti kupcima stabilnu arhitekturu koja može podržati diferencijaciju proizvoda;
  • omogućiti programerima ugrađenih uređaja da koriste standardne radne stanice pogodne za rad sa aplikacijama informacionih tehnologija (u najširem spektru aplikacija) kao razvojnu platformu.

Konačno, postojala je posebna mogućnost da IDE platforma uhvati i postane de facto standard, omogućavajući QNX-u da iskoristi tržište za velike ekosisteme programera i alata trećih strana kroz takvu platformu.

Osnovan projekat otvorenog koda Eclipse.org

U novembru 2001. Borland, IBM, Merant, QNX Software Systems, Red Hat i SUSE osnovali su Eclipse Consortium. Početkom 2004. godine Upravni odbor je reorganizirao Eclipse Consortium u neprofitnu korporaciju pod nazivom Eclipse Foundation.

Od samog početka, Eclipse je bio istinski open source projekat. Projekat je ponudio i besplatne tehnologije otvorenog koda i pristup zajednici najobrazovanijih i najnaprednijih programera u svojoj oblasti. Tako se ova tehnologija pokazala kao univerzalna platforma za integraciju svih vrsta razvojnih alata. Zasnovan je na otvorenoj, proširivoj arhitekturi i jasno je licenciran kao proizvod bez naknade i koji se može slobodno distribuirati. Doprinosi članova zajednice projektu Eclipse zasnovani su na standardnom modelu razvoja softvera otvorenog koda (OSS), ali većina članova takođe doprinosi komercijalnom razvoju zasnovanom na Eclipse platformi.

Projekat skladištenja alata

U decembru 2001. QNX je počeo da gradi svoj QNX® Neutrino® RTOS zasnovan na Eclipse IDE. Vizija kompanije je bila da IDE bude visoko funkcionalan, orijentisan na C/C++, sa duboko integrisanim alatima za otklanjanje grešaka, profilisanje, analizu i izgradnju ugrađenih aplikacija. Od samog početka, QNX tim je nameravao da bude višenamenski, višejezični IDE koji podržava višestruke platforme alata. Ovo je uključivalo:

  • nekoliko instrumentalnih platformi: Windows, Solaris, QNX Neutrino RTOS (self-hosted development);
  • višestruke ciljne arhitekture: ARM, MIPS, PowerPC, SH-4, x86;
  • programski jezici C, C++, Java.

Od tada, IDE je nastavio da raste i uključuje podršku za Linux platformu i podršku za dodatne arhitekture procesora, uključujući XScale procesore.

Realizacija projekta pokrenuta je u stilu „ekstremnog programiranja“. Kompanija je odabrala tim od 12 najboljih inženjera. Dobili su posebnu prostoriju, bili su izolovani od svih smetnji, projekat im je dat na potpuno raspolaganje.

Grupi su data neophodna ovlaštenja za donošenje odluka, uspostavljen je strog raspored rada koji nije sklon riziku, sa beta izdanjem proizvoda za 16 sedmica i komercijalnim izdavanjem do 4. jula 2002. Grupa je ispunila sve postavili prekretnice i objavili novi proizvod - nazvan QNX Momentics® IDE - tačno po planu, demonstrirajući potencijal softvera otvorenog koda za smanjenje vremena izlaska na tržište.

Od ideje do isporuke proizvoda - manje od 7 mjeseci

Nadovezujući se na Eclipse platformu, QNX tim je završio veoma moćan i svestran IDE za razvoj ugrađenog softvera za šest meseci. IDE je podržao razvoj među platformama za više platformi alata i programskih jezika i podržao je najpopularnije ugrađene ciljne procesorske ploče. Sa platformom Eclipse, QNX je mogao:

  • koristiti GNU kompajlere i alate komandne linije za unakrsni razvoj;
  • implementirati podršku za dodatke treće strane, kao što su IBM WebSphere za ugrađene Java aplikacije i Rational ClearCase za razvoj vođen modelom;
  • kreirati dodatne alate za izgradnju sistema, upravljanje ciljnim uređajima, analizu memorije, profilisanje sistema i aplikacija itd.

Na sl. Slika 1 daje primjer kako Eclipse platforma može smanjiti troškove izgradnje IDE-a, omogućavajući kompanijama da se fokusiraju na više nivoe razvoja gdje se prave prave inovacije. Na primjer, koristeći Eclipse platformu, QNX je mogao lako kreirati nekoliko inovativnih alata za vizualizaciju koji vam omogućavaju da uđete duboko u ugrađeni sistem i prikažete njegovo ponašanje.

Vratite doprinos radu zajednice

Snaga uspješnog projekta otvorenog koda leži u suradnji zajednice programera i kontinuiranom poboljšanju baze koda. Ako kompanija prihvati i dobro koristi open source, onda jednostavno ima obavezu da doprinese zajednici. U tu svrhu, QNX je preuzeo vodstvo Eclipse CDT projekta u junu 2002.

Cilj projekta Eclipse CDT (C/C++ razvojni alati) je stvaranje zajedničkog skupa interoperabilnih C/C++ jezičkih alata za Eclipse platformu. Eclipse CDT je ​​pozicioniran kao projekat otvorenog koda, sa upravljačkim pravima od Eclipse Corporation. Da bi započeo CDT projekat, QNX je donirao svoje razvojne resurse i izvorni kod za QNX Momentics IDE projekat. Značajnu podršku projektu dali su i Rational i Red Hat, kao članovi zajednice.

Rice. 1. Sa platformom Eclipse, prodavci alata mogu se fokusirati na najviši nivo radne grupe, gdje se prave prave inovacije.

QNX nastavlja da održava CDT projekat, koji je sa inicijalno skromnih 80.000 linija koda narastao na preko 700.000 linija koda danas. Početkom 2006. godine, Eclipse CDT dnevnik napretka projekta procijenio je doprinos QNX-a na 52%. Sledeći je bio IBM sa doprinosom od 36%. CDT projekat je drugi najpopularniji Eclipse projekat nakon same Eclipse platforme.

Mogu li sebi priuštiti da "poklonim" kod?

Može se činiti da "donirati" svoj kod - znači djelovati suprotno zdravom razumu. Međutim, ako se ispostavi da je funkcionalnost vašeg proizvoda korisna, zašto je ne biste doprinijeli zajednici korisnika otvorenog koda. Poduzimajući ovaj korak, možete imati koristi od takve "standardne" ponude implementacije, zajedno s prednostima iskustva podrške za proizvode. Moći ćete imati koristi od rada cijele zajednice usmjerene na poboljšanje kodne baze. Takva strategija može osloboditi vaše vlastite resurse za dodatna istraživanja usmjerena na inovacije i dodavanje funkcionalnosti vašim proizvodima.

Štaviše, mogli biste dobiti određenu kontrolu nad smjerom "standardne" platforme - zarađenu, naravno, svojim doprinosima zajednici! Ako podržavate projekat, ponašajte se kao dobar građanin zajednice, poštujte mišljenja drugih ljudi, cijenite doprinose i savjete drugih članova. Nemojte misliti da će vam neko pokušati "očistiti džepove" kao rezultat korištenja koda i od vas preuzeti kontrolu nad smjerom razvoja platforme.

Na primjer, strategija QNX Software Systems je da iskoristi svoju uključenost u Eclipse dok razvija novu funkcionalnost koja se uključuje kroz standardizirane tačke proširivosti koje su već uključene u Eclipse i CDT platforme. U tom cilju, QNX namjerava da ostane aktivan član Eclipse zajednice, koristeći postojeću bazu kodova i rad trećih strana (plug-ins), pomažući u zadovoljenju stvarnih potreba korisnika kreiranjem vlasničkih ekstenzija. Opisana strategija je ilustrovana na sl. 2.

Rice. 2. Svojim radom možete doprinijeti radu zajednice.

Sažetak pogodnosti

Platforma alata zasnovana na Eclipse je obostrano korisna i za programere aplikacija kao što je QNX i za kupce koji kupuju alate platforme.

Programeri imaju koristi od skraćenog vremena za izlazak na tržište za svoje proizvode i mogućnosti da imaju koristi od istraživanja drugih ljudi (po niskoj cijeni). Ovi rezultati mogu uključivati ​​visokokvalitetni "čist IP" kod koji obezbjeđuju renomirane firme kao što su IBM i QNX. Još jedna prednost za programera je to što dobija jednostavnu i jasnu šemu licenciranja, uključujući komercijalna prava i određenu zaštitu patenta. Štaviše, programer dobija mogućnost rada na više OS platformi koje podržava Eclipse, kao i pristup dobro definisanim tačkama proširenja u Eclipse projektu.

Kupci koji kupe IDE zasnovan na Eclipse-u imaju koristi od platforme alata za razvoj ugrađenih aplikacija sa snažnom podrškom za unakrsnu kompilaciju, lako otklanjanje grešaka i proširenja za upravljanje ciljnim sistemima. Klijentov razvojni tim će cijeniti mnoge karakteristike koje olakšavaju rad, kratko vrijeme potrebno za dodatnu obuku, dobre performanse proizvoda i robusnu platformu koja vam omogućava rad na velikim projektima. Klijent takođe može imati koristi od Eclipse platforme u sopstvenim aplikacijama (npr. RCP, eRCP, itd.).

Budućnost korporacije Eclipse

Eclipse Corporation je aktivna i energična zajednica. Novi projekti se stalno pojavljuju, nove arhitekture se stavljaju na raspolaganje etabliranim inovativnim kompanijama, a čak i male kompanije mogu komercijalizirati Eclipse platformu stvaranjem novih dodataka koji proširuju postojeću funkcionalnost uz minimalne troškove (vidi sliku 3).

Rice. 3. Eclipse Corporation je živahna i brzo rastuća zajednica programera dodataka.

Poređenje licenci otvorenog koda

Nisu sve licence za softver otvorenog koda jednake. QNX je napravio dobro osmišljen potez sa Eclipse javnom licencom. Ovaj izbor je dijelom vođen potrebama njegovih ugrađenih kupaca, a dijelom željom da kontrolišu (i kapitaliziraju) tehnologiju koja razlikuje proizvode.

Neprofitna korporacija Open Source Initiative () smislila je korisnu definiciju otvorenog koda od 10 tačaka. Trenutno postoji preko 50 OSI odobrenih licenci na web stranici, uključujući Eclipse javnu licencu. Ove licence mogu sadržavati značajne razlike koje treba jasno razumjeti. Ove razlike mogu značajno uticati na intelektualno vlasništvo (IP) programera i sposobnost da ga zaštite. Ovo je najviše istinito u slučaju korištenja otvorenog koda (ili izvedenih djela zasnovanih na otvorenom kodu) u ugrađenim uređajima.

Zaštitna i neodbrambena dozvola

Pod uslovima zaštitne licence, kao što je GPL v2, izvedeno delo se može distribuirati samo zajedno sa odgovarajućim izvornim kodom. Prema uslovima zaštitne licence, garantuje se da će izvorni kod kada se premesti u kategoriju otvorenog koda, ostati u ovoj kategoriji u svim narednim generacijama i izvedenim proizvodima. Kao što ćemo kasnije objasniti, ovaj zahtjev dovodi do određenih problema u slučaju ugrađenih sistema.

Primjeri nezaštitnih licenci su originalne MIT i BSD licence. Nezaštitne licence zadržavaju autorska prava vlasnika, ali daju opsežna prava korisniku, uključujući pravo na modificiranje i neograničenu besplatnu distribuciju (ili ličnu upotrebu) softvera.

Šta znači "virusna licenca"

Neki ljudi GPL nazivaju "virusnom licencom". Ovaj naziv je nastao zbog nesigurnosti pravne definicije pojma "derivativni razvoj". Uz striktno tumačenje definicije, ispada da ako je čak i mali dio GPL licenciranog koda ugrađen u neku vlasničku aplikaciju, onda cijela aplikacija mora biti licencirana kao GPL. Analogija s virusom odmah mi pada na pamet.

Pitanja kompenzacije

Nedavno su pitanja obeštećenja za kršenje IP-a (IP Indemnification) postala glavna tema razgovora za programere. Kao odgovor, neki dobavljači otvorenog koda najavili su da će braniti kupce od tužbi za kršenje patenta ili autorskih prava. A najnovije licence otvorenog koda predviđaju kazne za korisnike koji pokušavaju da ostvare svoja patentna prava protiv drugih korisnika baze koda.

Glavni problemi koji nastaju u komercijalizaciji softvera otvorenog koda

Poređenje ugrađenih i IT aplikacija

Uspjeh prostora otvorenog koda potaknut je usvajanjem Linuxa od strane IT organizacija. Prednost korištenja Linuxa proizlazi iz rada na relativno homogenom i stabilnom hardveru (obično x86 porodica) i korištenja fleksibilne računarske platforme bogate resursima.

Sa ugrađenim softverom stvari su sasvim drugačije. Softver radi na ogromnom broju uređaja sa fiksnim skupom funkcija, koristeći širok spektar hardvera s različitim arhitekturama. Dizajneri ugrađenih uređaja svoju konkurentsku prednost često zasnivaju na određenom skupu funkcija, veličini, performansama, cijeni, vijeku trajanja baterije, pouzdanosti, interoperabilnosti i skalabilnosti. Ove karakteristike se obično implementiraju u softveru niskog nivoa, koji u slučaju Linuxa zahteva direktno povezivanje sa jezgrom OS-a. Prilagođavanje softvera niskog nivoa potrebama korisnika je norma, a ne izuzetak, tako da programeri često dobijaju funkcionalnost koju žele promjenom jezgre OS-a. Metoda direktnog povezivanja se također koristi ugrađivanjem u fragmente koda kako bi se smanjili troškovi kreiranja biblioteka. Uzeti zajedno, ove prakse otežavaju zaštitu vlasničkog koda pod licencama kao što je GPL (javna domena).

Obično se ovi problemi licenciranja ne odnose na IT aplikacije, jer se vlasnički softver specifičan za preduzeća ne distribuira izvan preduzeća, već se koristi isključivo za interne potrebe. U slučaju ugrađenih uređaja, međutim, oni uvijek distribuiraju derivati ​​softver koji podliježe klauzuli „prisilnog otvaranja“ licenci otvorenog koda, što može ugroziti ključne aspekte vrijednih ponuda otvorenog koda.

Osim toga, ugrađeni proizvodi često imaju dug vijek trajanja, kako u proizvodnji, tako iu službi. Ugrađeni proizvod koji podliježe uslovima korištenja otvorenog koda izložen je većem riziku, uključujući nedostatak dugoročne tehničke podrške, potencijalne sigurnosne probleme i kršenje IP-a.

Pitanja licenciranja

Neizvjesnost pravnog statusa

Uprkos utješnim riječima nekih zagovornika licenci otvorenog koda, mnoge ključne zabrinutosti koje su izrazili programeri za ugrađene programe još uvijek nisu detaljno testirani od strane pravosuđa. Kao što je spomenuto, definicija "derivativnog rada" ključna je za sprovođenje određenih uslova licence, iako mnogi pojedinci i organizacije koje prihvataju uslove korišćenja otvorenog koda imaju malo ili nimalo razumevanja značenja ovog izraza.

Neka zaobilazna rješenja koja dozvoljavaju komercijalnim dobavljačima da ugrade "vlasničke" drajvere u Linux (kao što su učitavi moduli kernela) oslanjaju se na argumente "on je rekao, rekla je" umjesto na direktne veze do teksta ugovora o licenci. Zapravo, takvi drajveri koji koriste LKM module su opasno zaobilaženje zahtjeva GPL licence. Idući do krajnosti, može se protumačiti stvar na takav način da se Linux kodna baza može predstaviti kao beskorisna za većinu praktičnih aplikacija ako ne uključuje neke od ovih vrlo "vlasničkih" drajvera. Ova situacija može efektivno obezvrijediti ideju GPL licence.

Nedostatak naknade za kršenje prava intelektualne svojine

U većini slučajeva kada se koristi otvoreni izvorni kod, postoji realna mogućnost da nehotice prekršite tuđa patentna prava. Nekoliko licenci otvorenog koda eksplicitno upućuje na patente, a o impliciranim licencama se ne može suditi. Morate posebno licencirati sve patente koji se odnose na, na primjer, kodeke otvorenog koda koji implementiraju MP3 algoritme ili druga vlasnička rješenja. U međuvremenu, loši momci (uključujući i Microsoft) su zauzeti izgradnjom portfelja patenata za koje mnogi stručnjaci vjeruju da bi mogli biti ispaljeni na zagovornike otvorenog koda.

Neke licence eksplicitno upućuju na patente. Na primjer, Eclipse javna licenca ima eksplicitno spominjanje patentnih prava, a sadrži i klauzulu o kaznama u slučaju da neko pokuša da ostvari patentna prava na drugačiji način. Eclipse Corporation se također trudi da provjeri kod i odredi njegov izvor porijekla u smislu licenciranja, patenta ili autorskih prava.

Dodatni napori za očuvanje IP-a

Da bi koristila open source, kompanija mora uložiti značajne napore u sljedećim oblastima:

  • upravljanje distribucijom proizvoda;
  • upravljanje licencama;
  • rješavanje pravnih sukoba u pogledu obaveza kupaca;
  • posvećujući dužnu pažnju pravnim pitanjima: održavanje čistoće IP prava, provjeru IP prava na otvoreni izvor, utvrđivanje izvora porijekla koda, praćenje promjena u verzijama licence, na primjer, GPL v3, itd.

Prihvatanje zahtjeva kupaca

Neki veliki kupci, suočeni sa složenošću i neizvjesnošću softvera otvorenog koda, odbili su da se bave proizvodima koji uključuju open source. Ako i dalje želite raditi s ovim klijentima, morate ih pribaviti ili pozvati da uključe uslove komercijalne licence za vaš kod.

Pitanja vezana za IP

Da li uslovi vaše licence otvorenog koda utiču na intelektualnu svojinu koja razlikuje vaš proizvod? Ako da, onda je vaša IP adresa ugrožena.

Ako ugrađeni sistemi koriste mješavinu vašeg vlastitog softvera i softvera otvorenog koda, tada morate razumjeti suštinu, porijeklo i odnos svih komponenti ugrađenog softvera. Bez ovog dubokog uvida u predmet, mogli biste nehotice prekršiti tuđu IP adresu ili čak izgubiti prava na svoj softver.

Bez patentnih licenci i kompenzacije, dugovječni ugrađeni softver, relativno visoka prodajna cijena i obim prodaje ugrađenog uređaja s fiksnom funkcijom čine takve sisteme očiglednom metom za zahtjeve za kršenje patenta od strane gore navedenih "loših momaka" i glavnih konkurenata.

Kao što pokazuje primjer korištenja QNX Momentics IDE-a, postoje mnoge neposredne prednosti softvera otvorenog koda, uključujući smanjeno vrijeme izlaska na tržište, niže troškove razvoja i više slobode za dodavanje funkcija i inovacija vašem proizvodu. Ako nudite svoj softver kao uslugu koja rješava problem korisnika, onda kupca nije briga da li koristite softver otvorenog koda ili ne, on samo plaća za funkciju koja mu je potrebna.

Međutim, trebali biste razumjeti razliku između različitih licenci otvorenog koda i odabrati onu koja najbolje odgovara vašoj aplikaciji i potrebama korisnika. Štaviše, budite spremni da budete odgovorni za obaveze licenciranja softvera koji odaberete. Trebali biste biti svjesni drugih zahtjeva za intelektualnu svojinu (kao što su patentna prava) u vezi sa programskim kodom. Budite oprezni s kodnom bazom koja ne prikazuje poruku o posljedicama kršenja IP adrese. Potražite projekte koji nude obeštećenje i koji na ekranu prikazuju poruku o novčanim donacijama za razvoj koda za kompenzaciju troškova povezanih sa kršenjem autorskih prava ili patenta, itd. Također provjerite je li softver otvorenog koda koji koristite u skladu s vašom politikom intelektualnog vlasništva i izbjegavajte odbrambene licence koje bi vas mogle prisiliti da otkrijete karakteristične dijelove vašeg koda. Ako je vaš proizvod ugrađen u sistem, razmislite i o ponudi komercijalnih uslova licenciranja za vaš IP.

Upotreba otvorenog koda u ugrađenim uređajima postavlja složenija pitanja od korištenja softvera otvorenog koda u IT aplikacijama, jer je prvo rizičnije. Prije nego što odlučite da koristite bilo koji softver otvorenog koda, procijenite njegovu stvarnu cijenu vlasništva (TTCO) i njegovu prikladnost za vaš projekat.

Konačno, pridružite se zajednici korisnika otvorenog koda i programera kako biste dobili najveću vrijednost i koristi za sebe!



Učitavanje...
Top