Niclas Hedhman wrote:On Monday 24 March 2003 17:25, Christian Haul wrote:
This is an open *source* project, and a couple of things are a lot easier to do at compile time rather than at run time.
Yes, like ./configure --prefix=/usr/local/ make make install for specifying installation directory, right?
Oh, please, that's not the case. Cocoon is *NOT* an application, it's a framework. Our users are developers. They *MUST* be. What's the point of having a joe-user-proof installation system to avoid them to open up the hood when they *will* have to take the engine apart anyway later?
Need to think beyond the power-programmer... Even the casual programmer struggles with configure/make systems, and often fails and leaves.
If the casual programmer is not able to do
> export JAVA_HOME=/usr/java/ > ./build.sh webapp > ./cocoon.sh servlet
that it does *US* a favor if he fails and leaves. Open source is not about market share, it's about solid communities.
Cocoon cuts across a number of different disciplines (java, xml at least?) and so "casual programmer" means different things. I am amazed at the number of people on users who claim to know no java. They must be xml/xslt programmers, which _may_ mean some combination of:
- they don't usually use the command line for anything
- they may be installing java for the first time, which (because of sun's windows installer) may have no idea what JAVA_HOME is or should be. They'll need to know this regardless, we just have to add even this to the list of hurdles they already need to jump.
- they have never built any software from source, which means if our build fails for them for any reason, they will assume that Cocoon doesn't work, or is too complicated for them. some may turn away if "build" seems too mysterious to them
- a few other points I can't remember now along similar lines.
I'm not saying I'm against this idea at all - in fact it has some great benefits. I'm just trying to clarify the psychological barriers I see that need to be taken into account in *how* it's done.
Stefano's point about hiding the build behind configuring and installing is a good one, as long as the build time stays relatively low. 10 minutes _max_ for a full build (which most people won't do) would keep things reasonable IMHO.
I think I like the jnlp option, if it's not required (was jnlp even available with jdk1.3?) and even though I have little GUI skills and no experience with jnlp, I'd be willing to help work on that.
Geoff