Productivity Tips for Developers
The purpose of this article is to help you increase productivity in your work. This article contains my personal opinions.
Get away from “Attention Merchants”¹
The most troublesome problem of the age we live in is that almost everything we use demands our attention. Almost all applications are designed and developed to get your attention more and more.
Here are some ways that you can distance yourself from these distractions:
- If the phone isn’t part of your work, turn off notification sound and put your phone in a place where you can’t reach it. You can be sure, people always call you back if the situation is urgent.
- Add extensions to your browser to avoid mindless browsing.
- Create a custom status on Slack or Discord to snooze notifications before you start coding.
- A tidy or messy desk it’s up to you. I want my mind to be uncluttered, so I personally prefer to put as few items on my desk as possible.
- Equip yourself with an ergonomic monitor, keyboard, and most importantly, a chair. This is crucial for your health when working long hours and as well as comfort.
Create Daily Routine
You will have different things to deal with during the day. Establish a routine to get these things done. For example, start relatively difficult problems in the afternoon. Complete repetitive or relatively easy tasks in the morning. By creating your own routine, you can direct your energy towards difficult problems.
Happy developers are more productive and make better decisions.²
- Work-life balance and learning opportunities are matters most for a developer’s happiness.³
- Don’t harbor resentment to your co-workers.⁴
- Bind your keyboard shortcuts at the operation system and editor level. Most people underestimate the power of shortcuts. You’ll notice you need at least one day to figure out your shortcuts, especially If you’re using a local variant of the QWERTY layout.
- There’re many lazy developers who create awesome plugins. Don’t forget the check your them.
- Examine every corner of your apps. (Eg. There are a lot of lesser-known features in Chrome DevTools like conditional logs, simulating slow network, or adding DOM breakpoints for sub-tree modifications. Lastly, my favorite command is document.designMode = “on”
Automate repetitive tasks
We’re developers if somethings occurs three times in a row we should consider automating it.
- Automate your commit pipeline with git hooks.
- Pick a task you do it frequently, and write a code generator for it.
- Refactoring can be tricky
Get in the Flow
Flow, a state of consciousness where people become totally immersed in an activity and enjoy it intensely. Frequent experiences of flow at work lead to higher productivity.⁶
To get the idea I highly suggest the book of Mihaly Csikszentmihalyi called Flow: The Psychology of Optimal Experience.
1- The Attention Merchants: The Epic Scramble to Get Inside Our Heads- Tim Wu
2- Happiness matters: productivity gains from subjetive well-being — DiMaria, Charles Henri and Peroni, Chiara and Sarracino, Francesco
5- Flow: The Psychology of Optimal Experience - Mihaly Csikszentmihalyi
6-Predicting Flow at Work: Investigating the Activities and Job Characteristics That Predict Flow States at Work - Karina Nielsen and Bryan Cleal