momius - Fotolia

MariaDB imagine l’Open Source à retardement

La société MariaDB publie son premier logiciel sous une licence BSL qui rompt avec le circuit Open Source classique.

Comment financer l’innovation quand on est un éditeur Open Source ? Réponse : créer une licence alternative aux standards du genre, quitte à modifier quelque peu les principes clés du modèle. C’est le choix de Monty Widenius, emblème de l’Open Source, créateur de MySQL et aujourd’hui  à la tête de MariaDB, une société qui développe des logiciels autour de la base de données Open Source MariaDB (un fork de MySQL). Son idée : permettre aux sociétés qui développent des logiciels Open Source de monétiser leurs travaux pour financer leurs développements en continu ; ce que les modèles Open Source classique ne permettent visiblement pas de faire si l’on en croit Monty Widenius.

Pour lui, cela prend le nom de Business Source Licence (BSL). Si les rouages de cette licence ont été couchés sur le papier en 2013, BSL fait officiellement son apparition – et pour la première fois – sur le marché des logiciels. Ce modèle de licence encadre désormais  la v2 de MaxScale, dont la béta est disponible depuis  le 15 août dernier.

Pour mémoire, MariaDB MaxScale, présenté par MariaDB en janvier 2015, est en fait un proxy pour  bases de données dont la particularité est de s’insérer entre la couche applicative et la couche infrastructure sous-jacente (et donc la base de données). Cette couche d’abstraction permet donc de faire évoluer et de redimensionner l’infrastructure sans que soit modifiée l’application. La v1 était  encadrée par une licence GPLv2.

Open Source à retardement

BSL (qui logiquement n’est pas certifiée par l’OSI) repose sur une mécanique très particulière : celle de l’Open Source à retardement, mais en passant par le propriétaire. Les développeurs qui choisissent d’encadrer leurs développements par BSL font le choix de rendre visible d’abord le code – et donc de le rendre modifiable, mais avec une limite d’usage - ce qui empêche cette licence d’être  Open Source. Dans le cercle de cette limite, le logiciel reste gratuit et son code accessible (pour évaluer la technologie). Au-delà (et pour la production donc), les utilisateurs devront payer selon une grille tarifaire mise en place par les développeurs. Un modèle de type Freemium, en somme.

 Autre contrainte : outre le fait d’imposer une limite dans les usages, la licence stipule également une date d’expiration à partir de laquelle le logiciel devient Open Source, encadrée par licence choisie par le développeur.

Ainsi, dans le cas de la v2 de MariaDB MaxScale, la limite d’usage a été fixée à 3 serveurs de bases de données – au-delà, donc, il faudra entrer dans une démarche commerciale et souscrire à l’offre payante MariaDB Enterprise (ce qui a de quoi faire sourire quand on sait que MaxScale permet justement de dimensionner la base  et d’ajouter des ressources supplémentaires). La date de sortie de ce dispositif est quant à elle fixée au 1er janvier 2019. A partir de là, MaxScale v2 deviendra Open Source, sous licence GPLv2.

 « Avec le modèle  Open Source, il est difficile de créer une entreprise du logiciel qui dispose des ressources nécessaires pour investir en continu dans le développement de produits et dans l’innovation », écrit Monty Widenius sur son blog., citant le « manque de compréhension de gestion des coûts » associés aux développements, notamment, par les entreprises. « Pour pouvoir rivaliser avec les entreprises technologiques s’appuyant sur le modèle propriétaire, qui réalise d’importantes marges bénéficiaires, nous avons besoin de revenus », explique-t-il encore.

 « MariaDB adopte BSL pour s’assurer que les développements Open Source puissent continuer à fournir les gains attendus du code ouvert en matière d’innovation (comparé à l’Open Core par exemple), tout en proposant un modèle d’affaires durable», explique encore MariaDB dans une FAQ.

Comme mécaniquement, l’encadrement de MaxScale par une telle licence a provoqué une levée de bouclier de la communauté Open Source. Et d’agiter l’argument ultime : le fork, comme l’indique une mailing-list.  Nom de code  GPLScale, accessible sur Github.

Pour approfondir sur Open Source

Close