Nedávno jsem byl výzkum na Open Source licenční problematiky. Předtím, než jsem začal s výzkumem jsem měl velmi malou představu o skutečném smyslu Open Source, i když jsem používal Linux (open source OS) po dobu delší než 4 roky!

Musíte se ptát, proč byste si měli přečíst tohle? Na základě mých zkušeností existuje spousta zdrojů, které jsou k dispozici na internetu, který bude mluvit o těchto otázkách, ale žádný z nich vycházejí ze základní úrovně, tj z úrovně, kde může i nováček IT osoba také porozumět tomu, co se děje.

Pocházející z inženýrské pozadí, bych začal s velmi základní a pak stavět na téma, aby se ujistil, že jsem pochopit, většina detailů - menší / major.

Předpoklady

  1. Budu používat slova "programu" a "software" zaměnitelně.
  2. Když jsem se odkazovat na zdroj operačního systému otevřené (OS), obecně mám na mysli OS Linux.

Co myslíš tím, Open Source?
Ve skutečnosti mnoho lidí si myslí, že Open Source znamená, že zdrojový kód by měl být otevřený, tj k dispozici všem jen. Ale víš co? Mýlí se. Toto není celý správná definice Open Source. Existuje několik dalších kritérií , které je třeba splnit, než budeme moci říkat něco jako Open Source Software.

Má Open Source znamená, že musím použít GPL licenci?
Noways. Jakmile víte, že váš program je Open Source, musíte se rozhodnout, vhodnou licenci k tomu, založené na vaší strategii (pokud jste firma), využití a knihovny (pokud existuje), které jste použili napsat svůj program. GPL je jen jedním z několika typů otevřených licencí zdroj, i když je to jeden z nejoblíbenějších licencí na open source komunitě.

Mohu prodat svůj open-source program?
Ano. Neexistuje žádné omezení, kolik si můžete účtovat za vaše open source program, který jste vytvořili. Tak například, že jste se rozhodli zvolit GPL licenci pro svůj open source program a chcete jej prodat, Podle licenčních podmínek GPL můžete ho prodat, i když je zde jedna výjimka (týkající se zdrojového kódu), k tomu, který jsem si, že je teď docela zřejmé. Definice svobodného softwaru (= Open Source Software), zahrnuje právo prodávat kopie programu.

Musím uvolnit zdrojový kód, když jsem se prodat svůj program (Open Source nebo zavřené / Hromadně)?
Ve skutečnosti to může být trochu matoucí, takže jsem se zase začít na velmi základní úrovni.

Obvykle, pokud nechcete, aby se uvolnil zdrojový kód pro veřejnost pak je váš program není technicky Open Source programu. V tomto případě se jedná o uzavřený / proprietární software, pokud to není "odvozený" z druhého programu. Dostaneme se do problematiky, co se považuje za "odvozený", později, jak to, že není vhodné shoda, pokud jde o toto.

Tak například, pokud používáte Debian nebo Ubuntu Linux OS a vy se rozhodnete napsat jednoduchý program (test.c) v jazyce C pomocí editoru, jako je vi nebo emacs a kompilovat pomocí gcc, pak váš výsledný binární / programu (test) může být nazýván proprietární software a můžete prodat na veřejnosti, aniž by byl uvolněn zdrojový kód, pokud jsou splněny následující podmínky:

1. Váš program není přímo zahrnuje jakoukoliv část GPL licencí software / knihovny.

2. Váš program není odvozen z jakéhokoliv GPL licencí na bázi software / knihovny.

Nicméně, v tomto okamžiku se můžete rozhodnout, aby se váš software Open Source přijetím žádnou licenci Open Source, jako například GPL. Předpokládejme, že jste se rozhodli vybrat GPL licenci pro vaši test.c programu. Nyní můžete ještě prodat svůj binárku za poplatek / poplatek, ale zároveň je nutné uvolnit zdrojový kód i spolu s binárním souboru. To je důvod, proč se nazývá Open Source.

Kromě toho je třeba mít na paměti, že někdy volba licence není založen výhradně na nás. Předpokládejme například, že jste těžce používat kód s licencí GPL knihovny v test.c programu. Pak se ve výchozím nastavení bude tento program (test.c) považovat za odvozené software a budete muset použít GPL licenci pro program a uznáváte, že jste použili kód z tak-a-tak knihovny a.ka. "virální efekt" GPL. Stále můžete prodávat tento software (test.c), ale teď jste povinen uvolnit zdrojový kód spolu s binární, pokud se rozhodnete distribuovat veřejnosti pod licencí GPL .

Nyní se můžete ptát, co když nemám v úmyslu ho redistribuovat a prostě si to pro sebe, nebo pro mou organizaci. Ještě musím uvolnit zdrojový kód, protože jsem použil spoustu kódu z knihovny GPL bázi?
No vůbec v tomto případě nejste povinni uvolnit zdrojový kód a vy se rozhodnete udělat něco s vaším softwarem (test.c) interně.

Je jasné, pro mě, co je jako odvozený software? Je to matoucí. Existuje nějaký jiný lepší řešení?
Bohužel neexistuje žádný univerzální shoda o tom, co lze nazvat jako odvozené software. Naštěstí existuje lepší řešení, které bude držet co nejdál od porušení jakékoliv licenční smlouvy - používat LGPL licencí knihovnu, která je známá také jako méně GPL, která je spíš jako permisivní / proprietární licencí. Než jsme se pochopit hlavní rozdíl mezi LGPL a GPL je nutné pochopit, co je považována za "odvozený".

Někteří lidé v obci se domnívají, že pokud váš program dynamicky odkazy na softwarové knihovny pak váš program nemůže být označován jako "odvozený" softwaru. Ale pokud se staticky propojit softwarovou knihovnu do svého programu, pak se nazývá "odvozený" software, a proto nelze tvrdit, úplně jako svůj vlastní software. Pokud však jde o knihovny, které jsou založeny na GPL licencí někteří lidé považují i ​​dynamicky propojení s vaším programem (test.c) jako také "odvozené" softwaru.

Řešení - LGPL
Tak, aby zůstali daleko od těchto nejasností, tam jsou četné knihovny, které jsou nyní vydány pod Lesser GPL (LGPL), licence. To znamená, že můžete propojit na ty knihovny (staticky nebo dynamicky) k programu (test.c), a stále můžete zvolit, aby se vaše vlastní kód (closed-source program). I když bude třeba, aby propustila všechny změny, které byste mohli skončit-up, aby se jimi LGPL knihovny kódu v test.c programu.

Například knihovna GNU C je uvolněn pod licencí LGPL, a to je důvod, proč je tak populární a rozšířené. Ve skutečnosti většina softwarových knihoven open-source jsou uvolněny pod licencí LGPL. Existují však důvody , pro které bychom chtěli vydat knihovna pod GPL a ne LGPL

Proto je velmi důležité, že jste se rozhodli typ licencí (řekněme například GPL nebo LGPL), knihovny, kterou by chtěl použít ve svém programu v závislosti na vaší strategii.

Jak mohu vydělat peníze, když uvolní svůj program pod GPL licencí (se zdrojovým kódem)? Není to paradox?
Víš, co jsem se také přesně použít myslet totéž, a to byl jeden z hlavních důvodů, proč jsem chtěl udělat nějaký výzkum na to všechno. Ve skutečnosti existují reálné životní příklady , kdy byli lidé vydělávání peněz a to i po uvolnění jejich software pod licencí GPL pro více než 10 let.

Myslím, že jedním z hlavních důvodů, za to je jednoduchý ekonomický / obchodní princip nákladů obětované příležitosti času . Například, i když jsem uvolnit software pro své zákazníky pod GPL, by ještě přijde ke mně na výrobu nějaké změny / úpravy na ten kus softwaru, i když mají zdrojový kód pro něj. Samozřejmě, že zákazník by to mohl udělat sám / sama, nebo může najmout programátora, ale tam bude hodně přes hlavu náklady spojené v tom, že stejně jako například poznávání kus softwaru, seznámení s knihovnami, atd někdo musí dělat práci (provedení změn / úprav), tak proč ne původní osoba / firma, která to.

Myslím, že to blogu je již dlouhá, takže bych rád, aby to skončí tady. V budoucnu, pokud to nějaký další výzkum na toto téma, nebo-li získat další informace o tom, budu poslat ho do nového blogu.

Prosím, zanechte komentář, pokud máte nějaké dotazy nebo připomínky.

Díky za pobyt tak dlouho!

Být společenský, Share!