2

Focus Blocks - Minimum 4 Hours

Profile picture
Mid-Level Data Engineer at Instacart5 months ago

I'm going through Alex's Excellent Course on Productivity In the lesson on Focus Blocks, Alex talks about the value of long uninterrupted periods. Notably, he says that a focus block should be minimum 4 hours.

This got me thinking, what do these 4 hours (or longer) look like? Is it 4 hours sitting down uninterrupted at your desk? Is it 4 hours broken up by getting up every 30-60 minutes to grab a snack or chat with a colleague at the office? Do short walks outside (Touch Grass) fit in them?

I'm not trying to be annoying or nerd-snipe, I just want to know what the nitty-gritty behaviour of the world's most productive software engineers looks like :)

For me, I feel like I have a mild case of ADD, so if I score a victory, minor or major, in my code, I get up and do a quick meditation, use the washroom, and/or stretch after ~30 minutes, but my hunch is more productive people sit uninterrupted for longer.

84
4

Discussion

(4 comments)
  • 4
    Profile picture
    Engineer @ Robinhood
    5 months ago

    The time I'm actually focused spans from 30 seconds to 30 minutes and I spend at least 20% of my time at work doing nothing productive. I'm pretty sure I spend a lot more time browsing the internet and walking around than my peers.

    The way that's worked for me is:

    • Understanding what time intervals will curve out to a consistent level of productivity: for me, this ended up being 1 week intervals (75% of the time) and 1 day intervals (25% of the time).
    • Planning goals I know I can reasonbly hit around those intervals. If the goal is high priority or I'll forget it, I'll block off an event on my gcal for the day/week for it.

    I have yet to hear anything about me needing to sit in my chair longer. All that matters is that I do my work and I have a reasonable turnaround when I'm needed for random pings. My raw output (commits merged, commits reviewed, LOC merged, LOC reviewed) is signficantly higher than the company average, so that's usually enough to silence anyone from even thinking about asking.

    tl;dr do whatever works for you as long as you can do your work at a pace comfortably for yourself and your peers

  • 1
    Profile picture
    Tech Lead @ Robinhood, Meta, Course Hero
    5 months ago

    The main thing is that the 4+ hour block isn't interrupted by a random off-topic meeting or you being distracted/lazy. It is near impossible to have a pure 4+ hour block of raw coding/IUC work as if you eat the frog, you will naturally be interrupted by lunch.

    The following things are totally okay for your focus block:

    • A pair programming meeting to work on the 1 task you are focused on
    • Getting a snack
    • Taking a breather to meditate or be active (e.g. exercise)
    • Casually hanging out with your coworker in the microkitchen

    For me, my brain is very active so even during lunch on a focus block day, I'll be thinking about my task so it's like I'm still semi-working on the task 😂. I mainly use focus blocks for coding, and I generally take a small break every 60-120 minutes (and a larger one for lunch).

    • 0
      Profile picture
      Mid-Level Data Engineer [OP]
      Instacart
      5 months ago

      Thanks Alex!

      If I may ask, what do your breaks look like?

    • 1
      Profile picture
      Tech Lead @ Robinhood, Meta, Course Hero
      5 months ago

      When I was in the office and taking a 5-15 minute break, I would:

      • Review a pull request (this is why I was able to review 720+ diffs per half at Meta, putting me in the Top 1% of code reviewers)
      • Go to the microkitchen which potentially leads to a "water cooler chat" if a friendly coworker was there
      • Check in on my mentees and see if they needed help

      At home working on Taro, it's unfortunately not as exciting:

      • Walk around the house, maybe go to the kitchen
      • Watch a short YouTube video

      If I was stuck on a really gnarly issue, I take a longer walk outside (15-30 minutes).