• What should the world know about Perl?

    *Jim Brandt of the [Perl Foundation](http://www.perlfoundation.org/) writes for input from the community.* At OSCON this year, on Wednesday night at 7 PM in Exhibit Hall 3, I'm participating in a Language Roundtable Session with representatives from some of the other popular open source languages. We're going to talk about some of the best and worst features of our preferred languages and how well they perform with different types of application development. [http://en.oreilly.com/oscon2009/public/schedule/detail/9380](http://en.oreilly.com/oscon2009/public/schedule/detail/9380) I know why I love Perl, and there's plenty of new activity in the "modern" Perl community to talk about. This is a great chance to let everyone know what great strides Perl has made. It's a chance to get people to take an up-to-date look at Perl. However I don't want to waste any time on "worst" features in other languages. So what are the best features of Perl today? What do you want the OSCON audience to hear about?
  • Introducing CPANHQ

    By Shlomi Fish

    Most people who are actively developing using Perl are familiar with sites for searching CPAN (the Comprehensive Perl Archive Network) such as search.cpan.org and kobesearch.cpan.org. These sites provide a simple search bar where users can search for keywords or key phrases, and find a list of results. These sites also feature pages for the various CPAN distributions, the various authors, and the individual pages of documentation inside the modules.

    Recently, Andy Lester started the "Rethinking CPAN" mailing list and wrote a Perlbuzz post titled "Rethinking the interface to CPAN", where he gave the case that the current resources may be inadequate for the process of selecting a module on CPAN. For a long time, there was an intermittent discussion and some brain-storming, but very little code (if any) has been written. This has all changed with CPANHQ.

    So what is CPANHQ? As documented in the first and only wiki page it has so far (which I wrote a few days ago), "CPANHQ aims to be a community-driven, meta-data-enhanced alternative to such sites as http://search.cpan.org/ and http://kobesearch.cpan.org/. Currently, the functionality is very basic, but we have great ambitions."

    I learned about CPANHQ by overhearing a conversation on Freenode's #perl channel. I joined the effort, and made several enhancements to the Catalyst and DBIx-Class-based code. The functionality is still very basic.

    Some of the plans and ideas we have for CPANHQ, which may be translated into code in the future are:

    1. The code is and will remain open-source, which makes it easy for people to contribute to.

    2. We plan to have most of the current features of search.cpan.org and kobesearch.cpan.org including pages for authors, distributions, and individual modules and their documentation.

    3. CPANHQ was already enhanced with some jQuery and jQuery UI JavaScript goodness, and we plan to add more of it to make the user experience better.

    4. The site aims to be more integrated than the many separate CPAN-related sites today: search.cpan.org, CPAN Forum, AnnoCPAN, CPAN Ratings, CPANTS, CPAN Dependencies, etc. By putting everything under one roof, we can provide a better user experience than the many sites with very loose integration.

    5. We plan to enhance the site based on meta-data as provided by both the module authors (in the META.yml file and the users of the site.

      For example, we have already added support for the META.yml's keywords which allow authors to tag modules, and we plan to support user-tags too.

    6. CPANHQ will be very community-driven. People would be able to open user accounts there, which will allow them to contribute content to the site, such as tags/labels, comments, wiki pages, chatter, etc.

    The CPANHQ wiki page contains more ideas and insights. Like I said, the current functionality is incredibly basic, but we hope that with enough help, time and dedication, we can create an attractive and engaging interface to CPAN, to make finding a module on CPAN faster, easier and more fun.

    In the meantime, you can look at the screenshots we have of the interface so far, or clone the github repositories, and set up a local web-interface.

    Shlomi Fish has been writing using Perl, about Perl and for Perl, since 1996, when he started working for a web-design shop, and discovered Perl and UNIX, which he's been in love with ever since. He initiated and is maintaining many CPAN modules and contributed to many other Perl and non-Perl related projects.

  • Promote Perl 6 by saying “Perl 5”

    Perl 6 is hurtling toward completion. The specification is nearly complete, and Rakudo now passes 68% of the specification tests. Applications like November are being written in Perl 6. Perl 6 is no vaporware, and the day when Perl 6 is ready for widespread use is coming quickly. Perl 6 has been in development since 2000, and in that time many people may have forgotten about the plans we've had for Perl 6. There may be those who have never even heard about the plans for Perl 6. Those of us who live in the Perl world are aware of the great changes afoot, but there are plenty of people who are not. I think that the time is right to help make those people aware of Perl 6, and to remind them constantly of what's coming. My proposed technique is simple and it takes advantage of the key elements of time and repetition to help remind everyone about Perl 6. > **We need to stop referring to Perl 5 as "Perl" and start calling it "Perl 5."** Specifying the "5" in "Perl 5" calls attention to the fact that there is more than one Perl. It makes the listener or reader who is unaware of Perl 6 wonder why the 5 is specified. For the reader who knows about Perl 6, hearing "Perl 5" reminds her that Perl 6 also exists. I don't think it will be too tough. All I ask is that, at the very least, when writing about Perl 5 in your blogs or mailing lists that you specify the version you're talking about. It doesn't even need to be every instance. I'm guessing we'll find that repeatedly saying "Perl 5" in a long message will get tedious both for writer and reader. I think the way to look at it is that "Perl 5" is the formal name for the language, and later references can refer to it as "Perl," almost like a nickname. Just that first reminder of "Perl 5" will be enough to help lodge in the reader's brain. With enough time & repetition, it will get to be habit in our minds. With enough time & repetition, the computing world will be reminded of Perl 6 coming soon.
  • How to announce an event, or, awesome is not always self-evident

    Which of these two events sounds more interesting? > Joe Celko is going to be giving talks at YAPC this summer. Or, in an announcement entitled ["Learn Mad Database Skillz at YAPC::NA 2009"](http://justatheory.com/computers/databases/celko-at-yapc.html) > It really, truly pays to learn the ins and outs of SQL, just like any other language. And if you’re a Perl hacker, you have a great opportunity to do just that at [YAPC::NA 10](http://yapc10.org/) this summer. Famed SQL expert [Joe Celko](http://www.celko.com/), author of [numerous volumes on SQL](http://www.amazon.com/Joe-Celko/e/B000ARBFVQ/) syntax and techniques, will be offering two classes on SQL at YAPC: > - [Introduction to RDBMS and SQL for the Totally Ignorant](http://yapc10.org/yn2009/talk/2050). Well, okay, the name of the course is a bit unfortunate, but the material covered is not. If you know little or nothing about SQL, this course should be a terrific introduction. > - [The New Stuff in SQL You Don’t Know About](http://yapc10.org/yn2009/talk/2051). So much great stuff has been added to SQL over the years, and ORMs know virtually none of it. Learn how to put that stuff to work in your apps! That first announcement is usually what I get when people ask me to announce something in Perlbuzz. "Hey, we're having the East Podunk Perlapalooza next week." Yeah, so? Who cares? Why will Perlbuzz readers care? David Wheeler, author of the latter text, understands what most geeks seem not to grasp: **The mere existence of your Foo is not enough for people to be interested.** Look at all the topics that David covers, to encourage interest from as wide a range of people as possible. * What YAPC is. * Who Joe Celko is. * Joe Celko's body of work. * Why we still need to know SQL in the age of ORMs. I was reminded of this while going through Chad Fowler's excellent [*The Passionate Programmer*](http://www.pragprog.com/titles/cfcar2) in preparation for [our webcast "Radical Career Success in a Down Economy"](http://www.oreillynet.com/pub/e/1360) next week. One of Chad's big points is "Your skills are not self-evident." It's not enough to do great work at work, but you must also let people know about what you've done, specifically your boss. The same is true of your open source projects. Why do people use [ack](http://betterthangrep.com)? It's useful, but how do people know about it? I talk about it, and I tell people why they should use it on its home page, in a section called "Top 10 reasons you should use ack." If someone asks you about your project, can you explain its awesomeness, and why he should use it? If not, why are you bothering? And if you can, are telling everyone you can about it? If not, why are you bothering? For more on writing interesting announcements, please see the Perlbuzz [How to contribute](http://perlbuzz.com/how-to-contribute.html) page.
  • Free Software Foundation helps no one with name-calling

    Discourse on the Net is tough enough without lowering yourself to pointless name calling. The Free Software Foundation ought to know better, especially when their work is so important. Today John Sullivan posted a story about problems the FSF has with Amazon's release of the Kindle source code yesterday. Their three main issues are: - Not all the code is included. - Changes to Kindle code do users no good because users cannot legally update their devices - Important features remain secret. The article is well-thought out, and clearly makes the three points. It would be a fine article if not for the insulting headline: [No, Amazon did not release all of the Swindle's source code](http://www.fsf.org/blogs/community/kindle-swindle-source-code). Why, FSF? Your article stands on its own, so why sling the mud? Why lower yourselves to juvenile name-calling? What do you hope to gain by calling the Kindle the Swindle? Are we to think "Ho, ho, those clever FSF folks!" I can't imagine. Relatedly, please read Roger Ebert's article ["The O'Reilly Procedure"](http://blogs.suntimes.com/ebert/2009/06/the_oreilly_procedure.html) on the lowering of the standards of debate in our society.