Engineered Programs

Engineered programs involve the application of science to solving problems. Hacked programs evolve from the use of guesswork to solving problems. Only engineered programs make use of scientific theory, which, by way of proof, provides guarantees for correctness, efficiency, and more. Hacked programs can provide no such guarantees. Therefore, computer science and scientific theory are essential for creating quality software. Computer science gives us a means to model our abstract ideas and turn them into working programs.

Of course, this is all more true in theory than in reality. Engineering seems to invariably involve a certain amount of hacking, and many problems are just too opaque for formal analysis. Still, we should make sure that we've exhausted as many theoretically-backed ideas as we can before resorting to informal solutions. Fortunately, our programming languages (usually) provide proven algorithms, data structures, tools and techniques to help us.

NASA uses the acronym ALARA (As Low As Reasonably Achievable) to describe its tolerance for radiation exposure of crew. Although our software probably won't bombard the user or system with cosmic rays, we should aspire to uphold the same degree of rigor in our own programs. In a way, like radiation exposure increases the risk of health complications within a biological system, hacking increases the risk of bugs, bottlenecks and other complications within a software system. Let's keep the use of guesswork ALARA.