Friday, February 18, 2011

Preparing the EclipseCon 2011

In two weeks, I'll be flying towards my first EclipseCon... and I would really be impatient if my current schedule wasn't so tight. As it is, I don't have time to realize it's coming so soon!

I've been working on Eclipse technologies -- rather than merely using Eclipse as an IDE -- for about three years now. Around that time, I started reading Planet Eclipse, getting to know who's who and discovering a lot about what the different projects were about. In general, this has been a very interesting read and most of all it's been a great source of ideas.

But there was one period, each year, when reading Planet Eclipse was even more interesting, but also had a bitter aftertaste, seeing pictures of this great party and not being there. Each year, the EclipseCon is the great time where people share their progress, best practices, show their creations and meet.

And this time, I'll be there to show what we've been doing. I have spent this week preparing my talk. We're doing a retrospective on an RCP application, but not just any RCP application. As I just said, I've been reading Planet Eclipse for these last 3 years, and this application was a testbed for a lot of stuff I've been reading here. I'll be honest and tell you if it was worth it, and which of these "technologies" we used made a difference ;-).

Our project is using the E4 Application Platform, released last July (yes, we started on a beta and finished on an early preview!), a way that we call "pure", that is it doesn't depend on any 3.x API that the E4 Application Platform doesn't already depend on (basically, eclipse.core, SWT and JFace); it's built from the ground up on OSGi (our non-UI bundles run on any container) and makes heavy use of Declarative Services; we've built it in an unorthodox way considering it's an RCP app, using Maven (started with Tycho and moved to maven-bundle-plugin recently); we're using Git, Hudson (or soon Jenkins) and Nexus.

Obviously, we're not going to talk about all of this. It's an extended talk but most of us already use Databinding, Declarative Services, Git, Hudson or Nexus, and there are even talks dedicated to these topics so we won't bore you with this. Instead, we'll focus on what the E4 Application Platform brings compared to RCP 3.x, on how diving into OSGi changed our ways, we'll tell you what we thought of Maven to build RCP bundles, with and without Tycho... We'll tell you why we did what we did, what went well, and how we failed. We'll reveal some horror stories and tell you how not to repeat the same mistakes we did.

This project was not just our first time doing an E4 RCP project. It was also a deep change in the way we produced software. When we prepared our talk, we tried to focus on what we thought was most interesting/unknown for the audience. My hope is that if you come hear us, you'll get some early feedback to decide what to use for your next project. We will mainly focus on E4 (and give a primer for those who had no time to check it), because that's a hot topic, but this is really a retrospective about a technological stack based on OSGi, E4 and Eclipse technologies.

In any case, I hope I'll meet many of you in Santa Clara!


  1. Hi Simon,

    It would be great if your talk could be recorded and made available somewhere. I am very interested in the E4 project and in your experiences with it; unfortunately, I will not be present at EclipseCon. If a recording is not possible, a copy of your slides would be very appreciated!

    Best regards,
    Stefan Mücke

  2. Hi Stefan,

    I don't know if and when talks are recorded at the conference. I think I remember seeing some old EclipseCon talks feeds (at least audio+slides) but I'm not sure anymore. We can't record it ourselves though.

    In any case, we plan to make the slides available, and they will be posted on the EclipseCon website and on this blog (maybe while we're in Santa Clara or once we're back). We're still polishing them :-).

  3. I'm really really interested to meet you in person and see how you used e4!

  4. Thanks Tom, I look forward to meeting you as well. See you in two weeks! :)