Tuesday, June 5, 2012

Improving the Image of Perl (Perl Marketing)


One of the comments to a posting I made about Scientific Computing in Perl raised the important question “If you'd like to have more people use Perl for scientific computation, it might be a good idea to think about and discuss what might have caused the shift of some people towards Python?”  I think this is a great question and I think it applies to more than just the scientific computing aspects of Perl, but Perl in general.  I think Perl has an image problem and because of this it is no longer trendy to use Perl.  If you talk to anyone that is not a Perl programmer about Perl, you tend to hear the same unfounded complaints over and over – e.g. Perl has a hard to understand and maintain syntax, OOP in Perl seems like an afterthought, etc.  Many such comments are unfounded or have long been addressed, but awareness of this does not seem to reach those that are not already working with Perl.  In many cases, I wouldn’t even be surprised if those making the complaints didn’t even have any true firsthand experience with Perl. 

While it is certainly possible to write some highly obfuscated Perl code, this is not the way it has to be.  A Perl programmer or corporation that employs them could easily make use of modules like Perl::Tidy and Perl::Critic to help maintain readability as well as having coding standards in place.  In fact many in the Perl community would actually strongly support such practices.   In terms of OOP support Perl now has Moose, which provides a more modern object system for Perl applications.  Perl has also produced a number of modern Web development frameworks, such as Dancer and Mojolicious.  Perl is even being used for “Big Data” analytics problems (http://blogs.perl.org/users/jt_smith/2012/05/perl-for-big-data.html).  Perl has been anything but a stagnant language and clearly still has a strong and innovative community supporting it.  One just has to look at a Perl news aggregation like the Perl Weekly, to see all of the interesting things members of the Perl community are working on and discussing. 



This therefore raises the question of how we can go about improving the marketing of Perl, to make the advancements and growing utility of Perl more widely known to those outside of the Perl community.  Here are some possibilities to consider:

1)     Writing articles, blog posts, comments, etc that highlight the utility of Perl and the recent advancements of Perl.  In particular I think articles in programming, Linux, and open source publications would be the most effective, since these are read by more than those with a vested interest in Perl. 
2)     When coming across an article or blog post that contains a discussion about something really interesting in Perl take the time to link to it, “Like” it, “+1” it, post to reddit, Hacker News, etc.  This could help to further generate a buzz about some of the interesting things the Perl community is working on. 
3)     Anybody remember Perlcast (http://perlcast.com/)?  It might be interesting to revive something like this as another way of spreading Perl news, particularly if it could be incorporated into one or more sites that promote a large number of technology podcasts like IT Conversations as this would get the podcasts in front of even more people.  It was a long time ago now, but if anyone is interested here is a link to my Perlcast interview - http://www.perlcast.com/audio/Perlcast_Interview_012_Frenz.mp3
 
4)     Many cities have Perl Mongers groups that give Perl related talks and tutorials.  Encourage those in your group to video such talks and post them online. 
5)     Highlight major projects, programs, and Websites that are built with Perl.  Slashdot, DuckDuckGo, Blekko, etc. 
6)     Perl outreach – volunteer to give a free lecture or class(es) on Perl at a local college, high school, library, etc.  The long-term future of Perl probably relies more on its popularity with and use by the next generation of programmers more so than it does with established players. 
7)     I’m sure there are plenty more, but these would provide a good starting point. 

Kobo has over 2 million ebooks to choose from!

5 comments:

flebber said...

I initially thought about this a few months back when chromatic did a piece on Perl Marketing.

One thing I have thought since is; Perl 6; are people waiting for it? Do they not want to commit to learning Perl5 if they'll only have to shortly after start learning Perl6 etc.

The other thing is as well Perl syntax isn't that scary. Ruby looks a lot like Perl and people aren't scared of it. So why attracted to Ruby and not Perl? RubyOnRails - JRuby?

Would a nice site like TryPerl get people in? Like http://tryruby.org/levels/1/challenges/0

djzort said...

RoR gave ruby a little lease of life, and its equivalent of CPAN somehow has more modules (though i suspect sheer numbers isnt a useful measure, almost certainly there is a point of negative gain).

Puppet is in ruby, which is giving it more life.

Cloud Foundry was written in ruby (via rails) - though its now been dumped by Vmware on to the apache foundation.

Github seems to be a mix of ruby and python.

Personally, i think that there just needs to be some companies come out and say 'we are perl and proud'. The perl foundation would also do well to pressure RedHat to keep perl up to date in their releases.

Ranguard said...
This comment has been removed by the author.
Ranguard said...

I'm always after more Perl White Papers for www.perl.org.

To help those trying to perused managers and tech leads to use Perl.

Unknown said...

Call me shallow but -- graphic design is a factor.

I had to choose between Bugzilla and Redmine the other day for a client. Bugzilla just looked SO old fashioned and clunky. Redmine was cleaner and more modern looking in every way.

I'm sure Bugzilla would have been fine functionally, probably way better, but it just looked so Netscape 4 I thought my client would turn up their nose at it.

I propose a big design project to make perl and perl-based systems and frameworks look cool and hip.