Letters

Dr. Dobb's Journal May, 2005


More Licensing & Such

Dear DDJ,

In the "Letters" section of the March 2005 DDJ, Jim Wiggins uses a Hyundai recall as an example of why software developers should be licensed. Jim cites a series of crash tests in which the Hyundai Elantra's air bags failed to deploy. He suggests that this error was due to error and process problems of the developers of the car's software. This is too simplistic. Just because the fix is in the software, it doesn't follow that the software was written badly. It is just as likely that Hyundai's hardware engineers changed the hardware, without bothering to have the software tested and updated as well.

The following scenario seems quite feasible: A car has been in development for a few years. The software has been developed and tested, with good processes and rigor and QA, and the team has moved on to the next project. Later, when the car is actually being manufactured, an alternative for some hardware component becomes available. The new alternative is cheaper, and is supposed to be 100-percent compatible. Management elects to substitute that part on the assembly line, and the car becomes a little more profitable. Only later is it discovered that the part isn't quite the drop-in replacement it was supposed to be, and it broke the software. The software team was never asked or allowed to test the new configuration, because management assumed it would "just work." They may not even have been in the loop for the change.

Lug nuts, hubcaps, ashtrays, airbag sensors, it's all the same. Parts are parts, right? Just buy the cheapest one you can find. It would hardly be a surprise if they forgot that some parts can't be exchanged as easily as others, and require the software to be updated.

No software development licensing scheme could fix this problem, because the problem isn't the developer, it's the management. There may be horror stories to justify licensing, but this probably isn't one of them, based on the information available.

Jonathan Hendry

hendry@snet.net

Smart Stuff

Dear DDJ,

The idea of "smart firearms" that Jonathan Erickson discusses in his March 2005 "Smart Stuff" editorial is intellectually interesting, but utterly impractical. As that saying goes, "In theory, there is no difference between theory and practice. But, in practice, there is." Years of research and battlefield testing have gone into making modern handguns extremely reliable. Adding electronics and algorithms to a handgun, which is fundamentally a mechanical device, will decrease its reliability. From a hardware perspective, possible failures include the battery going flat, a connection coming undone due to recoil or poor quality control, or electronic component failure. From a software or firmware standpoint, it is virtually impossible to prove that a significantly complex piece of software such as this will be bug free. Look at the 1991 Patriot missile defense system failure, for example (http://www.fas.org/spp/starwars/gao/im92026.htm). If the DoD can't write bug-free software with its budget and rigorous process, who can? Look at the Hyundai Elantra airbag deployment failure that reader Jim Wiggins reported in this very DDJ issue.

From a human factors point of view, physical characteristics can vary hugely under stress or circumstances. This is extremely likely to affect someone's grip pattern and trigger pull. For example, you could be shooting using your weak hand because your other hand is incapacitated, or your hand could be slippery from grease, blood, or sweat. Unjustifiably preventing a person from firing his or her weapon in a life-or-death situation is likely to lead to wrongful death, arguably an even more tragic event than accidental death.

Although it is extremely regrettable that 30,000 people a year die from firearm- related deaths, to put this in perspective, the CDC database (http://webapp.cdc.gov/ cgi-bin/broker.exe) shows that from 1999-2002, for all ages and races, and for both sexes, the 5th highest cause of death was "unintentional injury" (the category into which firearm-related deaths fall). This contributed 404,039 deaths over the four year period. Of these, 169,467 (41.9 percent of unintentional deaths) were due to "MV traffic." Only 3164 (0.8 percent of unintentional deaths) were due to "Firearm." The total number of people who died due to the top 10 causes of death in that time period was 7,633,432. This means that relative to the top 10, accidental death due to firearms was only 0.04 percent, while "MV Traffic" was 2.22 percent. Heart disease (#1) was a whopping 37.11 percent. Even if the figure of 30,000 a year were used, this would increase the percentage to only about 1.6 percent of the top 10 causes of death (assuming a constant rate of firearm deaths over the same four-year period).

Perhaps the research funding could be better spent on making vehicles that are safer to drive—or on firearms safety education. A properly secured firearm cannot discharge accidentally.

Edwin Fine

efine145-1024@usa.net

The Printed Page

Dear DDJ,

No long ago, I suddenly realized that I can read DDJ under any position, regardless of the light. Upon examining the paper, I then realized that it does not reflect the light, compared to past issues. This small change means a lot to me. Thank you. We programmers think about algorithms, program errors, and the like at different places and times. It is a pleasure now to take DDJ for a quick look anytime, anywhere without having to turn the magazine round and round to avoid light reflection on the paper.

Stefan Kirn

stefan.kirn@zamisel.com

Silent Application Update—

Sheer Madness!

Dear DDJ,

I read belatedly, but nonetheless horrified by, "Silent Application Update" (DDJ, November 2004). One of my jobs is IT support for a motley group of nontechnical PC users. The last thing I would ever want an application or, worse still, an operating system, to do, is update silently. This is the sacrifice of the lamb of software security and maintenance on the altar of automation. I have seen nonautomatic updates cripple and freeze many Windows systems. I shudder to think how could I ever trace back to a silent update of an application some strange new behavior of a PC I might be asked to fix. Maybe silent updates would work on a uniform set of the latest PCs, used by IT professionals under strict guidance of a corporate IT police. In the real world, this is sheer madness.

Andrew Bertallot

frengit@ieee.org

DDJ