We live in interesting times. The way we work is changing, the way we live has already changed. The world is changing rapidly and the way of programming too. Can you imagine to program without a keyboard and a mouse? I can.
This is continuation of Better programmer - Blindfold programming
Blindfold programming practice tips
In programming, we must be able to deal with:
- Lack of focus and distraction
- Making huge number of decisions
- Fear of defects, issues
- Feeling overwhelmed
- Endless deadlines
- Forgetting solutions, syntax and algorithms
- Bad organization practices and time management
- Always worried about not using the right tools, language, design pattern etc
- Lost in a huge IT world, no direction
- Lots to do, but don’t get much done each day
I’ve started a system: Blindfold programming, that might helps to find a solution to these problems.
In this article, I'll give you some practical tips:
- Find an easy and interesting problem that you need to solve. For example I had to design voting system; another example is simple bug tracker.
- Find time, nice place and a cup of tea/coffee each day, close your eyes and think on the problem. Imagine the business case, the methods, what is in and out etc.
- After clearing the big picture go to the detail. Every single method, variables etc. Think of it like staring at a forest, then a tree, a branch, a leave..
- Structure your code, classes and methods , and only then start to program.
- You can use notes after each session in order to visualize the problem
What is the benefit of blindfold programming sessions
- You will strengthen your ability focus
- You will be more mindful, and less distracted
- You will be able to solve problems with more elegant solution and to think out of the box.
- "Changing the environment" will help you with new fresh ideas
- Simplify the solutions and the way of thinking. Try to write as less code as possible for a solution (but also it should be easier for reading and to be working).
- While you are thinking with closed eyes you will forget about the deadlines, the other boring tasks, management issues. You don't need them for solving your programming problems.
- Create your space for virtual coding and stillness and you will find the perfect office for programming. This will boost your performance
I'm still testing this system and will next article I'll cover what is my progress.