Guiding Perspective in Software Programming – Correctness First

A statement by Alexander Stepanov has stayed with me after reading his book, From Mathematics to Generic Programming. As the inventor of the C++ STL and 45+ years of experience, his guidance comes across as highly credible. I paraphrase his advice as the following:

Write a correct program first, improve it later.

That could have several meanings but I put it like this. A computer program that does the job well despite a less graceful technical interior is preferable to one that evolves too slow to be useful but that has an immaculate technical design. Code can always be improved.

Multiple cycles of refinement is a reality. Even the largest software companies have to put patches out every couple of weeks. Regardless, of that situation, their solutions are in wide use despite inherent flaws.

People starting out fresh or pursuing a technological direction of a far less familiar kind can encounter challenges. Never give up despite how daunting a task may seem. If you can imagine the outcome, you can follow through with persistence to achieve it. Better code arises through time, patience, persistence, and a willingness to improve. What you put out reflects what is nurtured within. A better version can always be made.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.