News

Free enough hardware?

Bill Gates recently had a chat with Gartner's Michael D. Fleisher, in which he said:

"So 10 years out in terms of actual hardware costs you can almost think of hardware as being free. I mean, I'm not saying it will be absolutely free, but in terms of the power of the servers, the power of the desktop machines, the network will not be a limiting factor, wireless technologies will have come in and created, whether it's in the consumer space or in the enterprise space, ways that you're connected all the time -- 802.11, Ultra Wideband....
"Many of the Holy Grails of computer science that have been worked on for over 30 years will be solved in this 10-year period. Speech being in every device, that will be solved. Having a device that's like a Tablet that you just carry around and use with ink, being able to record different interactions, being able to take business information and see it in a visual way so that you take sales data, forecasting data, get notified when something is surprising, this whole model structure will be important."

Gates also said a whole lot of other interesting things, by the way; if you've got a few minutes you should hop over to his personal Web site and read the transcript. But I want to talk a bit about this "free hardware" notion today.

First, because some of my colleagues in the press have been less than careful about this, let's note what he did not say. He didn't say that you'd go open a new checking account and they'd hand you a high-powered server instead of a toaster, or that soft drink companies would be doing promotions with a computer lashed to each bottle of soda (or pop, depending on where you live). The notion, as I understand it, is that hardware will be free enough to enable some scenarios that are currently either prohibitively expensive or flat-out impossible.

That, of course, is a pretty safe bet. Look back ten years, or twenty, or fifty, and it turns out that many chunks of computer hardware dropped in price and increased in power over each decade. At the same time, our systems for developing software increased in sophistication, and the result has been a series of impressive achievements in computing. Of course, there have also been things that didn't work out that neatly; the continuing failure of artificial intelligence research to deliver intelligent computers is one notorious example.

But it's really not that interesting that today's hardware will be so cheap as to be practically free in a decade. In 1996, you could spend about $2000 to buy a very nice Pentium 166 computer for development. Right now, you can go out to eBay and buy the same system for about $25 - but you almost certainly don't want to. Meanwhile, you'll still spend about $2000 to buy a nice development computer. The long-range effect of dropping technology prices has not been to drop the price of the products that we buy, but to increase their power. We still get $100 consumer devices, only now they're PDAs instead of four-function calculators. You get the idea.

So, what to make of Bill Gates' claim that hardware will be close enough to being free not to worry about? I doubt it. In ten years, sure, speech recognition may well be worked out to something that fits on a single chip, including the firmware, that adds 47 cents to the cost of the finished product. But the finished product will cost just as much as it does now.

Meanwhile, as developers, we're going to face the continuing challenge of keeping up with the hardware. Those more-powerful boxes, whatever their details, are going to require more-powerful software to be useful. Think back to the software you were writing ten years ago (if you were even in this business then). Can you imagine using those tools today? Can you imagine shipping that product today? I can't.

Perhaps some day we'll see a grand innovation that disrupts this lockstep increase of hardware power and software complexity. I don't know what it will be, and I doubt that anyone else does either (though plenty of folks have speculated). But for the time being, it's just not all that interesting to me that today's dreams will be easy to realize in a decade. The real question is which things are we not even dreaming about now that will be possible to build then?

About the Author

Mike Gunderloy has been developing software for a quarter-century now, and writing about it for nearly as long. He walked away from a .NET development career in 2006 and has been a happy Rails user ever since. Mike blogs at A Fresh Cup.