Five Essential Focus Principles for Engineers


Focus is a huge problem in modern days.

These days, lots of apps and websites try to grab our attention and keep us hooked.

Most of us know we should resist these distractions. But instead of making a plan, many people just wing it. I used to do that too.

But I’ve had enough. Another Instagram post, YouTube short, or funny meme won’t make me feel good about my day. In fact, they:

  • Make my workday longer.
  • Slow down my progress, bit by bit.

So, I put together some tools and rules to help me stay focused. The last, and most important rule might surprise you.


“Focus intensifies by getting used to NOT being distracted. And can improve with practice.” - “Deep Work”, Cal Newport

This idea comes from one of my favorite books, which I’ve talked about in this newsletter before. Basically, focus is like a muscle—the more you use it, the stronger it gets. Simple idea, but tough to do.

1. Hard block

While the upcoming tips are softer, the first step is a firm one. We need a strong barrier to keep us away from distractions like endless cat memes on Reddit.

There are many ways to block certain websites, from browser extensions to apps. I created my own tool that blocks sites at the system level by changing the /etc/hosts file. This means I can’t just switch browsers to bypass it. It’s still a basic tool and needs more work, but you can check it out here: go-blocksite on GitHub.

In Daniel Kahneman’s book “Thinking, Fast and Slow,” he discusses the concept of the two systems of thought—System 1 and System 2. System 1 operates automatically and quickly, with little or no effort and no sense of voluntary control. Here’s a quote from the book that reflects this idea:

“System 1 operates automatically and quickly, with little or no effort and no sense of voluntary control.” - “Thinking, Fast and Slow”, Daniel Kahneman

I’ve noticed that I automatically sit at my desk and type li into my browser to open LinkedIn, without even thinking about it. I just want to “see what’s up.” Spoiler alert: there’s nothing new on LinkedIn… I was doing the same with fa , ins, you and others, and it had to stop.

2. Pace yourself

A popular method like the Pomodoro timer can work wonders. Many of my friends and colleagues use it and love it. I’ve been pairing it with my favorite work music from brain.fm (brain.fm is a referral link with a discount for yearly subscription).

Although the timer helps, I found I needed more than just that. So, I moved on to the next idea:

3. Pace yourself in public

This, was my game changer. Instead of just using a timer, I started streaming my work sessions. Initially, I used Twitch, but then switched to a private server to keep my screen private. The idea that “someone might be watching” surprisingly made me focus better, as if I was working harder to impress an audience. It really works for me, especially when I’m up against a tight deadline.

Another option for team settings is to have a silent video call with a colleague, or even better, a channel. Think of a Slack huddle where you share your screen for anyone who joins to see.

4. Routine

“Neurons that fire together, wire together.”
- Neuropsychologist Donald Hebb

We’ve discussed how focus can be trained, and creating routines is a key method. By setting up consistent cues, we can teach our brains to enter a focus mode more easily, leading to less resistance and smoother transitions into “flow” states.

To help your brain along, consider establishing a routine with elements like:

  • A specific playlist for focusing.
  • A chosen background, or a clear space.
  • Only essential windows open, such as your IDE and documentation.
  • A physical notepad and pen (yes, really 😉) next to your keyboard for quick notes.

Our brains thrive on consistency. The layout of your workspace, your physical location, and the objects you see all contribute to creating the right mindset for focused work.

5. Cut yourself some slack

Sometimes, no matter how hard we try, our brains just won’t focus. It might be due to a bad night’s sleep, digestive issues, or emotional stress from personal disagreements.

There will be days when the best thing to do is step away.

If you’re at your desk struggling to concentrate and nothing is working, resist the urge to waste time on distractions like YouTube. Instead, take a break.

Go for a walk or switch to a different activity, even if it’s unplanned. This can help refresh your energy and improve your focus when you return.

Remember, it’s okay to give yourself some leeway. If things aren’t flowing, step back, and come back later. Be kind to yourself.

Thanks for reading, as always - feel free to reply to this email with feedback and questions!

Have a great weekend.

Whenever you’re ready, here’s how I can help you:

ESPRESSO FRIDAYS

Every once in a while I send hand picked things I've learned. Kind of like your filter to the tech internet. No spam, I promise!

Read more from ESPRESSO FRIDAYS

Hi friends, Tmux is a fantastic tool for managing terminal sessions, but it has its limitations. One major drawback is the lack of a floating pane feature, which can make navigating between different panes cumbersome and inefficient. Me frustrated with Tmux lack of floating panes while Zellij is killing it... Most users workaround this by creating new Tmux windows or panes, or by using hidden splits to zoom in and out. These methods work but can be inefficient and require many keystrokes,...

My Neovim takes roughly 113ms to fire up. THIS IS FAST. However, I don’t lazy load anything. Being a Lazy.nvim user, it’s kind of a shame I’m not actually making use of my plugin manager's flagship feature. But then again, it takes 113ms for nvim to start, what is there to gain here? Let’s say I drop it to 50ms. I gained 60ms which means that if I’m going to spend 30 minutes to actually reduce it, I’d have to open Neovim 15,929 times to get my time back 🤣. With an average of probably 5 times...

Hi Friends! Curious about Nix? Me too. The past few months of exploring it were quite interesting, to say the least. And it still feels like I've barely scratched the surface. [TL;DR] That said, it's already replacing some of my old workflows and I'm really happy discovering it, even while not even using Linux for most of my local work. What’s Nix? Nix is a powerful suite of tools, including a package manager (Nixpkgs), language (Nix DSL), and operating system (NixOS). It provides a robust...