In Software, One Thing is Better Than Two Things

I recently took over a software project that had, from both an engineering perspective and a usability perspective, outright failed. The code was a teetering tower that had collapsed in on itself into a pool of leaked abstractions and interdependent logic.