There has to be a whole different mindset with hardware though. Every change has to necessarily be more considered, cross-checked. And I don't say this in any way to disparage software engineers (hold up hand) but I suspect there's a discipline in hardware design that is ... less rigidly adhered to in software design. (And a software update containing a revert, though undesirable, is always a solution.)