Friday, June 29, 2012

Engineering Words

I've written before about words that have special meaning in engineering. But wait, there are more! There is a subset of words that I use when I'm talking with engineers and we all use them. Then I talk to my coworkers in marketing...... and they look at me like I just got out a dictionary and picked the obscure words!

It's jargon. Pure and simple. Jargon doesn't have to be words that have no meaning outside the profession. Sometimes the words are just uncommon outside your profession, or have different meanings!

So, what's some engineering jargon?

Canonical
In general usage, canonical means "accepted" or "authorized". In engineering, canonical means authoritative. It implies that it's the most appropriate or best archetype or something. Think CNAME ("canonical name"), or the canonical source of some information (the one that's guaranteed to be right).

Idempotent
This one shares meaning, but I've heard it a lot more in engineering and math than I have in general usage. It means that something is unchanged when multiplied by itself. In practice, that means that if you call the same function again with the same inputs, then there is no effect.

Recursive
This is applying an algorithm or function repeatedly to solve a problem. Solving a recursion problem is a really common interview test for developers. Surprisingly, when I talk with people in marketing or in finance, they use the same tricks - applying something repeatedly to get to an ultimate solution. They just call it things like, "launder, rinse, repeat" or "do it again".

Trivial
Here's another word that has slightly different meanings to different people. For many people I talk to, trivial means "quick". For a lot of engineers I know, though, trivial means "I know how to do this and there aren't any minefields." It doesn't necessarily mean fast, although that can certainly happen, too!