Jeremy Smith's blog

Entry Is Labelled

Perceptions of Perl

This is going to end up being a catch-all post on a number of things I've been meaning to write about for the past year or so.

What got me on this track was reading Perceptions of Perl - views from the edge. Here, I do a majority of my programming in Perl (and PL/SQL and increasingly JavaScript). Previously, I have done a lot (a lot) of PHP programming. When I take on independent gigs, I do my work in Rails. Recently, I did a medium sized programming job for a client and had to use PHP (was going to use Rails, but the place said that web programming had to be done in PHP). Rather than roll-my-own-ORM (seriously, people still do that(??)), I used CakePHP.1

So having participated within these languages/cultures/communities, I have my own perspective. First and foremost, the Perl community is more than two times better than any I found within PHP or Ruby. That is, if the PHP community improved by 100%, it would still be less useful than the Perl community. And by "useful" I mean possessing the ability for someone to engage in a discussion, get answers to questions, explore best practices, learn, maybe even do a little programming goofing around, etc.

At this point, I was going to provide a long list of links to my posts within these communities asking questions and trying to stir up some discussions; but I honestly had a hard time finding the links. The communities seem almost transient in comparison to places like PerlMonks and use Perl;. Granted, this invites the comments along the lines of "if you can't even remember where the communities are, it's probably your err in not being able to-engage/stay-engaged with them." Okay, I'll accept that criticism; though, I never had that problem with the Perl community even though I go through numerous periods of dropping in and dropping out that each can stretch months of time.

Syntax, sigils, white space, semicolons… the make-or-break for me is the community. (Unless it's Python; then the make-or-break is white space.)

So my perception of Perl is that it still has the best community; and all it needs is a DHH personality and a set of shiny, sexy halo services built atop a framework like Catalyst to "get its groove back," so to speak.

All that being said, like I stated above, I program using Rails if given the choice. (As an aside, I would never use CakePHP again.2)

  1. My displeasure of CakePHP was always meant to warrant its own blog post. But, really, it all boils down to the fact that you pass around hashes in the controllers and not actual objects. All of the other suckiness is just a derivative of that property.
  2. I don't mean to bash CakePHP so blatantly. The manual is excellent as is the API documentation. As a matter of fact, most questions I had or problems I ran into were easily serviced by just looking through the actual source code (it's quite well done and well documented). The Bakery and Forge were not very conducive to use. And a lot wasn't helped by the fact that they were transitioning their documentation away from a wiki – – which had been closed down leading to a lot of dead-end search results (why they couldn't leave the wiki open for posterity while the transition was taking place… I don't know).