Slashdot Mirror


The Evolution of Software

An anonymous reader writes "Russian physicists Gorshenev and Pis'mak have posted a preprint claiming evidence that software projects naturally attain a state of self-organized criticality, in a process analogous to the contested theory of punctuated equilibrium in biological evolution (see also this paper by Bak and Boettcher). The software projects studied are FreeBSD, Mozilla, and GNU Emacs, by analyzing data from their CVS checkins."

7 of 15 comments (clear)

  1. Huh? by vudu · · Score: 2, Funny

    The what of the huh did what?

    Huh?

    To reiterate...
    WTF?

  2. Not a large stretch of the imagination by runswithd6s · · Score: 2, Insightful

    I'm not surprised someone is using punctuated equilibrium to explain some of the development patterns in Free Software. Short periods of intense development followed by long periods of inactivity. Sounds like a pattern of a volunteer developer to me, giving his or her free time to a project. Since free time rarely occurs as contiguous segments, the parallelism to punctuated equilibrium is easy to see. I just hope this paper doesn't earn these two yokels anything but a quick pat on the back for pointing out the obvious.

    --
    assert(expired(knowledge)); /* core dump */
    1. Re:Not a large stretch of the imagination by Arandir · · Score: 3, Funny

      Here's the real story:

      I've spent every minute of available free time for the past two months hacking on my project. I've finally uploaded libfu-3.2.7 final. My eyes don't focus, my girlfriend left me, and my cat stopped leaving dead mice in my slippers. So for the next two months I'm not touching any code.

      That's why you get punctuated equilibrium.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    2. Re:Not a large stretch of the imagination by NDPTAL85 · · Score: 2, Funny

      Um was typing code on your computer really more important than paying attention to your girlfriend?

      --
      Mac OS X and Windows XP working side by side to fight back the night.
  3. Biologically massive software development by TuringTest · · Score: 2, Informative
    If you are interested in how software development can be addressed vith unusual points of view, you can read also this article:

    Mob Software: The Erotic Life of Code
    An Essay in First Person by
    Richard P. Gabriel & Ron Goldman

    It has been previously discussed in Slashdot.

    --
    Singularity: a belief in the "God" idea with the "demiurge" relation inverted.
  4. Correction by OECD · · Score: 4, Funny

    Russian physicists Gorshenev and Pis'mak...

    Gorshenev is a Russian, but I'm pretty sure Pis'mak is a Vulcan.

    --
    One man's -1 Flamebait is another man's +5 Funny.
  5. Stating the obvious by achacha · · Score: 2, Insightful

    I wonder how long it took these guys to obfuscate the obvious that any software developer learned in CS101?! All they are saying that after a certain time the software development process (i.e. CVS checkin data) reaches an equilibrium only perturbed by small changes.

    Well if that wasn't the most complicated summary of the software development process, I don't know what is.

    Yes there are a lot of changes initially, since the product is being written, then as it reaches alpha the features taper off (thus the heavy CVS activity) and the new CVS activity is mostly high priority enhancements, as we reach the beta stage, the CVS activity is mostly bug fixes. Post release CVS activity is again intermittent CVS checkins of bug fixes, and such.

    Now if these guys really wanted to prove their theory valid, they should have analyzed CVS branches individually and would have seen that their theory does not hold up. A branch in CVS is proportional to a change it will caryy and the CVS activity in a branch scaled to that will show that there is no slowdown but rather the same chaos as in the start of the project except localized to a branch.

    I do wish these academics would try and write about something that will move us forward, rather than taking ideas that are well known and obfuscating them to a point that they set up back in the time it takes to understand what they are trying to say. Or maybe they just had a bad run with Babelfish :)