Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic

Re: Sub-initiate needs help getting started

by CombatSquirrel (Hermit)
on Aug 25, 2003 at 23:07 UTC ( #286528=note: print w/replies, xml ) Need Help??

in reply to Sub-initiate needs help getting started

Lori713, first off: Good luck with your project. Secondly, in case you have never worked on an extensive project before, some tips which have helped me in the past (you may or may not consider them useful):
  • Split the problem into sub-problems, and those into smaller problems, for example (very rough) data input, data processing, data output or (finer for data input) get data from database, parse data into appropriate formats for processing.
  • For every larger problem group, generate an own module. This will split your code into readable portions. A larger problem group would for example be the output to an HTML table, possibly as submodule in a module that outputs the whole report. Test every module thoroughly after you have finished it.
  • Every module can be split into functions as sketched above. For each function, you should note in a comment -- before you write the function body -- what input the function expects, what it does, and how the output is formatted. After you finished a single function, always test it with sample data. You should have small functions that do part of the dirty work of the larger functions to make your code more readable.
  • Nesting is good (see above)
  • Good luck again
This method provides you with a LEGO way of solving your problem: First, buld up parttial solutions from the bricks, group them into larger partial solutions and finally into the real solution.
The partial documenting "on the go" is a bit more work, but it'll pay offonce you wonder what arguments should be passed to that what-was-it-called function.

And the last thing: Whenever you have problems with a piece of code that you think should work, but doesn't, post it and you'll see (if it is a sensible small problem - splitting ;-) that we try to help with code as much as with theory.

Hope this helped.

Update: About the HTML part: Although you probably don't, if you should know German, have a look at Stefan Münz's Selfhtml tutorial; it is simply the best HTML tutorial I know.
Entropy is the tendency of everything going to hell.
  • Comment on Re: Sub-initiate needs help getting started

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://286528]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (4)
As of 2018-07-15 21:14 GMT
Find Nodes?
    Voting Booth?
    It has been suggested to rename Perl 6 in order to boost its marketing potential. Which name would you prefer?

    Results (326 votes). Check out past polls.