Is Javascript the new Perl?

I saw a Javascript/JQuery presentation, The JQuery Divide, by Rebecca Murphey on Hacker News that struck me as remarkably similar to complaints I've heard about Perl development.

Look at this graphic from p. 34 -- rewind the clock to the late 1990's and replace Javascript with Perl and JQuery with CGI:

Here's are some telling quotes:

  • people who don't know JS write non-trivial JS apps whether we like it or not (p. 11)
  • [ignorant developers writing bad JS] has actual effects on perceptions of Javascript and on our ability to do interesting things with it. (p.32)

And consider this humorous fake quote from p.4:

"We need you to help us organize our JQuery-based application. It's a steaming pile of unmaintainable crap..."

Sound familiar?

By now, the active core of the Perl community seems to have figured out the need to promote better practices and the Modern Perl movement actively seeks to both to teach how to write good code and change perceptions of Perl that still linger from the 90's.

I hope that the Javascript community can learn similar lessons without taking a whole decade to get around to it.

This entry was posted in perl programming and tagged , . Bookmark the permalink. Both comments and trackbacks are currently closed.


  1. Jeremy Leader
    Posted April 13, 2011 at 1:40 pm | Permalink

    A further point supporting your analogy: the next version of Javascript (ECMAScript 5) will have a "use strict" statement.

  2. Posted April 13, 2011 at 3:14 pm | Permalink

    Personally I'd say it's PHP rather than Javascript. Their issues may be bigger than ours ever were, and they barely seem to be aware of it :-(.

  3. Posted April 13, 2011 at 9:11 pm | Permalink

    It's the curse of popularity. Ruby will also experience it soon (if not already), due to Ruby on Rails.

  4. Gilberto
    Posted August 30, 2011 at 3:25 pm | Permalink

    What's sad is that these users have no choice but to write JavaScript. It's the only language the browser understands. They can't leverage their knowledge of Perl or other languages since it won't execute the browser. It's like having a OS for which you can only program in C. At least with CGI a user could choose any language for the task. That was often Perl due to its popularity, but it didn't stop someone from writing a CGI program in C, Tcl, shell script or something else. With web browsers you are stuck with one choice. No one language is appropriate for every problem domain. This will be a painful lesson to watch web developers relearn as they implement more varied web applications.

    • Posted August 30, 2011 at 5:31 pm | Permalink

      That's a great point. It's a monoculture. That could be a strength or it could be stifling. The extension of javascript beyond the browser is an interesting development, as is the glut of native apps for mobile devices instead of javascript-heavy browser-based apps.

  5. Posted May 10, 2013 at 12:33 am | Permalink

    The Yote project Yote bridges javascript and perl.

    Server Side

    package Hello;
    use base 'Yote::AppRoot';

    sub hello {
    return "Hello World";


    Javascript Side


    var hello_app = $.yote.fetch_app('Hello');

    alert( hello_app.hello() );
    // outputs "Hello World"