A few days ago I posted a blog entry worrying about the openness of the Eclipse Platform team. I thought it would generate a flood of comments saying I was wrong. And to a certain extent, I probably am wrong. But I think its a serious issue that people need to think about.
I guess the point I was really trying to make is that we as the Eclipse community outside of the Platform have depended too much on IBM/OTI's great contributions, to the point where we expect them to fix all of our problems. My experience with open source projects is that it just doesn't work that way.
Open source developers usually work on open source projects for a reason. They are trying to get something done for themselves, and really as a side affect they hope that others will find it useful as well and maybe come help out. Because open source software is free, I think people start to think it's more like a charity, but it isn't. And I think this is even a bigger factor with Eclipse since the vast majority of developers are employed to work on Eclipse projects. They respond to the community as much as they can, but at the end of the day, if their empoyer asks them to work on something else, that has to have priority.
So if you have a bug that isn't getting the attention you think it deserves, please think of the people at the other end. There's a good chance it's not because they think you're problem isn't important, but that they have probably been assigned work elsewhere and really just don't have the time. Do as much leg work as you can. Create a really good bug report that has a patch and a really good justification that shows you thought about the fix as much as the committer would have. Make it as easy for the committer to fix your problem as you can.
And if you find you really depend on certain functionality that isn't being provided or bugs that you really need fixed, and you do enough great patches, you can become a committer too. The more committers we get from different employers, the better off we'll all be. That kind of redundancy is important in open source and is something we've really learned to appreciate on the CDT project.
Well said.
ReplyDeleteWhat's funny is, that even in large companies you have people outside the committers that put pressure on the committers to fix things, internally! So you have their employers on top of their peers supplying the pressure.
Well written patches and good communications with committers help.
I said something not too dissimilar in April.
ReplyDeleteThe main problem is that volunteers have limited time (especially if they're busy blogging all the time) and really can't compete with a full-time person. A team of full-time people are next to impossible to compete with.
This really marginalises the value that you can add. As long as it's off the critical path, or a reproducible bug, it's impossible to influence or make suggestions that will improve the quality of the IDE. And if it's process based (i.e. there's no code) -- forget it. Those kind of decisions are only made behind closed doors; just look at the whole RESOLVED NEVER issue. And it took a year's worth of complaining before the product 'owner' (in this case, Denis) making a stand and driving it forwards.
What it does do is discourage people from helping out, at least on the major projects. TBH the only projects I'd consider helping out would be smaller ones like Mylar or ECF; at least there, you'd get the feeling that you were being helpful.
The Team team (CVS etc.) really showed their true colours with not wanting to get involved with the whole Subversion project; and it didn't help that Bjorn kept confusing the issue between what's packaged with Eclipse vs what's hosted on eclipse.org. There was no interest in anyone else working with them (or vice versa); they got what they deserved. I, for example, implemented kerberized support for CVS a year and a half ago; there's no interest in Team in making that happen, and that's despite the working code being in a bugzilla entry.
Is it any wonder that the set of committers and the set of full-time employees working on Eclipse overlap?
> Bjorn kept confusing the issue
ReplyDelete>between what's packaged with
>Eclipse vs what's hosted on >eclipse.org.
Actually, I'm pretty sure that Bjorn didn't confuse anything. AFAIK, he just had a differing opinion.
The key word in this is "packaged". If Subversion support should be part of an Eclipse "package", be sure to make your opinion known to the Eclipse Packaging Project (EPP). I think it might be too late for June (and I'm not sure if the Subversive project is ready for 3.3).
The Team Team is a perfect example of what I'm talking about. AFAIK, they are down to one person. No wonder he doesn't want to get involved with Subversion. He doesn't have the time.
ReplyDeleteAnd I'm not looking for volunteers, I'm looking for employers who have a vested interest in the Ecilpse Platform to start ponying up resources to help address the problems they have. I work on the CDT, and as such, it's not that big of a leap to submit patches to the Platform, which I have. That needs to happen more.
Hi Doug,
ReplyDeleteGood post. Folks in IBM/OTI work in a highly constrained situation with lots of different parties wanting attention. It should be no surprise that their salaries are paid to deliver software that seeks to solve corporate software requirements. IBM also recognizes that the health of the community is critical and efforts are directed there too. Add in API compatibility and the path is narrowed further. Priorities are decided based on all those factors.
Yet all the Eclipse committers I know care passionately about the health and well being of Eclipse as something onto its own. Thus I personally get somewhat incensed when the implication is made that
"they don't care".
If someone, an individual or a company, wants to influence the direction of Eclipse, the best way they can do that is to direct full time developer resources at it. Take ownership of an area, feed and maintain it. Because in the end, working code talks.
I know the Platform team at OTI care. They are some of the most passionate developers I've ever met.
ReplyDeleteBut, the perception in the Eclipse community is what it is. Part of my concern about the openness of the Platform team is that I don't think people realize what's happening day-to-day with them to appreciate the challenges they are facing.