Category Archives: IT

Eclipse Time : 4ème édition !

La quatrième édition d’EclipseTime se tiendra les 23 et 24 juin 2009 à Toulouse.

eclipsetime

Cette année, vous aurez en quelque sorte droit à trois évènements en un puisque la conférence se voit divisée en deux journées (au lieu d’une seule les années précédentes), et que la soirée du 23 juin sera l’occasion de se réunir autour du Galileo DemoCamp français.

  • La journée de conférences sera l’occasion pour les participants d’être informés des dernières tendances : implémentation de certains composants, applications développées pour des clients… Elle se tiendra à la Cité de l’Espace et sera animée par des acteurs majeurs du monde Eclipse : membres de la fondation Eclipse, éditeurs de logiciels, industriels utilisateurs d’applications basées sur Eclipse.
  • democampLe DemoCamp sera, comme son nom l’indique, orienté… démos (et bières !). L’objectif sera d’une part de fêter la sortie de Galileo (Eclipse 3.5), mais aussi et surtout de présenter les différents usages qui sont faits des technologies Eclipse.
    Inscrivez-vous dès maintenant si vous avez l’intention de venir (et, encore mieux, de présenter un sujet !). On me glisse dans l’oreillette qu’il sera par exemple montré comment Eclipse peut servir à programmer une brique “Lego Mindstorms”, ou comment Eclipse RCP peut être mis en oeuvre pour proposer des interfaces conviviales pour le diagnostic automobile ! Ce DemoCamp se tiendra dans la soirée du 23 juin, à la Cité de l’Espace.
  • La session du 24 juin se veut un peu plus technique, et sera découpée en deux demi-journées de formation, permettant aux participants d’aborder le développement orienté composants grâce à OSGi et Equinox, les technologies clients riches sur le marché (Flex, GWT, RAP, …),  le futur Eclipse 4, la réalisation d’IDE à destination du monde de l’embarqué, la mise en oeuvre d’un serveur d’intégration continue d’applications Eclipse RCP avec Hudson, etc.

Pour plus d’informations, et pour vous inscrire, ça se passe ici !

J’espère bien avoir l’occasion de rencontrer certains lecteurs de ce blog lors de l’évènement… 😉

Equinox p2: Large Scale Deployment

Last year’s Eclipse release (Ganymede) came with a new provisioning platform called p2. For years, Eclipse has been shipped along with a component called the “Update Manager”, which allowed users to easily update their Eclipse installations. Nevertheless, year after year, and especially when Eclipse 3.0 came out, it has become much more than just an IDE: it is now a software platform, built on top of Equinox (the reference implementation of the OSGi specification).

Thus, deployment needs are not limited to installing and updating only plug-ins anymore. People building software on top of Eclipse need to be able to deliver an installer for their product, which may come with a license manager which needs provisioning too, they need to have their own UI for the updating process, … and p2 answers to virtually all these needs.

p2: a provisioning platform…

To be able to provision virtually everything, the main strength of p2 is to have no a priori knowledge of the way Eclipse plug-ins or even Java applications must be handled. It’s indeed a very light framework to describe the parts that are to be installed (the Installable Units), and how they depend on each other. p2 comes with some basic instructions about how an OSGi bundle or an Eclipse product should be installed, but nothing else.

It’s up to the software vendor who wants to deliver, let’s say, a Windows executable program (which may require adding keys to the registry, or icons on the desktop, for instance) together with its Eclipse RCP application, to write the code (in fact, a p2 plug-in!) to explain p2 how this particular Installable Unit should be handled when provisioned in a given system.

… and, the next deployment standard?

Of course, although p2 is still a very young project, and may not seem mature enough for industrial usage. It is still not 100% reliable yet and lacks tooling, but the quality of this very first release is still pretty high. Since it was released, p2 has started gathering a community which is leveraging p2 in other domains than just the Eclipse project itself. Software companies like Cloudsmith, EclipseSource and Anyware Technologies are already developing tools on top of p2 ; and IBM, among others, is working hard to improve the p2 core and design a clear API.

The massive adoption of OSGi in many different areas (Eclipse runtime technologies like Equinox itself or RAP, applications servers like Websphere or Glassfish, etc.) will definitely make p2 the smartest way to deploy not only Eclipse-based applications, but any sort of scalable application as well. Indeed, when high availability is an important requirement (in other words — almost always), then you need to be able to dynamically install new modules into the running system, update existing ones, sometimes even do this remotely.

Since there is currently no real sustainable alternative for industrial deployments – did you ever try to use Java Web Start for more than just a very simple Swing or RCP application? – p2 will probably come up as a de facto provisioning technology standard.

GWT 1.5 est de sortie !

lgo-gwt3 mois, presque jour pour jour, après la RC1, voici enfin la version 1.5 de GWT, qui devrait mettre du piment dans la vie de pas mal de développeurs (private joke inside) !

Vous le savez peut-être, mais l’apport majeur de cette nouvelle version du framework Google de développement d’applications Web est le support de Java 5 : generics, boucles “for each”, etc.

Même si certaines APIs peuvent vous manquer (impossible de faire de l’introspection par exemple 🙁 ), l’émulation de la JRE est particulièrement complète et d’une utilisation tout à fait transparente.
La compatibilité est d’ailleurs telle que l’on peut tout à fait faire tourner le noyau d’EMF (oui oui !) sur GWT.

Parmi les autres nouveautés, il faut noter :

  • amélioration des performances (tant au niveau de la compilation que de l’exécution),
  • mécanisme de styling simplifié
  • support du BiDi (inversion de l’IHM de droite à gauche pour des langues comme l’arabe)
  • couche d’interaction Javascript, pour accéder en Java à des librairies Javascript legacy

De plus amples information sur le blog officiel.