Anonymous Coward writes "I just started working for a startup that is developing a new product, which is going to have software bundled with hardware. Our company outsourced the hardware and firmware development. I reviewed the hardware product requirements and I noticed that the hardware will not support firmware upgrades from the PC. I am concerned that once we ship the product, bugs or interoperability issues will appear in the field and we won't have anyway to fix the problem short of a product recall. I have some of the management team convinced we need to change this requirement but not the person who has the authority to make the change. I'm looking for examples of past companies that got bit by a similar mistake and any other items that will help me convince the decision maker." Nobody is perfect, so why do we assume that we can design hardware that is? If it's one thing that our current experiences with software have shown it's that sometimes, an applications may take more than one version before it is perfect. Before, our ability to change hardware coding made getting perfect products out the door important, because recalls were expensive. Today, we have smarter hardware, which can be relatively simple to update. The cost of recalls, however, have not changed. So for what reason would a hardware company balk at making the need for a recall a thing of the past?