Volume 2, Number 8 Copyright 1997 TGG October 8, 1997

You may redistribute this newsletter for noncommercial purposes. For commercial use contact jack@ganssle.com.

EDITOR: Jack Ganssle, jack@ganssle.com

- Editor's Notes
- Interesting Article and Catalog
- Embedded Systems Conference Notes
- Embedded Seminar in Irvine
- Thought for the Week
- About The Embedded Muse

Editor's Notes

I'm giving "The Best Ideas for Developing Better Firmware Faster" seminar in Irvine, California on November 13. I've presented this to quite a few people now - often in-house for individual companies - and the response has been fascinating. Schedules continue to be a source of concern (bitterness in many cases) for developers, as few companies seem to have mastered the arcane arts of estimation.

We're so wrapped up in getting a project out TODAY that we forget that the theme of our work must be to slowly, constantly, improve. Find small ways to do things better. Two fascinating resources are the Software Engineering Institute's Capability Maturity Model (CMM) of development, and Humphrey's book "A Discipline for Software Engineering" (ISBN 0-201-54610-8). The idea is to adopt smarter ways of working, rather than heroic ways.

My talk is more about immediately useful methods (mastering the CMM is like getting a karate black belt - it takes years... but it is profound nevertheless), but agree with the idea that "process" - how we do things - is generally flawed and needs a lot of rethinking.

So if you're interested in the southern California class, see the note later in this newsletter.

And, this talk of process led to my selection for this issue's "Thought for the Week". I hope it's not offensive to anyone, but I find it an amusing anecdote of how a small thoughtful change can have a huge impact.

"Dumb Mistakes" will resume shortly; I have more queued up from readers (all greatly appreciated, for sure).

Interesting Article and Catalog

If you have any interest in the history of electronics, by all means check out the September 15, 1997 issue of Electronic Engineering Times. The article by George Rostky that starts on page 20 covers the invention and development of the calculator. He goes all the way back to the abacus, and shows us how we got to the $3 disposable units we have today.

I remember playing with the Friden 5 function units as a kid. These 50 pound monsters could do the basic four functions and square roots. Some calculations took many seconds, yet the unit was entirely electronic, even using a CRT for results. When these units became obsolete I disassembled one, amazed to find them devoid of ICs. Hundreds - maybe thousands - of transistors filled the unit. Truly a marvel of design.

I highly recommend the article.

Unhappily thereís no e-address listed. Via snail mail get them at PO Box 1981, Fort Worth, TX 76101-1981. Phone: 800-877-0072. The catalog carries a $3.95 price tag but I presume itís actually a freebie.

Embedded Systems Conference Notes

The San Jose Embedded Systems Conference last week blew my mind. Itís bigger than ever, and the glitter factor has gone off the scale. Not that many years ago there were just a handful of tabletop displays in a small San Francisco hotel. This year the show filled the San Jose convention center, with booths even stacked up in the atrium. Truly a remarkable affair.

My amateur assessment of the show is: Java, embedded Internet, 32 bits, and Windows CE. Last year these subjects were on display in a limited way; in 1997 they dominated the displays and the technical sessions. 8 and 16 bits seemed to be lost in the noise.

In one Windows CE presentation Microsoft made three - count Ďem - three references to the CE Toaster of the future. Though there was a small sense of levity implied I couldnít help but remember that my most recent EDN column was in fact a joke about designing a toaster using 32 bit processors. Truth is stranger than fiction.

Yet Iím seeing more and more embedded apps using sophisticated GUIs. Check out HPís new Infinium oscilloscopes. These are very cool, high performance scopes with a sleek display. The OS? Windows 95. Look at Scott Rosenthalís article on embedded localization issues (October 1997 Personal Engineering & Instrumentation News magazine). He implies that a GUI of some sort sure makes it easier to build instruments with multi-language support.

I was also interested to learn that a major car vendor is designing 32 bit CPUs into their engine controllers. This is a traditionally very cost-sensitive application, yet theyíve managed to match 32 bits to the pricing needs. No GUI in this app (so far), but the trend is clear.

8 and 16 bit systems outnumber 32 bitters by orders of magnitudes. I canít help but wonder, though, if consumer lust (real or perceived) for net-awareness and pretty GUIs will slowly change this model.

Embedded Seminar! Irvine, CA - Thursday, November 13

I'm conducting a full-day embedded seminar in Irvine on November 13. It's called "The Best Ideas for Developing Better Firmware Faster", and is for the developer who is honestly looking for new ideas, but who wants to cut through the academic fluff of formal methodologies and immediately find better ways to work.

The focus is uniquely on embedded systems. I'll talk about ways to link the hardware and software, to identify and stamp out bugs, to manage risk, and to meet impossible deadlines.

The course covers the following material:
Linking the software to the hardware
* Reusable software - the reality
* Managing module complexity
* Piggy-backing a software prototype

Writing drivers for embedded peripherals
* Translating bit patterns into code
* Creating interrupt service routines

Stamp out bugs!
* Learn bug management techniques
* Prevent defects with quick code inspections
* Study optimal use of bug-hunting tools
* Finding those hardware/software glitches

Overcoming deadline madness
* Negotiating realistic deadlines
* Improve your estimation skills
* Learn how hardware factors delay firmware
* Learn to validate your schedule estimates
* What to do when a project runs late

Manage risk to avoid last minute disasters
* How to assess and manage risk areas early
* Preventing system performance debacles
* When to use hardware to help the software
* Avoiding communications nightmares

How to learn from failures... and successes
* Learn to conduct an effective postmortem
* Closing the feedback loop
* How to create an action plan

Thought for the Week

The Wall Street Journal had an article about the Dutch takeover of JFK airport's International Arrivals building. The Dutch have some interesting ideas on how to clean it up.

In Amsterdam, the tile under Schiphol's urinals would pass inspection in an operating room. But nobody notices. What everybody does notice is that each urinal has a fly in it. Look harder, and the fly turns into the black outline of a fly, etched into the porcelain.

"It improves the aim," says Aad Kieboom. "If a man sees a fly, he aims at it." Mr. Kieboom, an economist, directs Schiphol's own building expansion. His staff conducted fly-in-urinal trials and found that etchings reduce spillage by 80%.

"We will put flies in the urinals -- yes," Jan Jansen says in a back office at the Arrivals Building. He is the new Dutch general manager. "It gives a guy something to think about. That's the perfect example of process control."

His New York public relations attendant titters. "Fine, laugh at me," Mr. Jansen says. "It works."