We say of some things that they can't be forgiven, or that we will never forgive ourselves. But we do—we do it all the time.
A good algorithm is like a good story: it has a clear beginning, middle, and end.