Cette année, l’eZ Conférence a eu lieu à Berlin les 24 et 25 juin derniers. Les deux journées ont été divisées en 3 thèmes principaux : le « community track » (conférences animées par eZ Systems et des membres de la communauté), un thème de réflexion sur la gestion de contenu (notamment les tendances actuelles), et un thème spécialisé sur la gestion de médias en ligne.
Voici un point sur les annonces importantes faites par eZ Systems.
eZ Publish migre son dépôt public sur Git
Après des années d’utilisation de Subversion pour leur dépôt public, comme beaucoup, eZ Systems fait le grand pas et passe sur Git.
Actuellement le trunk et la totalité des branches ont été migrés, et sont disponibles sur GitHub. Malheureusement, les extensions ne sont pas encore migrées, mais il semble que c’est prévu dans l’année.
Cette migration représente plus qu’un changement d’outils internes, c’est une opportunité qu’eZ Systems saisit pour ouvrir le dépôt aux commits extérieurs, après plus de 7 ans de commits assurés exclusivement par la compagnie.
eZ Community Edition vs eZ Entreprise Edition
Grande nouveauté, la version « ouverte » d’eZ Publish s’appellera désormais « eZ Community Edition », tandis que dans le même temps eZ Systems maintiendra (sur une base de code différente) « eZ Entreprise Edition ».
Cette version pour les entreprises sera vraisemblablement payante ou réservée à la souscription d’un abonnement premium.
Tandis que la version Community sera apparemment la version innovatrice, la version Entreprise sera plus stable, avec des tests plus importants du service qualité, et elle embarquera des fonctionnalités supplémentaires, destinées aux entreprises.
eZ Systems espère que chaque version fera profiter l’autre de ses avantages (innovation vs stabilité), afin de faire évoluer eZ Publish plus rapidement. Un détail important : les évolutions majeures du CMS seront commitées dans la Community Edition et cette dernière sera, semble-t-il, la version de référence.
L’évolution du Business model d’eZ Systems
Suite à ce changement important, eZ Systems est en train de revoir son service premium et la gestion de son offre de partenariat. Un point qui est en train d’être revu est le système de partage de lead. Ce système qui consiste à partager les contacts obtenus par eZ Systems (par téléchargement sur le site ou contact avec la compagnie) avec les partenaires « business » sera probablement ouvert également aux partenaires communautaires. eZ Systems réfléchit également à offrir plus de support pour l’avant-vente (livres blancs, documentations, etc.).
Une nouvelle API
eZ Publish possède une API, mais elle est actuellement d’un assez bas niveau : pour preuve, il y a 9190 méthodes publiques. C’est pourquoi l’équipe prépare en ce moment une API de plus haut niveau qui suivra la philosophie suivante :
– Permettre de faire des tâches simples facilement (haut niveau)
– Flexibilité
– Pas de couplage entre le stockage et les opérations logiques
– Une interface de requêtage simple
– Neutralité par rapport au système de stockage
Voici une aperçu de l’utilisation de l’API en PHP
$lister = new ezpContentList() ;
$lister->searchLocations<a href="filters[">] = ezLocation ::fetch( 78 ) ;
$lister</a> = new ezpContentClassIncludeFilter( 'article' ) ;
ezpContentService ::delete( $lister ) ;
Une ouverture sur les mobiles et les services distants
Une API REST est en cours de développement. Vous l’avez surement compris, c’est fortement lié à la prochaine sortie du SDK pour iPhone/iPad.
Un point intéressant, l’API utilisera un point d’entrée différent de l’actuel index.php
, et aura une implémentation pure MVC, notamment grâce à l’utilisation du composant MVC Tools des Zeta Components (anciennement eZ Components mais maintenant « libérés » et en « incubation » chez Apache).
Exemple :
GET /api/v1/content/node/<nodeId>/field/<fieldIdentifier> HTTP/1.1
GET /api/v1/content/node/<nodeId>/fields HTTP/1.1
eZ Archive et les nouveautés d’eZ Find
eZ Find 2.3 est en cours de développement, et cette nouvelle version apportera son lot de nouveautés. La version de Solr sera mise à jour et supportera pleinement la recherche géolocalisée. Un nouvel handler sera disponible pour la recherche.
Mais surtout le premier « proof of concept » du système d’archive sera livré. Ce fameux système d’archive a pour but le stockage complet des objets eZ Publish dans l’index, afin de pouvoir, à terme, supprimer ces objets de la base de données et conserver seulement la version indexée dans solR. Le requêtage des objets sera donc beaucoup plus performant.
En effet, l’utilisation d’eZ Find comme système de cache pourrait améliorer les performances de 5 à 6 fois par rapport à un requêtage dans la base de données.
Conclusion
C’est un gros virage que prend eZ Systems en annonçant ces 2 versions (à la manière de Magento il y a un an environ). Espérons que la version communautaire ne sera pas délaissée, et qu’eZ Publish profitera réellement du développement de ces deux versions.
Nicolas Steinmetz
13 juillet 2010
Avec cette version « entreprise », peut-on considérer que dans un contexte entreprise, eZ Publish reste un CMS opensource ? J’ai comme un doute surtout si la branche communautaire diverge (rapidement ?) de la version entreprise.
eZ Systems joue gros sur ce coup car je doute qu’ils puissent se passer de la communauté PHP mais en même temps ils doivent rassurer leurs investisseurs. eZ Systems qui se vantait d’avoir réussi à démontrer la validité du business model de l’open source, risque d’aller droit dans le mur à mon sens. La volatilité de la communauté PHP me laisse penser que l’écosystème eZ peut se vider très rapidement pour n’avoir qu’une coquille vide ou presque… (en gros des références clients, quelques partenaires et pas grand chose de plus).
Il suffit déjà de voir les reproches souvent fait par la communauté à eZ Systems ou le fait que les eZ Components aient réussi à trouver une nouvelle maison d’accueil chez Apache sous la forme des Zeta Components. Au moins eZ Systems a évité le fork officiel et à garder bonne prestance. Réussiront-ils la même chose avec eZ Publish ?
Matthieu Severe
13 juillet 2010
Que ce soit pour le côté Open Source ou la pérénité de la communauté je pense que ça ira dans le bon sens si ils respectent leurs « promesses », à savoir : la version communautaire est la version « principale » et la version entreprise n’est qu’un fork avec quelques fonctionnalités « entreprise » de plus.
Je pense que l’implication de la communauté va dans le bon sens également avec le gros travail de Nicolas Pastorino (Community Manager) pour développer et mettre en avant la communauté. La récente création de ce poste montre aussi qu’eZ Systems est conscient de l’importance qu’ils doivent donner à la communauté.
Espérons que le mouvement actuel reste dans la même direction !
Nicolas Steinmetz
19 juillet 2010
Merci pour votre retour ; j’espère pouvoir vous dire que vous aviez raison et que le travail réalisé par Nicolas Pastorino ne soit pas un leurre ou une vitrine morale utilisée à d’autres fins / le temps de mettre en place autre chose…
Roland Benedetti
20 juillet 2010
Bonjour,
Je voudrai réagir au nom d’eZ Systems pour apporter un éclairage sur ce billet.
Le premier éclairage concerne le « pourquoi » de cette annonce, que nous documenterons d’ailleurs très bientôt au travers de communications officielles:
La motivation initiale et principale de cette nouvelle version communautaire annoncée est de pouvoir plus simplement accepter les contributions de la communauté. Avec le modèle actuel, bien qu’il soit possible pour tout un chacun de contribuer au coeur même d’eZ Publish, le processus est long et pénible et nous avons du mal à l’assurer, dans les faits, il faut être honnête il ne fonctionne pas et la quasi totalité du code d’eZ Publish vient du département ingénierie. Nous avons finis par dresser le constat, et nos partenaires ainsi que d’autres membres de la communauté nous l’avait déjà fait remarquer, qu’il fallait absolument faciliter la participation de la communauté dans le projet eZ Publish. Pour ce faire nous avons décidé de faire une nouvelle version dite « community » sur laquelle des membres de la communauté pourrons directement contribuer sans avoir à passer par un processus amont laborieux.
A mon sens il ne faut donc pas retenir « eZ crée une version non Open Source » pour son offre Premium (c’est du reste faux !) mais « eZ crée une version communautaire plus ouverte qui sera le creuset pour l’élaboration des nouvelles fonctionnalités d’eZ Publish » permettant à la communauté et pas seulement aux ingénieurs eZ d’influer sur l’évolution d’eZ.
Il va sans dire que ceci génère une surcharge sur les équipes eZ pour ce qui est de la bonne gestion des deux versions et des ponts entre les deux versions, mais nous sommes prêts pour cela et pensons que c’est le bon moment.
Du coté de la version Enterprise, ceci nous permettra d’améliorer la qualité des services que nous fournissons à nos clients, avec un processus qualité amélioré mais aussi un packaging et une mise à jour mieux contrôlée.
Pour répondre à Nicolas sur sa note concernant Zeta Components, que je ne suis pas sur de comprendre complètement, nous sommes en tout cas très heureux du changement, nous pensons que le projet mérite plus de visibilité et espérons que cette décisions que nous avons prise avec les core développeurs sera la bonne pour lui permettre de réellement prendre plus de place sur la planète PHP ! La Foundation Apache est un hôte de premier choix. Il ne s’agissait certainement pas de « garder bonne prestance » mais de trouver un environnement plus efficace pour le développement de ce projet. eZ continue à développer au travers et via les Components pour les librairies techniques utilisées par eZ Publish, y contribue, et à donc tout intérêt à ce que le projet prenne plus d’importance.
En espérant avoir apporté un éclairage.
Cordialement,
Roland Benedetti