Qu'un programme soit open-source ou non ne concerne pas uniquement les développeurs, cela compte aussi pour les utilisateurs. Les licences de logiciel à code source ouvert offrent aux utilisateurs des libertés qu’ils n’auraient pas autrement.
La définition de l'open source
Si un programme est open-source, son code source est librement disponible pour ses utilisateurs. Ses utilisateurs - et tous les autres utilisateurs - ont la possibilité d’extraire ce code source, de le modifier et de distribuer leurs propres versions du programme. Les utilisateurs ont également la possibilité de distribuer autant de copies du programme original qu'ils le souhaitent. Tout le monde peut utiliser le programme pour n'importe quel but. il n'y a pas de frais de licence ou d'autres restrictions sur le logiciel. L'OSI a une définition plus détaillée du terme «open source» sur son site web.
Par exemple, Ubuntu Linux est un système d’exploitation à source ouverte. Vous pouvez télécharger Ubuntu, créer autant de copies que vous le souhaitez et les donner à vos amis. Vous pouvez installer Ubuntu sur un nombre illimité de vos ordinateurs. Vous pouvez créer des remixes du disque d'installation Ubuntu et les distribuer. Si vous étiez particulièrement motivé, vous pouvez télécharger le code source d'un programme dans Ubuntu et le modifier pour créer votre propre version personnalisée de ce programme - ou d'Ubuntu lui-même. Les licences Open Source vous permettent toutes de le faire, tandis que les licences Open Source vous imposent des restrictions.
Firefox, Chrome, OpenOffice, Linux et Android sont des exemples populaires de logiciels à code source ouvert, tandis que Microsoft Windows est probablement le logiciel de code source le plus populaire sur le marché.
Logiciel Open Source vs Logiciel Libre
Les applications open source sont généralement disponibles gratuitement - même si rien n’empêche le développeur de facturer des copies du logiciel si elles permettent une redistribution ultérieure de l’application et de son code source.
Cependant, ce n’est pas ce à quoi «logiciel libre» fait référence. Le terme «libre» dans le logiciel libre signifie «libre comme liberté» et non «libre comme bière». Le camp du logiciel libre, dirigé par Richard Stallman et la Free Software Foundation, est axé sur l'éthique et la morale de l'utilisation d'un logiciel qui peut être contrôlée et modifiée par l'utilisateur. En d’autres termes, le camp du logiciel libre se concentre sur les libertés des utilisateurs.
Richard Stallman. Image de Fripog sur Flickr.
Le mouvement des logiciels à code source ouvert a été créé pour se concentrer sur des raisons plus pragmatiques de choisir ce type de logiciel. Les défenseurs des logiciels à source ouverte souhaitaient se concentrer sur les avantages pratiques de l’utilisation de logiciels à source ouverte qui plairaient davantage aux entreprises que sur l’éthique et la morale.
En fin de compte, les défenseurs du logiciel libre et du logiciel libre développent le même type de logiciel, mais ils ne sont pas d’accord sur la messagerie.
Types de Licences
Il existe de nombreuses licences différentes utilisées par les projets open source, selon ce que les développeurs préfèrent pour leur programme.
La GPL, ou licence publique générale GNU, est largement utilisée par de nombreux projets open source, tels que Linux. En plus de toutes les définitions ci-dessus de l'open source, les termes de la GPL précisent que, si quelqu'un modifie un programme open source et distribue un travail dérivé, il doit également distribuer le code source de son travail dérivé. En d'autres termes, personne ne peut prendre du code open-source et en créer un programme à source fermée - il doit renvoyer ses modifications à la communauté. Microsoft a qualifié la GPL de «virus» pour cette raison, car elle oblige les programmes intégrant du code GPL à publier leur propre code source. Bien entendu, les développeurs d’un programme peuvent choisir de ne pas utiliser le code GPL si cela pose problème.
Avantages pour les utilisateurs
Ce ne sont pas toutes des choses sèches et sans importance qui ne comptent que pour les développeurs. L'avantage le plus évident des logiciels à code source ouvert est qu'ils peuvent être obtenus gratuitement. L'exemple d'Ubuntu Linux ci-dessus le montre clairement: contrairement à Windows, vous pouvez installer ou distribuer autant de copies d'Ubuntu que vous le souhaitez, sans aucune restriction. Cela peut être un serveur particulièrement utile - si vous configurez un serveur, vous pouvez simplement installer Linux dessus. Si vous configurez un cluster de serveurs virtualisé, vous pouvez facilement dupliquer un seul serveur Ubuntu. Vous n'avez pas à vous soucier des licences et du nombre d'instances Linux que vous êtes autorisé à exécuter.
Un programme open source est également plus flexible.Par exemple, la nouvelle interface de Windows 8 a déçu de nombreux utilisateurs Windows de longue date. Windows étant une source fermée, aucun utilisateur Windows ne peut modifier l’interface Windows 7 et la faire fonctionner correctement sous Windows 8. Certains utilisateurs de Windows essaient, mais c’est un processus fastidieux de reverse engineering et de modification de fichiers binaires. )
Les logiciels libres permettent également aux développeurs de «se tenir sur les épaules de géants» et de créer leur propre logiciel. Soyez témoin d'Android et de Chrome OS, qui sont des systèmes d'exploitation basés sur Linux et d'autres logiciels à code source ouvert. Le noyau d’OS X d’Apple - et donc d’iOS - reposait lui aussi sur du code source ouvert. Valve travaille avec acharnement sur le portage de sa plate-forme de jeu Steam sur Linux, ce qui leur permettrait de créer leur propre matériel et de contrôler leur propre destin d’une manière qui n’est pas possible sous Windows.
Ce n’est pas une description exhaustive - des livres entiers ont été écrits sur ce sujet - mais vous devriez maintenant avoir une meilleure idée de ce qu’est un logiciel open-source et de son utilité.