
Code-Garage #38 - Quel est l'intérêt d'une licence logicielle ?
Durée: 7m26s
Date de sortie: 01/11/2022
Vous savez, le fichier appelé sobrement "licence" que vous trouvez dans tous les dépôts sur GitHub ? Savez-vous son utilité et sa portée juridique ? Découvrons ça ensemble aujourd'hui !
Notes de l'épisode :
- Article d'origine : https://code-garage.fr/blog/qu-est-ce-qu-une-licence-logicielle/
- Open-Source : https://opensource.org/osd
- Logiciel libre : https://www.gnu.org/philosophy/free-sw.html.en
- MIT: https://opensource.org/licenses/MIT
- GPL : https://www.gnu.org/licenses/gpl-3.0.en.html
- BSD : https://opensource.org/licenses/BSD-3-Clause
- Creative Commons : https://creativecommons.org/licenses/
Salut et bienvenue dans ce nouvel épisode du podcast de Code Garage, je m'appelle Nicolas
Brondin Bernard et aujourd'hui on va parler du concept de licence logicielle.
Dans un épisode précédent, on a évoqué la propriété intellectuelle du code, qui
elle appartient selon le cadre de création du logiciel et les quelques cas spécia à
connaître.
Donc si jamais vous ne l'avez pas écouté, je vous conseille de retourner, je crois ces
deux épisodes en arrière.
Mais aujourd'hui, on va revenir sur un autre aspect légal du code informatique en abordant
le sujet des licences logicielles.
Alors qu'est-ce qu'on peut faire avec un logiciel ? C'est justement la grande question
à laquelle répond une licence logicielle parce qu'en réalité, un logiciel, c'est un objet
légal assez complexe, c'est un bien immatériel qui peut souvent être copié, modifié, échangé,
utilisé, sans qu'un réel contrôle soit fait dessus.
On essaye évidemment de les contrôler, de mettre justement des blocages, des validations
et choses comme ça, mais ce n'est pas toujours facile et surtout, il faut quand même une
protection juridique derrière.
Donc au final, est-ce qu'on peut tout faire avec un logiciel sachant que c'est difficile
à contrôler ? Non, en tout cas, ce n'est vraiment pas conseillé et tout ce que vous
avez le droit de faire ou non avec un logiciel est justement défini par cette fameuse licence.
Donc une licence logicielle, ça va en général définir les droits ou les restrictions autour
de plusieurs grandes thématiques, de plusieurs champs d'actions.
D'abord, il y a la session ou non, mais de la propriété intellectuelle.
Donc par exemple, pour le domaine public, on va céder la propriété intellectuelle,
c'est-à-dire tout le droit du code, du logiciel, le droit d'utilisation, le droit
de l'image, le droit de la marque, etc.
Et dans la majorité des cas, hormis le domaine public, la propriété intellectuelle va rester
au créateur ou à la créatrice du logiciel, du code, etc.
Mais la licence logicielle, ça va aussi définir les droits d'utilisation, donc d'utilisation
directe, manipulation du logiciel, mais aussi le droit d'affichage, ce qu'on a le droit
d'afficher le code source, est-ce qu'on a le droit d'afficher ou de parler du logiciel
dans un livre par exemple, etc.
Le droit à la copie du code ou du logiciel au complet, le droit à la modification, le
droit de distribution et même le droit de créer une sous-lissance.
Qu'est-ce qu'une sous-lissance ? Eh bien tout simplement, ça va être une deuxième
licence qui va venir englober la première pour par exemple redistribuer le logiciel
mais avec des droits différents pour les utilisateurs finaux.
Alors il existe des dizaines de licences logicielles qui spécifient très précisément
les détails des droits et des devoirs, on va dire des utilisateurs, comme justement
piocher dans ceux que je viens de citer.
Donc je ne vais pas vous lister toutes les licences possibles qui existent, etc.
C'est inutile et puis ce serait beaucoup trop long.
Mais par contre il existe quand même deux grandes familles de licences assez distinctes
qu'on va appeler des licences ouvertes et des licences propriétaires.
On va parler aussi de licences fermées.
Donc comme le nom l'indique, une licence propriétaire, ça restreint l'utilisation
d'un logiciel selon des conditions commerciales décidées par le propriétaire de la licence.
C'est le type de licence qu'on va retrouver dans tous les logiciels que vous devez payer
pour acheter, enfin pour accéder quoi, que ce soit un paiement unique, un paiement par
abonnement, etc.
D'ailleurs quand on parle de payer pour le logiciel, on parle d'achat de licence.
Mais ça concerne aussi les licences qui donnent le droit à un accès restreint ou temporaire
au logiciel.
Là on parle de freeware, shareware, freamium, etc.
La majorité du temps, ce genre de licence, ça ne vous laisse ni accéder au code source,
ni la possibilité de le redistribuer, copier, modifier, mais simplement d'utiliser le
logiciel tel qu'il a été créé.
Ensuite, on a les licences ouvertes.
Donc on parle généralement des licences ouvertes avec l'acronyme FOSS, F O 2 S, pour
Free and Open Source Software.
Donc ce sont globalement des licences qui en plus de donner accès au code source, permettent
la modification et même le droit de redistribuer le logiciel au sein de solutions, même parfois
payantes.
C'est en se basant sur ce type de licence qu'on pourra qualifier un logiciel d'Open
Source ou parfois de libre.
Bon, si jamais la différence entre Open Source et libre est floue, c'est deux philosophies
qui sont bien différentes et je vous mettrai dans les notes de cet épisode deux liens
pour aller voir un petit peu ce que sont les manifeste de l'Open Source et du libre
pour en apprendre un petit peu plus.
Alors on a des licences ouvertes qui sont plus connues que d'autres et plus fréquemment
utilisées que d'autres.
On a par exemple la licence MIT, la licence GPL, la licence BSD, la licence Creative Commons.
Donc voilà, tout ça, ce sont des licences avec des droits pour les utilisateurs très
différents, enfin qui se ressemblent puisque ce sont toutes des licences ouvertes mais
qui ont des droits quand même différents.
Et donc je vous mettrai aussi les liens vers chacune de ces licences si vous voulez en
apprendre plus.
Alors est-ce qu'on peut créer une licence soi-même ?
Bah oui, en réalité, c'est possible, rien ne vous en empêche, mais ce n'est pas vraiment
recommandé.
Une licence, c'est en fait un ensemble de droits et de conditions donnés à l'utilisateur
d'un logiciel mais qui est formulé dans un texte légal et lié au logiciel en question.
Et donc comme n'importe quel texte légal, le contenu, la tournure, le moindre petit
détail peut être interprété et détourné en cas de litige avec la justice.
Donc c'est pour ça qu'il est en général indispensable de le faire rédiger par une
personne qui a les compétences légales requises et dans le cas des licences en général les
compétences légales et en plus des compétences éventuellement au niveau du logiciel.
En fait, le mieux c'est de réutiliser une licence qui a déjà fait ses preuves et
dont les tenants et les aboutissants sont déjà connus d'à peu près tout le monde.
Alors si on devait conclure, je pourrais dire qu'une licence logicielle, c'est un
document juridique qui liste les droits et les contraintes de l'utilisateur d'un logiciel.
La licence, ça peut être ouverte, c'est le cas des logiciels open source ou libre,
ou être propriétaire, fermé et souvent payante.
Ne pas respecter les règles établies dans la licence d'un logiciel, ça expose
l'utilisateur, la personne qui enfreint ses règles à des sanctions juridiques et pénales.
Voilà, j'espère que cet épisode vous aura éclairé, vous aura donné quelques
réponses à vos questions. Moi je vous donne rendez-vous la semaine prochaine pour un nouvel
épisode de Code Garage ou directement sur la plateforme de Code Garage.
Donc, qu'est-ce que c'est ? Code Garage, c'est une plateforme de formation pour les développeurs et
les développeurs, ce qui veulent continuer à se former, qui veulent avoir accès à des cours
complets et de qualité, tout ça pour 19,99€ par mois et vous avez accès à tout,
au cours, aux exercices, aux projets, etc. Sur ce, je vous donne rendez-vous à la semaine prochaine. Ciao !
Les infos glanées
Code-Garage
Découvrons ensemble des sujets passionnants autour du métier de dev et de la programmation en général !
Tags
Code-Garage #39 - La différence entre bas-niveau et haut-niveau en programmation