work. life. open source. diatribes.

So, I was bored of doing homage to Michael Porter in terms of his wonderful 5 forces (only 6 more months left of b-school!)… I decided to download some sweet firefox extensions.

Holy, I’m shitening in me shorts! The extension download and installed itself in one click. No update sites, no confusion, no 7 clicks to download something.

I thought, how can we try to replicate some of Firefox’s extension story (probably part of the reason it’s been so successful) in Eclipse? So, what better way to think of ideas than to hack out a quick and dirty prototype.

Our first stop is the cool RCP Browser Example Check it out and add two new dependencies (org.eclipse.update.core and org.eclipse.update.ui).

The next stop is to learn about the cool SWT Browser widget. It has a method that rocks: addLocationListener. Let’s prototype something easy, how about simplifying how we reach update sites?

If Eclipse had its own extension (file) like firefox does, we could effectivelypack anything into it. This would take a bit of work though to define what exactlybelongs in the file and the metadata associated with it. I’m sure we could use OSGi’s bundle repository format for this. Or we could have our own protocol handler and do cool things (similar to irc:// or skype://).

In the end, Eclipse is great for developers (including the current update manager). We can do a lot of things with it. It was designed with the developer in mind. However, RCP changed everything. The developer is no longer the only person using Eclipse. Now we have report designers, poor college students leeching things, traders, scientists, etc… If Eclipse expects greater adoption in the RCP space, our users will demand a better update story.