On 8 Jan 2004, at 17:35, Berin Loritsch wrote:


Recently someone referred to a Cocoon 3.0 that will eventually come. I think
that it will eventually come, though not for some time. I have some thoughts
that were inspired by experience with another group of developers, but I think
that they can apply toward whatever Cocoon 3.0 might become. You can read those
thoughts here:


http://home.earthlink.net/~bloritsch/id9.html

While I have been working mostly on the client side for the past year and a
half, when I come back to Cocoon every now and again I have a fresh perspective.
Cocoon is founded on some simple concepts, but it has ballooned into a huge
beast.


Perhaps that essay can even help current endeavors. I am a fan of Cocoon, and
for a time even helped build it. I currently don't have time to do active
development on it, but I still want to see it succeed.


What I wanted to remind everyone is that developers are users too. They should
receive just as much attention as the end user. Keep things simple, learning
from your experiences.

The thing I'm mostly proud about cocoon and its community is the fact that it learns from other communities' mistakes. Every community, at some point, has made a mistake. Design, society, infrastructure, politics, economics... I can name an open source project for each sin category... not all of those mistakes were fatal (some were, some are going to be) but for sure all of them were energy consuming.


Cocoon did one big mistake: the revolutional 2.0 transition. If I was to do it over again, I would have added SAX pipelines to 1.9 and today we would have cocoon 1.10.4... it would have saved us at least 6 months.

So, no 3.0 in sight: darwin guides us in small incremental steps... and where they are not small, they still are incremental: they can be rolled back without problems.

You cite the third law of thermodynamics, but you miss one fundamental concepts: entropy increases only when the changes to the system are not reversible.

Irreversibility is the problem, not changes.

I understood that a few years ago and since then I tried to guide all my software and architectural design in the light of simple and reversible steps. Even complex beasts like Cocoon Blocks have phases that can be reversed and changed without impacting the overall system... it took more effort to design them this way, but I'm sure this will give benefit.

There are efforts where this 'reversibility' was not taken into consideration... and this is where entropy explodes and lots of energy has to be put back into the system to give back order to things.

With reversible steps, the amount of order does not decrease, it just changes its balance. This means that no additional energy has to be placed into the system to balance the changes.

Of course, not all changes are transparently reversible (especially those who build on one another), but it's a good mental model to keep in mind.

--
Stefano.



Reply via email to