ഒരു GitHub ലൈസൻസ് എങ്ങനെ തിരഞ്ഞെടുക്കാം, ശരിയായ തിരഞ്ഞെടുപ്പ് നടത്തേണ്ടത് പ്രധാനമായിരിക്കുന്നത് എന്തുകൊണ്ട്? ഐടി പ്രോജക്ടുകളുടെ സംയുക്ത വികസനത്തിനും അവയുടെ തുടർന്നുള്ള ഹോസ്റ്റിംഗിനുമുള്ള ഏറ്റവും വലിയ സേവനമാണ് GitHub. ഈ വെബ് സേവനത്തിന്റെ സഹായത്തോടെ, പരിധിയില്ലാത്ത ആളുകൾക്ക് ഒരേസമയം ഒരു പ്രോജക്റ്റിൽ പ്രവർത്തിക്കാൻ കഴിയും, അതുപോലെ തന്നെ ലോകത്തെവിടെ നിന്നും. കാലക്രമേണ ഡെവലപ്പർമാർ വരുത്തിയ എല്ലാ മാറ്റങ്ങളും കാണാനും നിയന്ത്രിക്കാനും നിങ്ങളെ അനുവദിക്കുന്ന ഒരു മാനേജുമെന്റ് അല്ലെങ്കിൽ കൺട്രോൾ സിസ്റ്റവും GitHub-ലുണ്ട്, കൂടാതെ മാറ്റങ്ങൾക്ക് മുമ്പ് സംഭവിച്ച അവസ്ഥയിലേക്ക് മടങ്ങാനും ഇത് നിങ്ങളെ അനുവദിക്കുന്നു.
എന്താണ് GitHub ലൈസൻസ്
ഒരു ലൈസൻസ് എന്നത് സ്റ്റേറ്റ് ഫോം സ്ഥാപിച്ച ഒരു പ്രത്യേക രേഖയാണ്, കൂടാതെ ഒരു പ്രത്യേക തരം സംരംഭക പ്രവർത്തനങ്ങളിൽ ഏർപ്പെടാൻ നിങ്ങളെ അനുവദിക്കുന്നു, അത് പരാജയപ്പെടാതെ സംസ്ഥാന ഭാഗത്ത് നിന്ന് പ്രത്യേക ശ്രദ്ധ ആവശ്യമാണ്. പക്ഷേ, മിക്കപ്പോഴും, പ്രായോഗികമായി, സ്വകാര്യ നിയമ ലൈസൻസുകൾ നൽകുന്നതിന് നൽകുന്ന ചുരുക്കിയ ലൈസൻസ് കരാറുകളോ കരാറുകളോ മാത്രമാണ് ഉപയോഗിക്കുന്നത്. പൊതുവേ, ലൈസൻസ് ഒന്ന് മാത്രം പിന്തുടരുന്നു, എന്നാൽ ഏറ്റവും പ്രധാനപ്പെട്ട ലക്ഷ്യം, ഇത് ലൈസൻസറും ലൈസൻസിയും തമ്മിലുള്ള ബാധ്യതകളെയും അവകാശങ്ങളെയും കുറിച്ചുള്ള ഒരു കരാറാണ്. ഈ കടമകളും അവകാശങ്ങളും തികച്ചും എന്തും ആകാം, പക്ഷേ നിയമത്തിന്റെ ചട്ടക്കൂടിനുള്ളിൽ മാത്രം. ഒരു ശ്രദ്ധേയമായ ഉദാഹരണം, ലൈസൻസി സൃഷ്ടി ഉപയോഗിക്കുമ്പോൾ പകർപ്പവകാശ ഉടമയുടെ പേര് ലൈസൻസർക്ക് ആവശ്യമായി വന്നേക്കാം. അല്ലെങ്കിൽ, ഉദാഹരണത്തിന്, ജോലി പകർത്താൻ അനുവദിക്കുക, എന്നാൽ അതിൽ എന്തെങ്കിലും മാറ്റം വരുത്തുന്നത് പൂർണ്ണമായും നിരോധിക്കുക. അല്ലെങ്കിൽ, സൃഷ്ടിയുടെ യഥാർത്ഥ വ്യവസ്ഥയുടെ അതേ വ്യവസ്ഥകളിൽ റിലീസ് ചെയ്യേണ്ട അത്തരം ആവശ്യകതകൾ കൊണ്ടുവരാൻ, വിവിധ വ്യവസ്ഥകൾ മുന്നോട്ട് വയ്ക്കുന്നതിന് ധാരാളം ഉദാഹരണങ്ങളുണ്ട്. [അടിക്കുറിപ്പ് id=”attachment_12368″ align=”aligncenter” width=”780″]
എന്നാൽ, ലൈസൻസ് ലൈസൻസറുടെ മാത്രമല്ല, ലൈസൻസിയുടെയും അവകാശങ്ങൾ സംരക്ഷിക്കുന്നുവെന്ന കാര്യം നാം മറക്കരുത്. അതിൽ നിങ്ങൾക്ക് ജോലി ഉപയോഗിക്കുന്നതിനുള്ള എല്ലാ വ്യവസ്ഥകളും വ്യക്തമായി കാണാനും വായിക്കാനും കഴിയും, അതിനാൽ ലൈസൻസർ പെട്ടെന്ന് തന്റെ ജോലിയുടെ ഉപയോഗത്തിന് എന്തെങ്കിലും കിഴിവുകളോ മറ്റേതെങ്കിലും നഷ്ടപരിഹാരമോ ആവശ്യപ്പെടുമെന്ന് അദ്ദേഹം ഭയപ്പെടേണ്ടതില്ല.
ജോലിയുമായി ബന്ധപ്പെട്ട ലൈസൻസ് ഉപയോഗിക്കാൻ നിങ്ങൾ വിസമ്മതിക്കുകയാണെങ്കിൽ, ഒരു പ്രത്യേക രാജ്യത്ത് നിലവിലുള്ള നിയമപരമായ നിയമങ്ങൾക്കനുസൃതമായി പകർപ്പവകാശം തുടർന്നും ബാധകമാണ്. ലളിതമായി പറഞ്ഞാൽ, ഒരു ലൈസൻസിന്റെ അഭാവം മറ്റ് രചയിതാക്കൾക്ക് അവർ ആഗ്രഹിക്കുന്ന രീതിയിൽ ഈ പ്രോജക്റ്റ് ഉപയോഗിക്കാൻ കഴിയുമെന്ന് അർത്ഥമാക്കുന്നില്ല. എല്ലാം തികച്ചും വിപരീതമാണ്, കാരണം ഏതെങ്കിലും പ്രത്യേക ലൈസൻസ് ഇല്ലാതെ, പ്രോഗ്രാമർ ഒരു സാഹചര്യത്തിലും നിയമം അനുവദിച്ച അവകാശങ്ങൾ ഒഴിവാക്കില്ല. എല്ലാ അവകാശങ്ങളെയും കടമകളെയും നിയന്ത്രിക്കുന്നത് ലൈസൻസ് ആണെന്ന് എപ്പോഴും ഓർമ്മിക്കേണ്ടത് പ്രധാനമാണ്. ഉപയോക്തൃ പ്രതീക്ഷകളിൽ നിന്നും ഏതെങ്കിലും വാറന്റി സൂചിപ്പിക്കുന്നതിൽ നിന്നും ജോലിയുടെ ഉടമയെ സംരക്ഷിക്കുന്നതിനാണ് ഇത്. എല്ലാത്തിനുമുപരി, അവരുടെ കോഡ് ഏതെങ്കിലും വിധത്തിൽ കോടതിയിൽ അവസാനിക്കാൻ ആരും ആഗ്രഹിക്കുന്നില്ല.
എന്താണ് പകർപ്പവകാശം
ഒരു വ്യക്തിയിൽ പകർപ്പവകാശം ദൃശ്യമാകുന്നത്, ബൗദ്ധിക പ്രവർത്തനത്തിന്റെ ഫലമായി, അവൻ അദ്വിതീയവും എന്നാൽ അതേ സമയം ഉപയോഗപ്രദവുമായ ഒരു പ്രത്യേക സൃഷ്ടി സൃഷ്ടിക്കുമ്പോൾ മാത്രമാണ്, ഉദാഹരണത്തിന്, നിങ്ങൾക്ക് ഒരേ പ്രോഗ്രാമിന്റെ എഴുത്ത് എടുക്കാം. മുകളിൽ പറഞ്ഞവയെല്ലാം പൂർത്തിയാകുമ്പോൾ, ആ വ്യക്തി രചയിതാവായി മാറുന്നു, ഇപ്പോൾ ഈ സൃഷ്ടിയുടെ എല്ലാ പകർപ്പവകാശങ്ങളും അവനുണ്ട്. പകർപ്പവകാശം സ്വത്താണെന്നും സ്വത്തല്ലെന്നും പറയണം. അവരുടെ വ്യത്യാസം, സ്വത്ത് അവകാശങ്ങൾ ആർക്കും കൈമാറാൻ കഴിയും, എന്നാൽ സ്വത്ത് ഇതര അവകാശങ്ങൾ എല്ലായ്പ്പോഴും ഏത് സാഹചര്യത്തിലും രചയിതാവിന് മാത്രമായി നിലനിൽക്കും. എല്ലാത്തിനുമുപരി, ഒരു എഴുത്തുകാരൻ എന്നത് കൈമാറ്റം ചെയ്യാനാവാത്തതും അനിഷേധ്യവുമായ അവകാശമാണ്.
ഒരു ഓപ്പൺ സോഴ്സ് ലൈസൻസ് എന്തിനുവേണ്ടിയാണ്?
തുടക്കക്കാരായ ഡവലപ്പർമാർക്കും പ്രോഗ്രാമർമാർക്കും ഇടയിൽ ഇത് വളരെ ജനപ്രിയമായ ഒരു ചോദ്യമാണ്, കാരണം അവരുടെ പ്രോജക്റ്റുകൾക്ക് ഒരു ലൈസൻസ് അറ്റാച്ചുചെയ്യുന്നത് എന്തുകൊണ്ടാണെന്ന് അവർക്ക് മനസ്സിലാകുന്നില്ല, കാരണം ഇത് കൂടാതെ പ്രോജക്റ്റ് നിശബ്ദമായി നിലനിൽക്കും. എന്നിരുന്നാലും, ഇത് പൂർണ്ണമായും ശരിയല്ല, കാരണം, ഉദാഹരണത്തിന്, ചില തുടക്കക്കാരായ ഡെവലപ്പർമാർ വളരെ പ്രധാനപ്പെട്ടതും ഉപയോഗപ്രദവുമായ ചില കോഡ് എഴുതിയിരുന്നുവെങ്കിലും അത് ഒരു ലൈസൻസ് ഉപയോഗിച്ച് പരിരക്ഷിച്ചില്ലെങ്കിൽ, മറ്റ് ഉപയോക്താക്കൾക്ക് ചോദ്യങ്ങളുണ്ട്. ഇക്കാരണത്താൽ, ക്ലയന്റുകൾ അവന്റെ അടുത്ത് വന്ന് അവരുടെ വാണിജ്യ ആവശ്യങ്ങൾക്കായി ഈ കോഡ് ഉപയോഗിക്കാൻ ആഗ്രഹിക്കുമ്പോൾ, കോഡിന് ലൈസൻസ് ഇല്ലെന്ന് അവർ കാണുകയും അത് നിരസിക്കുകയും ചെയ്യുന്നു. കമ്പനികൾക്ക് ലൈസൻസില്ലാതെ കോഡ് ഉപയോഗിക്കില്ലെന്നതാണ് ഇതിന് കാരണം, കാരണം അവർക്ക് നിയമവുമായും അഭിഭാഷകരുമായും പ്രശ്നങ്ങൾ ആവശ്യമില്ല.
ചില വ്യവസ്ഥകളിൽ ഏത് GitHub ലൈസൻസ് അനുയോജ്യമാണ് – എങ്ങനെ തിരഞ്ഞെടുക്കാം?
ഈ ചോദ്യത്തിന് കൃത്യമായ ഉത്തരം നൽകാൻ കഴിയില്ല, കാരണം ഒരു ലൈസൻസിന്റെ തിരഞ്ഞെടുപ്പ് പ്രോജക്റ്റിന്റെ ലക്ഷ്യങ്ങളെയും ഡവലപ്പറുടെ വ്യക്തിപരമായ മുൻഗണനകളെയും ആഗ്രഹങ്ങളെയും മാത്രം ആശ്രയിച്ചിരിക്കുന്നു. നിങ്ങൾക്ക് കാണാനാകുന്നതുപോലെ, GitHub-ൽ നിരവധി ലൈസൻസുകൾ ഉണ്ട്, ഏറ്റവും പ്രധാനമായി, അവയെല്ലാം സൗജന്യവും പൊതുസഞ്ചയത്തിലുള്ളതുമാണ്, അതായത് ഓരോ പ്രോഗ്രാമർക്കും
അവന്റെ പ്രോജക്റ്റിന് അനുയോജ്യമായ ഓപ്പൺ സോഴ്സ് ലൈസൻസ് കണ്ടെത്താൻ കഴിയും. പക്ഷേ, ഏറ്റവും പ്രധാനമായി, ഓപ്പൺ സോഴ്സ് ലൈസൻസ് എന്നത് ലൈസൻസില്ലാത്ത ഒരു കോഡ് മാത്രമല്ലെന്ന് നാം മറക്കരുത്.
- ശക്തമായി സംരക്ഷിക്കുന്നു.
- ദുർബലമായ സംരക്ഷണം.
- അനുവദനീയം.
ശക്തമായി സംരക്ഷിക്കുന്നു
ശക്തമായി പരിരക്ഷിക്കുന്ന ലൈസൻസുകൾ മിക്കപ്പോഴും GPL ന്റെ വ്യതിയാനങ്ങളാണ്. ഏതെങ്കിലും കോഡോ പ്രോജക്റ്റോ എങ്ങനെ ഉപയോഗിക്കും അല്ലെങ്കിൽ ഇതിനകം ഉപയോഗിച്ചിട്ടുണ്ടെങ്കിലും, ഈ ലൈസൻസുകൾക്ക് പ്രോജക്റ്റിന്റെ ലൈസൻസിംഗും സോഴ്സ് കോഡുകളുടെ വെളിപ്പെടുത്തലും ആവശ്യമാണ്.
ദുർബലമായ സംരക്ഷണം
ദുർബലമായി പരിരക്ഷിക്കുന്ന ലൈസൻസുകൾ മിക്കപ്പോഴും ലെസ്സർ ജിപിഎല്ലിന്റെ വ്യതിയാനങ്ങളാണ്. പെർമിസീവ് ലൈസൻസുകളിൽ നിന്നുള്ള പ്രധാന വ്യത്യാസം, ഇവിടെ GPL ലൈസൻസിന് കീഴിൽ പ്രോഗ്രാമിന് ലൈസൻസ് നൽകേണ്ടതും സോഴ്സ് കോഡുകൾ പരാജയപ്പെടാതെ നൽകേണ്ടതും ആവശ്യമാണ്. അതേ സമയം, പ്രോഗ്രാമറുടെ പ്രോജക്റ്റിൽ ഒരു ലൈബ്രറി ഉണ്ടെങ്കിൽ, അതായത്, എൽജിപിഎൽ ലൈസൻസിന് കീഴിലുള്ള സ്റ്റാറ്റിക് ലിങ്കിംഗ് അല്ലെങ്കിൽ ഡൈനാമിക് ലിങ്കിംഗ്, അത് ഈ പ്രോഗ്രാമറുടെ പ്രോജക്റ്റിന്റെ ഏതെങ്കിലും ലൈസൻസുമായി പൊരുത്തപ്പെടും. [അടിക്കുറിപ്പ് id=”attachment_12364″ align=”aligncenter” width=”698″]
അനുവദനീയമായ
അനുവദനീയമായ ലൈസൻസുകളുടെ ഒരു വലിയ സംഖ്യയുണ്ട്, അവയുടെ റാങ്കുകളിൽ ഏറ്റവും പ്രചാരമുള്ള ലൈസൻസുകൾ MIT, Apache 2.0, BSD എന്നിവയാണ്. ചെറിയ വ്യത്യാസങ്ങളോടെ, ഈ ലൈസൻസുകൾക്ക് ഓപ്പൺ സോഴ്സ് പ്രോജക്റ്റുകളിലും വാണിജ്യ ആവശ്യങ്ങൾക്കും പ്രോജക്റ്റുകൾക്കും കോഡ് ഉപയോഗിക്കാൻ അനുവദിക്കാനുള്ള കഴിവുണ്ട്. പക്ഷേ, ഈ സാഹചര്യത്തിൽ, യഥാർത്ഥ പ്രോഗ്രാമിന്റെ കർത്തൃത്വം സൂചിപ്പിക്കേണ്ടത് അത്യാവശ്യമാണെന്ന് ഓർമ്മിക്കേണ്ടതാണ്.
മറ്റ് ജനപ്രിയ GitHub ലൈസൻസുകൾ
ഈ മൂന്ന് ഗ്രൂപ്പുകളുടെ ലൈസൻസുകൾക്ക് പുറമേ, മറ്റുള്ളവയും ഉണ്ട്, ഉദാഹരണത്തിന്, ക്ലാസ്പാത്ത് വിപുലീകരണങ്ങളുള്ള GPLv2 ആണ് ഏറ്റവും ഉപയോഗപ്രദമായ മറ്റൊരു ലൈസൻസ്. ഈ ലൈസൻസ് ഓപ്പൺ സോഴ്സ് പ്രോജക്റ്റുകൾക്കും വാണിജ്യ പ്രോജക്റ്റുകൾക്കും ആവശ്യങ്ങൾക്കും ഉപയോഗിക്കാവുന്നതാണ്. ഓപ്പൺ സോഴ്സ് പ്രോജക്റ്റുകൾക്കും സൊല്യൂഷനുകൾക്കും ലൈസൻസ് നൽകുന്നതിന് ക്ലാസ്പാത്ത് വിപുലീകരണങ്ങളുള്ള GPLv2 ഉപയോഗിക്കുന്ന ഒറാക്കിളിലാണ് ഇതിന്റെ ഏറ്റവും ജനപ്രിയമായ രൂപം. ഈ ലൈസൻസ് വളരെ പ്രധാനപ്പെട്ടതും ഉപയോഗപ്രദവുമാണ്, കാരണം സാധാരണ GPL ലൈസൻസുകൾക്ക്, ഉദാഹരണത്തിന്, ഒരിക്കലും ബൈറ്റ്കോഡ് കൈകാര്യം ചെയ്യാൻ കഴിയില്ല. അതായത്, സമാഹരണത്തിന്റെയും ലിങ്കിംഗ് പ്രക്രിയയുടെയും ഒരു പ്രത്യേക വിവരണം അവർക്ക് ഉണ്ട്, ഇത് മറ്റ് വ്യാഖ്യാനിച്ച പ്രോഗ്രാമിംഗ് ഭാഷകൾക്ക് പൂർണ്ണമായും അനുയോജ്യമല്ല, അത്തരം ഭാഷകളിൽ ഏറ്റവും പ്രചാരമുള്ള ജാവ ഭാഷയാണ്. അത്തരം കേസുകൾക്കായാണ് ക്ലാസ്പാത്ത് വിപുലീകരണങ്ങളുള്ള ഒരു പ്രത്യേക ലൈസൻസ് GPLv2 പുറത്തിറക്കിയത്. എല്ലാത്തിനുമുപരി, ഈ ലൈസൻസിന് കീഴിൽ പുറത്തിറക്കിയ ലൈബ്രറി വാണിജ്യ പദ്ധതികൾക്കും ആവശ്യങ്ങൾക്കും മറ്റേതെങ്കിലും ലൈസൻസ് ഉപയോഗിച്ച് ഉപയോഗിക്കാമെന്ന് വളരെ വ്യക്തമായും വ്യക്തമായും പറയുന്നു.
.
ഒരു ലൈസൻസ് ചേർക്കുന്നു
അന്തിമ ലൈസൻസ് തിരഞ്ഞെടുത്ത ശേഷം, അത് പ്രോജക്റ്റ് റൂട്ടിലേക്ക് ചേർക്കാൻ മാത്രമേ ശേഷിക്കുന്നുള്ളൂ. ഈ പ്രവർത്തനം നടത്താൻ, പ്രോജക്റ്റ് സൃഷ്ടിക്കുന്ന സമയത്തോ മറ്റേതെങ്കിലും സമയത്തോ നിങ്ങൾ തിരഞ്ഞെടുത്ത ലൈസൻസ് പ്രോജക്റ്റ് റൂട്ടിന് കീഴിൽ ചേർക്കേണ്ടതുണ്ട്. എന്നാൽ ഈ പ്രവർത്തനത്തിൽ പോലും, GitHub വെബ് സേവനത്തിന് അതിന്റെ ഉപയോക്താക്കളെ പരിപാലിക്കാൻ കഴിഞ്ഞു, കൂടാതെ പ്രോജക്റ്റിന്റെ തുടക്കത്തിൽ തന്നെ അന്തിമ ലൈസൻസ് ചേർക്കുന്നതിന് അവർ വളരെ സൗകര്യപ്രദമായ മാർഗം ഉണ്ടാക്കി.