Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: Maintainable Code?

by Callum (Chaplain)
on Nov 11, 2002 at 18:12 UTC ( #212007=note: print w/replies, xml ) Need Help??


in reply to Maintainable Code?

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 :)

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://212007]
help
Chatterbox?
[Discipulus]: i think his vacuus, trombon like, absence of meaning, joined with a ostentatious style, after many years irritates the most
[erix]: easy to get wrong -- I guess that was sund's point, too :P
[Discipulus]: planetscape welcome back! (or is well comeback?)
[Discipulus]: fore every 2 good old monks that come back, we will accept 1 clinical
[planetscape]: Might be "well, come back!" Discipulus ;-)
[stonecolddevin]: that's a 2.0 k/d ratio, i'll take it

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (10)
As of 2017-06-22 21:02 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    How many monitors do you use while coding?















    Results (530 votes). Check out past polls.