Slash Boxes
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

use Perl Log In

Log In

[ Create a new account ]

petdance (2468)

AOL IM: petdance (Add Buddy, Send Message)
Yahoo! ID: petdance (Add User, Send Message)

I'm Andy Lester, and I like to test stuff. I also write for the Perl Journal, and do tech edits on books. Sometimes I write code, too.

Journal of petdance (2468)

Friday October 12, 2007
10:51 AM

Evolution requires mutation

[ #34662 ]

(Originally posted at

In the past couple of days, I've seen some counterproductive social behaviors that help scare away community members and lead to boring monoculture: Taking a public dump on the projects of others when they do not directly affect you. It's rude, it discourages future risk taking in everyone, it goes against the very nature of open source that has brought us here today, and it leads to monoculture. I'd like people to stop.

Mutation #1: kurila

Gerard Goossen recently released kurila, a fork of Perl 5 that includes some speedups and tweaks that seem to scratch Gerard's itches, as well as bundling extra modules. I'm right now trying to get an interview with him to find out more about his project and the reasons behind it, because there are probably some interesting lessons in there. However, the disapproval on the Perl 5 Ports list was swift and severe.

All forking based on the Perl 5 syntax and code base, throwing away CPAN compatibility, seems to me to be a complete worthless waste of time.

So what? Who is anyone to say how Gerard is to use his time? Is there any harm here? No? Then leave the guy alone, please.

Mutation #2: lambda

Eric Wilhelm released lambda, a distribution that lets you use the Greek character lambda (λ) as an alias for sub {...}, apparently as a nod to Python's lambda keyword for anonymous functions. Immediately people jumped on him saying that the module should go into the Acme:: namespace, as if the namespaces of CPAN mean anything in 2007. There was also this cluck-cluck from someone I figured would be more encouraging (and later apologized, as it turns out):

Well, if you want to use it in your own code and your work's code, that's fine (because I'm sure you find typing CONTROL-SHIFT-EL so much easier than "sub {}" :) but if it shows up in your CPAN modules, you might get a few complaints since this sugar, while a really nifty hack, adds nothing complex but does screw up older editors and will confuse the heck out of a lot of maintenance programmers.

Personally, I figure that if someone's a smart enough programmer to do a hack like the lambda module, he or she is also smart enough to figure out potential downsides. And so what if he doesn't? What's the harm here?

Mutation #3: perlbuzz

Perlbuzz itself has always come under this umbrella of disapproval. Even before we announced the site, Skud and I have fended off the comments saying "We already have, we don't need Perlbuzz." Maybe not, but why do you care if we start the site? Why does it bother you? And why do you find it necessary to tell us that we're embarking on a waste of time?

I hope that in the past few months, the work that Skud and I have done have shown you, the reader, that Perlbuzz is a worthwhile addition to the Perl community, and a valuable news source that overlaps other news sources while not being a subset. What if Skud and I had listened to the tsk tsk of the doubters? Perl would be right where we it was before, with nothing new.

Evolution requires mutation

Why are we so quick to take a dump on the projects of others? The only way anything interesting happens is that people try weird, new things and see what sticks. What if Larry had listened to those way back when who said "Ah, we've got Awk and shell tools, we don't need Perl?"

I fear our tendency to monoculture. I want crazy new projects to thrive, not get squashed at their very infancy. Next time someone comes out with a project that you think is silly, congratulate the person rather than scoffing at it. Who knows what it might lead to?

(And a big thank you to Jim Brandt for the "Evolution requires mutation" idea.)

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
More | Login | Reply
Loading... please wait.
  • Weren't you the guy just taking a big dump on the list? Why not list all the things that you dump on (including use.perl, which you suggested should be taken over by force)? So, when are you going to stop taking big dumps?

    So what if people dump on ideas? It's better than telling people that public debate is forbidden. Perhaps you just don't like open discussion and freedom.

    • For anyone else reading this, if you take any of brian's assertions seriously and are concerned about them, please let me know and I'll refute each. Otherwise, I'll let this lie.


      • I’d just like links to the relevant archived message so I can form my own opinion.

      • Someone sent me a chat transcript from August 26, although I asked Pudge about this today and he says the suggestion was never that serious:

        michaelschwern: One proposition was for someone to propose to take over maintenance of use.perl from pudge.
        Andy Lester: But all this gets back to my original premise
        Andy Lester: of where are people to do shit?
        michaelschwern: ?
        Andy Lester: OK, so say we in this room says "Let's overhaul"
        Andy Lester: Who's going to do it?

        As for the other thing I mentioned sta

        • I read the whole thread. Andy's first post was terse but I would not call it a dump and it did foster other talk of which Andy took part and did not dump. I don't see the point here. Not being involved in the, I would agree with Andy's posts. Especially when you read the second one was created because "Perl lunch" notices were bouncing. After that Andy gave another good suggestion of creating a "social" list for things of that sort under

          I read it all and I didn't see dumping.


        • OK, I'm very confused. I know and like both you and Andy, so perhaps that doesn't help, but I read that thread and I didn't see any dumping. You have two lists for the Chicago area. Andy doesn't think that makes sense and others disagree. Of course, your definition of "dumping" could be considerably different from my own and even if our definitions were the same, the criteria could be subjective enough that we still couldn't agree.

    • However "dumping" and exchanging ideas on something are totally different things.

      "I am not sure why you did this could you fill me in?" is much better than "You did what? That sucks and you are stupid for doing it!". Even if after you get the explanation and don't agree you can still say "I see what you did but I don't think it will work."

      So the Perl community should foster an exchange of ideas and polite discourse and discourage "dumping".

      I don't know any of the "background" issues that caused the article
      • I agree with you. same goes to lines like:

        "why do you write this module when there are dozen of them on CPAN do the same thing. stop wasting your time."

        that's the sorta thing discourages people to innovate and invent something better.
  • Your filibustering is getting old.

    Hasn’t it occured to you that making a habit of loudly berating the critics might just be a tad counterproductive if a friendlier Perl community is what you want to achieve? “Beatings will continue until morale improves!”

    Don’t you think it might, f.ex., be more effective to dispense a few friendly encouraging words where you perceive undue stop energy, instead of telling everyone else that they are doing it wrong, days after the fact? If you didn

  • Wouldn't it have been better to have a short quote with the link to the main article?
  • There's a BIG difference between new ideas that are harmless to others, and new ideas that will impact negatively on others.

    There's a big difference.

    For ideas that don't hurt anyone (perlbuzz, new distributions, etc) I agree.
    • Sure there is a big difference but that doesn't mean you can't explain that to the person instead of dumping. "You did what? That sucks!" is never really acceptable.