Programming on Paper

From: Dwight Elvey <>
Date: Mon Jun 19 13:14:57 2000

Douglas Quebbeman <> wrote:
> Ok, here's a quote from one of my favorite computer scientists
> (Tom VanVleck, who might respond to being so identified as "Me?
> I'm just a programmer!"):
> : It is possible to write perfect, bug-free code. I've seen
> : it done, with no tool except a pencil. The essential ingredient
> : is a decision, by the individual programmer, to make the code
> : perfect, and not to release it until it is perfect.

 While it is possible to write bug-free code on paper,
it is generally considered a waste of valuable time
to no use feedback methods that include running the code
on real machines. What is actually important is getting
a bug free product in the shortest amount of time.
 It is better to have a method of incremental testing that
can uncover bugs early than to have someone that spends
weeks analyzing code by inspection on paper. Most people
that program don't consider testing their code as they
write ( I'm guilty as well ). The best and the fastest
coding I've ever done included regular testing to make
sure it was working correctly. I've found from my experience
that the best code had about 50/50 write to test time
and that if I wrote code for more than 2 hours without
testing, the debugging time would increase.
 Following good programming rules helps to generate good
code but doesn't guarantee it. I will break these rules
cautiously when it is desirable towards that end result.
It is vary important that one understand the potential problems
this can later cause and include test code ( commented out )
that a later programmer can use to make sure it is
functioning correctly.
 Rules like " Don't make self modifying code." are good
general rules but entire languages are based on doing
just that. Does it make the language bad? No, it is
just that one must use careful and restricted use of things
that can be more easily messed up. Incremental testing
is still the key. Without it, even Ada is a bad programming
Received on Mon Jun 19 2000 - 13:14:57 BST

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:33:01 BST