Qu'est-ce qu'un logiciel Open Source et pourquoi est-ce important?

Topic : Technologie   | Publié il y a 4 mois

Les geeks décrivent souvent les programmes comme étant des logiciels «open source» ou «logiciels libres». Si vous vous demandez exactement ce que signifient ces termes et pourquoi ils sont importants, lisez la suite. (Non, «logiciel libre» ne signifie pas simplement que vous pouvez le télécharger gratuitement.)

Qu'un programme soit open-source ou non ne concerne pas uniquement les développeurs, il importe également pour les utilisateurs. Les licences de logiciel à code source ouvert offrent aux utilisateurs des libertés qu’ils n’auraient pas autrement.

Qu'est-ce que l'Open Source ?

Open source décrit un logiciel où le code source est disponible pour que tout le monde puisse l'afficher, l'utiliser, le modifier, puis le partager. Rendre le code source accessible au public permet à d’autres d’en tirer parti et d’en tirer des enseignements, ce qui permet une large collaboration de la part de personnes du monde entier.

Il se trouve dans votre téléphone, votre voiture, votre télévision et vos ampoules connectées au wifi. Les composants Open Source permettent aux ingénieurs de s’appuyer sur les travaux d’une communauté mondiale de développeurs pour proposer de meilleurs produits plus rapidement et à moindre coût. Linux, le serveur Web Apache, Android, Firefox et WordPress sont des exemples de projets open source dont vous avez peut-être entendu parler.

L'opposé du logiciel Open Source est le logiciel Closed Source, qui possède une licence qui restreint les utilisateurs et en empêche le code source.

Par exemple, Ubuntu Linux est un système d'exploitation Open Source. 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.

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 l’eau». 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 des logiciels libres est axé sur les libertés des utilisateurs.

Le mouvement des logiciels Open Source a été créé pour se concentrer sur des raisons plus pragmatiques de choisir ce type de logiciel. Les partisans de l’open source souhaitaient mettre l’accent sur les avantages pratiques de l’utilisation de logiciels open source 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 utiliser le code source ouvert pour créer un programme à code source fermé. Il doit ensuite communiquer 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 un problème.

Certaines autres licences, telles que la licence BSD, imposent moins de restrictions aux développeurs. Si un programme est sous licence BSD, tout le monde peut incorporer le code source du programme dans un autre programme. Ils n’ont pas à divulguer leurs changements à la communauté. Certains pensent que cette licence est encore plus "gratuite" que la licence GPL, car elle donne aux développeurs la liberté d'incorporer le code dans leurs propres programmes à code source fermé, alors que d'autres le considèrent comme moins "gratuit" car cela leur enlève des droits. des utilisateurs finaux du programme dérivé.

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 Windows essaient, mais c’est un processus fastidieux de reverse engineering et de modification de fichiers binaires. )

Lorsqu'un bureau Linux comme Ubuntu introduit une nouvelle interface de bureau dont certains utilisateurs ne sont pas fans, les utilisateurs disposent de plus d'options. Par exemple, lors de la sortie de GNOME 3, de nombreux utilisateurs de postes de travail Linux étaient également désactivés. Certains ont pris le code avec l'ancienne version, GNOME 2, et l'ont modifié pour le faire fonctionner sur les dernières distributions Linux - c'est MATE. Certains ont pris le code sur GNOME 3 et l’ont modifié pour le faire fonctionner de la manière qu’ils préféraient - c’est Cinnamon. Certains utilisateurs viennent de passer à des postes de travail alternatifs existants. Si Windows était à code source ouvert, les utilisateurs de Windows 8 auraient plus de choix et de flexibilité. Jetez un coup d’œil à CyanogenMod, une distribution populaire d’Android axée sur la communauté, qui ajoute des fonctionnalités et prend en charge de nouveaux appareils.

Les logiciels à code source ouvert 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 - a également été construit sur du code open source. La société travaille furieusement sur le portage de sa plate-forme de jeu Steam sous Linux, car cela 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.