How about just engineering stuff to not have errors in the first place.
My toaster is a complex bit of engineering - it has thousands of parts which all work together to take power from the wall to make toast.
Yet it has no errors. It just does the job I ask it to do.
A computer on the other hand seems to have a lot of ways to fail, and does so nearly every day. I suspect everyone reading this comment has seen at least one error today. Can't we engineers make the software better so that these errors can't/don't happen?