You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Glen Ezkovich <gl...@hard-bop.com> on 2004/12/18 00:07:39 UTC
Increasing Cocoon's mind share (was Orbeon vs Cocoon? - Live version available?)
On Dec 17, 2004, at 8:34 AM, Steven Noels wrote:
> As of currently, I think what worries me most is alienation of the
> user community. I must say I don't know many projects where the ratio
> of developers vs users is comparable to Cocoon's - which means (IMHO)
> that you almost need to be a Cocoon dev before you can actually use
> the product. That's asking too much patience from a user who isn't
> interested in framework, but wants to build business applications
> instead.
What do you see as a possible solution to this problem?
I think before we can even begin to solve this problem we have to
understand who cocoon users currently are, what they want and wether
they are really the target audience of the work being done.
Below is some personal opinion and speculation concerning Cocoon, its
user community and shifting paradigms. I think a survey of actual users
would be interesting and I am considering putting one together. On the
other hand I think making the distinction between users and developers
when it comes to putting together web applications is a little silly,
since anyone who is putting together a unique business application is a
developer. A user would be someone who configures an existing web
application to meet their particular needs. If you read below this
please realize that I have only observed this community for the past 9
months and what history I know is second hand.
In its simplest form Cocoon is indeed a server side application capable
of producing simple sites where data and presentation can be completely
separated. Such sites can be designed and implemented by your average
webmaster. With a little bit of SQL and/or Java knowledge they can
create dynamic sites. In the hands of a more advanced user, Cocoon is a
framework/platform that allows a much more powerful business
application to be built using a MVC pattern. The more complex your
application is, the more advanced a user of the framework you must be.
No doubt the webmaster who was able to cobble together his site with
Cocoon a year ago using the Authentication Framework and ESQL would be
hard pressed to implement it today using Java, Hibernate, CForms and
Flowscript. However, nothing stops him from implementing it the exact
same way today as he did a year ago. I, on the other hand, as an
application designer/developer have a lot more flexibility then I had a
year ago. I can achieve a true separation of concerns in a much simpler
and obvious way.
Having said that, the hard part of a web facing business application is
the business model and logic. Presentation has been simplified a great
deal over the years. Mediating between the presentation and the model
and controlling application workflow have been much more difficult then
they should have been. Flow is about the simplest way I have run across
to mediate between the model and the view. On the other hand I'm not
real crazy about CForms (or any forms handling framework at the
moment). I find it to be overly complex for my needs. If anything, I
think on the whole, the advances made in cocoon have made things
simpler from my perspective as a developer. So maybe I'm not a user,
maybe I'm a developer who's only written sitemap components to see how
its done and once in a misguided attempt to integrate a store directly
into cocoon. (why did I ever try such a thing? buy me a beer. my
embarrassment has a price ;-).)
There has been a small paradigm shift in the recommended way sites
should be built with cocoon. The shift has come as a result of the
desire to put more complex applications on our sites and to find better
ways to manage that complexity. Unfortunately, complexity is hardly
ever removed but is usually shifted somewhere else. The shift in Cocoon
seems to have been towards the users. By that I mean that it is the
users responsibility to code or program pieces of application
functionality as opposed to relying on the Cocoon developer comunity.
This has left some users feeling abandoned. To some extent thats true,
the developers will not be spending time writing Actions, they are
assuming that users will be able to achieve the same results in a much
more direct manner through using flow. Unfortunately, flow requires
programming, not simply making an entry in the sitemap. Imagine what a
poor webmaster must do to authenticate a user using flow as opposed to
the just using <map:act type="auth-login">. (this is just an example of
switching from Actions to flow, I know the Action could still be used)
Likewise, having to get data from the database directly using flow,
rather then using ESQL and XSP requires a lot more of the user. This
shift makes it much more likely that a developer will be needed to
create a web app. The user community is shifting more towards the
developer community. Cocoon is becoming more of a framework/platform
then an application.
The mind share that needs to be gained is that of web developers, those
that are building business applications. They need to view Cocoon as a
viable platform that allows them to produce flexible, scalable and
maintainable applications. If they are looking for a quick and dirty
solution they should just use JSF with Sun Studio Creator or better yet
VB.net. If you want to gain the mind share of web publishers then you
will have a hard time unseating the combination of Dreamweaver and
Contribute.
on a related note:
I do think that several good tutorials on putting together a business
application using cocoon would go along way to alleviating some
concerns. I am willing to start putting at least one substantial
tutorial together, but I would like some input before I begin. To that
end, I will submit another post soliciting some advice and your views
on what would be most important to cover.
Glen Ezkovich
HardBop Consulting
glen at hard-bop.com
http://www.hard-bop.com
A Proverb for Paranoids:
"If they can get you asking the wrong questions, they don't have to
worry about answers."
- Thomas Pynchon Gravity's Rainbow