Ouh,
I didn't realize what kind of the avalanche of arguments I would start. Maybe this tells that there is something bubbling under.
I don't want to hurt anyones feelings. I don't want bad blood.

I think there are so many different level persons involved in this, that it will cause some misunderstandings from time time to time. I like Cocoon, I like C2.1, I like C2.2, I like C3 and probably I will like C4. I believe I understand those who are Cocoon developers or somehow else near it. But maybe you who are inside don't understand dudes like me. Robby wrote in his "final statement" that "Just like we all use Java.." I do not use Java. When I first get to know Cocoon, I hadn't have written a single line of Java. Nowadays I have written maybe 50 or 100 lines. Other languages yes, but not Java.

I liked Cocoon 2.1 because I could do neat things without knowing a single decent programming language. After then, I have written quite a lot with C#, but not with Java. Still I like Cocoon.

I do think that C3 is a clever thing to do. I do. I am hoping that I will get into it some day. But because I do this for living, I can't jump to it right away. C2.1 is the most familiar. Have to start with it. Then maybe C2.2 and finally C3. Or just forget the whole thing. The latter is the way I chose a couple of years ago. But I may have changed my decision.

- mika -


18.4.2012 18:07, Thorsten Scherler kirjoitti:
The whole thread had changed the subject a long time ago ...

On 04/18/2012 03:29 PM, Mark H. Wood wrote:
On Wed, Apr 18, 2012 at 11:34:26AM +0200, Derek Hohls wrote:
It all depends on your environment and the "rate of change". There are
many back-end systems (running on old but reliable technology) that
hardly change at all.  However, the web (and now tablets/mobile) has a
very high rate of change (and expectation of change). The point here is
that by using more loosely-coupled modules then you will only have to
change the parts that really need to be changed; a monolithic approach
is less amenable to that.
I think this may actually underscore the O.P.'s point.  Changing the
whole world in one go is the monolithic approach.  The modular
approach would enable choosing new mechanisms for new work and
sticking with old, established mechanisms for existing, still-useful
work when that makes sense.  Having to throw out piles of satisfactory
working code just to use a dependency version that still has the
attention of its maintainers is really unwelcome.

I think the complaint is that Cocoon 3 is really Butterfly 1.

Well, yes and no.

If you have experience with c2.x you can do close to the same thing on c3. Most of the pipelines i saw are pure generator -> xsl transform -> serializer stuff that has not changed a bit.


Yes there are some components not yet migrated but we are an open source project and welcome every patch. However the basic idea from the start of 2.1 blocks had been to slim down cocoon. c3 is the consequence of 10 years of "slim" down.

To pin it down on a concrete code example if you wanted a specific component in c2.1 you needed to get hold of an avalon manager, ask the manager to lookup your component (or additional ones to do the final lookup). Every component needed to be configured and registered with the manager. Leaving your 20 lines of code being 90% boilerplate code.

In comparison in c3 you do
@Autowired
@Qualifier("messageSource")
ReloadableResourceBundleMessageSource messageSource;

To inject your variables and creating a setter you are not forced to even use spring BUT you can still reuse your code. ...and best NO boileplate code, resulting is much cleaner code.

I had chosen c3 as base framework for our current project because that allowed me to have pure java devs in my team that never worked with cocoon at all and they were productive since day one (which is not possible in 2.x having made that experience in other projects).

Bottom line regarding forms handling html5 + ajax framework + your js + css as view technologies and c3 rest service as form action handler is a beautiful base due to various reasons: - mobile ready (you can even use even generic app generator to create native android, etc. apps without writing a single line of code)
- REST services are not bound to c3
- REST services can call or even dynamically create c3 based pipelines.




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@cocoon.apache.org
For additional commands, e-mail: users-h...@cocoon.apache.org

Reply via email to