Being a programmer is not easy. In the midst of a rapidly evolving world of technology, programmers are required to always learn and experiment with new things. Optimal technology today may be outdated a month later, and the high competition makes developers have to compete to create products that are more sophisticated, fast, and safe every day.

A programmer with high flying hours can fall into a trap that makes him stop developing. The more experience, the more he will feel that his knowledge is sufficient. As a result, when dealing with new problems, it becomes difficult to adapt. Not necessarily the solution that has been used optimally in other cases.
Not that the programmer is not good at the field. Maybe he is actually very expert. But when someone stops learning, he will be trapped in a narrow view and unable to keep up with the times. The reasons can vary. Maybe you don’t have time because you are busy, you may feel that you have mastered all the frameworks and popular libraries on the market. But whatever the reason, it is clear that it is not developing.
Learning is a cycle
Imam Muhammad Al Ghazali, a famous philosopher from Egypt, once said that humans are divided into four classes of learning, namely:


1. People who do not know (not knowledgeable) and do not realize they do not know.
2. People who don’t know (not knowledgeable) but realize that they don’t know.
3. People who know (knowledgeable) and realize that they know.
4. People who know (knowledgeable) but are not aware that they know.


This concept was also adapted by Andrias Harefa in his book entitled Mindset Teraphy. According to Andrias, the learning process is a cycle, and a human will continue to move from one group to another. Andrias poured this cycle in a diagram called Learning Mindset Harefa.

Habits You Can Apply to Become a Reliable Programmer