We built a foundation for our application in the last episode.  Now, we move into solving the problem that our customers will pay for.  This step is just putting our plan on the computer and handling a single case.  Our actions should be defined in our specification to the point that this is relatively easy.

Document As You Go

A way to approach this step is to start with comments, move to text/hard-coded output, and then to plug in the computations.  When you follow this approach, the actions of this phase follow the checklist below.

  • Pseudo code the process in comments
  • Add console (or other simple output) commands that reflect the comments
  • Use single and hard-coded problem parameters
  • Start with the most challenging step
  • Implement and test the step
  • Move to the next step and repeat
  • Leave output in place and update with result data as you replace hard-coded text with a function or block of code
  • Test the full process as you go

This process is tedious for the most simple problems but makes more sense as you move to more significant and more complex challenges.

Your Homework

This episode takes us through solving our problem in an automated fashion.  Walk through the suggested steps above with your application.  If you get ahead on the work a little and solve for the general case then that is ok.  The episodes break up the implementation to make it easy for large products.  A small product may not need all of these distinct steps.

Specific case code example: implement2.tar.gz

Rob Broadhead

Rob is a founder of, and frequent contributor to, Develpreneur. This includes the Building Better Developers podcast. He is also a longtime student of technology as a developer, designer, and manager of software solutions. Rob is a founder and principle of RB Consulting and has managed to author a book about his family experiences. In his free time, he stays busy raising five children (although a few have grown into adults). When he has a chance to breathe, he is on the ice playing hockey to relax.

Leave a Reply