Kuinka valita GitHub-lisenssi ja miksi on tärkeää olla tekemättä väärää valintaa? GitHub on suurin palvelu IT-projektien yhteiskehitykseen ja niiden myöhempään isännöintiin. Tämän verkkopalvelun avulla rajaton määrä ihmisiä voi työskennellä projektin parissa yhtä aikaa sekä aivan mistä päin maailmaa tahansa. Myös GitHubissa on hallintajärjestelmä tai ohjaus, jonka avulla voit tarkastella ja hallita ehdottomasti kaikkia kehittäjien tekemiä muutoksia milloin tahansa, ja sen avulla voit myös palata tilaan, joka tapahtui ennen muutoksia.
Mutta yksinkertaisesti sanottuna, GitHub on niin kutsuttu sosiaalinen verkosto ohjelmoijille ja kehittäjille, josta voit löytää ja sitten harjoitella muiden kehittäjien koodeja. Voit myös tallentaa portfoliosi GitHubiin. Kaiken kaikkiaan GitHub on palvelu, joka sopii hyvin sekä aloitteleville kehittäjille että kokeneille ohjelmoijille. Tämän palvelun käyttäjillä voi kuitenkin joskus olla kysymyksiä lisenssin valinnasta, koska heidän valintansa siellä on varsin monipuolinen.
Mikä on GitHub-lisenssi
Lisenssi on erityinen asiakirja, joka on laadittu valtion lomakkeella ja jonka avulla voidaan harjoittaa tietyntyyppistä yritystoimintaa, joka vaatii välttämättä erityistä huomiota osapuolena. Mutta useimmiten käytännössä käytetään vain lyhennettyjä lisenssisopimuksia tai sopimuksia, joissa määrätään yksityisoikeudellisten lisenssien myöntämisestä. Yleisesti ottaen lisenssillä on vain yksi, mutta tärkein tavoite, se on sopimus velvoitteista ja oikeuksista lisenssinantajan ja lisenssinsaajan välillä. Nämä velvollisuudet ja oikeudet voivat olla mitä tahansa, mutta vain lain puitteissa. Silmiinpistävä esimerkki on, että lisenssinantaja voi vaatia tekijänoikeuden haltijan nimen pakollista ilmoittamista, kun lisenssinsaaja käyttää teosta. Tai esimerkiksi salliaksesi teoksen kopioimisen,mutta kieltää ehdottomasti sen muuttaminen. Tai päätelläkseen sellaisia vaatimuksia, että teos on tuotettava ehdottoman samoilla ehdoilla kuin alkuperäinen ja niin edelleen, esitetään paljon esimerkkejä erilaisista ehdoista.
Esimerkki yhdestä Apache-lisenssistä [/ caption]
Mutta emme saa myöskään unohtaa, että lisenssi suojaa lisenssinantajan lisäksi myös lisenssinsaajan oikeuksia. Koska siitä näet ja luet selkeästi kaikki teoksen käyttöehdot ja siksi hänen ei tarvitse pelätä, että lisenssinantaja yhtäkkiä vaatii rojalteja tai muita korvauksia teoksensa käytöstä.
Jos kieltäydyt teokseen liittyvästä lisenssistä, tekijänoikeuksia sovelletaan edelleen kyseisessä maassa voimassa olevien lakien mukaisesti. Yksinkertaisesti sanottuna lisenssin puuttuminen ei millään tavalla tarkoita, että muut kirjoittajat voivat käyttää tätä projektia miten haluavat. Kaikki, ehdottomasti, päinvastoin, koska ilman erityistä lisenssiä ohjelmoija ei millään tavalla luovu lain myöntämistä oikeuksista. On myös tärkeää aina muistaa, että lisenssi koskee kaikkia oikeuksia ja velvollisuuksia. Tällä suojataan teoksen omistajaa käyttäjien odotuksilta ja mahdollisilta takuilta. Loppujen lopuksi kukaan ei halua hänen koodinsa menevän oikeuteen millään tavalla.
Mikä on tekijänoikeus
Tekijänoikeus ilmestyy henkilölle vain, kun hän henkisen toiminnan tuloksena luo teoksen, joka on ainutlaatuinen, mutta samalla hyödyllinen, esimerkkinä voit ottaa saman ohjelman kirjoittamisen. Kun kaikki edellä mainitut on tehty, henkilöstä tulee tekijä ja nyt hänellä on ehdottomasti kaikki tekijänoikeudet tähän teokseen. On myös sanottava, että tekijänoikeudet ovat omistusoikeudellisia ja ei-omistusoikeuksia. Niiden ero on siinä, että omistusoikeudet voidaan siirtää kenelle tahansa, mutta omistusoikeudet eivät jää aina vain tekijälle missä tahansa tilanteessa. Onhan tekijänä oleminen luovuttamaton ja luovuttamaton oikeus.
Mihin avoimen lähdekoodin lisenssi on tarkoitettu?
Tämä on myös melko suosittu kysymys aloittelevien kehittäjien ja ohjelmoijien keskuudessa, koska he eivät yksinkertaisesti ymmärrä, miksi heidän pitäisi liittää projekteihinsä lisenssi, koska ilman sitä projekti voi myös helposti olla olemassa. Tämä ei kuitenkaan ole täysin totta, koska jos esimerkiksi joku aloitteleva kehittäjä kirjoitti jonkin melko tärkeän ja hyödyllisen koodin, mutta ei suojannut sitä lisenssillä, niin muilla käyttäjillä on kysymyksiä. Ja juuri tästä syystä, kun asiakkaat tulevat hänen luokseen ja haluavat käyttää tätä koodinpätkää kaupallisiin tarkoituksiinsa, he näkevät, ettei koodilla ole lisenssiä ja yksinkertaisesti kieltäytyvät sen. Tämä johtuu siitä, että yritykset eivät yksinkertaisesti käytä koodia ilman lisenssiä, koska he eivät tarvitse ongelmia lain ja asianajajien kanssa.
Ja siksi edes hyödyllisin ja kätevin projekti ei koskaan toteudu. Ja kehittäjän, joka halusi ottaa tämän koodinpätkän, on etsittävä ja käytettävä vaihtoehtoa tai kirjoitettava kokonaan uudelleen koodi, jonka aloittelija kehittäjä on jo aiemmin kirjoittanut. Tästä syystä olisi parasta varmistaa etukäteen, että ohjelmoija käyttää oikeaa ja mikä tärkeintä sopivaa lisenssiä. Tutustu GitHubiin yhdessä opetusvideossa 15 minuutissa: https://youtu.be/JfpCicDUMKc
Mikä GitHub-lisenssi on oikea tietyissä olosuhteissa – miten valita?
Tähän kysymykseen ei voi olla tarkkaa vastausta, koska lisenssin valinta riippuu vain projektin tavoitteista ja itse kehittäjän henkilökohtaisista mieltymyksistä ja toiveista. Kuten näet, GitHubissa on paljon erilaisia lisenssejä, ja mikä tärkeintä, ne ovat kaikki ilmaisia ja julkisesti saatavilla, mikä tarkoittaa, että jokainen ohjelmoija voi löytää
projektilleen juuri sopivan avoimen lähdekoodin lisenssin. Mutta mikä tärkeintä, emme saa unohtaa, että avoimen lähdekoodin lisenssi ei ole vain koodi ilman lisenssiä. GitHubin
lisenssiperhe [/ caption] Pienen tutkimuksen jälkeen voit kerätä kaikki avoimen lähdekoodin lisenssit ja jakaa ne kolmeen suureen pääryhmään:
- Voimakkaasti suojaava.
- Heikosti puolustava.
- Salliva.
Voimakkaasti suojaava
Voimakkaasti puolustavat lisenssit ovat useimmiten GPL:n muunnelmia. Nämä lisenssit edellyttävät välttämättä projektin lisensointia sekä lähdekoodien paljastamista huolimatta siitä, miten jotakin koodia tai projektia käytetään tai on jo käytetty.
Heikosti puolustava
Heikosti puolustavat lisenssit ovat useimmiten muunnelmia Lesser GPL:stä. Pääasiallinen ero salliviin lisensseihin on se, että ohjelma on yksinkertaisesti tarpeen lisensoida GPL-lisenssillä sekä toimittaa lähdekoodit ilman virheitä. Lisäksi, jos ohjelmoijan projekti sisältää kirjaston, eli staattisen linkin tai dynaamisen linkin LGPL-lisenssin alaisena, se on myös yhteensopiva minkä tahansa ohjelmoijan projektilisenssin kanssa.
Missä GitHubin käyttöluvan tyyppi on ilmoitettu [/ caption]
Salliva
Sallittavia lisenssejä on suuri määrä, joista suosituimpia ovat MIT, Apache 2.0 ja BSD. Pienillä muutoksilla nämä lisenssit voivat sallia koodin käytön sekä avoimen lähdekoodin projekteissa että kaupallisiin tarkoituksiin ja projekteihin. Mutta tässä tapauksessa on tärkeää muistaa, että on tarpeen ilmoittaa alkuperäisen ohjelman tekijä.
Muut suositut GitHub-lisenssit
Näiden kolmen lisenssiryhmän lisäksi on muitakin, esimerkiksi yksi hyödyllisimmistä lisensseistä on GPLv2 luokkapolkulaajennuksilla. Tätä lisenssiä voidaan myös käyttää sekä avoimen lähdekoodin projekteissa että kaupallisissa projekteissa ja tarkoituksiin. Sen suosituin esiintyminen on Oracle, tämä yritys käyttää GPLv2:ta classpath-laajennuksilla avoimen lähdekoodin projektiensa ja ratkaisujensa lisensoimiseen. Tämä lisenssi on varsin tärkeä ja hyödyllinen, sillä esimerkiksi tavalliset GPL-lisenssit eivät koskaan pysty käsittelemään tavukoodia. Toisin sanoen niillä on erityinen kuvaus käännös- ja linkitysprosessista, joka on täysin sopimaton muille tulkituille ohjelmointikielille, sellaisiin kieliin kuuluu suosituin Java-kieli.Tällaisia tapauksia varten julkaistiin erityinen GPLv2-lisenssi luokkapolkulaajennuksilla. Loppujen lopuksi siinä sanotaan erittäin selvästi ja selkeästi, että tällä lisenssillä julkaistua kirjastoa voidaan käyttää kaupallisiin projekteihin ja tarkoituksiin täysin millä tahansa muulla lisenssillä.
Mitä muuta sinun on tiedettävä
GitHub-lisensseistä .
Lisenssin lisääminen
Kun lopullinen lisenssi on vihdoin valittu, ei tarvitse muuta kuin lisätä se itse projektin juureen. Tämän toiminnon suorittamiseksi sinun on lisättävä valittu lisenssi projektin juureen itse projektin luomisen aikana tai yleensä milloin tahansa. Mutta tässäkin toiminnassa GitHub-verkkopalvelu onnistui pitämään huolta käyttäjistään ja he tekivät varsin kätevän tavan lisätä lopullinen lisenssi jo itse projektin alussa.
Valitettavasti tässä ei kuitenkaan vielä kaikki, koska kehittäjän tai ohjelmoijan on tarkistettava ehdottomasti kaikki riippuvuudet, joita hänen ideassaan tai projektissaan käytettiin. Eli vaikka yksi riippuvuuksista vapautettaisiin GPL-lisenssin alaisuudessa, koko kehittäjän projektin on ehdottomasti oltava GPL-yhteensopiva. Tällaiseen varmennukseen käytetään yleensä tarkoitettuja aiemmin luotuja ohjelmia tai työkaluja. Tätä varten on esimerkiksi työkalu https://github.com/pivotal/LicenseFinder:
Voidaan sanoa, että lisensointi on melko aikaa vievä tehtävä, mutta samalla välttämätön toimenpide projektin tai ohjelmoijan idean elinkaaren kannalta. Oikean lisenssin valitsemiseksi joudut valitettavasti käyttämään paljon aikaa, mutta se on sen arvoista, jotta projekti onnistuisi. On parasta asettaa lisenssin valinta etusijalle ohjelmaa kirjoitettaessa, koska kun olet tehnyt tämän heti alussa, voit ohjata kaikki ponnistelusi oikeaan suuntaan ja kirjoittaa ohjelman, joka on onnistunut ja kätevä useimmille käyttäjiä.