First of all you may ask: WHY do I need to be crystal clear thinker? The reason is simple - you will find optimal solutions, hidden relations and good answers to your daily problems. You will be faster and more efficient in the best natural and human way.
You can think for it in this way: you are in front of a small river. At the river there is a pearl. You are searching for this pearl. When will be easier for you to find the pearl? If the water is crystal clear or it's dark and dirty? The same can be applied to our minds.
Why to be crystal clear programmer
This approach can be followed not only by programmers but also by many other people in general. It is inspired from karate and it's a real practice used by many karate masters to relax and chill their mind: mokuso.
In simple words it's - sit comfortably in a proper position, close your eyes and think. Of course there is a deeper and higher meaning which are not relevant for beginners. Good karatist should be practicing this practice several times per week for 2 - 5 minutes per session.
This is also a way to free and tame your mind. Our minds are like wild animals. They need to be trained and educated. If not some bad habits will dominate over the positive which will lead to decay and bad results.
In self experiments I'm able to solve difficult problems easier and faster after closing my eyes and freeing my mind for 5 minutes.
And one last point - the most important tool of a programmer is his mind. If the person is not sharping his tools he can't do the job. Can you imagine cutting a paper with broken scissors? Isn't it better to sharpen them first and then to cut?
How to be clear your mind
Prepare a space or room - be sure that there is fresh air, enough light and it's a silent place. Sit down somewhere in a comfortable position. Close your eyes and free your mind. Don't try to force thoughts or visualizations. You can breath slowly throw your nostrils and imagine the air flow. You should end when you feel ready and relaxed. After a session you may need several minutes to come back to your usual state of mind.
In short:
- prepare nice place
- sit comfortably
- close your eyes
- breath slowly
- unleash your mind
- at the end open eyes
Benefits and results
In many ways this process can be associate with meditation ( with some differences). The results and benefits for a programmer would depends on his persistence and motivation.
Based on my experience:
- I'm writing better code - less defects and quick ugly workarounds
- My code is much more readable and well structured
- New solutions of known problems - I can find something which I was missing for long time
- Saving time - you will think faster and in more efficient way
Why it's working
For an average programmer I believe that it will work because of:
- removing distractions
- training your mind to be stronger
- improving ability to focus and concentrate
- better self-understanding
I'll be really happy if you share what do you think about this way of becoming a better programmer. Please do share in the comment section below.