Mar 202010

I just bought a new cell phone. It’s a nice phone, with lots of nice features, but I’m not sure it’s working properly. I went to test it, using the built-in test utility software. And that’s when I realized what’s wrong with Priuses.

Toyota Prius cars are getting recalled for unexplained accelerations. At first the problem was thought to be something mechanical — a collision between floormat and gas pedal, perhaps — but when problems persisted it began to appear it was actually due to a flaw in the software that runs the car. And a lot of software runs that car… It doesn’t even start with a turn of the key; it starts with a push of a button.

Everything these days starts with the push of a button. Even baby toys. Everything requires a battery, a computer chip, a button… Some of the same toys that have been around for decades still exist, except now instead of a baby pulling a knob on a spring to ring a bell, babies today press buttons to release digital sounds through speakers.

Obviously the earlier kids are exposed to computer technology the better they acclimate to it. By growing up with computing it will never have to be something they must separately learn. But what of the physical world? When will they learn about that?

As it happens, not being a child of the 21st century I *have* learned about these things, and in thinking about my cell phone it dawned on me: given the right parts and instructions I could probably build a working telephone. Hell, given the right parts and instructions I could probably build a working motor vehicle. Mechanics are mechanics; they work in certain ways according to the basic laws of physics.

But cars and telephones and toys are no longer objects ruled by physics: they’re ruled by software. In fact, their physics are often overruled by software. It’s not that software is magic — indeed, software works because it provides a logic to an operation; it’s not alchemy at all. But given the way software now controls the physical in these objects it might as well be magic. Loosen a screw and we can see the physical consequence. But if your car crashes into a wall, and all the screws were appropriately tightened, it’ll be the mystical software embedded on a chip (a chip whose physical form has no effect on the operation of the vehicle itself) that’s at the root of the problem.

I saw a post on Techdirt recently dismissing the concerns raised by the Prius issue on whether cars should be run with software. To be sure, having software run a vehicle can help operate its physical properties much more efficiently than a human or mechanical operator could. For instance, that some sort of onboard logic can control fuel consumption means the physical properties of the car can operate at peak efficiency.

But all this software comes at a cost. For one, and this might be a blog post of itself, our reliance on software to run everything is removing us from the physical world. While we are becoming smart when it comes to programming, we are becoming stupid in terms of every other technology. A child who grows up pressing buttons will be a sophisticated button presser, but will he be able actually build anything worth having software to control? In subordinating the mechanical we are losing our mastery over our physical world while at the same time becoming entirely dependent on programmers to control unseen software for us.

And that dependency on something as opaque as it is important is itself dangerous. While with the physical we could always observe the mechanics of how something worked and troubleshoot the failures, with software the source code is often obscured. That means when something goes wrong — e.g., a car suddenly accelerates — we are dependent on whomever is privileged enough to have access to the code to fix it, even though these may be the very same people who wrote it badly in the first place.

Which is why I’ve titled this post as I have, “Runaway Secrets.” I am less concerned that Toyotas are having some problems and more concerned that we are entirely dependent on Toyota to fix them. Toyota might end up doing a great job; my goal is not to criticize Toyota per se. But this situation is not unique to Toyota. Other companies make other apparatuses whose operation is obscured to its users. Take my phone, whose own software utilities I needed to use in order to test whether its *other* software was controlling its hardware correctly. Or take voting machines, which are run by proprietary source code. Counting chads, as they did in Florida in the 2000 presidential election, was hardly ideal, but at least there was something physical to count. This cannot be said for all electronic voting machines, whose vote counting logic is invisible to all but its manufacturer.

Even though I’m a fan of technology — I *like* the cool things my new, software-driven cell phone can do, and I agree with the Techdirt article that in many ways software enhances what we can get physical technology to do — I do think we should do a better job maintaining our connection to the physical technology we’ve been working on for the past several hundred or thousand years. It’s pretty handy stuff, and we don’t want to forget how to innovate with it. Or, worse, be incapable of replicating the innovations that have already come.

But to the extent that software is appropriate, I echo the point raised in the Techdirt article: software controls need to be more transparent. Perhaps it’s not a big deal if people can’t reprogram their babies’ toys. But if their car is prone to driving them into a wall, or their votes keep getting deleted, people should be able to see how that is happening so they don’t have to keep blindly hoping that the manufacturer’s staff alchemist will be able to fix it for them.

Rather, their technologically-adept children should be able to.

 Posted by at 10:22 pm

  10 Responses to “Runaway Secrets”

  1. This is the basic problem with modern software – the systems built with them are so complex that you’re never quite sure if there’s a flaw in there or not, even if all the source code is there. Usually, if you have the source code, and you know there is a problem, you can usually narrow it down.
    But I suppose it’s not like this is a problem with only software. Any complex system has this issue. So say you had a car with only physical parts. Are you sure that there are no flaws with it? You could visually inspect it all. But you’d have to run it and keep running it, and you’re still really not sure there isn’t a flaw with it until it breaks down or blows up. The good thing with (most) modern software is that things don’t really break down at the same rate as physical systems do (now hardware, that’s a completely different ball of transistors…)
    Maybe if all of the software in our cars were open source that people would feel safer? But of course that’s not going to happen any time soon…

  2. I’d at least like it to be open source so you could leverage the brain power of a lot of people to fix it, rather than just the few proprietary brains that screwed it up in the first place…

  3. It’s Saturday morning and I’m reading this post with a cup of coffee. And I’m remembering a lunchtime discussion (or a bunch of them) from 30 years ago.
    I was a mathematics editor for a textbook publisher. And I was The Editor responsible for computer-related materials. The IBM PC had yet to be invented, so office workers didn’t have computers. They had typewriters, or secretaries with typewriters.
    But Apple IIs and TRS-80s and Commodores were popping up in schools and there was a big demand for materials to help kids learn how to use computers, and how to program them. I was developing educational software, writing lessons on how to Program in BASIC, and writing articles on how computers were changing our world.
    One statistic I wrote about was this — were it not for computers, every man, woman, and child in the U.S. would be working for the phone company for it to handle so many phone calls. That struck me as incredible. (And it reminded me of how me and my friends — when we were school kids — would sneak into a phone switching station and rearrange some wires. What fun!)
    We’d be having lunch, and the dicussion would turn to calculators. Would people forget — or, someday, never learn — arithmetic because we’d become dependant on calculators? Should kids in the upper grades be allowed to use them during tests?
    The concensus was No, they should not. Kids needed to master arithmetic. After all, what would a kid do if he needed to compute something, and his calculator wasn’t around?
    My inclination towards absurd reductions prompted me to ask this: “should we allow kids to use pencil and paper during a test? After all, someone might need to compute something and not have anything to write on or with. The ancients — the very people who first explored arithmetic — didn’t have pencil and paper. So, why not require kids to do their math with a stick and a box of sand?
    Our society was already dependant on computers 30 years ago, and is much more so now. But you don’t need them. You don’t need them in your car, your home, or your office. In fact, you can avoid them altogether, if you wish.
    You could buy an old car without a computer. Or you could build a brand new car without a computer, if you think they’re bad or evil or are destroying children’s abilty to play ball or skip a rock on the water.
    You could live like Ted Kosinski, or the folks at the Ponderosa. People still do that all around the world. There are those who’ve never seen nor touched a computer. They don’t have on-screen GPS-powered maps in their cars, but — since they don’t have cars — they don’t need any modern automotive accessories at all, computerized or not.
    Oh well . . . when and where I grew up, girls didn’t know how to rebuild a carburetor, or what to do with a crescent set. Now, in the Western World, they’re expected to be able to do just about anything the guys can do (whether the gods like it or not).
    Whadayasay we go back to the good old days? No computers in our cars, and no gals in the Senate. Kids would be well behaved and know how to compute square roots without calculators. Drunks would be roaming the streets in their ‘56 Buicks, but there’d be little concern of the cars going out of control on their own.
    Is that what we want? And if it is, then why have we been struggling so to make things better (safer, faster, cheaper, etc.)?

  4. I’m not sure how encouraging kids to understand how to interact with the physical world requires disenfranchising women…

  5. It’s the logic of it. If we give up our reliance on computers, we go backwards, whether we get closer to nature or not. And then we need armies of people to man phone switchboards and operate typewriters and such and — since we’re going backwards –it’s got to be the women.
    Why? Because all the men are needed to run air traffic control, and the switchboards that control trains and subways and dams and nuclear plants (since we can’t really trust computers to do that, what with their unreliable software that can go haywire at any moment).
    Computers have liberated women. Getting rid of them so we and our children can get in touch with the physical world is what disenfranchises women.
    PS: Even if you could get everyone who writes software for cars and planes and trains and ships and nuclear missiles and what not to make their code transparent (public), it wouldn’t make that software more reliable.

  6. I’m with you to the point that “the good old days” aren’t necessarily. A lot of crappy things took place in the “good” old days, and the fact that we’ve progressed is a good thing.
    But the idea that computers have liberated women? Or that if we were closer to the physical world women would be disenfranchised? I don’t think either of these ideas are supportable.
    Your argument might be more about division of labor — more traditional economies held women in more subservient roles — but (a) often those roles came from custom, not necessity, and (b) I’m also not saying that being closer to the physical world requires us to have a more traditional economy. At all. I’m all for having a very modern society. It just requires our children to understand analogue science as much as digital.

  7. RE: more traditional economies held women in more subservient roles
    It could be a mistake to undervalue the power of women in traditional economies, and their role in determining how those economies work(ed).

  8. True. But in my mind if women’s choice of roles was limited, that is in itself a form of subservience.

  9. The mens’ choices were just as limited.

  10. I’m not sure there’s quite as much difference as there might seem at first. If my car engine is “sounding rough”, or it sometimes loses power at certain times – like the turbofan engines on two or three 777s recently, one of which crashed as a result – it might take an expert mechanic to identify the problem; in the aircraft scenario, even the people who built the engine and airframe weren’t certain of the cause.
    Meanwhile, working in the software industry, I have a pretty good idea what’s going on inside, from network communications down to how the data is laid out on disk. I know how all the bits fit together; building a whole operating system myself from scratch would take several lifetimes, but then the same is probably true of the Eiffel Tower or indeed an interstate.
    I don’t worry about a lack of expertise – there are plenty of us who do understand the innards – more about the lack of understanding as users seem to know less and less about the systems they use, even wearing that ignorance with pride in some cases.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>