Wednesday, February 28, 2007

"That's elegant."

More often than not, it isn't.

E=mc2, that's elegant.
F=ma, that's elegant.

In science and engineering, elegant generally means "simple, obvious and effective".

Last night, I was reading the book Essential Windows Workflow Foundation and began to think, "I need to understand this... Boy, I hope they don't use the phrase 'elegant solution' in reference to their own work. I need to know this and if they go there... I won't be able to finish the book."

Granted that's a pretty drastic reaction to a pretty simple phrase. Windows Workflow Foundation (WF) is a great idea and a much needed step in the right direction of software development, but it's pretty complex.
Before my non-Microsoft development brethren pounce on me, I know it's not a novel idea either.
So, why my vehement stance?

Easy. The word "elegant" is horribly overused in science and engineering. Going back to around 410 BC the word elegant can be applied to maybe 20 solutions. While we can debate the number of insights, inventions, theories, and solutions that warrant the word elegant, what is not up for debate is that we (scientists and engineers) have lost sight of what constitutes elegance.

I know I'm going a long way to rant about the subjective use of a single word. Perhaps my immature idealism gets the better of me sometimes.

8 comments:

Bo said...

I hear ya, man. The worst part about losing what we perceive to be the true senses of words is that we generally lose them because we're in the minority. So by the time we notice they're slipping away, it's practically a certainty they'll stay gone (in our lifetimes, anyway).

Know what "moot" used to mean? "Worthy of discussion."

Three words whose loss (or imminent loss) irritates me:

Literally. Now means figuratively, apparently. It literally makes smoke come out of my ears.

Datum. What a sad day when this particular field was salted, because the monstrosities "data set" and "data point" grew there.

Semiweekly. Will it ever come back? Doubtful. Most people say "biweekly" when they mean "semiweekly" now. They still say it when they mean "biweekly" too. That's not very elegant.

Anonymous said...

Excellent! I too am bothered by the misuse of Literally and Semiweekly.

As for "Elegant Solution", I put the challenge to you though... What phrase should someone use for a complex solution that is still relatively elegant in comparison to the previous solution? I'd say that .NET and the FCL is elegant in comparison to writing COM code in an unmanaged environment, but it certainly wouldn't qualify for one of the top 20 engineering solutions to come around since 410 BC.

Carey Cilyok said...

Granted, "elegant" used in a relative manner is the easiest way to make the point. I guess for me it's just that if you make the point that way, it's a lot like using an ICBM to make the point that you're annoyed with another driver for not using his turn signal early enough.

But given the challange, perhaps I'd use the words "significant improvement". Clearly, .NET is a sigificant improvement over COM/Corba/Java. But "elegant"... I can see the mushroom cloud.

Maybe Bo, as a writer, can help us out here.

Bo said...

Writing around "elegant" is hard. You can take bites of it with terms like "efficient" and "aesthetically pleasing," but those only capture part of the connotation. "Perfect" has its own substantial baggage and is probably too much in some ways and too general in others.

Of course, as we discussed this afternoon, the use of "elegant" that bothers you doesn't bother me--what does is when people use it to mean "beautiful," with an ornate connotation. A characteristic that makes something ornate rarely makes it more functional, hence my offense. Really, I've always taken care to use the word "elegant" exactly the way you don't like.

It's an interesting problem. I'll keep thinking on it, but I think the only substitute you'd find acceptable is a wordy phrase, and in that case I'd recommend falling back to "elegant" for brevity. The battle for the word is lost anyway.

Bo said...

You're around the edges of some deep questions here. For example, I think invention vs. discovery is a critical distinction concerning the concept of elegance.

Everything we've talked about is invention, and I don't find that particularly controversial. I would argue that elegance doesn't exist without choice. To say that something is elegant is to imply that there are inferior solutions, but solutions nonetheless, to the problem.

But dig: Newton's laws of motion and Einstein's mass-energy equivalence equation always were; we just didn't always know. Strictly speaking, they are discoveries, not inventions. They describe what are, as far as we know, immutable characteristics of the universe. Can a discovery be elegant? If so, there is choice present. So isn't that an argument for the existence of God?

Carey Cilyok said...

You may get Mark into an "existance of God" conversation, you know better than pull that with me.

Now, you stated:

"Strictly speaking, they are discoveries, not inventions."

Strictly speaking both are theories. Further, both are incomplete theories. The Grand Unified Theory is the Holy Grail given the example we're talking about.

A theory attempts to explain. This also begins to address your "perfection vs. elegance" topic as well. Newton's laws of motion are elegant, not perfect.

Einstein's Theory of Special Relativity, which features that famous equation, is actually not the proper comparison. Newton's laws including his description of the gravitational force are better compared to Einstein's General Relativity Theory (GTR) which says that gravity isn't a force, but instead a consequence of the curvature of space-time in the vacinity of a massive object.

GTR was a deepening of our understanding of the Newtonian concept of gravity. Yet, GTR is also imperfect. Elegant but imperfect.

So, where does that leave us, Skippy?

Bo said...

Using "elegance" as the least of available evils. :)

Anonymous said...

All this because Carey was reading something on WF and we are into arguing the existence of God.

Actually, I really like the thought process that elegance implies choice and if you believe that f=ma or e=mc2 is elegant, then you must see God in there somewhere. I know I do. Carey does too, he may just not admit it :)

On another note related to WF, I think that Microsoft's marketing folks who came up with the brilliant idea of naming these technologies the ".NET 3.0 framework" are a good argument for the existence of the devil.