netsql wrote:
If there is an itch for anyone, they can easily go to sf.net, pick a license they like, and implement an enlightened design.

This argument is trotted out quite frequently here, but it really begs the question in my opinion. Granted, you can always fork off your own version of Struts and work on it somewhere else, but the point is that it will only get a very small fraction of the attention and usage of the canonical version on struts.apache.org.

You can't really understand what is going on here without taking into consideration that basic mechanism -- let's call it the "Apache effect". Suppose you're a moderately talented developer. You know that any work you do that is labelled as Apache Struts something-or-other is going to get a huge amount of attention and usage -- almost completely independently of its quality. You also know that if you put the exact same work (or even something better) on sourceforge or your own website, it will basically be ignored.

It is only by reference to this phenomenon that one can make any sense of the so-called Struts-Webwork "merger". On pure technical grounds, simply the goal of improving on an already superior framework, the Webwork people have basically zero reason to "merge" with Struts. While it's true that they get some more developer manpower, AFAICS that plus is more than offset by all the extra procedures and bureaucracy that they have to bother with as an ASF project. I think it's clear that their motivations are purely nontechnical. By relabelling their work "Apache Struts" something or other, they hope to get a much larger public for their work.

This whole "Apache effect" really is a gravy train of sorts. It isn't IMO a situation that the insiders really engineered. This overvaluing of the Apache brand is some kind of market bubble that has developed. But, from the point of view of an open source hacker, it's a gravy train. You can write some code and put it up somewhere and a few dozen people end up downloading it and trying it. If you can put it up here and call it "Struts something or other", literally thousands of people will try it at least. While it is conjecture, I think that, it is reasonable to suppose that in the latter case, the exact same work will receive literally 100 times as much attention and usage. (That may actually be a conservative estimate.)

Now, think about it. When you've got something this good going for you, are you going to let other people in on it too easily? (Of course not.) So, a lot of what you observe here is people (insiders) protecting their (virtual) turf. And you see outsiders basically questioning the insiders' right to exclusive use of that "turf".

So, to say that an outsider is always free to go off somewhere and fork the code is to beg the question entirely. Of course they are, but that's not what's at issue.


I believe that even if they want to check out any source of Struts module, and refactor it under ASF license, that is legal too.

True. However, one question: do you think that, by saying this, you are telling people something they don't know?

But let's think about what you're proposing for a sec. There is this whole attempt to redefine reality whereby Struts is not a product but an umbrella housing 3 completely separate products, Struts Action 1, Struts Action 2, and Struts Shale. However, the latter 2 are just completely separate things that are getting labelled as "Struts something or other" to benefit from the brand-name projection. The only thing that *really* is "Struts" historically is Struts 1.x.

So, let's say that somebody like Frank Zammetti, who wants to develop the Struts 1.x codebase further, goes off to sourceforge, and starts a project to move that codebase forward. He can't call what he does "Apache Struts" and of course, cannot benefit from any of the Struts brand name projection.

Meanwhile, Craig and other want to work on Shale. Ted and Craig and the existing Webwork team want to work on Webwork. None of the Struts insiders want to do any further work on the existing Struts codebase. At least nothing significant. In this scenario, the person who is willing and able to carry on work on the product that really is Struts cannot benefit from the Struts brand name projection, but the people who have no interest in carrying on work on Struts get the benefit of that for projects that really have nothing to do with the Struts project. (Of course, they redefine the Struts project as being whatever they want to work on now, but is that really legitimate?)

Note that none of this is really community-driven. (At least if community is defined to include all the people with a stake in the Struts 1.x code.) Did anybody try to ask the Struts 1.x users whether they were in favor of abandoning further development on Struts 1.x?

I can't help but think that if you actually asked them, most would answer in the negative. Surely, they would, because, how can they lose? If Frank Z. and other collaborators develop an enhanced version of Struts 1.x, they could still stick to whatever version they were using, right? The presence of more development on 1.x is, in the absolutely worst case, a +0 for them.


It it's not an itch, then it must not be important to anyone.

I think that conclusion is quite faulty. One thing that I have concluded is that there are a significant number of people who want Struts 1.x development to be carried on. Some of those people are even quite willing to roll up their sleeves and do the work.

In terms of basic open source ideals as I have come to understand them, there is simply no justification for preventing people like Frank Z. or possibly Phil Zoio and others from carrying on work on Struts (I mean, the 1.x codebase) if none of the insiders are interested in doing so.

Again, getting back to this whole idea you mention that anybody with an "itch" could fork off a separate version, well.... under what circumstances does this usually occur in the open source world?

If someone who wants to work on the FreeMarker codebase, for example, has very very different ideas about how the product should evolve from me and the other project admins, it might be necessary for them to fork off a separate version in order to work on those ideas. However, I think that assumes that the insiders also have plans to carry on development of the product. If the current insiders have no plans to do anything, and somembody else wants to come in and do something, why should the outsiders have to fork off a separate version? If we have lost interest in doing anything, why should we hang around and be obstructionist? We might as well just pass on the flame to the people who want to do something. In my considered view, that is how open source projects *should* work.

The problem in this Struts case is that the "Apache effect" I mentioned above. I referred to this overvaluing of the Apache brand as a kind of market bubble that has developed. A characteristic of a market bubble is that it creates certain perverse incentives. (Just look at some of the nuttiness that occurred in the dot-com boom as an example.) And this leads to strange things: in this case, people who don't want to continue work on Struts won't pass the flame to the people who want to continue working on it. So they redefine the stuff they want to work on (Webwork, Shale, whatever...) as being Struts. And a supremely perverse aspect of this is that the people who want to continue development on Struts (when the insiders don't) are being told to go "fork off" a non-canonical version.

This branch of the discussion, where we were talking about meritocracy, this was because ASF is supposedly based on the idea that open source projects are a meritocracy. The people with more "merit" run the show. And this is a real problem, when these people start talking about the so-called "Apache Way". The Apache Way is a rather nebulous thing, mind you, but one thing it is clearly supposed to be is a meritocracy. When their stewardship of the project over the last several years has had such dismal technical results, surely some of the logic of meritocracy should kick in and they should have to step aside and let people with some gumption to move things forward have their crack.

When people retain their position and power based on incumbency, independently of how poor their performance has been, you obviously don't have a meritocracy.

And the logic of this is actually inescapable, it seems. If you don't have a meritocracy, you're not following the Apache Way.

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





hth,
.V


Dakota Jack wrote:

What is amazing to me is that the people who are called "trolls" are
only those in some way contrary to the status quo.  Others in favor of
the status quo who do nothing but use invective and display 10 year
old conduct are never mentioned.


 They are used by the powers that be to attack without any
point dissidents.  This is really an open source Gulag Apache.





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

Reply via email to