Interesting thoughts Niall! Some comments interspersed (because this
type of philosophical debate is, to me, just as important as the
technical stuff)...
Niall Pemberton wrote:
IMO there are two main reasons for this:
1) Backwards compatibility - Struts was so successful that the impact of
breaking backwards compatibility hampered innovation and change (much easier
to break compatibility when theres only a few users).
Very true, backwards-compatibility definitely hampers forward momentum.
Just ask Microsoft :)
But... at the risk of sounding like sour grapes (you'll just have to
take my word for it when I say that isn't the case), what about
something like my AJAX extensions to the HTML taglib? They were, IIRC,
backwards-compatible. Yet they were not accepted because no committer
was willing to accept them. What about my SetupItems?
Strictly-speaking it broke backwards-compatibility, but only in terms of
a DTD change, which, IIRC, has happened before with version upgrades.
What about my update for adding anchors to forwards? Again, unless I am
not remembering correctly, this too did not break backwards-compatibility.
Again, I don't care that these things weren't accepted. I moved on long
ago :) But the point is, these are examples of things that didn't get
added because committers decided they shouldn't be. That is of course
your right as a committer, and I have no argument with that. Maybe this
goes more into #2 actual?Ö).
2) Lack of willingness to contribute back from the vast majority of
businesses that use Struts.
Certainly most people and businesses do not give back. I absolutely
think that's true. But could part of the problem be a perception that
it's a pointless activity 99% of the time because the contributions
aren't going to be accepted anyway? I don't mean for that to sound
antagonistic, but maybe I'm the only one that is willing to say it... I
do believe that perception exists, whether rightly or wrongly so, and I
do believe it plays a part in people and groups not bothering to give back.
The people who work on Struts do so in there own time as volunteers. Why
haven't these businesses stepped up and paid for developers to work full
time on this project? I may be doing them a dis-service since I don't know
the history, but as an example BEA had a full time team developing Beehive
based on Struts but to my knowledge never actually contributed to Struts.
Why was that?
I think there is very clearly a feeling of getting something for nothing
among most companies using Struts, or any open-source product. It
doesn't benefit their bottom line, or so it's easy to convince
themselves, to contribute to something like Struts. I think a CIO that
could make a direct correlation between that $150,000 they might spend
on two full-time open-source developers and the boost to the bottom line
would be the first to succeed at that task :)
Now companies such as Sun, Oracle etc. have put alot of resources into JSF
including giving away lots of stuff away for free (e.g. ADF faces, Studio
creator) - if thats "marketing hype" then they're putting their money where
they're hype is. If they think that this strategy and JSF is a good way for
them to make money, then they're free to do so and push it as hard as they
want. Its not them or the people that have actually contributed to Struts
that should be criticised or questioned for their motives. Its all those
businesses that have taken and given nothing back - the silent majority.
Where are the full time paid developers for Struts?
I agree that it's fine for Sun, Oracle et al to do what they are doing,
whether it's hype or whatever else. It's capitalism, it seems to work,
and it's fine. What bugs me is when they, or anyone, tries to convince
you it's something else. Hey, tell me your trying to make a buck and I
might be willing to buy! It's seems minor perhaps, but it's not: when
you know a business is trying to make money and yet tries to sell you on
some altruistic goal of "making your life better as a developer", well,
there's a certain degree of dishonesty there. It may not be an outright
lie, they may really believe they are making things better, but it's
certainly not the primary motivation. I suppose one could argue it's
just sales in generak, and I suppose it is, but then again, isn't sales
always to some degree dishonest? I'm not naive, I understand what the
motivation beneath it all is, so don't try and convince me otherwise.
I'm reminded of Aesop's fable, "The Scorpion and the Frog"...
A scorpion and a frog meet on the bank of a stream and the scorpion asks
the frog to carry him across on its back. The frog asks, "How do I know
you won't sting me?" The scorpion says, "Because if I do, I will die too."
The frog is satisfied, and they set out, but in midstream, the scorpion
stings the frog. The frog feels the onset of paralysis and starts to
sink, knowing they both will drown, but has just enough time to gasp "Why?"
Replies the scorpion: "It's my nature..."
If I'm the frog, I wouldn't so much be pissed that the scorpion stung
me. I knew it's nature... I would be pissed that it lied to me! (well,
and more so that I allowed it to fool me!)
I agree that we (the struts PMC) have a responsibility to our users and so
far I think we've fulfilled that - Struts is still being maintained and
released.
But that's the easy part of the responsibility, and that goes into any
open-source project. Struts, like Hibernate, like Linux, like MySQL,
are on a different level. There's more to it than that. There is
setting a clear, consistent, well-articulated direction... there is
avoiding confusion from changes of direction that could be smoother...
there is making decisions that do not cause the user community undue
stress. There is a responsibility of leadership. It seems I may be
alone in this feeling, but I'm not afraid to say what I think.
Just maintaining the code is the easy part. Maintaining the integrity
of the project is the hard part.
> But I don't think the vast majority of businesses that have
benefited from Struts have fulfilled their responsibility and so at the end
of the day if JSF takes over or Struts stagnates then those business that
have put nothing in, have nothing to complain about.
On this I totally agree. I know of extensions to Struts I've seen that
would have been great contributed back, but they weren't for whatever
reason (legal, supposed trade secrets, just plain lazyness or lack of
caring, etc). And your right, if Struts stagnates and JSF continues to
develop, very few people have cause to b***h about it because they
didn't even try to do anything about it when they had the chance.
Niall
Frank
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]