My Biggest Fear for e4

A buddy of mine noticed that I don’t get as many comments on my blog as I used to. He thought it was because I wasn’t being controversial enough. He’s probably right. Most of my readers follow this on Planet Eclipse and I haven’t really commented on that much lately other than the great fun I’m having using it for my Wind River Installer work and for Android native development in my hobby time. I’m just a happy user now, I guess.

“Linus is a wise man”

Following Ian Skarrett on Twitter, he points us at an article in Linux magazine where they discuss Microsoft’s Linux driver patch that I’m sure you all heard about. They quoted Linus, who is indeed a wise man with a cool head. He’s just happy to get a contribution from a new member of the community and doesn’t care who it is. That’s certainly one of the big factors to the CDT’s success as hard nose competitors worked together peacefully. It’s the only way to be successful. Don’t let emotions cloud your judgement.

Selfish need drives contributions

The other thing that Linus pointed out was that “I agree that it’s driven by selfish reasons, but that’s how all open source code gets written! We all scratch our own itches”. He’s bang on there. All of the vendors I work with on the CDT are contributing to it to make their products better. I’m sure that’s true for many open source projects. For the most part that’s a good thing, since open source users get the benefits of that work. But it also means, if there is a feature you need that none of the vendors do, you aren’t going to get it. And as much as we beg people to contribute, it rarely happens. ~350,000 open source CDT users, ~3 contributors, that’s pretty rare.

What does this mean for e4?

Well as much whining as the CDT community has done over the constraints we have to deal with via the IResource system, we only got one contributor to the e4 flexible resources project. And even there, the changes being done should end up in the 3.x series and isn’t a major break from current system. So I can only assume that vendors are dealing with what they have and the need isn’t really there for them. But I do know there are some big open source users who need it. Time will tell if they are big enough to invest in it.

But my biggest fear is the rest of e4. There are some pretty major changes in it. Will the contributor community feel the need to adopt it? And what do you do when certain vendors don’t want to adopt it? What do we do with the CDT if none of the vendors step up to support e4? Stay on e3? What if Mylyn decides to support e4 and drop e3? What if we’re forced to adopt e4 if the rug gets pulled out from under us on e3? And don’t let backwards compatibility fool you, there is a massive verification activity in the least to make sure old plugins work on the new platform.

My big fear

I’ve stated this before, and it remains true today. We’re headed into uncharted waters with e4. I fear that the contributing vendors to the CDT will not put the effort into supporting e4, because they don’t have the need. And I think this is too big to artificially “create the need”. Eclipse can’t afford two platforms. Yet that’s what we seem destined to have. A lot of CDT vendors consider the CDT finished. We have very few new features on the horizon. That will likely mean less contributions. How are we supposed to pull off adopting a new platform? That’s my biggest fear.