There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies and the other way is to make it so complicated that there are no obvious deficiencies.
— C.A.R. Hoare, The 1980 ACM Turing Award Lecture
The computing scientist’s main challenge is not to get confused by the complexities of his own making.
— E. W. Dijkstra
The cheapest, fastest, and most reliable components are those that aren’t there.
— Gordon Bell
One of my most productive days was throwing away 1000 lines of code.
— Ken Thompson
When in doubt, use brute force.
— Ken Thompson
Deleted code is debugged code.
— Jeff Sickel
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
— Brian W. Kernighan and P. J. Plauger in The Elements of Programming Style.
The most effective debugging tool is still careful thought, coupled with judiciously placed print statements.
— Brian W. Kernighan, in the paper Unix for Beginners (1979)
Controlling complexity is the essence of computer programming.
— Brian Kernighan
Beauty is more important in computing than anywhere else in technology because software is so complicated. Beauty is the ultimate defence against complexity.
— David Gelernter
UNIX was not designed to stop its users from doing stupid things, as that would also stop them from doing clever things.
— Doug Gwyn
If you’re willing to restrict the flexibility of your approach, you can almost always do something better.
— John Carmack
And folks, let’s be honest. Sturgeon was an optimist. Way more than 90% of code is crap.
— viro [http://www.ussg.iu.edu/hypermail/linux/kernel/0310.0/0870.html]
A data structure is just a stupid programming language.
— R. Wm. Gosper
The essence of XML is this: the problem it solves is not hard, and it does not solve the problem well.
— Phil Wadler, POPL 2003
A program that produces incorrect results twice as fast is infinitely slower.
— John Osterhout
Life is too short to run proprietary software.
— Bdale Garbee
I had a nightmare once in which I a had convinced a friend how wonderful C++ is. A while later he came back., and he was mad.[sic]
— Robin Rosenberg [http://groups.google.com/groups?selm=1fYEA-pz-21%40gated-at.bofh.it]
XML is like violence: if it doesn’t solve your problem, you aren’t using enough of it.
— Heard from someone working at Microsoft
XML is like violence. Sure, it seems like a quick and easy solution at first, but then it spirals out of control into utter chaos.
— Sarkos in reddit
Threads [and] signals [are] a platform-dependant trail of misery, despair, horror and madness.
— Anthony Baxter [http://mail.python.org/pipermail/python-dev/2005-July/]
All software sucks, be it open-source [or] proprietary. The only question is what can be done with particular instance of suckage, and that’s where having the source matters.
— viro [http://www.ussg.iu.edu/hypermail/linux/kernel/0404.3/1344.html]
Mathematicians stand on each others’ shoulders and computer scientists stand on each others’ toes.
— Richard Hamming
It’s not that Perl programmers are idiots, it’s that the language rewards idiotic behavior in a way that no other language or tool has ever done.
— Erik Naggum, comp.lang.lisp
Out-of-band == should be on a separate channel…
— Al Viro
It’s a curious thing about our industry: not only do we not learn from our mistakes, we also don’t learn from our successes.
— Keith Braithwaite
Ethernet always wins.
— Andy Bechtolsheim
The central enemy of reliability is complexity.
— Geer et al.
Simplicity is prerequisite for reliability.
— Edsger W. Dijkstra
Beware of “the real world”. A speaker’s appeal to it is always an invitation not to challenge his tacit assumptions.
— Edsger W. Dijkstra
Unix is a junk OS designed by a committee of PhDs.
— Dave Cutler
I’ve wondered whether Linux sysfs should be called syphilis
A program is portable to the extent that it can be easily moved to a new computing environment with much less effort than would be required to write it afresh.
— W. Stan Brown [http://groups.google.com/group/comp.std.c/msg/083fb09444dbbc76]
Programming graphics in X is like finding the square root of PI using Roman numerals.
— Henry Spencer
Forward thinking was just the thing that made Multics what it is today.
— Erik Quanstrom