Microsoft publie Oxite, un CMS en ASP.NET MVC sous licence Open Source

Voilà une information à laquelle vous n’avez sans doute pas pu échapper, tant j’ai l’impression que cette annonce a généré beaucoup de réactions et a fait pas mal d’échos.

Microsoft a publié cette semaine sous la forme d’un projet Open Source, un projet qui peut être défini comme un moteur de blog ou un outil de CMS (= Content Management System) : Microsoft Oxite.

MicrosoftOxite

Il y a deux originalités à ce projet :

La première c’est que ce projet représente une version packagée du code qui fait tourner le site Mix Online, écrit par des développeurs de Microsoft, pour les besoins internes de Microsoft. C’est donc un code réel, de qualité “production” et c’est donc un changement par rapport aux historiques Starter Kits ASP.NET datant de 2001, et qui étaient simplement des samples dont le développement avait été commandé par Microsoft et sous-traités à la société Vertigo.

L’autre originalité, c’est que ce projet Microsoft Oxite repose sur ASP.NET MVC. Il s’agit donc d’une implémentation de référence en ASP.NET MVC qui ravira les développeurs curieux de voir du code ASP.NET MVC en action, en situation réelle de production.

Au delà de ça, comme je le disais lors d’une interview pour 01Net (ici) : je voudrais tempérer un peu certains billets et certains commentaires qu’on peut trouver ici ou .

* Le positionnement : 

A mon sens, il ne faut voir dans Oxite qu’une initiative visant à fournir une implémentation de référence de ASP.NET MVC, donc de publier une sorte de Starter Kit, ce qui me permet de vous signaler au passage qu’il existe déjà un autre Starter Kit construit au dessus de ASP.NET MVC : le Kigg Starter Kit qui est une sorte de Digg-like.

* L’objectif à plus long terme :

Très honnêtement, il suffit d’installer Oxite et de faire F5 dans Visual Studio pour se rendre compte que le projet, même s’il est intéressant par ailleurs, est encore très loin de pouvoir prétendre devenir un concurrent de Wordpress ou des CMS populaires tels que Joomla, Drupal et autres Typo3. Et ce n’est pas l’objectif de Microsoft à court terme.

Et contrairement à ce que dit l’article sur 01net (et je ne sais honnêtement pas pourquoi le journaliste a écrit ça) : Non, Oxite ne propose rien qui ne soit déjà couvert par SharePoint, qui propose depuis longtemps un CMS, un moteur de blogs et un moteur de Wiki qui sont autrement plus aboutis… Whatever.

* Code Open Source vs Projet Open Source :

Je suis très clair sur ce point. C’est très facile de publier un paquet de code sur SourceForge ou sur CodePlex et de le placer sous une des innombrables licences Open Source en vigueur.

C’est une autre histoire de transformer un code Open Source en un vrai projet Open Source à succès, autour duquel se cristallise une communauté, qui s’approprie littéralement le projet, le modifie, l’étend et éventuellement le forke et le renomme, à l’instar de ce qui s’est produit autour du ASP.NET Portal Starter Kit, qui a donné naissance au projet DotnetNuke.

* La médiatisation de Microsoft Oxite

Là, j’avoue être assez étonné par l’ampleur des échos et réactions que la publication de Microsoft Oxite a généré. Il y a quelques années, en 2004, quand nous avions publié FlexWiki également en Open Source, je n’ai pas l’impression qu’il y avait eu autant de réactions sur les blogs et dans la presse… Pourtant déjà à l’époque, FlexWiki était une version packagée d’un code utilisé par les gens de Channel9.

J’ai l’impression que avec la publication de Oxite, de nombreuses personnes ont l’air de découvrir que Microsoft est capable de publier des choses en Open Source, comme si Oxite représentait une première en la matière.

* Microsoft et les projets Open Source

Oui, Microsoft soutient des projets Open Source, et contribue directement à des projets Open Source. Depuis Octobre 2007, nous avons deux licences qui ont été approuvées par l’OSI et qui sont donc des authentiques licences Open Source. Oxite est publié sous l’une de ces deux licences : la Microsoft Public Licence.

On pourrait citer des dizaines de projets Open Source qui sont des contributions directes de Microsoft, et qui ont reçu des échos très positifs de la communauté : le générateur de setups WiX (que MySQL utilise), la bibliothèque WTL (que Google utilise d’ailleurs dans Google Chrome), le projet FlexWiki (mentionné ci-dessus), des projets tels que le DLR de Silverlight ou encore le Silverlight Control Toolkit qui permettent au projet Moonlight de gagner du temps en n’ayant pas à les ré-implémenter, en pouvant simplement intégrer ce code Open Source à Moonlight, ou encore les contrôles du Ajax Control Toolkit, mais la liste est bien plus longue.

Microsoft a créé il y a quelques années déjà le site CodePlex qui vise à fédérer les communautés et les projets Open Source autour des technologies Microsoft. Rien qu’autour de .NET, CodePlex contient quelques belles perles comme les projets : NDoc, NDepend, NAnt, Log4Net, etc… autant de projets que de nombreux développeurs .NET utilisent au quotidien. A ce jour, Codeplex comporte plus de 6,900 projets, plus ou moins actifs.

Voilà ce que j’avais à dire au sujet de Microsoft Oxite… En attendant, je trouve que DotnetNuke et BlogEngine.net sont des projets beaucoup plus aboutis.

Pour les plus techies parmi vous, vous pouvez voir le point de vue d'un développeur sur le blog d'un collègue de Microsoft Canada. C'est ici.

Vos commentaires et réactions sont les bienvenus ;)