One screen to rule them all
As a late gen-x my wet dream has always been having a large dashboard full of controllers and screens, a wall of screens. With a thought deeply rooted in my brain: “if only I had one more screen”. I would be more productive, I would work faster, I would do more things at the same time. And as soon as I could I started adding more devices to my set-up, until I realized that I was only really using two of them.
If anything, I noticed that I was even less productive, every screen was a window for a distraction and I was multiplying by 4 my chances to lose focus. Emails, messages, metrics dashboards constantly updating, all of them popping up in my brain without invitation. So I started removing them, I set myself a limit of two at a time, and whenever I want to focus and be productive use only one.
The Slack screen
I dare say that we all work with a messaging application always open and we are constantly checking for any important request. It’s something that makes sense in a collaborative environment and that can be handled in a “two pizza size” team. But when your communications are open to the whole company, it’s unbearable.
- Switch notifications off, and only check messages after your focus time. Decide what makes sense for you, something like 40 min focus, 10 min for messages and 10 min rest every hour. The rate depends on you, set your status as “focus until hh:mm” and respect your own work, others should understand and follow.
- Write asynchronous friendly messages. Respect the work of others, don’t ping just “Hi” and stay silent: it’s creepy. Write down what you need from the other person, if it’s something complex just ask for some time to meet.
- Choose channel over private message. If you’re not sure who can help you with something try groups, channels, servers or whatever name your messaging application uses for multiple people communications. Don’t burden only one person with your request. In the other side, try to review and answer in those channels.
The monitoring screen
If part of your job consist in maintaining a service you’ll probably have some dashboards with graphics and metrics, logs, infrastructure schema, error tracings, etc. If you’re getting paid just to look at them it’s ok to have them open all the time, if not: close them.
- Set alerts. Take some time and program alerts when your metrics hit certain outliers, when you get critical errors, when the infrastructure is down, etc.
- Pin some time in your routine to check them dashboards. Morning coffee is perfect, triage problems: solve critical problems and plan the smaller fixes.
- Share responsibility. Evangelize your peers to learn and do checks themselves, set alerts in public channels and groups. Don’t be essential.
The Git graph screen
I’ve seen this a lot, people sharing their setups with a second (often vertical) screen just for the Git graph. I must admit that it’s COOL, I love staring at all the branches with nodes and colors myself, but it makes no sense.
- Don’t branch. I’ve been there, you’re working In a project with multiple long life branches coexisting. It’s like being sat on a time-bomb, but watching over them is just a distraction. Switch to trunk based, short life branches, and stop worrying about the graph.
- Use automated test. If you need to be tracking commits for errors it means you’re not covering enough and right the new code with test. TDD and back to the first point.
- Don’t use commits to track features, try to have your issues updated in Jira or whatever tool you use (or start using one).
The multimedia screen
Listening to music is great, listening to podcast may be acceptable and watching Netflix is probably a red flag when you’re working:
- You have dull, routinary work that requires almost no attention. Be good to yourself, try to automate it or optimize it: work smart, not hard. Then pay full attention to your series.
- You don’t like your work. Look for a more satisfying position, love yourself.
- Spoiler alert! You have to finish the work but also you need to watch your favorite serie’s last episode before you get spoilers. I feel your pain: do it!
Other dos and don’ts
- Don’t multitask on a meeting. If you are, probably it’s a meeting you shouldn’t be attending.
- Don’t review code with multiple screens. If you need to check constantly another code, web, etc. probably it’s a pull request too big. Keep your pull request small.
- Do use multiple screens when learning, whatever you need to feels confortable and practice.
- Do use multiple screens when doing front end stuff.