3 ms·
Great points. Hardware is definitely hard. There are more variables, abstractions, and processes to worry about. In software, you can write a function that dou
by wyc 9y ago
Great points. Hardware is definitely hard. There are more variables, abstractions, and processes to worry about.
In software, you can write a function that doubles big numbers perfectly until it hits limits of CPU and memory in about one line of code. If you try implementing the same function in an analog circuit, you'll encounter compounding noise depending on heat, ambient EMF, adjacent components, etc.
Upon identification of a critical bug in your SaaS product, one `git push HEAD` is all it takes to get the fix to your millions of users. Hardware is not anywhere near as forgiving--your batch is usually lost.
These characteristics require a different approach for developing hardware-leaning products. Everything needs to be far higher quality before release, because small hardware mistakes can have several order of magnitudes higher of costs than software bugs. That's why it's harder: you have to land a rocket on a planet with fewer chances to correct your course.