Tuesday 1 February 2011

Unforeseen consequences

Designing electronics is very difficult. So difficult, in fact, that I am very glad that I chose to become a programmer rather than an electronics engineer.

The problem is always in the polishing. There is an old adage that completing the first 90% of a program takes 10% of the time, whilst completing the last 10% takes the remaining 90% of the time. To put it another way, it is far easier to get something basically working than it is to ensure that it always works well under all necessary conditions.

This is one of the reasons why there are so many buggy programs - the programmer write some code that appears to work and passes basic tests. He knows that there are some areas that may need work, but the management thinks it is good enough and wants him to work on the next task. That last 10% of the job, the polishing, often never occurs.

And it is far worse in electronics, and especially consumer electronics. And sometimes the truly weird and unexpected can come and bite you on the bottom. Take this story on the Connectify blog. Basically, some people with the new Kindle 3 E-Book readers noticed their units were rebooting at random intervals. The Kindle's come with a choice of leather covers, one of which has a light, and the other which is unlit.

Strangely, the failures were only occurring in the Kindles with unlit covers. Connectify did some research, and it turns out that on the powered cover, two gold-plated contacts touch the Kindle to power the light. In the unpowered version, these contacts are metal painted with a non-conductive paint. This paint was wearing off with repeated opening and closing of the cover, allowing a connection to be made. This was drawing power from the Kindle and causing various pseudo-random problems, including crashes and reboots.

Thus the design of a cover for a device has led to a problem with the device itself; circumstances which would have been difficult to foresee. This is one reason why automotive and military electronics are always more expensive: they go to much more bother about the construction and testing of their devices than consumer electronics companies.

No comments: