Tuesday, July 17, 2007

Types of Engineering Problems

The Fishbowl: Understanding Engineers: Feasibility

This guy hits the nail on the head about what engineers mean when they talk of "impossible", "trivial", "Hard" and "Very Hard" problems.

The one issue I have is that their definition of "non-trival" uses the word "impossible": a word already defined in the context of the article. This seems to make "non-trivial" mean "can never be completely done with our standard of computing". However, A better definition of "non-trivial" would be:

It means impossibleI don't know. Since no engineer is going to admit something is impossiblethey can't quantify an answer given the conditions, they use this word instead. When an engineer says something is "non-trivial," it's the equivalent of an airline pilot calmly telling you that you might encounter "just a bit of turbulence" as he flies you into a cat 5 hurricane. Or maybe not... but probably yes. Further research may tell if a non-trivial problem is Hard or Very Hard.

Of course, this new definition loses some "engineer vs layperson" issues with the word "impossible" (mentioned right below the quote in the original article): An engineer's "non-trivial" operation is flying through a cat 5 hurricane because it is physically possible, since the laws of thermodynamics still apply, although a non-engineer would probably call this feat impossible because it's really really challenging for the pilot.

The engineer's "impossible" is programming a computer to absolutely prove the existence of God using computers (a question that can not be computed mechanically). A similar (non-engineering) impossible problem might be: "I need to walk in space without a space suit".

The "non-trivial" definition from the article again illustrates this difference... but we don't need a definition of a word to rest on a previously defined word that means two different things to two different classes of people. Especially when that word means what "non-trivial" means to engineers.