Woo, big changes! Here are my thoughts...

Instinctively, something in me likes this new approach. However, as Aslak pointed out, it has been tried before and failed, and it's important to try and figure out why it failed (no, I don't know why either). As someone else pointed out, xdoclet2 needs to be useful in its own right in order for the entry barrier to be low enough that users feel that giving it a try isn't such a hassle. The concept of 'core' and external modules might help in this. If you just want to generate generic ejb-jar.xml and web.xml, then you shouldn't need to go to 3 different sites to download them. I think those 2 modules should be core, and come as part of a 'standard' xdoclet. If after that you needed support for pramati specific stuff, then you'd get the pramati plugin.

Regarding encouraging module development and making the barrier to entry very easy, there are a number of things you can do:

Don't tell people 'go out and create the project', but have infrastructure in place so that someone is able to commit a new module (somewhere) without having to create a website for it (although if they want to, they can), or having to create create an sf project, jira project, etc etc.

Easy to find. A trivial point, but because of the way people are you can guarantee that every day there will be 3-4 messages asking 'so where can I get the jboss plugin?' unless the presence of these is very clear and loud in the core xdoclet site/docs.

Don't overengineer. It's fun to come up with a complicated 'automated' system that does something cool, but sometimes it's more important to consider the human element. As Aslak said, it's important that the 'average' developer is able to jump in and figure things out and start contributing. The less weird magic goes on, the better. The more known/common technologies are used, the better (which is one of my basic complaints against maven, generating many files for schemas, relying on many other 3rd party tools, etc etc). The more dependencies you add and the more 3rd party API's you use, then fewer people willing to put in the extra effort required to learn them.

While I understand that it's useful to have support for so many different templating languages, it's important likewise to acknowledge that that actually reduces the mindshare. Lets say you've developed a module using velocity, and you want to continue to another project that is using jelly. You end up without much 'reuse' of your templating skills, and you might well be discouraged by having to learn yet another templating mechanism. I see the benefits of course, but lets not deny the disadvantages of the simpler approach of 'write all templates for all modules in velocity'. Once you learn velocity, you become useful to all the other modules you might ever need or want to contribute to.

Finally, consider developer egos ;). I know this sounds silly, but if you want to encourage many module developers, make them feel important. Once xdoclet2 is in a usable state and you want people to start churning out modules, provide a clear message of 'we want to work with you so your modules work', ensure that the people developing the modules feel like they're a welcome addition, rather than an irritant. Currently the feeling I get (mistakenly perhaps), is that some of the core developers are irritated by the more obscure bugs reported in some of the modules, because they don't use them, and don't feel they gain much by expending the effort to locate them.

My apologies for yet another long email, but for quite a while I had dismissed xdoclet to be 'yet another OSS project, all bloat for the sake of it', but kept using it because the end result was worthwhile. Now though after seeing some of the core developers messages, it's so refreshing to see that they actually care about this stuff and aren't so stuck in their mentality that they automatically reject everything as 'not the xdoclet way'. Keep it up guys!

Hani



-------------------------------------------------------
This SF.NET email is sponsored by:
SourceForge Enterprise Edition + IBM + LinuxWorld = Something 2 See!
http://www.vasoftware.com
_______________________________________________
xdoclet-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-user

Reply via email to