in reply to Popularity of Perl vs. availability of Perl developers

How can we make Perl appear more attractive to students and course planners alike?

This statement shows a fundamental misunderstanding of how the IT marketplace works. Have you ever wondered why so many application rewrites are done in Java as a desktop app instead of Perl as a webapp? This in spite of case after case where the Perl webapp can be

This is because the people who make the decision about which architecture to use (middle managers) generally have no clue about the technical merits of the various solutions. All they know is that Java is being talked about in a bazillion places, Oracle and Sun are pushing it, and they won't lose their job when the project fails because everyone else is also doing Java.

The people who truly understand the technical merits (senior developers) are almost always ignored in the beginning of the decision-making process because of what they are - developers. In other words, they're not managers.

As a result, students understandably want to acquire the skillset that has the most hits on Monster and Dice. Remember - they want to get hired when they graduate and, frankly, they don't care what they do when they get hired. A paycheck is a paycheck.

The only way to raise the visibility of Perl in the mindshare of those who actually make these decisions is to do what Sun and Oracle have done - advertise. There is no 100-million dollar marketing campaign for Perl. There are no overpaid technical writers churning out rah-rah-rah articles about Perl. There aren't 18342378 different 100+ page glossy magazines with the words Java or Sun in the title. Even worse, IT managers don't have to pay a thing for Perl.

Remember - the meme in the rest of the world, and it works really well, is that you get what you pay for. If someone were to offer to build a deck on your house for the cost of materials, would you take it? I know I wouldn't! But, we expect IT managers, who aren't technically minded!, to believe that the free architecture is better than the one they have to pay thousands of dollars for? Yeah, riiiight.

Now, building software isn't like building a deck. I know that and you know that. But, truly articulating the difference to someone who doesn't understand leveraged effort and the other principles behind the opensource revolution is very difficult. Opensource is truly the largest paradigm shift in software development since the creation of the subroutine. It's not about the code anymore. It's all about the value-add, and very few companies truly grok that. Google does and Amazon does and EBay does. Your standard corporation doesn't, and they have no real reason to do so. Remember - a company will change (or die) only when one of its competitors gains a real edge in the marketplace. IT is so far back in the chain that very few managers, let alone companies(!), understand how dependent the modern economy is on IT.

Here's a blatant example. I used to work for a small company providing worker's comp management that had been doubling its earnings year on year for over 7 years. It had grown, in 18 years, from being in the owner's garage to a $100 million dollar company that was building its second free-standing building. That company truly had an advantage over its competitors, and that advantage was its IT. The DBA was a 26yr old who had joined the company out of school right when it switched from Progress to Oracle. He had built every database they had and managed them expertly. Right around the time I took another position, he asked for a raise from $52k to $60k. He figured that a company earning $100M should be able to throw an extra $8k to the sole DBA, especially given that he had an offer in hand for $65k as a junior DBA at another company - more pay and less work. He was told that the best he could get would be $56k. Obviously, he walked. Now, the company has paying $120/hr to someone who had to learn why the databases were structured the way they were for over a year. Needless to say, that company has squandered its edge over its competitors.


My criteria for good software:
  1. Does it work?
  2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?
  • Comment on Re: Popularity of Perl vs. availability of Perl developers

Replies are listed 'Best First'.
Re^2: Popularity of Perl vs. availability of Perl developers
by talexb (Chancellor) on Sep 26, 2005 at 02:51 UTC
      Here's a blatant example. I used to work for a small company providing worker's comp management that had been doubling its earnings year on year for over 7 years. It had grown, in 18 years, from being in the owner's garage to a $100 million dollar company that was building its second free-standing building. That company truly had an advantage over its competitors, and that advantage was its IT. The DBA was a 26yr old who had joined the company out of school right when it switched from Progress to Oracle. He had built every database they had and managed them expertly. Right around the time I took another position, he asked for a raise from $52k to $60k. He figured that a company earning $100M should be able to throw an extra $8k to the sole DBA, especially given that he had an offer in hand for $65k as a junior DBA at another company - more pay and less work. He was told that the best he could get would be $56k. Obviously, he walked. Now, the company has paying $120/hr to someone who had to learn why the databases were structured the way they were for over a year. Needless to say, that company has squandered its edge over its competitors.

    Interesting story -- and a sad one, too.

    I wonder how the DBA tried to sell his $8k raise, what salary he started with, or how his annual raises progressed. Because it seems to me he had a dynamite job, and with the right sales pitch could have been making a six figure salary. And the company is now paying for trying to save a $4k raise.

    Something similar happened to me -- I was the lone developer left from a development team of a dozen, making $34K. When my boss announced he was leaving, the owner called me into the bosses office and asked me how much I was making. I told him, and he immediately gave me a raise to $40K, to give me incentive to stay.

    It worked -- I stayed another two years, and was able to support and even add a few features to his desktop publishing product (Laser Friendly's The Office Publisher, if any of you remember the late 80's). So, for an additional $6k per year, over about a 2 1/2 year period, he bought continued technical support for a cranky old scotch-taped togther piece of code written in Turbo Pascal. Without it, he would have been stuck with a piece of code going nowhere.

    This should be a lesson to business owners: don't leave yourself too thin when it comes to crucial business IT infrastructure. Maybe your DBA's being a prima donna -- but do you want to ignore their request for a raise? Better to get someone cross-trained on the database, and then ease the troublemaker out.

    $120/hour, 2_000 hours in a year makes $240K -- and after all that, this person's finally up to speed. Oops.

    Alex / talexb / Toronto

    "Groklaw is the open-source mentality applied to legal research" ~ Linus Torvalds

      I wonder how the DBA tried to sell his $8k raise, what salary he started with, or how his annual raises progressed. Because it seems to me he had a dynamite job, and with the right sales pitch could have been making a six figure salary. And the company is now paying for trying to save a $4k raise.

      A further part to the story, which will help explain it. The IT director, who'd been at the company for about 2 years to the DBA's 5, was the one who'd been quibbling over the $4k. The DBA's manager had been pushing for $65k, hoping to get $60k. When the DBA put his resignation in, the #2 in the company called him into his office and asked about why he was leaving. The DBA laid it out and the #2 said "I can give you $65k right now, no questions asked." The DBA refused, citing the IT director as the issue. The raise issue had been a test of the director's commitment to his people. He failed.

      In the year since this happened (last November), I know of 4 people in the department of 20 that have left, including myself and the DBA. Last I heard, another 6 were looking. All have cited the director as a major reason for their decision. *shrugs*


      My criteria for good software:
      1. Does it work?
      2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?

        Thanks for the update -- that helps flesh out the story a little better.

        I wonder, of course, why the company kept the IT Director on after that. And over $4k? $4k is nothing, for a company of that size.

        The IT Manager should probably have sold it as "The DBA wants $60k -- he's probably worth lots more, because of his history with the company; why not raise him to $60K and give him a $5k bonus?" That way he'd have been a hero to both the company and the DBA.

        Another quick story: my wife used to work at a company where she had a great manager and loved going to work. That manager moved on to something else and the Manager From Hell arrived. Morale plummeted, and the group started losing people.

        My question is, where is HR when all this is going on? When a group goes from normal attrition to All Hands Abandon Ship, doesn't it occur for HR to look into what recent changes have taken place? And what about exit interviews? That information is gold for an ogranization -- the soon-to-be ex-employee has nothing to lose and can unload (within reason, of course).

        Oh well. Stuff happens.

        Alex / talexb / Toronto

        "Groklaw is the open-source mentality applied to legal research" ~ Linus Torvalds

      This should be a lesson to business owners: don't leave yourself too thin when it comes to crucial business IT infrastructure. Maybe your DBA's being a prima donna -- but do you want to ignore their request for a raise? Better to get someone cross-trained on the database, and then ease the troublemaker out.

      ... and have a process that ensures that business critical knowledge is always in more than one head. Having a Truck Number of one is always bad.

Re^2: Popularity of Perl vs. availability of Perl developers
by pg (Canon) on Sep 25, 2005 at 04:07 UTC

    Update: this was meant to be a reply to the original post, not dragonchild's. The statement quoted was in the original post.

    "This is because the people who make the decision about which architecture to use (middle managers) generally have no clue about the technical merits of the various solutions."

    This has been repeatedly quoted as the reason why Perl might be less popular than some other languages, but it is not true. The best technical guys pick the right tool for the job. I use Perl quite often, but there are lots of tasks for which I will never pick Perl.

    Although it is possible to use Perl for big/medium size project, and some people do pick Perl, there are other languages that fit big/medium project much better. You can disagree with me, but you cannot disagree with the fact that I am a tech guy.

    It is not so correct to view Perl as the competitor for languages like Java etc. As a matter of fact, Perl is better viewed as a competitor for Python etc.

      I would argue that Perl is a definite competitor to Java. The only place I would use Java is if the majority of the programmers I expected to be working on the project were merely average. As I don't choose to work with "merely average" programmers, I don't use Java.

      My rules of thumb are:

      • Any medium-sized project can be written in Perl with no more than 3 developers worth their salt, plus a junior
      • Any large project can be refactored into a series of medium projects.
      • Any project in Java will take 10x longer and will require 10x the effort of the same project in Perl. (Replace "Java" with C, C++, and the like, at your pleasure.)

      Remember - 90% of every Perl application you will ever write is already on CPAN. You can't say the same about Java. There is no equivalent repository for Java.

      Update: Improved wording based on the tongue-in-cheek response.


      My criteria for good software:
      1. Does it work?
      2. Can someone else come in, make a change, and be reasonably certain no bugs were introduced?

        Remember - 90% of every Perl application you will ever write is already on CPAN. You can't say the same about Java.

        Isn't it a bit unfair to expect Java extensions to be on CPAN? ;)

        Remember - 90% of every Perl application you will ever write is already on CPAN. ... There is no equivalent repository for Java.
        What about this? Granted, it's not as vast as CPAN, but it's only been around since April 2005, too.

        thor

        Feel the white light, the light within
        Be your own disciple, fan the sparks of will
        For all of us waiting, your kingdom will come

        * Any project in Java will take 10x longer and will require 10x the effort of the same project in Perl. (Replace "Java" with C, C++, and the like, at your pleasure.)

        I was thinking about writing a device driver in perl, but I couldn't figure out how to avoid memory allocation in the interrupt handlers.

        ;-)

      Well, quite a few projects that are big if you use Java (whether you look at the number of lines of code or the number of deveopers needed) would be small if you used Perl. So yeah, Java might be better if you have to assign ten developers to the project. If you used Perl though one developer + CPAN might very well be enough.

      Jenda
      XML sucks. Badly. SOAP on the other hand is the most powerfull vacuum pump ever invented.

      Are you arguing that middle managers usually do have a clue about the technical merits of various solutions? That certainly doesn't fit most of the ones I've known, at least the ones who are more than one step removed from writing code (and thus get to make the decisions about how to spend the money).
Re^2: Popularity of Perl vs. availability of Perl developers
by Anonymous Monk on Feb 12, 2010 at 23:28 UTC
    I have to laugh about this because it is so true. One of my old bosses was *very* impressed by this guy she wanted to hire that spent 7 years at NASA developing some sort of web app that he said contained over 30,000 lines of code in JAVA. When she showed me a link to it, to show me how *good* he was, I almost fell out of my chair laughing. She asked me why, and I said.. "One second" and proceeded to duplicate what he wrote in *10* lines of Perl. -In 2 minutes unfortunately, my fingers weren't very stable while I was laughing. Most of you I'm sure hate Microsoft, and some may hate Google, but you'll see that both of them have done research that proves that *1* good programmer is worth *200* or so "monkeys with a typewriter" (a great song if you are familiar with it). In my current Fortune 10 job my boss proved that I do more than *400* times the work of anyone else on my team and yet I have time to ask for additional work that's not required of me, and time to help other people in unrelated departments, and yet I still only work a 40 hour work week. My advice.. Less monkeys, more typewriters. Or if you don't like that one.. go with the tried and true.. "Too many cooks in the kitchen".