Ego-Lifting Is Good Sometimes

There are always a handful of people in the gym who are constantly competing on how much each weight they can lift on a single lift. Always impressing the new comers with their abilities to perform the trick.

A say it’s a trick because it’s only impressive until the new comers transition to beginners and start realizing that these people are stuck in their performance act. Always looking to get the next impression, barely improving the amount of weight they can lift.

The problem the new comers face until transitioning to beginners is that they make the false assumption that to progress you have to go very hard at every moment and even then you barely move the needle. But the needle hardly moves because the whole premise is wrong.

What actually helps the progression and evolution is what is considered the boring staff at the beginning. Learning about things like maintaining good form while doing the exercises, learning what is the right exercises sequence, how to choose a weight, the intensity at which to perform the exercise and when to take a day off are among the foundational basics.

The same also happens in the world of software. There is plenty of people that pride in how they can write a lot of one liners, or how many “leet challenges” they have solved. Impressive at first? Yes. Useful as a foundational knowledge to build long lasting projects? No.

How to structure the codebase, picking clear names for variables, when to write comments and what should they indicate, what repeating yourself actually means, encapsulating what makes sense and using abstraction as a way to enforce not hide behavior. These are a good starting point for software programming that are not impressive at first but is what builds successful large projects in the long run.

It’s easy to fall into the tricks trap in the beginning. Learning foundational lessons is can feel like a slow, quite boring, process as the value they provide are too far in the future to grasp. Or is it? Well, it is when compared with the progress others have made after years of practice. But in reality a beginner makes way more progress at the beginning than anyone who has been doing it for a long time and also more than that person will ever do as it transition through the ranks of competence.

Where the ego-lifting mentality plays a great role is in keeping the beginner, who is on the right path to mastery, humble. As we learn new skills we become ever more confident as going from not knowing something to knowing something about it is a giant leap forward in our capabilities. Yet at the same time we don’t know yet what we don’t know.

Be cocky from time to time, attempt that hard lift in the gym, write that software package you have been thinking about. If you succeed easily, then you it means you are not challenging yourself enough on a daily basis. If you fail, review the mistakes and learn the lessons. Also, you barely making it doesn’t mean you have succeeded, most of the time there were other factors that helped you in that particular moment and you need to back to the drawing board.