Your Favorite Programming Quote

[quote] "In theory, theory and practice are the same. In practice, they aren’t even close"
It can be applied to many fields, but goes great with programming.[/quote]
Someone’s signature - “That’s all very good in practice, but how does it work in theory?”

“Programmers have no idea how good (or bad) they are at programming. In fact, we all think we’re pretty darn good at it.”

and related:

“So now I have no idea how far along the programmer-proficiency curve I am, but I can at least see that I’m nowhere near the high end; I’m not even to the halfway point. My ego still assures me I’m past the 25% mark, but realistically, I doubt it. I’m probably flush with the y-axis.”

Both from Steve Yegge

  1. Ooops…
  2. What the…
  3. But why!?!
  4. Hmmm…

…etc :slight_smile:

On OO coding run amok:

The JavaBean spec designers threw the getter/setter idiom into the picture because they thought it would be an easy way to quickly make a bean—something you can do while you’re learning how to do it right. Unfortunately, nobody did that.
– Allen Holub/2003

and

I particularly dislike classes with a lot of get and set functions.
– Bjarne Stroustrup/2003

(The current OO practice ignores what Objects have, capabilities; and manipulates what is irrelevant, data)

For coders, generally, run amok in data:

Proper data management is the key to great architecture. Ignoring this and abstracting data access and data management away just to have a convenient programming model is … problematic. … Many of the proponents of O/R mapping that I run into (and that is a generalization and I am not trying to offend anyone – just an observation) are folks who don’t know SQL and RDBMS technology in any reasonable depth and/or often have no interest in doing so.
– Clemens Vasters/2006

and

In CS we don’t have a lot of formal models to guide us, as in engineering or other science. Much of CS is entirely ad-hoc. However we do have a sound and complete model for data storage (relational model) and hardly anyone uses it. It boggles my mind. Do people not want their programs to work predictably?
– Anonymous Coward/2005

“Web Services are like teenage sex. Everyone’s talking about doing it, but most people aren’t; and the one’s who are doing it aren’t doing it very well.” - Not sure who said that

“Trivia rarely affect efficiency.” --The Elements of Programming Style, Kernighan and Plauger

C is for Cookie. That good enough for me.

You can have it:

  1. Good
  2. Fast
  3. Cheap

Pick two.

"Programming is an art form that fights back"
Chad Z. Hower (aka Kudzu)

“Programming is like kicking yourself in the face, sooner or later your nose will bleed” ~ Programming Legend Kyle Woodbury

One of my favorites:

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

I keep a collection of my favorite programming quotes at:
http://www.dynamicajax.com/fr/Great_Software_Quotes-200_306.html

You even have some out there Jeff.

I watched one of Raymond Chen’s talks from a PDC about a year ago. I liked this quote:

“One of the questions I get is, “My app is slow to startup, what are the super secret evil tricks you guys at Microsoft are using to get your apps to startup faster?” And the answer is … the super evil trick … is to do less stuff. Because the stuff you don’t do … it turns out I can do nothing really fast!”

“portability is for canoes” Jim McCarthy, dynamics of software development

Your mom is so fat she sat on a binary tree and turned it into a linked list in constant time!

and …

Saying Java is good because it works on all OSes is like saying anal sex is good because it works on all genders.

I just remembered this. " What is the object oriented way of getting rich?"

  • Inheritance

:slight_smile:

“The function of good software is to make the complex appear to be simple.” - Grady Booch

Although I have no real name to credit, a fellow by the nickname of MFen is quoted from #python on freenode.net with this gem: Python’s a drop-in replacement for BASIC in the sense that Optimus Prime is a drop-in replacement for a truck.

When in doubt, use brute force
– Ken Thompson

And another theory/practice saying:
The difference between theory and practice is that, in theory, there is no difference between theory and practice.
– Richard Moore (KDE Developer)

@Tudor Vlad: I always heard it as: “The difference between theory and practice is smaller in theory than in practice.”

“Mostly, when you see programmers, they aren’t doing anything. One of the attractive things about programmers is that you cannot tell whether or not they are working simply by looking at them. Very often they’re sitting there seemingly drinking coffee and gossiping, or just staring into space. What the programmer is trying to do is get a handle on all the individual and unrelated ideas that are scampering around in his head.” - Charles M Strauss

The above quote by Adam Goldstein on May 8, 2007 05:43 AM is exactly how I feel like when I am programming. It really captures my state of mind. Thank you Adam for this quote.