Populære emner
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Hvis noen er like forvirret over programvarelisenser som jeg var, her er hvordan jeg ser dem nå. Programvarelisenser styrer hva folk kan gjøre med koden din.
MIT-lisens lar folk gjøre hva som helst. La oss si at du bygger et JSON-parsingsbibliotek med MIT-lisens. En oppstart kan ta koden din, endre den og selge den som en del av deres betalte API-tjeneste uten å gi deg noe tilbake. De trenger bare å beholde opphavsrettsvarselet ditt i kodekommentarene. React bruker MIT, så Facebook kunne ha gjort det proprietært, men de valgte å holde det åpent. Dette er "gjør hva du vil"-lisensen.
GPL-styrker som deler. Tenk deg at du lager et nettrammeverk under GPL. Hvis noen endrer rammeverket ditt for å legge til nye funksjoner, må de også gi ut disse endringene som GPL. De kan ikke selge en proprietær versjon. WordPress bruker GPL, så alle WordPress-temaer og plugins må også være GPL. Hvis du bygger et kommersielt CMS på toppen av WordPress, blir hele CMS-et ditt GPL. Dette holder alt åpen kildekode.
Apache 2.0 håndterer patenter bedre. Du skriver et maskinlæringsbibliotek og noen bidrar med en algoritme. Senere prøver de å saksøke brukere for patentbrudd på den algoritmen. Med Apache-lisens mister de automatisk rettighetene til å bruke biblioteket ditt. Det er beskyttelse mot patenttroll. Kubernetes bruker Apache 2.0 fordi skyselskaper bekymrer seg for patentproblemer.
BSD er i utgangspunktet MIT med forskjellige ord. Du oppretter et nettverksbibliotek under BSD. Samme regler som MIT, folk kan gjøre hva de vil. FreeBSD bruker dette, og det er grunnen til at Apple kan ta BSD-kode og legge den i macOS uten å gi ut macOS-kildekoden. De fleste utviklere bruker bare MIT nå fordi det er tydeligere.
LGPL er GPL for biblioteker. Du bygger et PDF-genereringsbibliotek under LGPL. Bedrifter kan bruke biblioteket ditt i sin proprietære programvare uten å gjøre hele appen LGPL. Men hvis de endrer selve bibliotekkoden din, må disse endringene være LGPL. VLC mediespiller bruker LGPL slik at andre apper kan inkludere videoavspilling uten å bli GPL.
Proprietær betyr at du kontrollerer alt. Du bygger en databasemotor og holder den proprietær. Bedrifter betaler deg lisensavgifter for å bruke den. De kan ikke se kildekoden, kan ikke endre den, kan ikke distribuere den på nytt. Oracle Database fungerer på denne måten. Du tjener penger på lisensiering, men begrenser hvem som kan bruke det.
Dobbel lisensiering gir alternativer. Du frigir en database under både GPL-lisenser og kommersielle lisenser. Åpen kildekode-prosjekter bruker GPL-versjonen gratis. Selskaper som ikke vil ha GPL-restriksjoner betaler for den kommersielle lisensen. MySQL gjør dette. Startups bruker gratis MySQL, store selskaper kjøper ofte kommersielle lisenser.
Public domain gir fra seg alle rettigheter. Du oppretter en hash-funksjon og setter den i det offentlige domene. Hvem som helst kan gjøre hva som helst med det, ingen begrensninger, ingen attribusjon kreves. SQLite gjør dette. Offentlige etater elsker det fordi det er null juridisk risiko.
Bygger du et bibliotek du vil at alle skal bruke? Velg MIT. Vil du sikre at forbedringer kommer tilbake til fellesskapet? Bruk GPL. Bekymret for patenter i bedriftsprogramvare? Gå med Apache. Bygge en virksomhet rundt koden din? Hold deg proprietær. Vil du ha maksimal frihet for brukerne? Prøv offentlig domene.
Nøkkelen er å matche målene dine med lisensbegrensninger. Ikke bare kopier hva andre prosjekter gjør uten å forstå hvorfor de valgte den lisensen.
22,39K
Topp
Rangering
Favoritter