"Everything must be done now. Let's re-use existing proven solutions and build over them so we don't waste time."
And thus, people will look at the top 2 or 3 most popular solutions they already know about or can easily find on the Internet, compare them, pick the best one, and maybe add or change one or two things about it to fit their needs.
Usually, this is a good approach. In fact, humans tend to solve problems the same way they already solved them in the past, both at the individual level and the group level, in order to be more efficient, and that's generally a good thing.
However, it's not always the right approach.
There are multiple downsides to this method, but the one that I want to focus today is about the lack of innovation. Good enough is not always the best.
Think about your day-to-day routine. Think about your interactions with your teammates and/or partners. Think about whatever you are trying to accomplish at any given time. Stop and think. Is this the best way to do it? Are you sure it's the best way to do it?
Chances are, probably not. Maybe you get easily distracted by message notifications while trying to focus. Maybe your teammates have trouble documenting their work for future reference by others. Maybe that cool website you're working on costs a lot of money to run because it uses more bandwidth than necessary.
But hey, the old solution works! Let's re-use it! Who cares if we waste months of work and lose tons of money; it's still worth it!
In the end, we have many software businesses re-using the same ideas and releasing close-to-identical products and services, exclusively recycling the successes of others and iterating over them. They are either doomed to be trailing behind the original innovators, or deal with fierce competitors attempting to aggressively capture the same market share.
Meanwhile, I don't remember the last job I had where someone other than me said "Let's try something different!" unless the situation was unsustainable and all other possibilities were exhausted.
Here's the thing: research work is a risky investment. You can never be sure if something good will come out of it or not, and it is definitely possible to invest too much into some research work. Unfortunately, many businesses will avoid going in that direction at all due to aversion to loss, even though such investments are required for businesses and society to grow.
It's time to think long-term investments for a change.
It's time to listen to foreign ideas and consider them seriously.
It's time to think outside the box and figure out what can be done better.
It's time to inspire change instead of blindly accepting and following what people say and do.
It's time to brainstorm with others, and discover new possibilities.
It's time to think horizontally, and act horizontally.
It's time to change your work environment for the better.
It's time to try new things, even if they don't always succeed.
It's time... to innovate.
While there is no denying that Scrum revolutionized the software industry for the better, it may seem a little strange to read about someone that dislikes it despite strongly agreeing with the Agile Manifesto, considering the creator of Scrum was one of its signers. However, after having experienced…
Here are a few commands I crafted to validate and easily read API definitions in the OpenAPI format, using Docker and open source tools provided by Swagger. I have yet to convert them into proper shell scripts, but I hope these will be helpful nonetheless. The commands are designed to be run in a…
The following is a collection of free international standards, registries and references that I collected throughout the years while developing websites and web services. These references, while very precise and technical by their nature, are extremely useful in order to ensure that a specific…
The following is a Python script developed by yours truly to generate a sector according to the core rulebook of the Mongoose Traveller 2nd Edition tabletop RPG, exactly as described in the Universe and World Creation chapter. It is designed to describe worlds in human-readable format as much as…
As I am continuing my personal journey into deep learning research and development, I wanted to try out PyTorch, a machine learning framework with GPU acceleration primarily designed for the Python programming language. However, I couldn't find any good introductory resource online for it. So I read…
See all of my articles