Please take note. This blog is in the process of moving to a new platform (WordPress) for many reasons (easier to publish being one).

The URL of the new blog platform is

At the URL, you will find recent updates, and how to follow using Facebook, Instagram or Twitter.

The plan is to provide timely, more detailed, project information as it happens.

In the future, this address will redirect to the new URL and the original content will be removed.

Saturday, May 24, 2008

Gonzo Engineering

Ok. So I was browsing the Microship website (linked on the side column), and came across the owner's article titled Gonzo Engineering. In particular, this section of ten rules that apply to any large engineering project. I had to laugh, because it is true. Being an engineer myself (software) it is spot on with my experiences and even applies to the Westsail project. This is why we are not publishing "hard launch dates" ;-). It is written from the perspective of his electronics projects, but I think it applies to all disciplines. Engineering in a Nutshell What actually happens is much more organic, and I’ve noted with amusement that, despite protestations to the contrary among the engineering population, it’s typical of the way things usually work in industry. Here’s how to manage a huge, complex project:
  1. Accept going in that your first tentative decomposition of the fundamental concept will yield an over-simplified TO-DO list, distorted by misunderstanding of key issues.
  2. Avoiding all the items labeled TBDWL (To Be Dealt With Later) or ATAMO (And Then A Miracle Occurs), dive headlong into the well-defined parts, finishing some of the electronic design so early in the game that it is guaranteed to be obsolete before the physical substrate is built.
  3. Blunder ahead on the non-obvious parts, getting pleasantly distracted by learning curves and occasional moments of certainty, only to discover basic flaws in your reasoning.
  4. Now that you are forced to re-think the initial concept, map it onto newly recognized reality to yield a fresh TO-DO list (with new lab notebooks and computational tools to keep things lively) and another cycle of enthusiastic activity.
  5. Repeat steps 3-4 countless times at varying levels of abstraction ranging from the entire system down to individual components.
  6. Meanwhile, since technology evolves with frightening rapidity, acknowledge the fact that any computer-based system is such a moving target that if it’s not completed quickly, it will be irrelevant by the time it ships.
  7. Respond by simplifying the design, further refining your objectives and abandoning dead-end ideas while doggedly pursuing others that have come to represent too large an economic or emotional investment to allow a graceful retreat.
  8. Compromise here and there, bang out a few things that weren’t on the list, then add them and cross them off to make yourself feel good.
  9. Get totally sidetracked a few times, and periodically dive into major development marathons to meet public deadlines like trade shows, pulling all-nighters in PFD mode (Procrastination Followed by Despair).
  10. Announce new completion dates whenever a previously predicted one has passed, and keep driving your PR engine to maintain interest during a process that is a textbook illustration of Hofstadter’s Law (“Everything takes longer than you expect, even when you take into account Hofstadter’s law.”)

From "Gonzo Engineering" by Stephen K Roberts. The rest of the article is worth a read.

No comments: