In many cases, interruptions and distractions are unavoidable, but in many others, the right steps can help mitigate or prevent those distractions entirely. It just takes some foresight and a willingness to do proactive work. While we often think of tasks based on the time it takes to complete them, we should also factor in resumption time for the task that was interrupted.

Reduce unnecessary interruptions

One of the best ways to reduce interruptions is by improving knowledge sharing and documentation. In our rush to complete tasks, documentation often ends up taking a backseat to whatever is next. Unfortunately, poor documentation naturally leads to confusion and questions which in turn lead to interruptions. A 1998 study found that about 25 percent of developer interruptions stemmed from issues related to knowledge or experience and that another 20 percent were caused by documentation issues like inadequate or nonexistent documentation. So about 45% of interruptions of developers could be mitigated through improved knowledge sharing and documentation. More than 20 years later, we can only assume that the conclusions from this study are even more relevant today.

Alerts and notifications are additional sources of interruptions that we can mitigate proactively. Every application out there wants to be important and behaves as if its the most important application in your workflow. They default to screaming for attention, and we let them. Even when they interrupt our most important work, we tolerate these unnecessary notifications regardless of their true importance or urgency.

Most things aren’t genuinely urgent, but our brains love to respond to things. So we let our important work—our true work—fall by the wayside. Instead, we check email. Chat. Read news. Sometimes, this stuff even feels like work, but at the end of the day, we feel like we didn’t get anything meaningful done. Too often, we let notifications and alerts drive our day instead of letting a task’s importance do so.

Turn off non-critical notifications

If we turn off all of the notifications. All of the beeps and chimes. All of the lights and vibrations. All of the little unread notifications and counts. If we turn them all off and put our real work front and center, things begin to change. You don’t have to neglect these other things entirely, but you must dictate the terms on which you pay attention to them. Don’t let them steal your attention. Dole it out carefully.

Notifications have got to go. This may feel uncomfortable at first. What if somebody needs to get a hold of you? What if something truly urgent comes up? It’s not about being shut off. It’s about being in control of your own attention. You have to change the dynamic. Decide which things are worthy of your attention. Is that Facebook alert or phone call really worth the cost of losing your focus? Can you rely more heavily on Do Not Disturb on your mobile device?

The important thing to remember is that there are layers for notifications. With everything, take the approach of defaulting to not allowing notifications. (And that includes not showing unread counts on your app icons.) Don’t let anything request your attention. Then, next time you pick up your phone or glance at your dock or menu bar, you decide where to direct your attention. Your attention happens on your terms. Eventually, you don’t even miss the notifications.

Email isn’t that important

The hard part here is with things like email and work-related applications. Your first instinct might be to leave notifications on for these because work is productive right? Unfortunately, no. If it’s not contributing directly to your most important work every time you open it, the risk of distraction outweighs the benefits of awareness. Most project management issues can wait an hour or two until you make time for them. The same goes for email. If something is truly urgent, people don’t use email. If somebody is breaking into your house, are you going to email the police department or call them?

With most operating systems, applications can potentially send their own notifications right through the OS. These are the most frequent, and more often than not, the least urgent. Fortunately, they’re the easiest to control because you can go to your operating system settings and disable them. Again, anything that doesn’t contribute exclusively to your focus work needs to be shut off. If you miss it, you can re-enable it. More often than not, though, you won’t truly miss the vast majority of them.

The other way applications distract you is through unread counts. So even if they don’t notify you outright, they leave persistent reminders to check on them and read them. So turning off alerts and notifications isn’t enough. You have to hide the unread counts as well.

All of this may feel uncomfortable at first. What if someone needs you? What if something important happens? The good news is that as a software developer, chances are that all of it can wait. These aren’t true emergencies.

Notifications are rarely critical

The best way to relieve yourself from any anxiety around these changes is to practice some negative visualization. Imagine working in 90-minute increments without checking email or chat and then giving yourself small windows in between your primary work so that you can check email, respond to chat requests, or handle other requests. In the worst-case scenario, if somebody contacts you at the very beginning of a 90-minute session, it will take an hour and a half before they hear back from you. Very few things are so critical that an hour and a half will have a significant impact on the request. Yet, that hour and a half of peace and quiet is priceless for your productivity.

At this point, you may wonder what happens when something truly urgent comes up. Whether it’s a work emergency or a family emergency, things happen. Fortunately, people are good at escalating to appropriate channels if they can’t get a hold of you. And even if you’re in Do Not Disturb mode, your phone has a setting to let repeated calls through. Unless you turn your phone off completely, you’ll still be connected in case of emergency.

Work to avoid tools and apps that may tempt you

Finally, it’s worth taking the time to design and implement workflows that help avoid the possibility of distractions. For instance, if you need to send an email, opening your email application exposes you to your inbox and all of those unread messages. There can be a strong temptation to start reading and replying to them. So implementing a way to send an email without seeing your inbox can help avoid the temptation entirely.

For instance, an “email” shortcut implemented through Alfred can open a new window to compose an email without having to look at your inbox and risk being distracted. Alternatively, you can quickly add a reminder to email someone to your task list. This way, you can avoid your inbox until you’re ready to look at it and process it.

Similarly, Quitter is a Mac app that can automatically close distracting applications after they’ve been inactive for a short period. If your email client, Twitter client, or RSS reader is regularly distracting due to the unread counts, Quitter can minimize them or close them after they’ve been inactive for some period of time you specify. This way, you’re automatically removing distractions from your field of vision without even thinking about it.

True automation is a topic unto itself, but it’s worth thinking through various types of automation. Sometimes it’s as simple as making the time for documentation. Other times, it’s true automation, and other times it’s simply creating a self-service tool or interface. The right kind of automation can mitigate requests/distractions/interruptions. Reduce the effort needed to perform distracting regular tasks by having the machines do it. You’re not automating a 15s task, you’re automating the 15-30 minutes of context-switching around performing that task. You’re also saving the asker time because they no longer need to make time for the request and wait for a response. We’ll discuss automation in-depth in the next chapter, but it’s key to think of automation as proactive interruption prevention.

There are countless ways to invest in preventing distractions, and the more aware you become about the sources of distractions and interruptions, the easier it is to take steps to regain control of your attention.

Your next steps

  1. Turn off notifications for anything that isn’t absolutely critical to your work.
  2. Get in the habit of using “Do Not Disturb” mode on your devices.
  3. Look for opportunities to automate solutions for common requests or otherwise empower the requester to have self-service.
  4. Prune your menu bar to remove particularly chatty notifiers.
  5. Centralize reminders into a single task tracking application rather than letting multiple applications have notification/alert privileges on your machine.
  6. Set up Quitter to automatically close or minimize apps that are distracting.
  7. Prune your menu bar or use an application like Bartender to suppress the noise and notifications.
  8. Install Focus or FocusMe to temporarily disable access to distracting sites and applications while you’re focusing.