I spent two months building a feature that I deleted in a single afternoon.

The code was clean. The tests passed. The architecture was solid. But the fundamental approach was wrong, and no amount of refactoring could save it. I had optimized for the wrong metric, built for the wrong use case, and designed around assumptions that reality brutally...