Since you started using a smartphone, have you noticed a change in your expectations? I was folding the laundry this afternoon, and I kept trying to think of ways to create a mobile app to match up socks. I can envision a day when that Android or iOS device will be paired with modular robotic components that, when suitably and conveniently joined together, can be programmed through downloadable 99-cent apps to do a variety of tasks, including that most dreaded of chores, figuring out which white socks match up with which other ones.
In truth, that day is not very far off. Take, for example, the revolution that is currently sweeping the automotive industry. This article describes the efforts various car companies are making to give their customers opportunities to make their cars new again by downloading and installing software updates. This second article provides specifics on Google’s efforts to create an open software infrastructure for vehicles, one that will make it easier and less expensive for car companies to equip their products with tried-and-true, standard computer-based services.
Software is profoundly changing the way manufacturers design cars. Tesla explicitly designed its Model S sedan to enable customers to download software updates to improve efficiency and performance and even adjust the suspension to alter car road height at highway speeds. My Nissan Leaf also permits software updates, although Nissan hasn’t made this as convenient as Tesla has, requiring its customers to visit the dealer for the software update. Some manufacturers, such as BMW, have designed their hardware in a modular way, permitting customers to opt for plug-and-play upgrades to various system components that can also be reprogrammed to fix bugs and change behaviors. That’s precisely my app-upgradable modular robot idea, but in a system meant to travel 120 miles per hour rather than sit on a living room floor sorting linen.
All this speaks to the tremendous excitement we software developers feel for where our craft is taking the world. I’m a code-slinger who took an indirect path to the field. As an electrical engineer, I cultivated my aptitude for math and science to create cogs that fit into a larger machine that had a predefined purpose and a fixed set of behaviors. Ho-hum. As a programmer, however, I fundamentally shape those behaviors; I define them and tweak them and try to get the most out of them. I sculpt the whole rather than support it. That’s the antithesis of ho-hum.
A smartphone is just an expensive gorilla-glass-equipped paperweight if it doesn’t have software – apps – to breathe life into it. Software transforms your phone into your messenger, your email device, your web browser, your navigator, your camera, your image editor, your TV remote, your balance, your recorder, your measuring device, your 21st Century Swiss Army knife; indeed, your genie in a bottle. The exciting thing for us Computer Scientists is that we’re the ones who know how to create those apps. Essentially, we’re the genies. We’re the granters of wishes, and we’re not limiting anyone to just three.
The car companies are finally catching onto this app-powered model. Wanna shave a second off your zero-to-sixty time? Need to tow a boat this weekend but don’t need that kind of pulling power the rest of the week? Wanna try out some funky dashboard light tint just to show how your receding hairline suggests nothing about your hipster cred? We’re on the brink of seeing that kind of customization, all thanks to some cleverly written apps hosted on hardware that understands how to respond to them. Our cars are being smartphonified, and that will fundamentally change our relationship with them.
Now excuse me while I figure out how to make that programmable sock-matching machine. I freaking hate matching up socks. There has to be an app for that.