keizik.github.io

Performance tips for programmers

Programmer’s performance is key to success. Being able to constantly perform on a high level for an extended period of time requires much attention to specific details in work and personal ethics. Here I summarize my experiences of being an Ultimate Performer for many years.

There’s nothing better for your day then having a long uninterrupted sleep at night. Start with 8 hours as a must, then adjust. Good mark a “enough sleep” could be an alarm clock. If a programmer is able to wake up before the clock starts - that was just about the right amount of sleeping time. Also keep into account how you feel after having each day with varying sleep time. The goal is to feel energized from the morning till night.

Know your limits. According to multiple researches human can keep deep focus for a limit amount of time per day. Cal Newport in a book “DEEP WORK. Rules for Focused Success in a Distracted World” states, that this time is about 4 hours a day. Only 4 hours! This is the time that should be used for the most important work - programming. Other time can be spent on emails, meetings and other valuable distractions.

I personally have applied the following pattern to my work: 3 hours and a half to for focused work, then at least 30 minutes break and 2 hours 15 minutes of more focused work. This seems to be my limit at the moment. I still do write code and am valuable in other time in my 8 hours work day, but at slightly reduced pace.

This approach allows to maximize impact of programmers work and keeps you fresh in evenings for a nice time with friends and family. What is more important, it keeps you fresh for tomorrow and a 5 day week just flies by without any momentum lost.

Regular breaks during a working day are of high importance for keeping programmer’s performance high.

I have adapted a strategy of having a small break (~5 minutes) each hour and a 30+ minutes break at lunch time. Smaller breaks help me not overwork during longer development sessions and keep my body energized with drinks, snacks, exercises, while larger break is not only a time to feed the belly, but also a perfect spot for a quick context switch to have a fresher brain for remaining part of a day.

This is another crucial point for anyone aspiring being a top level performer. Enjoying what you do highly increases productivity. To keep the right attidute it could be helpful to remove all the indirect distractions in a head of a programmer. There is no need to overthink about anything that is not under direct control or influence. This way developer can focus on what is being done and as a result have fun implementing ideas the way they are aligned in the mind.

Take some time learning quick keys combinations of your tool of choice. Quick refactorings, automated actions, even window arrangment all boost productivity. Watching a programmer who has mastered a tool is close to magical experience.