Open Source : quel est son intérêt dans le monde du dev ?

2022-12-08
 Ah, l’Open source ; cette porte ouverte vers plus de confiance dans les logiciels. Heureusement que ça existe quand même…. Euh, attends, on a peut-être été un peu vite là. Passons le clavier à notre formateur JB, il va tout t’expliquer.

🤔 Déjà, l’Open Source, c’est quoi ?

Le mot « source » fait référence au “code source” ; qui est la production d’un développeur, c’est ce qui compose un logiciel. Et « Open » veut simplement dire « disponible ». Un logiciel Open source est donc un ensemble de codes qui peut être utilisé et modifié par n’importe qui. 

🙃 Mais du coup, un “Logiciel Open Source”, c’est un “Logiciel Libre” ?

Et non. Un Logiciel Libre est gratuit, et donc utilisable par tout le monde, on te l’accorde, mais ça ne veut pas dire que son code est disponible. Il faut bien faire la différence entre “logiciel” et “code”.

Il existe même plusieurs formes de logiciels libres, comme : 

  • Freeware : logiciel entièrement gratuit. Son utilisation reste limitée par son type de licence.
  • ShareWare : logiciel gratuit, mais avec des restrictions temporelles ou de fonctionnalités. Pour lever les restrictions, il faut acheter le logiciel.

Et si un logiciel n’est pas libre, on appelle ça un “Logiciel Propriétaire”. Dans la majorité des cas, il sera payant et son code ne sera pas disponible.

📚 Une histoire de licences

Il existe tout un tas de licences pour les logiciels, avec chacune leurs spécificités :

  • Licence payante : c’est selon le schéma financier de l’entreprise (nominative, flottante, ou encore fixe).
  • Shareware : gratuite, mais limitée dans le temps, puis devient payante, on retombe alors dans la licence payante. Oui, on en a parlé juste au-dessus, c’était pour voir si tu suivais. 😉
  • Licence libre : elle donne le plus souvent les quatre droits suivants :
  1. Usage gratuit du logiciel.
  2. Autorisation de modification du logiciel.
  3. Redistribution, potentiellement commerciale, du logiciel.
  4. Étude du fonctionnement du logiciel.

😌 Open Source ; un gage de confiance

Si tout le monde a accès au code d’un logiciel ; tout le monde peut donc vérifier s’il utilise les bonnes pratiques en termes de sécurité informatique, respect des données personnelles…  On peut y voir une réelle volonté de transparence, ce qui donne confiance et rassure sur le bon fonctionnement du logiciel en question.

Pour te donner un exemple ; l’application pour smartphone TousAntiCovid a ouvert ses codes sources (android) pour prouver la sécurité de son utilisation. Et des modifications ont même été faites par la communauté pour sécuriser davantage le logiciel.

codes sources
codes sources ouverts

Mais, comment quelque chose d’ouvert peut être plus sécurisé ?

Sortons du domaine de la tech quelques secondes, et prenons l’exemple d’un cadenas. Son rôle, c’est de sécuriser l’accès à une pièce, un bâtiment, des documents…

Si personne ne sait comment le cadenas est fait (on peut comparer ça à un “closed source” pour en revenir à la tech), on ne peut alors avoir confiance qu’en la réputation du fabricant. Ce qui pourrait donner envie à des personnes soucieuses de la sécurité du cadenas en question de le crocheter, pour vérifier son efficacité. Si elles y arrivent, elles peuvent alors remonter les failles au fabricant, et lui seul pourra les réparer. Mais soyons honnête deux secondes, les choses ne se passent généralement pas comme ça ; quand une faille est trouvée, les gens ont tendance à l’exploiter. Et des milliers de vidéos sur internet montrant comment ouvrir des cadenas de grandes marques de façon simple sont là pour nous le prouver.

Par contre, si le fabricant de cadenas montre comment il a mis en place ses mesures de sécurités pour empêcher le crochetage de sa serrure, n’importe qui peut alors s’assurer du bon fonctionnement du cadenas, voire l’améliorer lui-même, comme ça a été le cas avec TousAntiCovid.