Qu'est-ce que l'open source ?

L'open source est un modèle de production décentralisé qui permet à chacun de modifier et de partager la technologie, parce que sa conception est accessible au public. Le terme est né dans le contexte du développement de logiciels, pour indiquer que le logiciel satisfait à certains critères de distribution gratuite. Aujourd'hui, le terme open source way désigne un ensemble de valeurs plus large qui repose sur les principes de libre-échange d'informations, de prototypage rapide et de développement collaboratif. N'importe qui peut apporter de nouvelles idées et améliorer davantage la technologie afin qu'elle évolue de manière organique.

Pourquoi l'open source est-il important ?

L'idée de l'open source a émergé de la communauté technologique. Pour évoluer, les innovations techniques ont besoin de collaboration au niveau mondial. Prenons l'exemple d'une équipe de programmeurs aux États-Unis, qui développe une nouvelle technologie open source pour une application financière. Une autre équipe de programmeurs en Australie intègre à cette technologie une nouvelle fonctionnalité plus adaptée au secteur de la santé. Une troisième équipe, en Asie, développe ensuite de nouveaux produits open source qui utilisent la technologie d'origine comme composant principal.

De tels partages des connaissances et innovations collectives bénéficient à l'ensemble de la communauté. Enfermer la technologie derrière des brevets, des droits d'auteur et des licences coûteuses limite le progrès. Durant les dernières décennies, de nombreux projets open source très connus ont entraîné des progrès technologiques rapides dans le monde entier.

Quels sont les principes de l'open source ?

Les principes de base derrière chaque projet open source sont les suivants :

Communauté

Une communauté open source est un groupe de personnes qui se rassemblent pour atteindre un objectif commun. Les valeurs et les objectifs qu'elles partagent guident leur prise de décisions et font avancer le projet open source.

Transparence

Les projets open source garantissent que chaque membre de la communauté a accès aux informations et aux supports nécessaires à l'accomplissement de son travail. En ayant une vision plus large de la situation, les membres de l'équipe prennent des décisions plus efficaces et s'appuient sur leurs idées et découvertes respectives.

Collaboration ouverte

Les projets communautaires encouragent le travail d'équipe, ainsi, un groupe résout des problèmes que les individus seuls ne peuvent pas résoudre. Par exemple, les membres de toute initiative open source apportent des modifications destinées à améliorer ce que quelqu'un d'autre a créé. Vous pouvez également établir des règles afin qu'à l'avenir, les membres modifient la solution au besoin.

Prototypage rapide

Un projet open source suit une approche itérative, dans le cadre de laquelle les membres de l'équipe créent et partagent des prototypes à intervalles réguliers. Le prototypage rapide encourage une culture d'expérimentation. Vous pouvez améliorer et poursuivre des modifications qui fonctionnent, et rejeter celles qui ne fonctionnent pas.

Méritocratie inclusive

Le mouvement open source encourage les perspectives et les discussions diversifiées. La communauté prend des décisions d'un commun accord, mais privilégie également la réussite. Les meilleures idées reçoivent plus de soutien et d'efforts de la part de la communauté open source.

 

Quelles sont les fonctions d'un logiciel open source ?

Les fonctions de n'importe quel logiciel open source correspondent aux valeurs du mouvement open source.

Technologie open source

Un logiciel open source doit être publié sous une licence open source répondant à certains critères de distribution, tels que :

  • L'absence de restrictions sur la vente ou l'offre du logiciel comme composant d'une distribution de logiciels regroupés
  • L'inclusion et l'autorisation de la distribution du code source
  • L'autorisation des modifications et des œuvres dérivées
  • Les droits associés au programme doivent s'appliquer à tous, sans discrimination

Conception ouverte

La conception ouverte garantit un processus ouvert et transparent pour la conception et la planification d'un logiciel. Il s'agit de laisser la communauté diriger la conception et la feuille de route des fonctions du logiciel. Cela peut se révéler difficile, car l'obtention d'un consensus au sein de la communauté est parfois un processus fastidieux. Cependant, une conception validée par la communauté mène à un meilleur produit, qui répond de manière plus efficace aux besoins des utilisateurs.

Développement ouvert

Le développement ouvert est l'adoption de processus de développement inclusifs et transparents qui permettent à tous de participer sur un pied d'égalité. Les services accessibles de manière publique apportent de la visibilité aux activités de développement. Par exemple, les projets open source adoptent généralement un ensemble de normes qui indique de manière claire les métriques d'évaluation auxquelles sera soumise une contribution. Cela permet à toutes les mises à jour du logiciel de recevoir la même attention, qu'elles proviennent d'un nouveau contributeur ou d'un développeur senior.

Communauté ouverte

La communauté ouverte garantit que la communauté de développement du logiciel est un environnement inclusif, où toutes les voix se font entendre et où n'importe qui peut atteindre un poste de direction. Elle concilie les besoins des développeurs et des utilisateurs en définissant des objectifs communs et en créant des connexions fortes.

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

Un logiciel open source est un logiciel dont le code source peut être inspecté, modifié et amélioré par n'importe qui. Le code source est la partie du logiciel que les programmeurs informatiques manipulent afin de modifier le fonctionnement d'une application ou d'y ajouter de nouvelles fonctions. Toute personne ayant accès au code source d'un logiciel peut améliorer ou personnaliser l'application en y ajoutant des fonctions ou en corrigeant les erreurs existantes. Les logiciels open source apparaissent dans la majorité des applications Web et des appareils que vous utilisez aujourd'hui. Linux, système d'exploitation open source, et Mozilla Firefox, navigateur internet open source, sont des exemples de logiciels open source.

Quelle est la différence entre un logiciel open source et les autres types de logiciels ?

Parfois, les organisations ou les personnes qui créent des logiciels préfèrent les contrôler pour des raisons d'ordre commercial. Elles conservent des droits de propriété exclusifs sur le code source, ce qui signifie qu'elles sont les seules à pouvoir modifier le code afin de corriger des erreurs ou d'ajouter de nouvelles fonctions. De tels logiciels sont appelés logiciels propriétaires ou logiciels fermés. Les produits Adobe Photoshop et Norton AntiVirus sont des exemples de logiciels propriétaires.

Logiciel open source ou logiciel fermé

Les trois différences principales entre un logiciel open source et un logiciel fermé, ou propriétaire, sont les suivantes :

Fiabilité

Les logiciels propriétaires dépendent d'une seule organisation ou d'un seul développeur qui contrôle le code afin de le maintenir à jour, sans erreur et fonctionnel. D'autre part, une communauté plus large maintient les logiciels open source. Certains des projets open source les plus populaires comptent des milliers de contributeurs du monde entier qui testent minutieusement les anciennes et nouvelles modifications. Cela rend souvent le code open source plus fiable.

Sécurité

Tout code source peut être sujet à des failles de sécurité le rendant vulnérable aux cyberattaques. Cependant, l'avantage du logiciel open source est qu'il peut être corrigé plus rapidement. Une fois que vous ou que d'autres membres de la communauté signalez des vulnérabilités de sécurité, les projets open source publient une mise à jour du code en un jour ou deux. Si des entreprises commerciales développent un logiciel open source, la haute visibilité rend la correction de ces problèmes urgente, et peut même mener à l'amélioration du logiciel d'origine.

En revanche, un logiciel propriétaire a des cycles de mise à jour plus longs, car :

  • Le fournisseur a peut-être mobilisé moins de personnes sur un projet donné.
  • Le fournisseur a peut-être placé la priorité sur les aspects financiers plutôt que sur les failles de sécurité.
  • Le fournisseur peut retarder la publication de la mise à jour de sécurité, car il préfère regrouper plusieurs modifications et les publier toutes en même temps.

Licences

En général, les entreprises vendent des logiciels fermés sous une licence propriétaire qui définit l'usage légalement autorisé du logiciel. Personne ne peut consulter ou modifier le code propriétaire sans autorisation. Par exemple, la licence propriétaire peut autoriser l'utilisation personnelle ou commerciale, mais pas la revente. Elle peut également vous lier à un contrat spécifique aux fournisseurs pour une durée fixe.
 
À l'inverse, un logiciel open source est disponible sous une licence open source, ce qui signifie que son utilisation, sa modification et sa redistribution sont gratuites. Les contrats de verrouillage avec les fournisseurs n'existent pas ou sont très flexibles. Les développeurs peuvent télécharger le logiciel depuis un site Web public et consulter l'ensemble du code open source sur leur ordinateur. Les licences open source permettent également aux utilisateurs de :
 
  • Modifier le code source pour des projets personnels.
  • Redistribuer le code modifié si les utilisateurs continuent d'autoriser d'autres utilisateurs à consulter leurs modifications.

Quels sont les types de licences de logiciels open source ?

Bien qu'une licence open source soit moins restrictive qu'une licence propriétaire, le niveau et la portée des autorisations varient par type. Voici quelques types de licences open source répandus.

Licence de domaine public

La licence de domaine public indique que n'importe qui peut modifier, utiliser ou commercialiser le logiciel, sans restrictions. Dans la plupart des cas, les créateurs du logiciel open source de domaine public ont fait le choix, intentionnel ou volontaire, de ne pas placer le logiciel sous droit d'auteur.

Licence permissive

Les licences open source permissives contiennent des exigences minimales concernant la modification ou la distribution du logiciel. La licence Apache et la licence BSD (Berkeley Source Distribution) sont des exemples de licences permissives. Même si le logiciel d'origine est open source et soumis à des droits d'auteur, les utilisateurs peuvent en commercialiser et redistribuer des versions modifiées.

Licence publique générale limitée

La licence publique générale limitée (LGPL) vous permet d'utiliser des composants open source sans restrictions. Ces composants sont souvent accessibles sous la forme de modules de code appelés bibliothèques, que vous pouvez intégrer à votre code pour les utiliser. Si vous utilisez un code source LGPL dans votre application, vous pouvez commercialiser cette dernière. Cependant, si vous modifiez le code LGPL existant, vous devez la redistribuer à nouveau sous la même licence.

Licences copyleft

Les licences copyleft sont les licences open source les plus répandues. La licence publique générale (GPL) en est un exemple connu. Les conditions d'une licence copyleft tentent de restreindre la commercialisation :
 
  • Si vous modifiez les composants open source copyleft, vous devez publier l'intégralité du nouveau code source aux côtés de votre application. Cependant, cela n'est pas nécessaire si vous n'utilisez l'application qu'en interne et que vous ne la rendez jamais publique.
  • Vous pouvez vendre vos modifications GPL, mais l'acheteur peut les redistribuer s'il le souhaite.
  • Vous devez créditer tous les précédents rédacteurs du code dans votre nouvelle déclaration de droit d'auteur du code.

Qui régule les logiciels open source ?

L'Open Source Initiative (OSI) est un organisme international à but non lucratif qui informe sur tous les types de logiciels open source et défend leurs intérêts. En tant qu'organisme de normalisation, l'OSI tient à jour l'Open Source Definition, un document qui définit juridiquement les conditions qui rendent tout logiciel open source.

En respectant l'Open Source Definition de l'organisme, vous pouvez obtenir la marque déposée de licence approuvée par l'OSI. La marque déposée suscite la confiance et encourage d'autres organisations à contribuer et à collaborer avec vous. L'OSI tient à jour une liste de licences approuvées et approuve de nouvelles licences dans la communauté open source. Elle réglemente également l'exigence de normes ouvertes pour les logiciels.

Que sont les normes ouvertes ?

Les normes ouvertes sont des règles de développement logiciel qui favorisent l'uniformité et l'interopérabilité dans le secteur de la technologie. Elles sont disponibles librement pour être mises en œuvre, adoptées et mises à jour. Ainsi, elles rendent de nombreux aspects de notre vie quotidienne plus pratiques et agréables.

Par exemple, ces normes permettent à tous types de machines de se connecter à tous types de routeurs sans fil. Vous pouvez utiliser votre ordinateur portable pour vous connecter à Internet depuis chez vous et depuis votre café préféré, peu importe le routeur utilisé. Sans ces normes, vous devriez trouver un café dont le routeur est compatible avec votre ordinateur portable.

Open source ou normes ouvertes

Les normes sont les règles, les directives et les spécifications de rédaction de certains types de code source, plutôt que le code en lui-même. Les normes logicielles doivent suivre certaines règles pour être classées comme open source. Par exemple, si vous avez besoin d'une technologie propriétaire pour mettre en œuvre certaines normes, alors ces normes ne sont pas open source.

Pourquoi existe-t-il des versions commerciales de logiciels open source ?

Des créateurs et d'autres entreprises ont monétisé de nombreux projets open source en vendant des modules complémentaires, tels que des outils d'analytique ou de sécurité, qui s'adressent à de plus grandes entreprises. Les entreprises privées peuvent commercialiser tout logiciel du domaine public en incluant ces programmes open source dans leur code d'application. Elles peuvent également publier des versions différentes du même logiciel sous des licences différentes.

Par exemple, imaginons qu'une entreprise publie un système de gestion de bases de données sous la licence publique générale (GPL) et sous une licence propriétaire. N'importe qui peut utiliser la version GPL pour du développement logiciel, à condition de rendre le nouveau code open source. En revanche, la version propriétaire offre des services logiciels supplémentaires, tels que :

  • Un service entièrement géré de bases de données
  • Un service de sauvegarde de données de niveau professionnel
  • Un chiffrement de sécurité supplémentaire
 
Vous pouvez acheter le logiciel commercial pour un usage interne ou payer d'autres frais afin de l'utiliser dans vos produits et services.

Un logiciel open source est-il identique à un logiciel libre ?

Le terme logiciel libre fait référence à un mouvement social, également appelé mouvement du logiciel libre, qui vise à obtenir et à garantir certaines libertés pour les utilisateurs de logiciels. Ce mouvement œuvre pour que les utilisateurs puissent librement :

  • Exécuter le logiciel.
  • Étudier le logiciel.
  • Modifier le logiciel.
  • Partager des copies du logiciel.
 
Le mouvement open source trouve ses racines dans le mouvement du logiciel libre, qui est apparu au début des années 1980. Certains groupes souhaitaient se concentrer sur les applications pratiques de la technologie. Ils considéraient que le terme logiciel libre était flou et décourageait l'adoption des logiciels par les entreprises. Ils ont proposé le terme open source, puis l'ont finalement popularisé et normalisé en établissant l'Open Source Initiative (OSI).

Logiciel open source ou logiciel libre

Aujourd'hui, le logiciel libre fait référence aux licences open source du domaine public. Les logiciels open source incluent désormais plus de types de licences et peuvent imposer certaines restrictions aux utilisateurs, contrairement au mouvement du logiciel libre. Les termes freeware et logiciel libre étant utilisés indifféremment, il est préférable de désigner les logiciels libres comme logiciels du domaine public.

Logiciel open source ou freeware

Le terme freeware se réfère simplement aux produits commerciaux disponibles gratuitement pendant une durée limitée. Le freeware désigne également les versions d'évaluation gratuites ou les versions à fonctions limitées d'un produit, qui requièrent normalement des frais de souscription. Même si vous avez accès à un freeware, vous n'aurez pas le droit de le revendre, de le partager ou de le modifier d'une quelconque manière.

Comment AWS contribue-t-il aux logiciels open source ?

Chez AWS, nous estimons que la technologie open source est bonne pour tous. Nous nous engageons à apporter la valeur de la technologie open source à nos clients et l'excellence opérationnelle d'AWS aux communautés open source. Les ingénieurs AWS développent régulièrement des logiciels open source et contribuent aux milliers de communautés open source sur GitHub, Apache, la Fondation Linux, etc. Voici comment nous prenons en charge la technologie open source :

  • Nous avons travaillé dur pour nous assurer que les clients pouvaient déployer et mettre en œuvre les logiciels open source de leur choix sur le cloud. AWS prend en charge un plus grand nombre de technologies open source que n'importe quel autre fournisseur cloud.
  • Nous travaillons sur plusieurs projets à long terme au sein de la communauté open source. Nous apportons de manière permanente à ces projets des améliorations de correctifs de bogues, de sécurité, de capacité de mise à l'échelle, de performance et de fonctions.
  • Nous collaborons étroitement avec les principales entreprises open source, de HashiCorp à MongoDB, en passant par Confluent et Red Hat, et nous les aidons à dépasser les attentes de leurs clients.

Apprenez-en plus sur nos projets open source dans la section Open source chez AWS, ou découvrez plus de 1 200 projets open source menés par Amazon sur GitHub.

Démarrez avec l'open source sur AWS en créant un compte gratuit dès aujourd'hui.

Prochaines étapes sur AWS

Parcourir les ressources supplémentaires liées au produit
En savoir plus sur l'open source 
Services AWS de l'offre gratuite

Voir les services AWS de l'offre gratuite

Voir les services gratuits 
Commencez à créer sur la console

Commencez à créer avec AWS dans la Console de gestion AWS.

Se connecter