More stories abound about electronics steering us wrong. Both users and developers need to step up to the plate.
It seems everyone who has an automotive GPS has a story about being
misled by their e-nav device. Most are tales of annoying misses, of
being taken to the wrong side of town.
Some are dangerous: a few weeks ago a friend, returning from a
late-night session at an unfamiliar bar, was guided home by his GPS.
The route was accurate, but it took him through a section of Baltimore
one shouldn't frequent at night, one where, on this night, subhuman
morons started shooting at each other as he drove by.
Some are absurd. According to a
weird news story I read recently, a Gibraltar-bound truck
driver misprogrammed his GPS and was taken 1600 km off course. Turns
out there's a Gibraltar Point in England. One wonders how he got across
the Channel without noticing a problem.
Pretty dumb, huh?
Last month I was in Florida looking at colleges with my daughter. We
were off the useful part of the rental-car map so relied on my phone's
GPS. It told us to drive 6 miles north on the Florida Turnpike, which
struck me as odd. Wasn't our destination south?
But I complied and after 6 miles it told me to get off, make a
U-turn, and head 22 miles south on the same road. Had I followed my
intuition - that we were already north of our destination - we would
have saved 12 miles.
Pretty dumb, huh?
Yet what really would have changed? With no map the GPS was our
only navigation tool. So we were helpless.
Except that not long ago no one had GPS. Other tricks, ones that
have worked for hundreds and even thousands of years, were available.
Kristy could have asked someone for directions (being a guy, that's not an option for me).
We could have purchased a map, called the school, or stopped at a gas
station.
There's nothing new about blindly following the outputs of our
electronic creations. A teacher recently complained to me that her high
school kids can't do arithmetic. Five times five? Sure, punch it into
the calculator and note that it's exactly 3125. The don't notice,
though, that their nimble SMS-trained fingers missed the times (x) button and hit yx.
Spreadsheet help us make thousands of mistakes per second.
Unassisted a human can only achieve a somewhat pitiful few errors per
minute.
That's progress!
I think one challenge we embedded people have is to check the
results we give. Though the calculator has no context to know which
button the user should have pressed, it seems reasonable that a nav
system could look ahead and see the inherent conflict in ordering one
to head due north and then due south.
I have pictures of big outdoor thermometers displaying temps like
505 and -196 degrees, both impossible, on this planet, at least. Why
didn't the developers check the results for "reasonableness?" There's
the digital parking meter demanding $8 million in coins, the antivirus
software that warned the definitions were 730,400 days out of date, and
oh so many receipts giving totals like "$9.9999999999".
Stuff happens. We're not smart enough to anticipate all
eventualities. Check your goes intas and goes outas.
But the user also has a responsibility to question data that appears
odd. That slide-rule order-of-magnitude sort of reasoning we relied on
to guide us years ago remains important in the microelectronics era.
Jack G. Ganssle is a lecturer and consultant on embedded
development issues. He conducts seminars on embedded systems and helps
companies with their embedded challenges. Contact him at jack@ganssle.com. His website is www.ganssle.com.