Hi Wim,
First off, I'd like to say you've done a tremendous job in leading Nebula and we all owe you a huge debt of gratitude for all you've done. I really appreciate your analysis of the situation and fostering discussion of these issues. Here is my view of the situation.
I look at Nebula as a project aggregator rather than a project. When we brought NatTable to Nebula we decided to treat it as a separate subproject, which I think was the right decision. I actually think this is how all of the other Nebula widgets should be viewed as well - as separate projects. Now, in order to try to cut down on overhead Nebula has historically lumped all other widgets together into one 'project', but I think this has created a number of problems as well.
For one, viewing Nebula as a single project means the Eclipse Foundation will ask you to provide releases, and I don't think it makes much sense to have a unified release of Nebula as a whole. Users are really interested in stable releases of specific widgets, and I don't think they care if those widgets are all released all together at the same time. On the contrary, I think it is much preferable not to artificially tie the release schedules of all Nebula widgets together in this way. Development for each of these widgets happens independently, and it makes more sense to make release decisions for each widget independently.
Also, it is unclear what level of support can be expected of a particular widget. I think we could be clearer about this. It would be great if we could clearly identify on the web site a 'lead' for each widget. And if no such lead exists for a given widget, we could indicate that the widget is supported on a best-effort basis by the Nebula community. This would help set expectations for users and widget maintainers.
There are lots of other distortions that come up as part of looking at Nebula as an actual project instead of a constellation of individual projects. For instance, sharing a single source code repository for all widgets is weird because the code for each widget is pretty much completely independent from all others. I think we should have separate git repos and hudson builds for each widget.
I think Nebula should be a project in the sense that the Eclipse Modeling Project is a project. All of the actual content of the Eclipse Modeling Project comes from its various subprojects, and the top-level Eclipse Modeling Project deals only with top-level concerns. The problem we have with Nebula is that right now it is both of these things together.
So now I'm going to suggest something radical, but that is a direct consequence of your observation that there is no "us". I would suggest splitting all of the Nebula widgets into separate subprojects and keeping Nebula as a top-level aggregator project. I think the 'benefit' of trying to reduce overhead by lumping all our widgets together is actually a major hindrance and causes too much confusion, unnecessary interdependence, and - crucially - loss of accountability. At the very least, we could split out a 'Nebula Miscellaneous Widgets' subproject from the top-level Nebula project. But I think it would be better if each widget that has a clear owner to have its own subproject.
This way the responsibility for maintaining each widget becomes clear: each widget has its own project and its own owner who is responsible for maintaining it. Widget releases would be made from these individual subprojects.
The responsibility of the top-level Nebula project also becomes clear: it is the job of the top-level project to maintain the widget catalog, to periodically check on the individual widget maintainers to make sure they are still active, and to help shepherd them through the various Eclipse adminstrative processes.
I think this would rationalize a lot of things about Nebula and would help us better serve the community and help get more active participation as well. Because I would like to see a vibrant and growing Nebula, and I would like to see it address new technologies and platforms. But I think it will have a hard time doing so effectively in its current monolithic form.
My $.02. Let me know what you think -
Thanks,
Edwin