Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Alan Perlis epigram #32: http://www.cs.yale.edu/homes/perlis-alan/quotes.html

"Programmers are not to be measured by their ingenuity and their logic but by the completeness of their case analysis."

Well-engineered programs cover all the cases: they handle what they must handle, and have an answer for the rest which is better than "oh shoot, didn't think of that".

The main programmer skill is remembering to ask yourself, "under what conditions won't this work?" or "what inputs or situations break this?" and being able to come up with excellent answers.

Also, asking this question: "though this appears to work, where are all the requirements (language, library, platform, ...) coming from which make it work, and are any missing?"



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: