Why reputation doesn’t matter
Some of the comments on Can Perl ever regain its reputation?, as well as a response from Dave Sherohman, made me realise I may not have done a particularly good job of making my (somewhat subtle) point.
The responses were along the lines of “reputation does matter, we need to make sure people know Perl is good”. Well (just to annoyingly contradict the title of this post), I agree, we do need to make sure people know Perl is good. Dave made some really good points on how important mind-share (for both developers and management) is. If people think Perl is rubbish, they won’t use it. So, the reputation of Perl does matter. What’s important, though, is the way we go about improving it.
Here are two possible approaches:
- Make Perl good. Or even awesome. Also make all the things surrounding Perl (frameworks, tools, etc) just as awesome.
- Ensure that it’s easy for people to find out about the cool things in Perl, i.e. documentation, articles, blog posts, and books where appropriate.
- Use the first two to correct people who have huge mis-conceptions about what Perl is about.
- Worry about what everyone thinks. Respond to any negative comments about Perl.
- Blog about Perl, focusing on comparisons to other languages, getting bogged down on the minutiae whenever necessary.
- Attempt to fix all the problems in Perl that have been pointed out by others, whether it’s necessarily the right thing to do or not.
Ok, so obviously the two approaches are exaggerated to make a point. In reality, individuals (or a community as a whole) usually fit somewhere in between these two extremes. The first approach is acting from a base of self-confidence. If you know what you’re doing is good, it tends to get even better. Conversely, if you’re not confident, things tend to spiral out of control as you attempt to deal with the criticism any public project faces. (Actually, this is true of pretty much anything in life).
In my opinion, the Perl world is generally much closer to #1, but I know of other communities that are a bit more like #2. Even so, I think it’s useful to keep this framework in mind when responding to criticism of Perl. If someone thinks it’s a mistake to build large systems with Perl, simply point out the counter-examples, and let them decide whether they will change their position of their own accord. If you’re desperate to prove how Perl is great to everyone, your response may be a little more hostile, and – ultimately – self-defeating.
So in that sense, reputation doesn’t matter. Because if we do everything else right, it will come naturally.