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

Re: A reasonable approach to getting a Perl skill foundation?

by eyepopslikeamosquito (Canon)
on Apr 04, 2012 at 22:39 UTC ( #963544=note: print w/ replies, xml ) Need Help??


in reply to A reasonable approach to getting a Perl skill foundation?

Apart from learning a new language, don't forget that you are leaving your workmates, and those who follow them, a long term code maintenance burden. Even if they learn Perl well, they may struggle to trouble-shoot production problems with your code, especially if they must be fixed urgently. Accordingly, you should consider what you can do to help them.

  • Documentation. Make sure all your programs and modules are well-documented. Clear usage help (-h), with examples, for all commands in your suite is essential. I further suggest a comment block at the top of every large component explaining the background, intent, rationale, external references, etc.
  • Logging/tracing. If you have not done so already, you should consider adding a logging facility to your programs. When trouble-shooting a production problem, or just to help understand how the program works, your workmates could then run your script (with a verbose flag, say) and it will spit out what it is doing in detail at each step, helping both in trouble-shooting and understanding how it works.
  • Testability. When the new guys make a change to your code, how are they going to test it? You need to plan for this. If you already have a test suite, you could ask them, as a training exercise, to write some new tests.


Comment on Re: A reasonable approach to getting a Perl skill foundation?

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://963544]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (6)
As of 2015-07-04 10:13 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (59 votes), past polls