22 septembre 2008
Imprimer ce billet

Nouvelle politique de maintenance de Spring : La très périlleuse route de la monétisation de l’open source

Spring Source a publié l’information sous la forme d’une modification sibylline de la note d’Enterprise Maintenance Policy : Seuls les clients commerciaux bénéficieront des patchs publiés après les trois mois qui suivent le lancement d’une version majeure des projets majeurs Spring (framework, security, web flow, etc). L’objectif annoncé de Spring Source est de réduire les coûts de maintenance des anciennes versions de ses projets en incitant les utilisateurs à migrer vers les versions récentes.
Concrètement, les utilisateurs non commerciaux du framework seraient limités aux versions 2.0.1 (contre 2.0.8 pour les clients commerciaux) et 2.5.3 (contre 2.5.5) [1]. Une telle limitation serait bloquante pour la plupart des projets.
Au delà de l’objectif annoncé, on peut y voir la tentative de créer un modèle de monétisation de l’open source : « payer pour les mises à jour ».
Ce qui est sûr, c’est que cette annonce, au delà des sempiternels débats stériles que nous offre internet (Cf. : TSS), laisse quelques questions en suspens.

Vers un dual licensing ?

Légalement, l’Apache License, Version 2.0 utilisée pour le code de Spring Framework précise la gratuité de l’utilisation et de la redistribution du code. Spring Source va-t-il introduire un nouveau type de licence pour les patchs « post trois mois » et mettre en place un dual licensing qui nous rappellera la licence MySQL ?
Dans le cas contraire, si les patchs restent disponibles sous licence Apache sur le gestionnaire public de code de Spring Source, la prolifération de versions non maîtrisées risque d’être fatale au framework.
Un autre scénario serait que Spring publie les sources des patchs et tag les versions sur le gestionnaire de code public de Spring Source. Il suffirait alors que quelqu’un publie les jars compilés sur le repository repo1.maven.org. La prolifération de versions serait alors empêchée. Ce scénario est peu probable car l’action de Spring deviendrait alors caduque, le serveur de téléchargement de Spring serait juste remplacé par celui de maven.

Une communauté Open Source Spring démotivée ?

Cette mesure démotivera sûrement les contributeurs indépendants qui ne verraient pas leur travail reversé à la communauté. Cependant, l’effet devrait être négligeable car les contributeurs des projets Spring sont quasiment tous employés par Spring Source (Cf. : « How Open Source is Spring?: An Analytical Investigation » par Patrick Mularien). Spring Framework n’est pas un projet Open Source à la gouvernance partagée comme nous les connaissons avec la fondation Apache mais un projet à la gouvernance exclusive de Spring Source à l’instar de Glassfish avec Sun ou JBoss avec Redhat/JBoss.

Une confiance ébranlée ?

L’image de Spring Source avait déjà été touchée par la polémique autour de l’utilisation d’une licence open source « business unfriendly » GPL v3 pour Spring Source Application Platform plutôt que de continuer à utiliser la « business friendly » Apache Software License (Cf. : « SpringSource Application Platform : la brèche dans Java EE« ).
Rod Johnson avait adouci sa méthode de communication en expliquant sa stratégie dans « Open Source, Open Strategy: The SpringSource Manifesto« . On pouvait y lire en gras encadré « We are not changing and will not change the license of any existing project. The Spring Portfolio will remain under the Apache License. This covers the Spring Framework, Spring Security, Spring Web Flow and the rest of the Spring Portfolio ».
Aujourd’hui, la communication de Spring Source par mise à jour de « note contractuelle » est plus abrupte que jamais et l’impact sur les licences semble en contradiction avec le Spring Source Manifesto publié en mai dernier. La polémique est déjà très forte et l’impact sur la confiance dans la roadmap de Spring sera durable.

Affaire à suivre …

La mise en oeuvre de l’annonce de Spring Source peut rendre le framework inutilisable pour les clients non commerciaux et tourner la page de la période Open Source de ce framework. Des alternatives à la roadmap plus rassurantes existent, notamment au sein de la fondation Apache, et cette aventure pourrait se révéler fatale à ce projet qui a modelé le monde Java actuel.
La communication abrupte et le manque d’explication sur la modalité de mise en oeuvre des licences laissent penser que Spring Source n’est pas à l’aise avec une annonce derrière laquelle on peut imaginer la pression d’investisseurs soucieux des revenus de l’entreprise.
La monétisation de l’Open Source est un sujet très difficile et les innovations de Spring Source en la matière très périlleux.
En attendant que la situation s’éclaircisse, cet épisode nous rappellera qu’il ne faut pas associer trop rapidement Open Source et pérennité. Les utilisateurs de Spring Framework se doivent de réfléchir à un avenir exclusivement commercial de leur framework.

[1] Voir Spring Framework changelog

Liens connexes et autres avis :

Mots-clefs :, ,