Published: February 26, 2020
This is something that I might ask myself all the time. Sometimes I do wish that I have a card to download it into my brain like the movie * Matrix. But the last I checked it's still under development, while we are waiting we should have our own list of ways to aid in remembering. To remember certain concepts or information that is useful for your own work.
After exploring multiple ways of remembering, I think the best ways for me to remember is through repetition of a drill (list of instruction or methodology). Which forms my own mental muscle memory that forces you to remember. It could be in the form of a wargame or simulated environment to achieve a specific objective when you are going through it.
Which is why when you onboard a new developer teach them foreign concepts & practices within your team. For example like Test Driven Development and Pair Programming. Working on Code Kata together with another person, who is knowledgeable and familiar with the practice to guide a new developer. Which speeds up the process of knowledge transfer between each other to form or reinforce your own mental muscle memory through repetition and making adjustments along the way.
The protege effect explains how we remember better when we teach. Besides going through a simulated environment which can be quite intensive in nature and require additional resources to prepare.
Teaching helps to force you to absorb the information and allows you to form your mental muscle memory. When you are forced to impart knowledge or information about what you had learnt to another person. You are forced to craft your delivery of information to multiple types of learners as well.
For me, I always use simple language that is easy to understand to explain something than adopting terminology. Using metaphors helps to get your point across for visual learners. Like Seth Godin way of saying you have to be unique in your marketing. Is tell them to imagine themselves a purple cow in a sea of cows. Which makes you stand out among the crowd because it's easy to spot you due to your purple colour.
Storytelling is considered one of the oldest form of teaching because it brings out emotions in both the heart and mind. Which convey pieces of information or knowledge that could be passed down for future generations to remember.
The advantage is in picking apart a past event to reflect and visualise many ways of tackling a problem. Which allows one to remember various lessons learnt from each event. To refine the process and one's mental muscle memory to remember those knowledge, experience or point of reference to tackle future unknown or similar problems.
One of the famous classics for stoic philosophy is Meditations by Marcus Aurelius who is the first emperor of Rome. Which offers us a slice of mental models and perception on how to tackle problems that arise and manage our own emotion despite it was created as a journal and reflection by Marcus Aurelius.
This is why a developer should keep a personal blog or journal to document their learning journey. It allows them to go back in time to remember various events on how to tackle problems in the present and future.
This can even be really useful that it could act as a form of ripple effect as well when it is shared publicly. There were times that I was able to solve my problem through developer blogs because they had encountered the same problem in the past. Which shows how they had solved it or using it as a point of reference to solve my problem.
I had listed down the various ways for you to remember. I hope it is useful for you to remember important information or experience while you are developing.
At the end of the day, we should not rely purely on our memory because of search engines like Google or DuckDuckGo. I believe that it is useful for us to remember. Whenever we need to make gut feeling decisions to solve unknown problems using our knowledge and experience as a reference point.