On 16 Feb 2006, at 22:40, Sanjiva Weerawarana wrote:
+1 for importing the codebase into 2 subdirectories to start with.

However, if we want to merge the two into one, then let's make it a goal that we don't release anything until we've figured out how to cut-n- chop
& mix-n-match to make that real.

I don't really understand what this means. Today both codebases have significant numbers of users. We've been using PXE on ServiceMix for about 6 months now - one of the things I'm looking forward to is getting the latest PXE code to work with ServiceMix as its a bit broken currently :). We're also keen to reuse the Sybase code in ServiceMix - right now.

Integrating the two code bases together is gonna be a slow, iterative process; we're talking complex code here. It could be that to start with things are completely separate, after 6 months they are 10% common, 2 years 50% common etc. The figuring out "how to cut-n-shop & mix-n-match" could well take 5 years as this is an ongoing iterative process. Sure we'll be heading closer and closer towards a unified engine but it could take a long time to get there (and pieces could very well never completely merge).

So are you saying that neither code bases will be able to even do a milestone release for other people to use them until the community has everything completely figured out years from now?

I don't quite follow this restriction - why not let the project release milestones when it feels it has something useful for its (already existing) user base?


I too greatly prefer the idea of having one BPEL engine (properly
layered ofcourse .. the part that does the core language vs. the part
that does people-facing activities etc.) as there's little benefit in
having multiple of those in ASF given it'll simply reduce the available
developer resources.

While its a worthy goal that I share, I'd advise against forcing this outcome from the start. Look at something so trivial as parsing XML into some data structure; we have 4 different projects I can think of at Apache (there could be more); XMLBeans, JaxME, Axis, Xerces - which all do it in very different ways. Orchestration is way more complex than XML parsing (have you seen how big the PXE codebase is? :) and its fine if we have different implementations of things within Ode as there are various ways to do it (e.g. persistence can be done many different ways - you can orchestrate via pi-calculus or state machine etc).

Its a worthy goal to reuse as much code as is possible - most developers I work with in open source do this anyway without being told to do so. I'm quite concerned however on putting too much pressure on the folks involved to unify code bases too soon - like say before they can actually deliver some useful code to their existing user base. The initial aim of the project should be to grow a community of developers and *users* around the collective codebase; code reuse is secondary IMHO.

Please remember, we're talking a large technology scope here; generic orchestration engine (state machine / pi calculus stuff), BPEL 1.1, BPEL 2.0, human workflow, tooling etc. Its fine for there being different implementations of similar things if thats what the community wants.


For those long time Apache folk here, I'm very worried about Ode turning into another Avalon if we try and force there to be *just one* engine (I'm not even sure if there can be just one engine, just like there can't be one XML parsing library). I'm sure everyone involved in an ideal world would like just one implementation of everything; but lets try to get there calmly and without undue pressure with the knowledge that its OK to diverge if it makes sense as there are many different ways to solve this problem together with a wide range of user requirements in this space.

e.g. if we ended up with 2 engines with different features doing things differently for valid reasons and sharing some code and - more importantly - the developers of each engine share ideas openly with each other, then that will still be a big success IMHO.


I'm glad to see the two seed organizations be so
willing to cut-n-chop to make that real; it bodes really well for the
success of the project!

Agreed - but lets not put unnecessary handcuffs and restrictions on the folks involved; lets encourage code reuse but allow diversity to flourish too.

James
-------
http://radio.weblogs.com/0112098/


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to