in reply to Thread on Joel on software forum : "I hate Perl programmers."
I'd probably prefer it if you had posted a small snippet and a link, since this way you are creating a new home for something that already has a perfectly good home. But that's a trivial point.
The post reminds me of Star Wars ep3 in a way -- watching it, I enjoyed the story that I could easily sense behind the obscuring cloud of miserable acting and obnoxious special effects. It wasn't a brilliant story, or an original or particularly nonobvious one, but I found it to be a rather good yarn nonetheless. The post is the same way, although its qualities are covered up by the results of letting loose a satisfying tirade rather than mere incompetent directing.
If you want to get something out of it, read it as if you were overhearing a disgruntled user of your software bitching to a colleague. Hopefully you've all had something of that experience before -- the user is so frustrated that she'll go way overboard in her abuse of your product, but buried within the stream of obscenities and exaggerated complaints will be a rich vein of suggestions and ideas for improvements. You'd never be able to intentionally dig as much from your usual user base no matter much you beg for suggestions. You just have to set aside your pride long enough to detect the value.
I can't say I have anywhere near the visceral reaction to the quoted code that the post's author did, but I do still think he's making some good points. I've written code similar to (and worse than) either of the snippets above. I like to think that I've improved. There's nothing wrong with the open or die idiom, but chaining on an and clause does bother me. That said, I've read code that used it heavily, and after you see it enough, it starts to make a certain kind of sense. (I'd still avoid it for maintenance reasons.)
The second code snippet is harder to defend. It's a good example of a fine idea taken to a disastrous extreme. The author is making a more general point, though: bad Perl code leads to a bad reputation for everything Perl. That resonates with me. At my current company, I've witnessed the negative reactions of far too many people who couldn't possibly have an informed opinion about the language. Marketing people, CEO's, vice presidents, etc.
I also think that many of the obvious places to look for examples of cood coding (eg the most heavily used modules) are anything but. Perl feels like it's resting on shakier and shakier foundations, as the old bedrock modules and toolkits get further and further behind the times. The newer modules and frameworks don't really seem to be keeping pace with the larger community, and are more often than not imitations of or eclipsed by those from other environments. (Where's our Ruby on Rails? PyGame? PHP?) It doesn't feel so much like the Perl community is tired or anemic or stupid; it's more that the richness of CPAN is becoming a liability. Consider a hypothetical lurking genius who previously would have created some great new package. Today, he finds so many existing modules that cover part of the territory he wanted to stake out that he gets demoralized and doesn't bother. Or perhaps his initial user base is too small because his users can't distinguish between the alternatives. Or he's conscientious and researches all the alternatives before beginning and chooses to contribute to the most similar candidate, but belatedly discovers that the original author's vision is very different from his, and that the initial similarity was more by coincidence than design. Or maybe they're well aligned, but he just can't muster up enough enthusiasm for being just one of the contributors of someone else's baby.
Whoa there. Sorry, that was quite a tangent. I guess I'd better stop now so you can get on with the downvoting.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Thread on Joel on software forum : "I hate Perl programmers."
by techcode (Hermit) on Jun 17, 2005 at 06:42 UTC |