Why you shouldn’t believe “Don’t reinvent the wheel” on its face. Somebody has to.

I think sometimes the aphorism of reinventing the wheel sometimes is true – but sometimes it’s frustratingly painful – and it comes down to one thing: Do you trust the person who has created the wheel? Did that person have one good idea and build it for their use case and never iterated on it? If all we ever did was have bike tires, the automobile industry would probably have vertically integrated in some way to rebuild a wheel that was more efficient.

If someone made a React component for a button, but it doesn’t have the right interface for what you want it to do (maybe it assumes it’s always a button and never an a element, for example) – maybe you won’t end up using it!

A learnings from this: trust the person who created your wheel to iterate, and have a clear interface that you work with them on. Interestingly enough, I looked into it and Toyota, one of the modern vertically integrated car corporations – still relies on a supplier, Detroit Wheel and Tire to make their tires. They literally aren’t reinventing the wheel – because they rely on a supplier to create new designs that keep up with trends, and as long as they match the bolt pattern for their vehicles, this is one of the things that isn’t made by Toyota – in fact – they trust the same supplier many other manufacturers do.

If you don’t trust the person creating your “wheels” of our product – create a contract and define that common interface so that you can. And if that team doesn’t exist – maybe you should take a look around and see if other people are creating these wheels, and if they are – propose an open source library to solve everyone’s problems.

Leave a comment