Jason Carreira wrote:
I have a couple of comments to make about this.

First of all, presumably the whole motivation of this
"merger" is that you could unite your energies on a common framework. If there is still ongoing work on 2 different frameworks, it kind of belies the whole point of the merger, doesn't it?

Now, my understanding of the point that Michael
Jouravlev was making is that, once you label something as version n+1 of something, you are basically putting out the message that version n is superseded. Typically, verseion n+1 of a product supersedes version n. I may be an excessively simple-minded guy, but if I hit a website and can download FooBar version 1, or FooBar version 2, I guess I'll go with version 2. I will also just assume that all new development is on version 2, not version 1.

What would a casual observer make of this? You
"merge" with a competing framework in order to combine your efforts (i.e. not disperse your efforts on 2 different products as before) and you label Webwork as Struts Action 2 when the existing product is version 1. I put it to you that, on the basis of this, nobody with common sense would count on any further development of Struts 1.x taking place. People will just naturally draw the conclusion that Struts 1.x development is being abandoned. If it was not your intent for people to think that, then you chose a very strange product naming strategy.

Now, even if, contrary to all outward appearances,
this conclusion is wrong, and you guys really do intend to further develop Struts 1.x, how much credibility do you have on this as things stand?

Throughout most of the past 4 years, Struts 1.x was
the only thing called Struts and was presumably the only real focus of development of Struts committers. However, development stagnated. To tell people that there is going to be any significant development on that codebase now, when it is competing for attention with another codebase (labelled version 2 of same (!)) is asking people to believe
quite a bit.

But in any case, if whatever project management
practices that were followed over the last few years continue to be followed without considering any changes at all, why should a rational person expect results any different than what there has been over the past few years? This would be a valid question IMO even if there was no merger with Webwork and no Shale.

If you continue with the exact same approach, which
has yielded rather poor results, and besides that, you don't bring in new people to work on Struts 1.x, why should one expect anything much to
come out of it?

My sense of things is that you should either just
forthrightly tell people that Struts 1.x development is being abandoned. Or, if it isn't, you should immediately offer to bring in people who are interested in working on it. Obviously Frank Zammetti is interested. I suspect that Phil Zoio would be interested. Probably other people
too.

But as things are, the contradictory message you are
emitting just seems outrageous. To prevent people who are able and willing to work on Struts 1.x from getting actively involved, and all the while emit confused messages claiming that Struts 1.x is not really being abandoned, surely this is a bit much for even people around here to
swallow, isn't it?

Jonathan Revusky
--
lead developer, FreeMarker project,
http://freemarker.org/


This is exactly like the split we had a few years ago
> when Patrick and I decided to start from scratch with
> WebWork 2.

Jason, I think to say "exactly like" is really pushing things. I shall point out two very fundamental differences between the two situations:

The first is that when you and Patrick decided to start a Webwork 2 -- with, I presume, a new architecture and so on -- this was a situation where you were the ones willing to roll up your sleeves and do the heavy lifting and make things happen. SAF2 involves the existing Struts commmitters, who failed to maintain any development momentum on their product, relabelling *your* work on WW as the next version of Struts. That's kinda different, isn't it?

Now, I don't know the situation in any detail that you are describing with Webwork (you have the advantage on me there) but I would say that, sure, there may well have been people in the WW community with reservations about the direction that you and Patrick were taking things with WW 2. BUT... the fact remains that you were the ones willing to do the heavy lifting, and, in a sensibly structured environment, the people willing to roll up their sleeves and do the work are the ones who determine the future direction of a project. (They could well be taking the project in the wrong direction, but they're the ones who are willing to do the work, so they make the decisions. It really can't work any other way IMO.)

The other significant difference is that the Webwork situation you allude to does not really present the same perverse incentives that you see here. If people who strongly disagreed with the direction that you and Patrick were taking forked off a separate version, there is not a strong brand name effect whereby their forked version would be competing at such a huge disadvantage to the version on opensymphony.com. So what you'd never have there is this aspect of things where people hang onto control of a project to control the brand name (and presumably extract value from that) when they don't really have the gumption to do the work of moving the project forward technically.

There still remains a userbase for WebWork
> 1.x  (Jira, as mentioned, is built on 1.x) and some
> development time is still put into it. Over time, the
> community shifted to a more and more 2.x focus, but there
> are still people answering WebWork 1.x questions.

Well, people will answer Struts 1.x questions because there is such a large user base and they will help one another out. This will happen independently of whether the Struts developers lifting a finger...


Development of 1.x is now mostly bug fixing (although
> there really aren't very many bugs found anymore) and
> sometimes backporting features from 2.x. So yes, you
> can have both, and yes, over time the community shifts
> to the next version. No one is saying 1.x will be cut
> off and no more work will be done on it. How much
> development is done there will depend on what the
> community needs in terms of bug fixes and new features,
> possibly some back ported from SAF 2.x to make it easier
> to migrate to SAF 2.x later.

Well, AFAICS, Webwork and Struts 1.x are completely different codebases, so I don't know how you are going to backport very much from SAF2 to SAF1.

As for bug fixes, well,.... I think that this separation of bug fixes and maintenance-level programming from actual product enhancement is an iffy separation. The fact is that if something is not being actively developed, i.e. nobody is really *in* the code, it means that even bug-fixes, by and large, aren't going to happen either.

My point is that, when a codebase is being actively developed, you have various people who really are into it and know the code like the backs of their hands, so when somebody points out a bug that is really easy to fix, very often somebody fixes it immediately. Once further development on something is basically abandoned, it is my sense of things that, most likely, nothing happens, certainly not product enhancement with new features, but not even the low-level bug fixes. Nothing. I think that, realistically speaking, that's more the nature of the beast.

Given that, the abandonment of further development on the Struts 1.x codebase serves existing Struts users quite poorly, since to switch over to Webwork (or Shale) is not really an option for many people.

Don't forget that Struts 1.x
> still has the largest user base of any framework. No one
> thinks that a ship of that size can be turned on a dime. :-)

Well, I don't quite see your point. The fact that the software has a lot of users does not, in and of itself, make it harder to develop it further. Code is code, whether 10 people are using it or 10 thousand. Of course, if you felt you had to build a consensus among that large user community, then that could well make things more sluggish. But actually, the existing Struts developers do not have any partiucular ethic, it seems, whereby they have to build any consensus among users. Probably most existing Struts 1.x users do not even really grok that Struts 1.x is being abandoned in favor of Webwork. If they did understand what was going on, you'd surely see a lot more discussion of migration issues on the struts-user list and you almost never see that. I infer from this that these people do not really understood what is going on, that development on Struts 1.x has been abandoned basically, they wouldn't do that.

But in any case, the main thing you said, Jason, that I want to rebut is this idea that there is a basic parallel between situations where you and Patrick made bold decisions going from WW 1 to WW 2, and the situation here. You and Patrick had the moral authority to make those decisions because you were the ones doing the real work. The incumbent Struts developers have no equivalent moral authority. Their record on maintaining development of Struts has been dismal. And it really seems to me that they have prevented people who were willing and able to continue work on Struts from getting involved in the project.

So the situations are not comparable. In fact they are more like night and day.

Regards,

Jonathan Revusky
--
lead developer, FreeMarker project, http://freemarker.org/




---------------------------------------------------------------------
Posted via Jive Forums
http://forums.opensymphony.com/thread.jspa?threadID=29563&messageID=57927#57927




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

Reply via email to