Some thoughts:

* Evolution as a concept has been borrowed from biology into other fields with bad results before. The notion of "cultural evolution" in anthropology led to 800 tons of bullshit based on the idea that human history is a continuous evolution from "primitive" cultures to "advanced" cultures. Sure, we can say that Black and Decker makes better drill bits than Upper Paleolithic tool makers, but does McDonald's make better food? Does Pat Robertson make better religion? Does Smith and Wesson make better weapons (judged societally rather than techncally)? Does Brittany Spears make better poetry? And is a so-called "primitive" or "stone age" culture like the Australian Aboriginies the result of 40,000 years without cultural evolution or of 40,000 years of continuous change in areas that are not measurable by our current methods?

* I think the distinction you make between individual and population is critical for the concept of evolution but I'm not sure what constitutes "an individual" and "a population" in the software world. Suppose an individual is a concrete instance of an abstract pattern. Individual change would be what happens when the instance is run, population change would be what happens over the course of changes to the software that produces the instance.

* Or suppose "population" is the sum of all thoughts of all programmers and "individual" is one programmer's thoughts. The process by which an idea like object-oriented-programming enters the population is related to how it enters the code of individual programmers but is a bigger question. The fact that an individual godzilla can still use perl4 doesn't say much about how the rest or our code has changed since perl5. (Maybe we should abandon the notion of software evolution in favor of software creationism - the gods gave us perl5 and it was good. :-)

* I like your analysis of Word as a better reproducer, but there are other ways of measuring the survival and reproduction of ideas. Word processors as a population adapted to the changing software ecosystem with the popularity of the web by including things like hypertext linking, so did Word as an individual.

* Metaphors, are by definition metaphors. They highlight certain features of similarity between things and background others. When we say "that surgeon is a butcher", we don't mean he sells human body parts for food, we mean he has no fine-control in his cutting methods. To think that every feature of biological evolution will map onto every feature of software evolution is not helpful. What's helpful is pointing out the places they diverge and converge. In that sense, your posting is a necessary thing to make the use of the word helpful. So thanks!


In reply to Re: (OT) Evolutionary Design?? by jZed
in thread (OT) Evolutionary Design?? by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.