Lately, it has become commonplace in the tech blogosphere to say that “Hardware is Hard“. There are a few reasons for the sudden prominence of this strand of commentary. Several large Internet companies have had to back away from or scale back their hardware projects this year, most notably Snap’s recent write-down of its once lauded Spectacles. There have also been a number of Kickstarter-type failures. All of this reversed several years when everyone seemed to be trying to apply software engineering techniques to hardware, with many start-ups moving to Shenzhen featured in the press.
Of course, for those of us who have covered hardware for years, this is not entirely surprising. As much as we all hoped that we had found a new way to build hardware, reality seems to be setting in.
That being said, we think it is important to dig a bit deeper in what “Hard” means. We have touched on this topic a few times over the years. And the usual shorthand answer we use is that hardware requires long lead times, and once built these products cannot be changed the way that cloud-based software can. There is no ‘beta’ version for hardware.
However, this is just a shorthand. The reality is more complicated. First of all, software development requires long lead times. It can take several years to develop a full, robust application. And if you talk to many people (especially those developing mobile apps) it turns out that customers are not quite so willing to put up with bugs. If you develop a game today, it has to be pretty solid on day of launch, because a few buggy reviews on Day One will kill the product entirely. Perhaps the only significant difference between software and hardware development is that in software you can live with a minimum viable product (MVP), which is just not possible in hardware.
It turns out the bigger problems with hardware is not that it is hard, it is expensive. True, today you can design a fairly solid hardware product with a relatively small team, but the product development cost is only a small part of the total cost. If we look at the many recent failures it is possible to discern a pattern. Viewed from the outside, there are many costs of hardware that are almost invisible until you run into them face first.
First, there is the cost of working capital, especially inventory. One of the hardest things that hardware start-ups face is the need to build large inventories of the product upfront. That means that after spending a few million dollars on designing and prototyping a product, then qualifying the manufacturer and getting to production, after all that, you have to pay for all the parts to build an inventory. Contract manufacturers have minimum unit volumes. They do not let their customers build a few hundred to test the market. These minimums start in the tens of thousands, and even that is pushing things. Moreover, if you want to sell that product at retail, you have another large batch of inventory for shelf stocking. All of this needs to be built before the first revenue dollar comes in.
And that is just the beginning. Hardware makers also have to contend with a whole host of logistics challenges (by which we mean costs). Getting products from factory to customers is not easy but it has become a fairly straightforward process, much more challenging is the problem of getting broken products back from customers. The whole area of ‘reverse logistics’ is messy, to use the technical term. There are companies that specialize in it, but for most small companies (and even some larger ones) the whole problem is a major headache. Not just the lost revenue of a refund, or lost cost of a ‘free’ replacement, but also the managerial overhead of keeping track of it all.
This leads into probably the biggest cost of all – the contracts. If a company is selling to consumers, dealing with broken products is a logistical and potentially a marketing problem, but when it comes to selling to businesses, especially large enterprises, it is largely a legal problem. Businesses do not like to deal with broken products. If they are using your product for important real-life work then a breakdown causes real problems for that customer (and likely their customers as well), and if your product is not doing some important real-life work few will buy it in the first place. Large companies will want warranties, indemnities, remediation and a whole host of other things. And these customers will require real assets to back up these contractual promises, and this can be prohibitive to small companies. We have lost count of how many incredible hardware products we have seen that never came to life because of these issues.
The common thread through all of this is that the big problems facing hardware companies is not engineering, it is operations, a wholly different field. Our guess is that most hardware companies failures fail because of operations problems. The good news is that there are solutions, but as the title of this post suggests, those solutions cost substantial amounts.