Thursday, October 29, 2015

Thirteen Engineering Truths

I've seen these published individually and in collections, and some form the original Murphy's Law Books. But they all have the stink of truth. Many of these have been re-born as Computer specific laws. I've tried to phrase them generally for maximum applicability.

1. Time is a fixed construct. No matter how hard you push and no matter what the priority, you can't increase the speed of light.  A.K.A. No matter how hard you try, you can't make a baby in much less than 9 months.

2. With sufficient thrust, pigs fly just fine. However, it is hard to be sure where they are going to land, and it could be dangerous sitting under them as they fly overhead.

3. Non-engineers will never understand what you do. Y

4. It is always possible to conglomerate multiple unrelated problems into a single complex interdependent solution. It's just never the best solution.

5. It is easier to re-organize around a problem than it is to solve it.

6. It is always possible to add another level of complexity. It's just never the best solution.

7. Good, Fast, Cheap: Pick any two (you can't have all three).

8. It is always more complicated than you think.

9. You always need more. (Manhours, amps, budget, batteries etc.)

10. Every Engineering problem always takes longer to solve than it seems like it should.

11. Every old idea will be proposed again with a different name and a different presentation, regardless of whether it works.

12. Minimalism is elegance. Perfection is been reached not when there is nothing left to add, but when there is nothing left to take away.

13. Frugality is a virtue. AKA: Re-use is the ultimate recycling. This holds true of all goods: scrap metal, PHP code, promo items, PC parts, etc.