Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Comment on

( #3333=superdoc: print w/ replies, xml ) Need Help??
Document everything thoroughly, especially anything that isn't obvious (for some value of 'obvious'), even if it's just with a reference to where they can find more information.
# hash of hashes -- Advanced Perl Programming, pages 27 - 28 # does foo, because it's better than bar

You don't need to explain everything, just provide keywords and one line descriptions of what it does. Between the Camel book and Google most things can be found in moments providing people know what they are looking for.

If you're good enough to be using relatively advanced methods then you're good enough to code and document well, and even if some newbie never has to maintain you code, at somepoint your going to be working on it 2 years after you wrote it at 4am and may want a reminder of what (and why) it is.

In general I'd advocate not coding down, but allowing plenty of scope for a random maintainer to have to later figure out what you're doing. Coding will provide a definate benefit now, at a possible cost in the future; coding down has a definate cost now, for a possible benefit in the future.

Code up, use the time saved by coding-up to write more documentation :)


In reply to Re: Maintainable Code? by Callum
in thread Maintainable Code? by vek

Title:
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!
  • 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
  • Outside of code tags, you may need to use entities for some characters:
            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?
    Username:
    Password:

    What's my password?
    Create A New User
    Chatterbox?
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others drinking their drinks and smoking their pipes about the Monastery: (12)
    As of 2014-07-11 11:59 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?

      When choosing user names for websites, I prefer to use:








      Results (224 votes), past polls