Qu'est-ce qu'un logiciel open source ?

Un logiciel open source est un modèle de développement décentralisé qui distribue le code source publiquement pour une collaboration ouverte et une production par des pairs, appelée « la méthode open source ».

Homme travaillant sur un ordinateur de bureau
Logiciels open source versus logiciels à source fermée

La méthode open source est une forme de pensée et de collaboration au sein de la communauté open source. Cette philosophie repose sur la liberté intellectuelle et sur des principes fondamentaux : transparence, collaboration, distribution, inclusion et communauté. L'échange d'idées et de logiciels développés par les communautés est à l'origine de progrès créatifs, scientifiques et technologiques dans des secteurs tels que l'éducation, l'administration, le droit, la santé et la fabrication. Ce mouvement a permis à une communauté mondiale de collaborer, de partager et d'atteindre des  objectifs individuels et collectifs grâce au code source.

Les logiciels open source sont des logiciels collaboratifs qui reposent sur la production communautaire et l'examen par les pairs pour utiliser, modifier et partager le code source entre eux. Les développeurs partagent des informations, des idées et du code pour créer des solutions logicielles plus innovantes, tant collectivement qu'individuellement. Ce logiciel évolutif et flexible permet à toute personne disposant du code source de  le modifier, de l'améliorer et de le redistribuer pour améliorer la réutilisation et l'accessibilité. Les logiciels open source fonctionnent selon les principes sous-jacents de la production par les pairs et de la collaboration de masse, créant ainsi un développement logiciel plus durable pour les utilisateurs finaux.  

Les logiciels à source fermée  sont des logiciels propriétaires  qui ne sont pas distribués au public. Ces logiciels sont chiffrés, de sorte que seuls les auteurs d'origine qui ont créé le code ont exclusivement le droit de copier, modifier, mettre à jour et éditer légalement le code source. Les logiciels fermés imposent des restrictions sur ce que l'utilisateur final peut faire avec l'application, empêchant les utilisateurs de modifier, partager, copier ou republier le code source.

Outre les sources ouvertes et fermées, il existe des logiciels libres/open source (FOSS, Free/Open Source Software) qui permettent aux utilisateurs d'accéder aux logiciels dans une perspective plus philosophique. Dans le cadre FOSS, il existe la Free Software Foundation (FSF) qui protège les libertés des utilisateurs, et l'Open Source Initiative (OSI) qui garantit les valeurs techniques de logiciels fiables. Il existe une grande variété de licences de logiciels libres qui peuvent être utilisés, modifiés et vendus commercialement, notamment les licences GPL, LGPL et BSD.

Parmi les licences de logiciels open source les plus connus figurent

  • MIT License©, une licence de logiciel libre qui permet aux utilisateurs de modifier le code originel avec très peu de restrictions. 
  • GNU General Public© (GPL) : il s'agit d'une série de licences de logiciels libres qui garantissent aux utilisateurs finaux la possibilité d'exécuter, d'étudier, de partager et de modifier des logiciels. 
  • Apache® : la licence Apache 2.0 est une licence de logiciel libre qui permet aux utilisateurs d'utiliser, de modifier et de distribuer le logiciel dans n'importe quel but. 
  • BSD : cette licence comporte moins de restrictions pour les développeurs, permettant aux utilisateurs d'utiliser et de modifier le code sans avoir à partager les modifications.
  • MySQL™ : MySQL est un système de gestion de base de données open source avec deux licences distinctes, à savoir l'édition standard MySQL et l'édition d'entreprise MySQL.
  • SUSE : SUSE Linux repose sur un noyau Linux open source et distribué avec des logiciels système et d'application.
  • Ubuntu® : Ubuntu est une distribution Linux composée de logiciels libres et open source publiés dans les domaines des ordinateurs de bureau, du cloud et de l'IoT.
Projets open source

L'histoire d'Unix® et de Linux

Le développement Unix a commencé en 1969 chez AT&T® Bell Labs en tant que produit propriétaire mais pouvant être concédé sous licence.  Pendant les dix années suivantes, le développement d'Unix a connu de multiples versions, dont la version 6, qui est devenue la première disponible en dehors de Bell Labs.

Ce code a rapidement attiré l'attention de la communauté universitaire en raison de la nature du nouveau langage. L'Université de Californie à Berkley a commencé à développer son propre Unix et a rapidement développé une version universitaire appelée Berkley Software Distribution (licence BSD). Simultanément, AT&T a fait évoluer sa version d'Unix en System V. Ces deux versions ont finalement fusionné pour créer la septième édition unifiée d'Unix et ont ensuite évolué vers des programmes tels que Sun Solaris, FreeBSD, NetBSD et OpenBSD.

En 1984, Richard Stallman a créé un clone libre d'Unix appelé GNU (GNU's Not Unix). Cette version pouvait être utilisée, modifiée et redistribuée librement selon les besoins. En 1991, Linus Torvalds a créé le noyau du système d'exploitation appelé « Linux » ou noyau Linux. Combiné aux composants FSF et BSD, Linux est devenu un système d'exploitation à part entière ; il fonctionne aujourd'hui sur plusieurs architectures et a été adopté ou est pris en charge par des fournisseurs d'Unix d'ancienne génération.


L'open source dans les entreprises

L'open source d'entreprise est plus que le simple open source : c'est l'intégration d'une seule bibliothèque open source sous licence permissive qui est exécutée sur l'open source. Pour qu'un produit soit considéré comme un produit open source d'entreprise, il doit être testé, ajusté et examiné, afin d'identifier les failles de sécurité potentielles par une équipe de sécurité qui peut répondre aux problèmes de sécurité. L'open source d'entreprise offre également des fonctions pratiques, telles que l'authentification unique (SSO) et l'intégration avec les plateformes SSO et la gestion des répertoires.

Les environnements informatiques d'entreprise nécessitent des investissements et une planification massifs, ce qui rend souvent les logiciels obsolètes au moment où les applications sont installées. Généralement, ces applications nécessitent aussi une formation et des certifications supplémentaires qui sont indiquées dans les contrats de service. Cependant, les logiciels open source d'entreprise ont un cycle de vie prévisible avec des informations et des composants qui évoluent à des vitesses différentes. Le logiciel a une longue durée de vie avec des applications importantes. Par exemple, Red Hat® Enterprise Linux a un cycle de vie de 10 ans.   

De nombreux entreprises et utilisateurs individuels préfèrent utiliser des logiciels open source plutôt que des logiciels propriétaires ou commerciaux en raison de leur polyvalence, de leur sécurité, de leur évolution, de leur communauté, de leur formation et de leur stabilité.  Les avantages de l'utilisation d'un code source ouvert sont le coût et les économies, la flexibilité de la personnalisation du code et la liberté de tirer parti d'une communauté plutôt que d'un seul fournisseur. L'open source présente certains inconvénients, notamment, un support médiocre, une documentation insuffisante, une complexité excessive, une publicité intrusive et des vulnérabilités.

Ceux qui ont encore besoin de logiciels propriétaires font face aux inconvénients des l'obsolescence des logiciels, aux produits minimalistes, à des coûts plus élevés ou inattendus, aux accords de licence confus et à la dépendance vis à vis d'un seul fournisseur.  Toutefois, certaines entreprises sont attirées par le format du fournisseur unique parce qu'il offre un point d'achat unique, des produits d'entreprise évolutifs, une interface professionnelle, des mises à jour régulières, l'intégration avec des applications et des produits et ne nécessite pas de programmation. 


Histoire et évolution

Engagement en faveur de l'open source

La plupart des entreprises, comme IBM, se sont engagées en faveur de l'open source pour soutenir les communautés émergentes, contribuer au développement de licences ou défendre la gouvernance et les normes.

Infrastructures de blockchain flexibles

Découvrez-en davantage sur Hyperledger Fabric, l'infrastructure de blockchain qui aide les innovateurs à transformer leur entreprise à l'échelle mondiale.


Solutions

Solutions de serveurs Linux

Intégrez Linux à votre infrastructure IT sur site et dans le cloud pour une flexibilité et un contrôle accrus.


Linux on IBM Z

Le système d'exploitation Linux sur la plateforme mainframe IBM Z inclut la confidentialité des données et la cybersécurité sur un multicloud hybride.


IBM LinuxONE

Découvrez le logiciel serveur open source doté d'une sécurité et d'une évolutivité optimales pour les applications critiques.


Enterprise Linux on Power Systems™

Gérez des volumes importants de données pour les charges de travail modernes avec ces serveurs d'exploitation et l'infrastructure ouverte.


Système d'exploitation IBM AIX

Bénéficiez d'un système d'exploitation basé sur des normes évolutif doté de paramètres de sécurité sécurisés, d'une disponibilité inégalée et d'une protection garantie des investissements.


Applications Red Hat sur le cloud IBM

Avec Red Hat, vous pouvez générer et développer des applications à déployer sur un cloud public ou privé IBM.