I opened my RSS reader this morning and found a few more interestings posts from Bjorn, Doug and Micheal ind the Planet Eclipse feed. I really have to thank Bjorn for starting this discussion. He raised some very good points. The posts I read also made me think more about it.
I do not agree with all the ideas. Well, I don’t have to. Especially I don’t like to see the Eclipse Foundation hiring Eclipse developers. But I have another idea. It’s not that of a big deal, i.e. we could tackle it today with the process we have in place. But it’s not a low hanging fruit either.
Think along the lines of the Runtime project. It’s a great project with a diverse committer community. I think we should archive the Eclipse project. Equinox already moved out. The desktop bits could move to the RT project as well. RAP is already there so SWT, JFace and parts of the workbench would be a good fit too. The IDE stuff, JDT, Help and Resources bits could move to the Tool project. e4 clearly is a Technology project. Why didn’t it start as such in the beginning? Is it all driven by the fear of one contributor?
I think you get the point. It’s not so important what we move where. I think it’s more important that we refactor the Eclipse project. It’s too large, too complex and too difficult for adopters to understand it and to get involved. We should listen to ourselves. It’s written in the Equinox whitepaper. I’d like to see more smaller components, which are developed and evolved independent from each other. That’s easier to handle and to develop than one large code base.
How will moving all the Eclipse project bits around to different projects encourage more contributors? It’s just the same code, but in a different place 🙂 The same people would have commit rights to it. How would this encourage new people to start contributing?
I think that one of the issues is the monolithic Eclipse project. It’s hard for “outsiders” to understand what’s going on and why things are going on the plan and why not. If it would be split into smaller projects than there would be a few positive side effects (IMHO). The projects could release individually. There wouldn’t be one monolithic project which manages and controls the development and the technology a project could use. For example, the runtime bits that really have to run on many different platforms are runtime things. But it should be allowed for others to innovate at a much quicker rate.
In some places, it really looks like the Eclipse top-level project is replicating the structure we have through other projects. For example, they have their own incubator although we have Technology. They have tools although we have the Tools project. t.b.c.
But that’s just my two cents.
Why did it not start this way? The answer is simple. Nobody initially envisioned that Eclipse project would grow out of the IDE scope like it has.
We have already caressed the idea of reorganizing, however the cost/benefit was never clear.