Open source
Logiciel dont le code source est rendu public sous une licence qui en autorise la lecture, la modification et la redistribution, permettant à d'autres équipes de l'utiliser, de l'auditer ou d'y contribuer.
Synonymes
logiciel libre, code ouvert, licence MIT, licence Apache, logiciel open-source
Ce que signifie open source
Un logiciel open source est un logiciel dont le code source est accessible à tous. Cette accessibilité est encadrée par une licence qui précise ce que l'on peut faire avec ce code : le lire, le modifier, le redistribuer, l'utiliser dans un produit commercial. Les licences les plus répandues sont la licence MIT (très permissive, autorise l'usage commercial et la modification sans contrainte majeure) et la licence Apache 2.0. La licence GPL impose que les dérivés soient eux aussi publiés sous la même licence.
L'open source ne signifie pas gratuit. Beaucoup de logiciels open source sont distribués gratuitement, mais tous ont un coût d'intégration, de maintenance et de mise à jour. Le coût d'un logiciel propriétaire est visible dans la facture ; le coût d'un logiciel open source est réparti entre l'intégration initiale et le suivi des versions.
L'open source permet l'audit par des tiers : n'importe qui peut lire le code, identifier des failles de sécurité et les signaler publiquement. C'est pourquoi les briques open source très utilisées font l'objet d'une surveillance active par leur communauté. Les failles signalées sont documentées dans des bases publiques (CVE, advisories GitHub) : elles permettent de savoir si une version précise est vulnérable.
La distinction entre open source et logiciel libre (free software au sens de la Free Software Foundation) est d'ordre philosophique autant que technique. En pratique, les deux familles reposent sur des licences similaires et produisent des effets proches pour un projet web.
L'open source dans un projet
La plupart des sites web reposent sur des briques open source : gestionnaires de contenu, frameworks JavaScript, bibliothèques de mise en page. Ce n'est pas une décision, c'est un état de fait. La vraie question est : ces briques sont-elles maintenues et les mises à jour de sécurité sont-elles appliquées ?
Un projet construit sur des dépendances abandonnées ou non mises à jour accumule une dette technique invisible. Les failles publiées sur ces dépendances sont connues publiquement : elles deviennent exploitables si elles ne sont pas corrigées.
ISOMORPH publie ses propres plugins sous licence MIT sur npm, sous l'organisation @isomorph-agency : un plugin de consentement aux cookies, un plugin de lien universel pour Strapi et un résolveur de liens. Ces outils sont utilisés sur les projets clients et disponibles pour d'autres équipes. Les dépôts source sont accessibles publiquement sur github.com/agenceisomorph.
La stack des projets ISOMORPH est documentée et cohérente : Strapi pour le back-office, Next.js pour le front-end. Un projet repris par une autre équipe s'appuie sur la documentation publique de ces outils et sur des choix techniques explicitement motivés.