www-community mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stefano Mazzocchi <stef...@apache.org>
Subject Re: Rules for Revolutionaries
Date Sat, 09 Nov 2002 20:33:03 GMT
Ceki Gülcü wrote:

> But I have been thinking about this for a long time! Let me add that I
> very much admire your attitude. One can only emphatically support your
> exhortations for modesty, respect for others and level-headed
> behavior.


> Let us just not over do it. Yes, a leader will be wise to leave when
> he or she becomes a drag. However, there is no glory in leaving a
> project for the sake of leaving the project.

Agreed. Totally.

> As for your the statement
> that a community is healthy only when it can survive the departure of
> its leader, I think it is somewhat misleading. A community is healthy
> when its participants are having fun, not necessarily when it can
> provably survive the demise of its leader.

Ok, wrong term. A community is "evolutionary stable" when it can survive 
a leadership transition without falling apart.

But this doesn't mean that you have to prove that by leaving and I've 
not left cocoon on the purpose of proving my theory (I'm not *that* 
fanatic :)

> Sometimes a community can
> survive its leader, only to fall apart a while later. The statement
> "community is healthy only when it can stand its leader leaving"
> somehow suggests that a community should force the leader to leave in
> order to check whether the project is healthy or not. That is probably
> not what you are saying or what you mean, but suggesting that leaders
> are somehow dispensable strikes me as over doing it. Its hard to replace
> people.

Darwin doesn't think so. Sure, this is a cynical attitude, sacrificing 
individuals for the specie. But this is dangerously close to moral 
ethics and I don't want to drive this conversation into those muddy waters.

> It's like preaching abstinence to your children only to discover that
> they are still virgin at 60. Maybe not what you intended as a parent. :-)

eh? you have a pretty weird sense of similitudes. Let me tell you :-)

> This pun introduces the next topic: software darwinism. The
> principle of the survival of the fittest is a cruel one. Of course its
> cruelty does not mean that it is wrong. It just does not apply to
> Jakarta. We must make every effort that it does *not* apply to
> Jakarta. Let me explain.
> Darwin's thesis is that offspring invariably resemble their ancestors
> although variations can occur between each generation. Some variations
> may advantage the survival of the individuals showing the variation.
> Thus those individuals may have more offspring and may eventually form
> a new species competing with the original species. I am sure every one
> already knew this. In his book the "Origin of the Species" Darwin
> insists that the clarification of species is highly correlated with
> ancestry, not necessarily with an act of God, which was quite a
> shocking thought at the time. That is perhaps why he waited over 20
> years to publish his ideas.

And centuries later people are still shocked when they hear this (we 
already had such a conversation on cocoon-dev so please, don't start a 
'I don't believe in biological evolution' thread because this is *NOT* 
the point, we are just applying the concept to software. The fact that 
you believe in it for your own biological evolution doesn't change 
anything for a software perspective).

> My point is that natural selection applies to a birth death
> process. We don't have such a process in software.

Yes we do (gosh, I have to write that article on software darwinism one 
day!). Releases are individuals, the software is the specie.

> What we have is a
> series of evolutions. Natural beings do not change their genes during
> the course of their life.

Like a software release.

> A lion does not say, hey it would be cool to
> have a long neck like a giraffe, let me grow a neck. We do that in
> software all the time.

Wrong. *WE* modify software, it's not the software itself that 
auto-modifies (like lions don't grow necks or you don't grow 
infrared-sensible retinas)

Who are *we*? the code modifiers. In short, we are the mutant agents.

> We look at a feature or idea in someone else's
> code and import it into our own.

The difference between pure darwinistic biological evolution and our 
development model is that our genetic modification (where genes = code) 
is not random.

> Software development is not a life and death process.

I *stongly* disagree with this vision.

> We do not want that anyway.

I do. I want software releases to fit their environments (read: work) 
until they don't fit anymore and get updated and replaced (read: die).

> We do not want software to have 5 forks and die two
> weeks later. We want out software to resist time but also allow it to
> evolve and to improve. We want sane evolution not a jungle.

I want software that fits environmental needs and maximises 
environmental energy (read: development is focused), anything else is 
secondary if it serves for the purpose of healthy evolution of the 
"specie" (read: the software, as a genetic strain, not as an individual 

> To me, Darwinism suggests either painfully slow evolution or just a
> pointless life and death cycle.

hopefully I showed you another point of view of this thing. I don't want 
to change your mind, just let you know my point so that you can mix it 
with yours and cross-pollinate back :)

Stefano Mazzocchi                               <stefano@apache.org>

View raw message