Préambule

Site officiel : http://www.eclipse-nowyoucan.com/

Compte rendu 2006 : http://dcabasson.developpez.com/articles/java/eclipse/eclipse-now-you-can/

Les slides des présentations 2008 sont mis à disposition sur le site officiel Eclipse Now You Can : http://www.eclipse-nowyoucan.com/?Symposia/Program

Je tiens avant tout à remercier les organisateurs pour leur accueil et leur sympathie ainsi que les intervenants pour leur disponibilité.

1. Ralph Mueller - Eclipse Verticals: From Open Source Consumption to Value Creation

Image non disponible

Le premier intervenant, après l'introduction par Geensys, est le directeur Eclipse Ecosystems Europe, Mr Ralph Mueller.

Insistant sur la nécessité de contribuer à Eclipse, Mr Ralph Mueller nous a également rappelé les bénéfices de l'Open Source :

  • gain d'argent (gratuit)
  • liberté d'utiliser le produit pour ce qu'on veut
  • liberté de copier et redistribuer librement
  • modifier le code et l'adapter
  • vendre un produit modifié ou des services autour du produit
  • principe communautaire
  • écosystème gagnant/gagnant

Tout ceci est possible avec Eclipse Project.

Il y a actuellement plus de 186 membres dont 22 membres stratégiques (Intel, SAP, Borland, ...). Plus de 800 personnes participent à l'amélioration du produit (" commiters ") ce qui représente plus de 50 organisations. 46% des commiters viennent d'IBM, principal développeur du produit, 25% d'individus non-membres et le reste réparti sur les membres.
De plus en plus d'organisations joignent la communauté en devenant membres.

2. Jochen Krause - Présentation de la nouvelle plateforme Eclipse e4

Jochen Krause, de la société allemande Innoopract, a présenté le futur de la plateforme Eclipse dans sa version 4. La particularité de cette version est que son architecture a été repensée afin de pouvoir réaliser des applications aussi bien en client lourd SWT comme actuellement mais également en client léger à partir du même code !

Les principaux changements d'architecture ont dû être réalisés en raison du désir d'utiliser la plateforme en client léger ce qui ajoute des contraintes multi-utilisateurs :

  • suppression des singletons (et variables statiques)
  • plus d'uniformité
  • plus de flexibilité
  • injection de dépendances

De plus il sera possible d'ajouter des plugins réalisés dans d'autres langages que le Java.

La plateforme Eclipse n'étant pas vraiment " sexy ", un mécanisme de thèmes, notamment CSS, sera ajouté.
La quasi totalité des fonctionnalités RCP ont été implémentées également dans la partie client léger (sélections, Drag'n Drop, listeners, ...).

La plateforme sera disponible courant 2010, avec mise en ligne à priori d'une pré-version en 2009. Par compte on ne devrait pas pouvoir compter sur une utilisation de l'environnement de développement Eclipse en client léger dans un premier temps même si cette fonctionnalité est proposée.

3. Eric Gaigner - Une plateforme OSGI embarquée ouvre la voie au transport intelligent.

Eric Gaignet, RDTL, a présenté l'utilisation d'Equinox dans le cadre de sa société de transport. Cette solution permet, via une application centrale et des PC dans chaque bus, de synchroniser et récupérer plusieurs informations ainsi que de gérer la billetterie (via un écran tactile). Ainsi il est possible de fournir de l'information en direct au conducteur, aux voyageurs et à la centrale (géo localisation, optimisation de carburant, aide à l'exploitation, ...).

Les échanges de données sont réalisés via des réseaux GPRS et Wifi et de façon ponctuelle afin de réduire les coûts de l'utilisation du réseau GPRS. Il est par ailleurs également possible de mettre à jour les programmes automatiquement.

Basé sur la plateforme OSGI d'Eclipse (Equinox), ce projet en cours de développement sera exploitable courant 2009.

4. Maître Cendrine Claviez, Maître Vincent Pollard - Propriété Intellectuelle et Licences de logiciels libres ou Open Source

Une intervention intéressante et atypique a été réalisée par ces deux avocats du cabinet TAJ. Leur principal rôle est de vérifier et mettre en place des licences pour logiciels sur demande des créateurs.

La tâche délicate est de vérifier la compatibilité des licences Open Source qui peuvent être classées en 3 grandes catégories :

  • licences libres : GNU GPL, EUPL, Cecill A, ...
  • licences semi-libres : Mozilla licence, Cecill D ...
  • licences domaine public : BSD, ...

Notez la EUPL dans les licences libres. Cette licence a été élaborée au niveau européen (European Union Public Licence) suite à l'analyse entre autres de la LGPL et licences Cecill, afin, notamment, de résoudre des problèmes de droit des états européens et de compatibilité. Toute récente elle est déclinée en 27 langues qui, chacune, font foi.

Nous avons été rendus sensibles au fait qu'utiliser des briques logicielles sous licence libre de type GPL pouvait conduire à choisir le même type de licence pour son propre logiciel et donc publier le code source du produit. Ceci dû au principe " viral " de ces licences qui " contaminent " les logiciels qui les utilisent.

A noter que fournir un logiciel en Open Source peut permettre, en France, d'obtenir des subventions ou des traitements fiscaux de faveur.

5. Stands

Chaque société avait un stand où il était possible de dialoguer avec les intervenants. A noter la présence du stand de la société américaine Instanciations, présente mais n'intervenant pas, et présentant certains produits de développement intégrés Eclipse pour le GUI Testing entre autre.

6. Ateliers

J'ai suivi le Topic 1 : Eclipse pour augmenter et améliorer la productivité des équipes de développement. Le second Topic possible était : Plateforme outils (embedded development). Deux autres topics étaient à l'origine prévus mais étant donné l'engouement pour ces deux topics au détriment des deux autres, ils n'ont pas été maintenus.

6.1. ProxiAD - Industrialisation du packaging et des contrôles qualité logicielle dans Eclipse avec Maven

Arnaud Busine et Guillaume Lours nous ont expliqué ce qu'ils ont mis en place dans leur société afin d'uniformiser des déploiements et environnements de développement dans un but de productivité, de qualité et de maintenabilité des applications J2EE.

Points importants à retenir :
  • leur étude a comparé les plugins Maven pour Eclipse : Maven eclipse:eclipse : ne répondait pas aux besoins, s'avère trop limité et oblige le développeur à exécuter des commandes Maven lourdes pour travailler.M2Eclipse : bon plugin ne permettant juste pas le filtrageQ4E/IAM : bon plugin ne permettant juste pas le filtrage
  • Il ne faut pas qu'un développeur ait à exécuter de commandes Maven sur son poste
  • WTP doit s'appuyer sur le résultat du build et non sur les sources pour pouvoir mettre en place le filtrage (à réaliser dans la configuration du POM)

6.2. Zend - PHP

Présentation des outils Zend pour le développement PHP, et donc notamment la plateforme basée sous Eclipse. En résumé la présentation visait à montrer qu'il y a beaucoup de préjugés sur PHP (langage de bidouilleur, non sécurisé, lent, ...) mais qu'il est possible de fournir des produits de qualité grâce au Zend framework. Ceci avec facilité grâce à Zend Studio (Eclipse) fournissant les fonctionnalités avancées de développement avec des projets clé en main et de la complétion de code intelligente.

6.3. Anyware - Déployer Eclipse avec p2

Benjamin Cabé a présenté le successeur de l'update manager d'Eclipse : p2.

Cet outil, déjà intégré dans Eclipse Ganymède, change la philosophie derrière les mécanismes de mise à jour et déploiement d'Eclipse. Aussi bien en tant qu'environnement de développement, qu'en tant qu'application RCP.
P2 est un framework modulaire pilotage dans Eclipse (opérations de provisionning) mais pas forcément. Il peut installer des plugins, mais aussi des exe, ini, clés de registre, ...

Les update & install ont été optimisées (download multi-threadé, sélection du meilleur miroir, ...)

  • " Bundle pooling "
  • Bas niveau
  • Mécanisme d'installeurs

Sur le principe on va installer des " Installable Units " (contrairement aux " features " des précédentes versions). Il y a 2 entrepôts : les méta-données, contenant les installable units; les artefacts, contenant les données réelles : plugins, ...

p2 sera utilisable pour les gros déploiements à partir d'Eclipse 3.5, il peut cependant déjà  être utilisé mais avec un risque de bugs qu'il faut dans ce cas corriger soi-même ou soumettre à  la communauté pour résolution rapide.

p2 fait partie de la plateforme OSGI d'Eclipse, Equinox.

6.4. Blu Age - Faites passer Eclipse à  la vitesse du Développement dirigé par les modèles avec BLU AGE, Agile Model Transformation

La présentation montrait la réalisation/génération d'une application J2EE complète à partir de schémas UML. La génération allant du modèle aux interfaces graphiques.
Assez impressionnant sur le principe.

6.5. Soyatec - IHM simplifiée

Mandatée par Microsoft, Soyatec développe un produit de génération d'IHM à  partir de langage XAML. Une interface de développement est réalisée sous Eclipse sous le nom eclipse4SL (SL pour Silverlight). Le principe est de pouvoir réaliser avec le même code XAML, une application client lourd ou client léger.

Conclusion

Pour sa troisième édition, Eclipse Now You Can aura rassemblé trois fois plus de personnes qu'à sa première, signe de l'intérêt qui y est apporté et la qualité de l'événement. Beaucoup de thèmes sont abordés et permettent d'avoir une vue d'ensemble des possibilités offertes par la plateforme Eclipse.
Rappelons que l'événement est gratuit pour les participants, n'hésitez donc pas si vous avez l'occasion d'assister à une des prochaines éditions.

Remerciements

Un merci tout particulier aux rédacteurs et responsables developpez.com pour leur aide pour la relecture et la mise en place de cet article.