Gus Van Horn blog Posted September 30, 2014 Report Share Posted September 30, 2014 From the annals of software development comes an interesting illustration of the difference between what one knows and what one doesn't. The below are lessons a coder learned from a bug report that bizarrely (but correctly) stated that attempting to print an example file would jam the printer: Just because a bug seems impossible doesn't mean it is. Abstractions are everywhere, and they can be broken. As a software guy, I believed that getting the paper into the output tray was a solved problem. The author uses the term "abstraction" in a sense peculiar to his area of expertise, meaning an omission of "details which matter in practice, but are immaterial to the problem being solved". The programmer reasonably thought -- but did not actually know -- that a step between the printing command and the physical document was solved. He did not know this because he did not know in detail how the printer worked. It clearly behooves us to be aware of what we really do know versus what we merely assume. -- CAV Link to Original Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.