Rubriques tendance
#
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.
Si quelqu'un est aussi confus par les licences de logiciels que je l'étais, voici comment je les vois maintenant. Les licences de logiciels contrôlent ce que les gens peuvent faire avec votre code.
La licence MIT permet aux gens de faire n'importe quoi. Supposons que vous construisiez une bibliothèque de parsing JSON avec une licence MIT. Une startup peut prendre votre code, le modifier et le vendre comme partie de son service API payant sans vous donner quoi que ce soit en retour. Ils doivent juste garder votre avis de copyright dans les commentaires du code. React utilise MIT, donc Facebook aurait pu le rendre propriétaire, mais ils ont choisi de le garder ouvert. C'est la licence "faites ce que vous voulez".
La GPL oblige à partager. Imaginez que vous créez un framework web sous GPL. Si quelqu'un modifie votre framework pour ajouter de nouvelles fonctionnalités, il doit publier ces modifications sous GPL aussi. Ils ne peuvent pas vendre une version propriétaire. WordPress utilise GPL, donc tous les thèmes et plugins WordPress doivent aussi être GPL. Si vous construisez un CMS commercial sur WordPress, votre CMS entier devient GPL. Cela garde tout en open source.
Apache 2.0 gère mieux les brevets. Vous écrivez une bibliothèque d'apprentissage automatique et quelqu'un contribue un algorithme. Plus tard, ils essaient de poursuivre des utilisateurs pour violation de brevet sur cet algorithme. Avec la licence Apache, ils perdent automatiquement leurs droits d'utiliser votre bibliothèque. C'est une protection contre les trolls de brevets. Kubernetes utilise Apache 2.0 parce que les entreprises de cloud s'inquiètent des problèmes de brevets.
BSD est essentiellement MIT avec des mots différents. Vous créez une bibliothèque de mise en réseau sous BSD. Même règles que MIT, les gens peuvent faire ce qu'ils veulent. FreeBSD utilise cela, c'est pourquoi Apple a pu prendre le code BSD et l'intégrer dans macOS sans publier le code source de macOS. La plupart des développeurs utilisent maintenant MIT parce que c'est plus clair.
LGPL est GPL pour les bibliothèques. Vous construisez une bibliothèque de génération de PDF sous LGPL. Les entreprises peuvent utiliser votre bibliothèque dans leur logiciel propriétaire sans rendre toute leur application LGPL. Mais si elles modifient le code de votre bibliothèque, ces changements doivent être LGPL. Le lecteur multimédia VLC utilise LGPL afin que d'autres applications puissent inclure la lecture vidéo sans devenir GPL.
Propriétaire signifie que vous contrôlez tout. Vous construisez un moteur de base de données et le gardez propriétaire. Les entreprises vous paient des frais de licence pour l'utiliser. Elles ne peuvent pas voir le code source, ne peuvent pas le modifier, ne peuvent pas le redistribuer. Oracle Database fonctionne de cette manière. Vous gagnez de l'argent grâce aux licences mais limitez qui peut l'utiliser.
La double licence offre des options. Vous publiez une base de données sous les licences GPL et commerciale. Les projets open source utilisent la version GPL gratuitement. Les entreprises qui ne veulent pas des restrictions GPL paient pour la licence commerciale. MySQL fait cela. Les startups utilisent MySQL gratuit, les grandes entreprises achètent souvent des licences commerciales.
Le domaine public abandonne tous les droits. Vous créez une fonction de hachage et la mettez dans le domaine public. Quiconque peut en faire ce qu'il veut, sans restrictions, sans attribution requise. SQLite fait cela. Les agences gouvernementales adorent cela car il n'y a aucun risque légal.
Vous construisez une bibliothèque que vous voulez que tout le monde utilise ? Choisissez MIT. Vous voulez vous assurer que les améliorations reviennent à la communauté ? Utilisez GPL. Vous vous inquiétez des brevets dans les logiciels d'entreprise ? Optez pour Apache. Vous construisez une entreprise autour de votre code ? Restez propriétaire. Vous voulez la liberté maximale pour les utilisateurs ? Essayez le domaine public.
La clé est d'associer vos objectifs aux restrictions de licence. Ne copiez pas simplement ce que d'autres projets font sans comprendre pourquoi ils ont choisi cette licence.
22,17K
Meilleurs
Classement
Favoris