Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Would you rewrite perl community?

by Eyck (Priest)
on Jul 11, 2005 at 19:40 UTC ( #474067=perlmeditation: print w/ replies, xml ) Need Help??

As we all know, perl6 is supposed to be rewrite of perl by community, and the rewrite of the community itself (if I understand this correctly...: ).

" I want Perl 6 to be the community's rewrite of Perl and of the community."
--Larry Wall, State of the Onion speech, TPC4

What exactly is wrong with current perl community that it needs a rewrite?

I think current perl community changed alot since the times when people used to equal perl with CGI, pascal used to be big, now there's both java and C# to lure some programmers away from perl...OTOH perl entered GUI space with Gtk2 bindings in a big way(I'm still hugely surprised how easy it is to build apps with Gtk2::GladeXML), not to mention Frozen-Bubble halo ...

What do you think perl community needs, how would you improve it?

Comment on Would you rewrite perl community?
Re: How would you rewrite perl community?
by brian_d_foy (Abbot) on Jul 11, 2005 at 20:06 UTC

    You don't rewrite the Perl community. You do your part to make it better. It's already good because there is no central control.

    The question isn't all that interesting though, since the people who actually would rewrite the community are already doing it. You just have to look at what they are doing. Everyone else talk about things that they think should happen but aren't doing anything about.

    I don't think the Perl community has ever been stronger than it is right now. There are a couple of hundred user groups, several YAPCs each year, several Perl worskops take place around the world, a funded foundation that just got $70,000 from NLNet, several major forums for Perl discussion, a centralized repository of Perl code, hundreds of mailing lists and websites (thanks Ask and Robert!), major corporate interest in Perl's well being, a continuing development of the perl5 interpreter even though the cast of characters changes, the amazing development of a reference implementation for perl6, The Perl Review just finished its first year in print and is still going strong, Best Practical just announced the NJAPH awards to complement the White Camel awards, the Phalanx projects improves code that they didn't even write, almost every Perl module uploaded to CPAN is automatically tested on several platforms, Casey West is copying the CPAN concept for Javascript, and so on and so on.

    Why you ask "What exactly is wrong with current perl community that it needs a rewrite?" baffles me. Ask what is wrong with other communities that don't have all this stuff.

    brian d foy <>

      Why you ask "What exactly is wrong with current perl community that it needs a rewrite?" baffles me. Ask what is wrong with other communities that don't have all this stuff.

      It's an issue of timing

      The question was based on that quotation from TPC4 back in 2000. The answer is what has been happening since then. All the nice things you mentioned are the rewriting of the community.

        We've been rewriting the community a long time before TPC4. The "perl community" in that comment is really "perl5porters" which was perceived as an insular and nasty group around then. Part of the Perl6 effort was to attract people to the effort by fixing p5p. Indeed, the extended discussion of that during the first perl6 meeting was what set Jon Orwant off.

        brian d foy <>
Re: How would you rewrite perl community?
by kvale (Monsignor) on Jul 11, 2005 at 20:06 UTC
    I think that at the start of the Perl 6 project, the thought was that the community would have substantial input into the next version of Perl and may even take over the bulk of the development from Larry Wall and his small coterie; transform from the cathedral to the baazar in the design space, too.

    It hasn't really worked out that way. Although there was a tremendous amount of input from the community in the form of suggestions for Perl6, it turned out that it is really hard to design a coherent language by community. So by universal acclimation, Larry once again became the lead designer and arbiter of good linguistic taste. Ironically, the perl6 community process has made more work for Larry, not less...

    I don't see any major problems with the Perl community. But one could always suggest improvements.

    One thing I would like to see is a site (or a section of Perlmonks) with an active community of module reviewers. CPAN is an embarassment of riches these days. Whether you want to multiply a matrix, create a template, parse a log, or train a neural network, there are multiple modules available and little information discussing their relative merits. Something like a Hitchhiker's Guide to CPAN would be useful in making sense of it all.


      Larry was always going to be the language designer. He got that title at the first Perl 6 meeting. However, the community part came in during the long RFC period. No matter how you slice it, someone has to make the decision. I'll take Larry's decisions about the language over any committee's. I don't see that this created more work for him compared to Perl 5 since he doesn't have to implement it this time. :)

      There is already a community of module reviewers: CPAN Ratings, CPAN Forum, and the new AnnoCPAN (a TPF grant funded project). While it might be nice to have such a thing at Perlmonks, the great thing about the Perl community is that everything doesn't live under one roof. If you want something done, you can just do it. You don't have to ask for permission or wait for a cabal to implement it. If you want the Hitchhiker's Guide to CPAN, get typing. It sounds like the subject of a good Meditation. :)

      Update: I forgot about CPAN Forum. I intended no slight. ;)
      brian d foy <>
        ... CPAN Ratings, and the new AnnoCPAN ...

        There's also CPAN Forum.

        If you want the Hitchhiker's Guide to CPAN, get typing.

        ++. There already are places to post module reviews -- let's use them.

        That would be spelled CPAN::Forum
Re: How would you rewrite perl community?
by coreolyn (Parson) on Jul 11, 2005 at 20:10 UTC

    I don't think a more difficult question could be asked. For of all the places I've lurked and enquired no community has been more responsive, ingenious, or intriguing as the Perl community. I've learned more about code and the art of code (no matter what the language) through my association with Perl folks.

    However, ( Inserts foot in open can of worms -- eew ), There is one area that only fans the flames of Perl detractors -- lack of standards. It's a difficult issue for the Perl community to resolve as the P5EE group has found. However without them I see no way that managers in large corporations will ever find it a maintainable practical language for anything other than batch and system scripting.

    In my own expierience I wrote a large well documented, modularized, extensible Perl application that since being passed on to others to maintain has become unreadable undocumented code due to the the motivation to create job security for the ones that took over the application. As the managers only see code that looks obtuse and complicated it is shunned, but because it has become so vital it is maintained.

    The lack of ability for managers to have understandable standards by which they can set expectations on Perl applications is something the Perl community really needs to figure out how to meld into TMTOWTDI. If it were any other community than the Perl community I would think this is impossible.

      I agree with you!

      Perl community is great - but never say never - there is always room for improvement.

      Perl (IMHO) needs not just standards but many more things (that are more or less related to standards). Things like better advocacy (in general - not just for enterprises), more schools/universities teaching Perl and maybe even some sort of certification.

      But when you think about it, all that would come as a result of increased interest of enterprise market?

      O and maybe it's just me - but I had a hard time when I started learning Perl. Somehow I feel that real beginners in Perl don't have enough quality sources - and even those that exist aren't promoted well.

      And then it ends up in people trying to read get/post params by hand ( or trying to make sort of templating system with regexp for each variable you want to include (HTML::Template) working directly with flat text databases ( ... Well it's how I started :)

      Only good thing about it was the feeling that I had when I found out about those things in () and how Perl is even better than I thought before that :)

        How many quality sources do you need? There are several good beginner books on Perl, the website, the beginners mailing list, and many places to ask Perl questions. Both and link to these resources, and they show up in a lot of answers.

        Lots of people have a hard time learning any new subject, but that's because it's new. Think of it like driving in a city you haven't been to before.

        As for re-inventing the wheel, that's just going to happen. It's a stage of development. If you wanted to solve that however, you wouldn't be solving a Perl problem because that programmer would have the same re-invention problem in any language. The real problem is that you can't have instant, expert experience. Indeed, Simon Cozens talks about this in Advanced Perl Programming (and in my interview with him).

        But now that you've started all this, how about making some concrete suggestions? Out of all the things that a lot of volunteers are doing for free to promote Perl, what more do you want? As I said in my first reply, there are people who do things, and there are people who talk about things. Which one are you going to be?

        brian d foy <>

        From what I've seen, poor code comes from poor or inexperienced programmers. If you start a project and decide to use (enter language here), but have no programmers who have ever programmed extensively with (enter language here), you will have problem with the code that comes out of the project. This is nothing particular to Perl. I've seen some pretty pathetic Java and C# from programmers who thought they could write code with those languages.

      I don't see how would a Perl standard help with that app. Or maybe I don't understand what do you mean by standard.

      There's nothing preventing your or any other company from writing their own coding guidelines and ensuring their code follows them by the means of code reviews.

      XML sucks. Badly. SOAP on the other hand is the most powerfull vacuum pump ever invented.

        There's nothing preventing your or any other company from writing their own coding guidelines and ensuring their code follows them by the means of code reviews.

        Hear! Hear! I have maintained code in VB, Java, C# (a little), Perl, Pascal, COBOL, and RPG/400. Of those, VB, Java, and C# supposedly have "standards" that enforce maintainability of the code; and that's a damn lie -- or rather, that's marketing (which is worse).

        Maintainable code is only ever quasi-guaranteed, but the only way I've ever seen it is when the dev team -- with the support and backing of management -- creates and enforces code style guidelines. The only time I've ever seen this done well is in a Perl shop.

        This shop was a dream: code was checked into version-control via scripts which first ran PerlTidy with the corporate-standard options (and you could spec your own pass to your favorite style on checkout, but almost no-one did). Any style guideline that could be enforced by PerlTidy, was. The rest were handled by two-tier code review; we had peer-review which checked for style as well as good methodology and all the other peer-reviewy type stuff, and the repository maintainer reviewed solely for style-rules that weren't PerlTidy-enforceable (like "modules can be either OO or functional/procedural, but not both" and "subs that act on on non-scalar data must accept the appropriate reference (e.g. arrayrefs in place of arrays)").

        I have never seen that level of commitment from any shop, and I have never seen an automated tidying-tool that worked as cleanly in automation as PerlTidy.

        Larry Wall is Yoda: there is no try{}
        The Code that can be seen is not the true Code
Re: How would you rewrite perl community?
by spiritway (Vicar) on Jul 11, 2005 at 20:37 UTC
    This is a tough question. I find myself torn between two conflicting thoughts. One is, "If it ain't broke, don't fix it". The other is that nothing is perfect, so why not try to make a good thing even better?

    The Perl community has been an amazing resource for me, helping me to learn Perl and also teaching me subtly how to improve programming skills in general. The spirit of cooperation is strong. I believe this is its main strength - people are working together, offering help to one another, and not, in general, competing or trying to drag others down (of course there are exceptions to this generalization, but not many).

    And yet - is there no room for improvement? Yes, there is. However, as someone else pointed out, the most useful place to work on improving the community is for me to work on myself. I don't have much power to change the Perl community, or anyone else for that matter. But I do have the ability to keep learning, lend a hand if I am able to contribute some bit of information, to try to give back to the community some of what it has given me.
Re: How would you rewrite perl community?
by Anonymous Monk on Jul 11, 2005 at 22:25 UTC
    # In the words of an 80s band :-)

    $girls = $girls**$girls; # Increase female involvement

      ;-) If you start with one girl, looks like we will stay with one girl.

        I bet we've got two or more. In fact, I know more than two female perl programmers, so we're safe.
Re: How would you rewrite perl community?
by pg (Canon) on Jul 12, 2005 at 02:23 UTC

    Two points:

    1. If you cannot rewrite Perl and make it a better language, there is no reason for you to expect the community will be rewritten in a positive way. Language is the reason we join the community, not the opposite.
    2. 99% of the people who want to rewrite Perl are current Perl users. There is not much reason to expect the community to be changed before the language is changed, or during the time the language is expected to be changed.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlmeditation [id://474067]
Approved by kvale
Front-paged by hsmyers
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others pondering the Monastery: (17)
As of 2014-07-24 13:45 GMT
Find Nodes?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:

    Results (160 votes), past polls