Hi, I’m Valerio, software engineer and CTO at Inspector.
I want to talk about the consequences you go to reinventing the wheel within your own business by building things that other developers have created before you, often much better and more reliable.
It was very risky for us too.
Inspector was launched in the late 2019 as a new way for developers to monitor their business-critical applications saving a huge amount of time to identify issues and deliver improvements.
The key concept is “a new way“, because a brand new product shoud consist of things that you had to build because that’s why you started your business, to begin with: no one had solved this particular problem in this specific way before.
At the beginning of my career I thought that not relying on external code was a long-term advantage.
As product owner instead this mindset has suddenly changed becoming a “bias”.
Often, we shy away from paying $10 for a solution that costs us months of our time to build and more time every week to keep things go.
Questions like this continue to appear on social media:
Why do we have to make yet another set of authentication views and password reset routines? Isn’t this a solved problem?
We keep walking on the edge of this ravine for two reasons I thought:
- We want to save money at all costs;
- We don’t trust other people’s work.
The myth of saving money
The financial reason is quickly debunked because even thinking about an hardcoded solution for a few hours is more expensive than just paying for a specialized product for a few months.
I would be careful to have a clear understanding of the effort that will be needed in the future for maintain every thing developed internally.
People works means money, probabily a lot of money draining away precious time that should be spent to make your customers happy and grow the business.
We don’t trust other people’s work
Every time I’ve trusted people in the past I’ve been let down, so now it’s easier and less painful to just rely on myself.
Maybe you feel similarly, and even if you don’t, you’ve probably experienced broken trust in a past relationship that has caused you to question whether or not it’s worth trusting again.
When you find yourself struggling to decide whether or not to trust someone, it’s important to figure out the reasons why.
Trust is as vital to healthy business partnerships as oxygen is to a scuba diver; survival is impossible without it.
Don’t fall into that trap. Experts in their fields have built the existing services. Unless you want to develop a competing product, they will always produce better things faster than you ever could. After all, they focus solely on the issue that is is just one of the things you need to solve your customers’ problems.
Don’t waste your time and money. Delegate time consuming tasks to autonomus tools that works for you 24/7.
Conclusion: “Do you have to reinvent the wheel?”
And now it is time for a quick and sweet look on logic using internet memes which are short, sometimes sweet, but rarely logical.
The picture used for this post is one that has popped up a few times in internet meanderings. It tries to communicate the idea that based upon the “evolution” of the wheel, people have been “reinventing” the wheel for ages and we are all the better for it.
Now, I am certainly NOT a proponent of reinventing wheels as I try my best to “work smarter, not harder.” In fact, this picture is a much better representation of this philosophy rather than the one it is attacking.
You should note that each successive wheel is in fact a wheel itself, but just a wheel of a different kind. In other words, starting with the first wheel, each following wheel is only a modification or improvement of the original wheel, not an entirely new invention.
I would dare say that each person who modified the preceding wheel did not see him or herself as reinventing but as improving and modifying what has been done before. This is exactly the motto of “work smarter, not harder” because each inventor did not “reinvent the wheel” but improved upon the work already provided.