Interesting Concept I picked Up - Eliminate Stupid Mental Effort (ESME)
4 min read
Sometimes in 2019, I stumbled on Andela Best Practices on Github and for me it was the closest you could get to an Andela Education if you didn't pass through Andela.
One of the very interesting concepts in their best practices is the Eliminate Stupid Mental Effort (ESME)). I find the concept profound and interesting because it recognises the environment we live in as Nigerian Developers and the things we may have internalised as we grow up in Nigeria that could affect the way work.
To understand this concept you need to understand Stupid Mental Effort.
Let's look at a typical Lagosian life. Some people say in Lagos it is 5-9 not 9-5.
You leave your house very early by 5AM in order to beat traffic and get to work early. You have to struggle to enter the public transport. Then, you spend about 3 hours in traffic, going back home is even worse maybe 4 hours in traffic.
As inconvenient as this way of life is, Lagosian have gotten used to it because this is what they experience on constant basis and it has become the norms for them.
I remember a conversation with my friend who was in Rwanda for Grad School and she complained that she couldn't get used to life in Rwanda because things were slower compared to how they were in Lagos.
The problem with getting used to inconvenience is that when things becomes convenient we think something must be wrong, so we always tend to do things the harder way. Is this STUPID? What do you think?
What are the possible Stupid Mental Effort you can encounter as a developer?
Using HTTPS instead of SSH to clone your Repository When you clone with HTTPS, every time you need to do a remote git operation you will be prompted to enter your username and password. The time you waste entering your username and password every time can be avoided by cloning using SSH.
Manual Testing and Deployment instead of using a CI/CD Pipeline
Andela strongly puts it that "if you bring this mentality of being okay with inconvenience (aka 'stupid mental effort') to your job as a software developer, you will never achieve greatness"
So How do you avoid wasting your mental energy on Stupid Mental Effort. You must enter the Lazy Programmer mode where you automate repetitive activities that waste your mental energy or find alternative solutions that makes you more productive.
Which other stupid mental efforts can you think if and how do you think we can addressed them as developers?
PS: Lagosian is some who lives in Lagos Nigeria