I’ve been accused more than once of “reinventing the wheel.” Let me assure you that that’s meant to be a stinging insult among programmers, where reuse is the key to efficiency and laziness (both qualities I admire).
But sometimes the wheel is broken, and sometimes it just doesn’t work right for the job at hand. I wouldn’t want to drive a car with a solid-body fixed-axle wheel.
And sometimes, you have to reexamine your basic assumptions. Maybe the wheel isn’t the right tool for the job at all.
I don’t want to reinvent the wheel. I want to reinvent fire.