La fondation Plone sort la version 3.3 et met à jour son site


Après 5 versions candidates la fondation Plone valide enfin la nouvelle mouture tant attendue du système de gestion de contenu Plone. Cette version était prévue pour sortir en avril, mais une série de bugs critiques lors de la dernière phase de validation a obligé à repousser sans cesse la date de sortie.
La fondation en a aussi profité pour revoir le look du site http://plone.org en utilisant les dernière technologie utilisée dans Plone 3.

La plateforme continue de se diversifier :

  • Get Paid pour gérer votre site e-commerce
  • ArchGenXML pour générer le code à partir de diagrammes UML
  • Plone4Artists pour les artistes qui veulent gérer eux-mêmes leur communauté
  • Communes Plone qui regroupe plusieurs communes belges qui souhaitent mutualiser le développement de leur système d’information.
  • PloneGov pour l’administration – grand prix du jury aux Lutèce 2007

Cette mouture apporte plusieurs nouveautés intéressantes. Tout d’abord Vincent Fretin est devenu le nouveau coordinateur des traductions au niveau mondial. Il a aussi fait le ménage dans la traduction française qui atteint toujours les 100% de complétion depuis la sortie de Plone 2.1. Il a été aussi très actif pour la chasse aux bugs dans les releases canadidate et a été le contributeur principal de la dernière mouture de ArchGenXML 2.

Les évolutions :

  • les liens externes renvoient directement vers les sites concernés ;
  • les ressources (CSS, JavaScript, KSS) peuvent être maintenant gérées de manière conditionnelle (IE6Fixes.css n’est chargé qu’en présence de IE6 par exemple) ;
  • l’édition en ligne est finalement désactivée par défaut, car elle est trop lourde pour IE6 ;
  • le verrouillage des documents lors de l’édition est maintenant configurable ;
  • l’historique des documents contient les modifications de workflow et les notes ajoutées lors de la modification des documents ;
  • les évènements supportent iCalendar par défaut ;
  • le chargement du fichier ZCML des extensions de Plone devient automatique.

Le site Plone utilise maintenant ( http://pypi.python.org/pypi/collective.xdv ) pour gérer son design. Ce produit permet de créer un design dans une page HTML statique et d’appliquer des règles de transformation XSLT pour adapter cette page statique à un site dynamique. Il est basé sur la technologie Deliverance. Plus d’informations sont disponibles dans le nouveau manuel de gestion des thèmes dans Plone.

Publicités

Le libre en question


Aujourd’hui un client nous met le couteau sous la gorge d’une manière assez peu banale. Il y a quelques années il a choisi de prendre une plateforme libre pour développer ses outils internes et une partie des services qu’il propose à ses clients.

Son choix a été de prendre Plone pour les raisons suivantes :

  • pas de coût de licence
  • un développement via l’interface web de Zope quasiment sans avoir à écrire de code
  • une documentation abondante et une communauté réactive
  • présence en France d’acteurs majeurs du développement international de la plateforme
  • une licence libre (la GPL) qui lui permet de penser que la plateforme ne deviendra jamais propriétaire

Le projet a eu des hauts et des bas. Il y a eu des formations externes, de la maintenance externe, du développement interne et externe. Globalement le projet a dépassé les espérances et est passé en mode industriel il y a un an. Le client possède toutes les sources et la connaissance de son applicatif. Il est maître de son destin. Avec le recul il est satisfait de cette plateforme et de son coût.

Ayant acquis une maitrise certaine de la gestion de contenu dans son corps de métier, ce client aimerai développer un module métier qu’il utilisera pour lui dans un premier temps, mais qu’il compte aussi revendre à ses concurrents à moyen terme. Pour cela ce module sera vedu comme une technologie propriétaire. Cela soulève une série de questions politiques et juridiques en interne (attention, certains de ces arguments sont partiellement erronés ) :

  1. si un site web utilise du code GPL pour fournir un service à des clients, un client peut demander à avoir accès au code source de l’application puisqu’il paie pour ce service
  2. si nous fournissons des sources sous GPL notre code source ne peut être commercialisé à des tiers sans qu’ils soient obligés de reverser ce code dans le domaine public
  3. si nous utilisons une extension sous GPL tout le code source devient GPL

Sur le fond je comprends la démarche de la vente d’un savoir faire que l’on veut protéger. Chez ce client tout ces constats ont amené a une réponse : pour faire du propriétaire il faut se baser sur une technologie propriétaire qui permet de faire ce que l’on veut une fois achetée.

Que faire ? Faut-il abandonner tous les développements en Plone  ? Il est tout à fait possible de réaliser un tel module propriétaire avec Zope et de l’intégrer avec d’autres systèmes sans que cela pose de problèmes de licence. Par contre, le Core de Plone 2 et de Plone 3 sont sous licence GPLv2 ce qui provoque un certain malaise. En anticipant de tels questionnements, la fondation Plone a décidé que le Core de Plone 4 serait sous licence BSD et  qu’elle accepterait que les modules d’extensions soient sous licence compatibles LPGL et GPL. Elle accepte aussi que des plateformes sous licence propriétaire soit développé à partir de Plone.

Dans notre cas précis ce questionnement est orienté : il faut vendre notre savoir faire pour générer des royalties et améliorer la rentabilité. Pour cela le choix d’une technologie libre est risquée et il faut adopter en masse une technologie propriétaire quitte à remettre en cause les développements en cours. Les coûts à justifier sont tels qu’il n’est pas possible de tolérer qu’un autre technologie puisse damer le pion à la technologie propriétaire à court terme car le choix de la technologie propriétaire est celui fait à moyen terme.

Il nous est proposé de fournir un canva pour fabriquer ce module dans la technologie propriétaire qui soit intégrable à Plone. Et dans tous les cas Plone va être abandoné. Autant nous mettre la corde au cou nous-même et attendre le bourreau.