Better programmer - Blindfold programming
"Blindfold chess (also known as sans voir) is a form of chess play wherein the players do not see the positions of the pieces or touch them. This forces players to maintain a mental model of the positions of the pieces. Moves are communicated via a recognized chess notation." This is the description by Blindfold_chess about blindfold chess.
Is this possible to be done in programming as well. Actually I don't know - is it possible? - and my little research didn't show many results if any. So I decided to test my mental power day by day in order to experiment with blindfold programming.
My experience
So this is what I did:
- find a small task/problem/bug that need to be implemented;
- write it down on paper on smaller steps;
- close eyes for 10 - 15 minutes and start to analyze and program it;
- then sit on a computer and write it down;
I found that when I'm working on a problem with closed eyes I can focus better and longer on a single problem. It's easy to separate and isolate current task, minimize distractions and visualize the problem in different way. Initially my progress was close to 0 - or in another words - the result of my blindfold programming was the same as the normal way of coding.
But after several weeks I notice serious improvement of the speed of solving problems and the new way of thinking. It seems that the old but gold IDE in some way restrained my creativity. Of course I'm changing the themes, styles and projects and this help me a lot. But in comparison to programming with closed eyes is like comparing horse with modern car.
I had an very old idea for perfect IDE - even I'm thinking of making reality one day - IDE which is based on talking commands. This IDE will visualize all modules, classes, methods like a world map. It's going to show all connections and be able to zoom some areas. You can work in your area or see all connected elements at once.
Previous post: Complete Guide to Developing a powerful documentation - Lab Diary
Next post: Better programmer - Blindfold programming - practical tips
Sometimes the solutions just strike from nowhere while sleeping, bathing, walking. It seems that if you leave your brain free for some period of time without distractions it will award you with new model of thinking. And as many says the imagination and creativity are more important than talent and experience in many cases.
Exercise for Blindfold programming
- find a new language that you want to learn
- start with simple program
- after a week or two when you are confident enough with the new syntax: program Hello world and fibonacci
The most important part is to have fun and experiment with new techniques.
P.S. If you think that this is hard then what about this:
On Dec 3, 2016, Timur Gareyev played 48 opponents with a mask before his eyes and sitting on an exercise bike, resulting in 35 wins, 7 draws, and 6 losses.