En octobre O'Reilly Network et OSDir ont tenu un concours où nos lecteurs pouvaient voter pour un certain nombre de projets open source, afin d'envoyer six d'entre eux au Comdex comme représentants de la communauté open source.

De façon surprenante, un des projets les moins connus, est arrivé en tête de la liste, devant d'autres projets populaires comme Eclipse, OpenOffice, KDE et Gnome. En tout cas c'était une surprise pour nous. J'ai suivi Alexander Limi et Alan Runyan du projet Plone pour en savoir un peu plus sur ce cheval noir, et l'origine de sa popularité.

OSDir: Pourquoi avez-vous commencé Plone ? Qu'est ce qui vous démangeait ?

Limi: Il manquait à Zope une interface utilisateur qui soit jolie et fonctionnelle - la technologie était vraiment bonne, mais (à mon sens bien sûr) il n'existait aucun produit cohérent et accessible. Les gens se battaient avec des concepts de bas niveau quand ils débutaient avec Zope, chose qu'ils ne devraient pas avoir à faire.

La démangeaison provenait des projets qui nécessitaient de la gestion de contenu, et nous étions las de refaire toujours les mêmes choses. Une histoire classique, en fait.

Runyan: Le CMF (Content Management Framework) de Zope était un bout de logiciel assez intéressant, comme la plupart du code de Zope, mais il lui manquait une interface fonctionnelle. Il était fait pour être personnalisé, mais la plupart des développeurs open-source ne se soucient pas du look mais des fonctionnalités. Donc nous avons commencé par créer un couche graphique (skin) au dessus du CMF. Peu de temps après cela, nous avons réalisé que nous aurions besoin d'ajouter un grand nombre de fonctionnalités au CMF car il présentait certains défauts ; après tout c'est une structure logicielle et non un produit fini. Simplement, Plone et le CMF tentent de corriger certains problèmes que Zope avait depuis des années.

Limi: Ils apportent un workflow, la gestion des méta-données du Dublin Core, etc.

Runyan: ...Comment réutiliser et adapter des services.

Limi: ...Une architecture par composant.

Runyan: Ainsi, avant le CMF il n'y avait pas de règle ou structure afin que les produits communiquent entre eux.

OSDir: Plone travaille donc au dessus du CMF de Zope et rend Zope plus facile à utiliser ?

Runyan: Exactement - en fournissant des services de plus haut niveau aux développeurs. Donc, nous avons en quelque sorte commencé à faire une personnalisation du CMF - mais avons réalisé qu'il lui manquait un certain nombre de choses pour offrir une pleine usabilité. Zope était le Far West de la persistance et de la publication d'objets, avant le CMF.

OSDir: Ok, mais "la gestion de contenu" (GC) est un terme vague, un peu trop chargé et sur utilisé. Que cela signifie-t'il en parlant de Plone?

Runyan: Très bonne question. Je vois la GC comme le processus de gérer, de créer et de suivre le cycle de vie du contenu à travers un système informatique. Cette gestion est composée d'outils. Un des outils qui est inhérent à un système de gestion de contenu Web est l'interface web. C'est là que Plone a commencé.

Limi: Le contexte d'utilisation initial qui a conduit à Plone était les applications intranet - mais il s'est rapidement étendu à la publication web et également aux services de portail.

OSDir: Ainsi, Plone est utilisé par des gens normaux gérant du contenu web et par les développeurs pour atteindre les rouages internes de Zope et du CMF de Zope.

Limi: Nous faisons toutes les choses ennuyeuses que vous détestez faire.

OSDir: Beaucoup de gens s'étonnent de voir Plone parmi les vingt proposition de vote et non PHP-Nuke, ou Cocoon. Pouvez-vous faire un commentaire là-dessus ? Qu'est ce qui différencie Plone par rapport à d'autres systèmes de gestion de contenu ?

Runyan: Plone a concentré beaucoup d'attention envers l'expérience de l'utilisateur final. Cocoon (la dernière fois que je l'ai regardé) se concentrait sur des problématiques de structure. PHP-Nuke (la dernière fois que je l'ai regardé) se concentrait vers des problématiques de développeurs ; permettre aux gens d'ajouter quelques modules afin d'obtenir un site PHP-Nuke hybride. Cocoon est trop générique et PHP-Nuke n'est pas assez générique par rapport à nos besoins.

Limi: Plone essaie aussi de créer une interface utilisateur web qui soit générique (comme wxWindows ou QT) et qui permette facilement de générer une interface utilisateur cohérente et utilisable au travers des navigateurs. La plupart des développeurs sont très contents que nous ayons de bonnes règles en terme d'interface utilisateur, ils n'ont pas donc à se soucier de cela.

Runyan: La plupart des développeurs qui migrent vers Plone sont de développeurs Java qui veulent atteindre rapidement la solution à leurs problématiques. Plone résout les problémes qu'ont la plupart des développeurs. Quand je parle de Plone, je veux dire Plone et sa pile de technologie sur lequel il s'appuie (CMF/Zope/Python). La plupart des personnes n'ont par exemple pas envie d'écrire encore un nouveau système d'inscription d'utilisateurs. Jusqu'à présent, nous avons que très peu d'immigrants du monde PHP, principalement que leurs objectifs sont très différents.

Limi: Nous sommes un peu entre les deux, où nous voulons de belles décisions d'architecture logicielles, et non pas une collections de scripts - mais pensons que Java est un peu trop verbeux et encombrant pour pouvoir travailler avec.

Runyan: Le CMF apporte des composants de gestion des inscriptions (et plein d'autres composants) qu'il est facile de remplacer (si vous en avez besoin). Et Plone soigne l'apparence des composants de telle sorte que les gens peuvent garder une interface utilisateur jolie pour leurs personnalisations.

OSDir: Que s'est-il donc passé pendant l'année écoulée pour que vous en soyez arrivés là avec les développeurs et les utilisateurs ?

Runyan: Beaucoup de politesse et de partage.

Limi: Et la construction de la communauté.

OSDir: La construction de la communauté... intéressant... quelle est la sauce secrète ?

Limi: Des modèles irresponsables de sommeil.

Runyan: Travailler sans arrêt. Permettre aux gens de travailler ensemble.

OSDir: Qu'est ce que Plone a fait qui a construit ce "partage" et sa communauté ?

Limi: Plone n'est pas du tout formaté pour le marché du "je veux avoir un weblog". Nous avons consciemment essayé d'approcher et de travailler avec les entreprises finales et leurs besoins.

OSDir: En quoi leurs besoins étaient différents ?

Runyan: Plone est un produit. En tant que produit il nécessite la compréhension et la possibilité de décortiquer les couches inférieures et de comprendre comment chacune d'entre elles fonctionnent.

Limi: L'accent que Plone met sur les tâches et les processus de workflow est bien plus présent et dominant que dans la plupart des autres systèmes de gestion de contenu. Vous êtes plus à même d'écrire la killer application spécifique à votre métier que de fournir la solution tout en un qui ne résoudra problablement qu'une partie de ce que vous essayez de faire.

L'utilisation de workflows pour mimer les processus métiers fait gagner beaucoup de temps aux gens, et la plupart de gens sont impressionnés par la flexibilité et l'efficacité accrues que leur apportent ces workflows.

Un autre point intéressant est que nous mettons fortement l'accent sur l'internationalisation - c'est pour cela que Plone est aussi important en Europe. Disposer, de façon transparente et sans effort, de 5 ou 6 langues dans votre système de gestion de contenu est un bonus énorme. Le fait d'être fourni avec plus de 30 langues dans l'interface standard nous apporte beaucoup d'intéressements.

OSDir: Zope est également important en Europe.

Limi: Et je prédis qu'il deviendra plus important aux Etats-Unis dans le futur, mais seulement à partir du moment où les personnes découvriront qu'ils sont en train d'être royalement volés par les grands vendeurs du marché de la gestion de contenu. Particulièrement les petites et moyennes entreprises qui n'obtiennent pas ce dont elles ont besoin de la part des grands entreprises.

OSDir: Est-ce que l'Europe a représenté une grande partie de l'adoption de Plone l'an passé ?

Limi: Nous nous sommes vraiment concentrés sur l'internationalisation dès le départ - ce n'est pas quelque chose sur lequel il est facile de revenir a posteriori dans une application, comme la plupart des sociétés américaines le découvrent douloureusement quand elles essaient de conquérir le marché européen. Le savoir local et le fait de travailler avec un très large spectre de développeurs nous a permis d'avoir un très bon support de l'internationalisation dans Plone.

Runyan: Je pense que l'internationalisation nous a catapulté.

Limi: Oui, nous avons une croissance forte dans les régions du monde avec une forte culture et de multiples langues. L'Asie commence vraiment à se mettre à Plone également. Particulièrement le Japon et la Chine.

Nous sommes aussi conformes à la US Section 508 (NdT: règlement fédéral américain qui oblige les systèmes d'information gouvernementaux à être accessibles aux personnes handicapées), ce qui est une bonne chose pour nos sociétés qui ont besoin de vendre des solutions au gouvernement américain. Plone est le système de gestion de contenu qui est le plus accessible et conforme aux standards en ce qui concerne l'interface et l'habillage.

OSDir: Parlons maintenant du futur... quel est votre projet pour l'année à venir pour Plone ?

Limi: Les orientations pour Plone sont qu'il devienne encore plus orienté vers les produits et plus facile d'accès pour les nouveaux utilisateurs - il est plus facile d'accès que la plupart des systèmes (de gestion de contenu), mais pas encore suffisamment à mon sens. Cela ne signifie pas de faire une interface "pour les abrutis", mais de la rendre plus intuitive et souple.

Runyan: La possibilité de créer des types de contenu à travers le web. Une meilleure gestion des versions.

Limi: Une interface plus fine entre Plone et Subversion est un autre but.

Runyan: Ecrire plus de tests unitaires.

Limi: Rendre plone.org aussi transparent et créatif que possible - et permettre une implication facile des personnes. Tout le monde ne creuse pas les listes de diffusion, pour donner un exemple.

Runyan: Je pense qu'il est aussi important de comprendre que les communautés ne travaillent pas juste pour vous. C'est une mauvaise conception que beaucoup de gens ont en entrant dans l'open source. Nous devons les maintenir impliqués et engagés à tout moment.

OSDir: Quels aperçus vous a apporté votre présence au Comdex ?

Limi: J'ai passé un bon moment au COMDEX, et voudrais remercier O'Reilly pour nous avoir donné l'opportunité d'être là. Il y a eu des hauts et des bas bien sûr - le COMDEX est lourdement orienté vers le consumérisme, et dénicher les personnes ayant le pouvoir de prendre des décisions est difficile. Ceci dit, nous avons rencontré beaucoup de sociétés intéressantes là-bas, et je me suis rendu compte que les Etats-Unis commençaient finalement à se réveiller au potentiel de l'open source.

C'était un mélange intéressant - vous aviez Microsoft partout, des présentations peaufinées et un haut degré de professionalisme - mais je ne pense pas avoir vu une excitation réelle et des gens émerveillés ailleurs que dans les allées open source. Expliquer l'open source aux consommateurs est difficile, cependant. Et je ne pense que ça soit là le lieu du combat de toute façon, le COMDEX n'est pas l'arène idéale.

OSDir: Plone 2.0 sortira ce mois-ci. Que pouvons-nous en attendre ?

Limi: Tout est beaucoup plus propre et plus flexible maintenant. Comme avec toute version 1.x, il y a beaucoup de choses qui était moins qu'idéales - bien que je sois surpris de voir comment il a bien tenu, si l'on considère son âge. Nous nous orientons vers le fait d'être encore plus orienté produit, parce que c'est ce que les gens qui viennent à nous, veulent. Plus tard ils trouvent que la structure est très puissante aussi, mais ce sont les 20 premières minutes de mise en place et d'utilisation de Plone sur lesquels les gens se font un avis. Et avec Plone, tout fonctionne bien.

Il y a beaucoup de nouvelles fonctionnalités, mais choisir des fonctionnalités particulières n'est pas facile. Mes préférés sont qu'il est beaucoup plus rapide d'ajouter, publier et d'éditer du contenu maintenant. Un énorme effort a été fait aussi dans l'interface utilisateur et la conformité aux standards d'accessibilité. Ah, et bien sûr, la nouvelle façon super facile d'installer des produits supplémentaires.

Cette version a été en développement pendant presque une année, et Plone en tant que communauté a grandi incroyablement vite en si peu de temps. Il y a beaucoup de contributions de nouvelles personnes, et c'est une communauté très vivante. Cela fournit un très bon socle pour les nouvelles fonctionnalités qui vont être ajoutées dans le futur. Plone 2.0 est génial.

Runyan: Pour les développeurs, il y a eu un nettoyage majeur du code en général, et beaucoup de code a été réécrit. Il y a le mécanisme enfichable de gestion des préférences pour les produits supplémentaires, une prise en charge améliorée des groupes, des contrôles améliorés des formulaires (validation, etc.), une nouvelle structure pour les tests unitaires - la liste ne s'arrête pas. C'est simplement une version très améliorée de Plone, à tous les niveaux.

Alan Runyan travaille en tant que développeur en chef pour Runyaga LLC, située à Houston, Texas, et un des fondateurs du système de gestion de contenu Plone.

Alexander Limi travaille en tant qu'architecte interaction et architecte en chef pour Plone Solutions en Europe, et un des fondateurs du système de gestion de contenu Plone.

Steve (OSDir) Mallet est le fondateur et l'éditeur en chef de OSDir.com. Une courte biographie peut être trouvée ici.