dusty wrote:
So we get more aggressive with our releases.  We definitely want to preserve
compatibility but if we have a good reason for breaking compatibility we let
people know and show them how to migrate. At the same time we get more
aggressive with marketing, by overhauling the website, getting the project
blog going, re-organizing the wiki and documentation, getting the source
available from Fisheye, maybe even start a conference.  Everything but the
conference part seems pretty doable.
I for one don't think S2 needs any marketing, or a web site overhaul, or any of that sort of thing. I can't think of too many projects that have become a big-time success based on that sort of thing... in fact, JSF is one great counter-example to that theory. Many people got turned off to JSF early because for a long time it was nothing but marketing hype. It basically took people stopping the hype train for a while and actually churning out some half-way decent technology for it to be seen as something more at this point.

I think in terms of die-hard Struts developers, there's decent buy-in for S2. I think many Struts developers are migrating to S2 (not necessarily migrating existing apps, but in terms of new development). Where I get the impression there's a shortcoming is in attracting new developers.

Assuming that's true, the question should be why that is... why are other frameworks gaining mindshare while S2 maybe isn't (or at least not as fast as it should be given its lineage and Apache branding, which is still a big positive for any project). I think the answer is twofold.

First, in terms of what S2 offers, frankly, there's not really a whole lot that truly excites developers. There's nothing revolutionary about it. Some would say that's a positive, and part of me would agree, but when there's so many frameworks to choose from, if you don't have anything that truly differentiates your offering then it's just going to be one more option among many.

I think however that there's a really more fundamental problem that isn't S2's fault at all: many new development projects, maybe even most at this point, are (buzzword alert!) Web 2.0 in nature. They are much more client-heavy and just fundamentally work differently than what Struts has historically been used to build (yes, that's a generality to be sure, but I think it is, *generally*, true). If you buy that theory, then you have to reasonably ask what does S2 offer to make developing those types of applications easier?

And then when you have an answer to that question you have to compare it to other frameworks that people are using for applications of that nature. Things like ZK, GWT, JSF, Rails, and so on. You can even compare it to using something like Dojo or Ext JS with a more lightweight back-end based on something like DWR. Does S2 give me something tangible compared to those? Does it fundamentally make my job easier, or my application better? If you are unable to articulate really clearly and strongly and in a demonstratable fashion where S2 helps in this regard, then I believe it's a losing proposition.

To be sure, there *are* some cool things in S2. What I for one don't see, and I've heard a similar feeling expressed by many as recently as at The Ajax Experience earlier this month, is a clear, coherent vision of how S2 lets me develop these so-called Web 2.0 applications better than any other framework. What is there in S2 to truly excite Web 2.0 developers in S2 as compared to other frameworks? That to me is the fundamental question to be answered, and the fundamental reason S2 doesn't have the uptake many feel it should. I hesitate to put it this way because it seems potentially unfair, but I'll say it anyway: it's almost like S2 is standing on the sidelines while the web development world moves in a fundamentally different direction, and S2 isn't keeping up as well as it needs to in order to be the success S1 was.

Please understand I'm not at all being critical of S2 or of anyone involved in it. These are my impressions of things, but they are in part based on conversations I've had with other developers expressing similar thoughts, so I know it's not just me. My hope is that something constructive can come from these comments, and that's certainly my purpose in taking the time to write this reply.

Frank

--
Frank W. Zammetti
Author of "Practical Dojo Projects"
 and "Practical DWR 2 Projects"
 and "Practical JavaScript, DOM Scripting and Ajax Projects"
 and "Practical Ajax Projects With Java Technology"
 (For info: apress.com/book/search?searchterm=zammetti&act=search)
My "look ma, I have a blog too!" blog: zammetti.com/blog


Don has been a kind of de-facto leader for the project.  I wonder what he is
thinking.....


Jeromy Evans - Blue Sky Minds wrote:
I share similar sentiment. Whenever I take a critical look as to whether to use struts2 I keep coming back to the conclusion that it's fundamentally sound as far as java frameworks go. I'd categorize the problem as not enough generals. Most of us can make incremental improvements or start new plugins but few have the courage to to drive through fundamental changes or remove features. I'd join some kind of coordinated hack-a-thon to break through the inertia.

My #1 issue is that it's *too difficult and time-consuming to create a release* on the 2.1 trunk. If releases are difficult and dependent on a few key individuals then momentum slows and the project inevitably stalls.

I've been independently tinkering with release process to try to automate all assembly within a CI system so a formal release is an administrative process only, but it's not much fun.






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

Reply via email to