Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Comment on

( #3333=superdoc: print w/replies, xml ) Need Help??
I've noticed recently at $current_client that the developers they have (who develop in perl, but now more and more in java) are completely incapable of new development. Basically, they have been maintaining software for the last few years. Very few of their applications use subs (some of these are thousands of lines long), and none of them use modules.

Recently, they came to the conclusion that perl wasn't really the language for them. The reasoning for this was that their code was awful. It was not portable, it was incredibly difficult to maintain, and it was difficult to keep versions straight. Rather than examine their developers, they chose to point fingers at the language. I think I've told this story before.

Anyways, they are starting to realize that they cannot just develop everything in Java. Something has to process the gigs of web logs and syslogs they get daily. Somebody has to merge databases, and so on. There are all these tasks at which perl excels that Java simply isn't the right tool for.

Slowly they are beginning to realize that their developers are becoming a liability. They cannot continue to bring on consultants (they are paying over $150,000 a month for development consultants right now) to write their software for them. Their only real recourse right now is to fire all their developers (not likely) or to train the ones they have.

So I am attempting to come up with a few outlines. All of the training I've done has been informally. I haven't come up with an outline for a course and in-class materials. My hope is to come up with a general outline that will work for this client, so that I will be able to offer it to the next client who comes along. I suspect a lot of organizations are in the same boat: it is easy enough to move to java (and we are seeing that a lot), but you can't move away from perl in a modern unix environment (ok, within reason).

My question, then, for monks, is what skills you find yourself lacking, and would be receptive to getting training on, should some PHB at work hire a perl training consultant? I am very interested in hearing from both senior and more-advanced programmers, as well as the newer programmers who might now just be starting out as professional perl programmers.

Some ideas I had were:

  • introduction to functional programming
  • writing code for re-use
  • decoupling
  • introduction to OOP
  • using CPAN efficiently
  • basic editor configuration (i.e., using emacs and vim effectively)
  • common mistakes
What bothers me is where to start for the advanced users. I have met many advanced perl programmers who still dont use things like map, binary operators, tied hashes, who are afraid of globs, toying with references, multilevel datastructures, and so on. I'd also really like to work up a half-day DBI session since so many people are horribly mis-using it.

I'd really appreciate what feedback you can offer.

brother deprecated

Laziness, Impatience, Hubris, and Generosity.

In reply to What training do YOU need? by deprecated

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    and all is quiet...

    How do I use this? | Other CB clients
    Other Users?
    Others scrutinizing the Monastery: (6)
    As of 2018-02-25 08:48 GMT
    Find Nodes?
      Voting Booth?
      When it is dark outside I am happiest to see ...

      Results (312 votes). Check out past polls.