Time Minimalism

We are constantly being bombarded with notifications, alerts, feeds, and messages. I have 43 apps installed on my phone. Each one of them has the ability to send a push notification. The average iPhone owner in the United States has 32 apps installed. South Koreans have 40!

I am exhausted (and so are you)

This past Friday (4/7/2017) I received 256 emails. If I spend an average of 1 minute per email I spent around 4 hours of focus on email.

We use Slack at Voray. We have 14 active users, and a handful of helpful bots. On Friday (4/7/2017) we (as a team of humans) sent 684 messages. Over the same time our bots sent 121 messages. A very high percentage of our messages are important, and need some attention. If I spent an average of 15 seconds of focus on each message I spent 3.5 hours of focus on Slack.

I spent 7.5 hours of focus on email and Slack!

Focus is finite (so is time)

On average my brain works a 7.5 hour day before even having a chance to do my actual job. Assuming you aren’t in Limitless you have a finite amount of focus per day. Tim Ferriss says it is 4 hours a week. I think I can do 6 hours of deep work per day.

Just email and Slack cause me to start my workday with a negative balance on focus. I have to generate an extra 1.5 hours of focus (coffee?) per day!

How am I supposed to focus on the hard problems?

Engagement is a naughty word

Ironically we have a metric that we use to track how much focus we are stealing from something else: engagement. Every day something new will come along to take your focus! Read the Snap S-1…

Here are thoughts on breaking the cycle:

  • Turn off email push. Do you really need email to be real-time? Check your email on your own schedule
  • Setup VIPs! This allows me to be notified when my boss (hi David!) emails me and when my family messages me
  • Unsubscribe from all emails that aren’t transactional. All of those marketing emails are designed to take your focus away from whatever you should be doing. Make your email work for you
  • Turn off push notifications for iMessage / Slack / Messenger / Hangouts / VRBO / WhatsApp. Check them when you want to give it your focus not when it wants it
  • Do you need a notification for every Slack message? Can you leverage the “Unread Messages” functionality on your own schedule? Slack is an important communication tool when it is working for you
  • Leverage “Do Not Disturb”-modes. Set boundaries on when and how you want to be notified
  • Use RSS/Atom to ingest information when you want to spend the time on it
  • Read Essentialism: The Disciplined Pursuit of Less and apply it to your time. Remember that there are only so many hours a day, days a week, weeks a year, and years in a life
  • Always remember that we are designing software to keep people engaged. I am hoping you focus on this blog post instead of on something else

Arbitrary Constraints Power Creative Problem Solving

Google Ventures does a lot of research on sprints. What they don’t say directly is that a sprint is a tightly constrained by time. In five days you have to decide, build, test, and iterate a new idea.

After building software for nearly ten years, I’ve come to the realization that the thing that drives both my ability to deliver software is being constrained. As soon as I believe that I have “free time” and can still be successful I tend to find failure. I run my team in one week sprints to focus on what we need to do in simple, themed five day bundles of work (sprint).

Gone are the days of waterfall and with that deadlines in the far future. Some Agile pundits believe that deadlines are bad. I actually disagree. I agree that deadlines six months away are bad but a deadline in five days is powerful. You can feel the constraint of time. Five days away is on the horizon, you can mentally grasp a weeks worth of work. You cannot grasp twenty four weeks of work. Can you wrap your mind around planning a dinner out in a few days? How about planning one in a few months? You will immediately start thinking about solutions to this weeks deadline, but you’ll naturally tend to put off the deadline months away. This is the true power of constraining yourself, and your teams.

Don’t be cheap

Cheapness is natural when thinking about constraining. We can shave off this work, and that work because it doesn’t fit the model. I am not suggesting you skip the hard stuff because it doesn’t fit in to your environment. Do the tough stuff but break it up into consumable chunks of time. As an example, we are rebuilding our permissions system. We are moving from a RDBMS to a graph. We spent a one week sprint on choosing what graph store to use, one week on building a proof of concept, and will now spend one week on taking that PoC turning it into an MVP we can test with a subset of our users. Hopefully after a week of testing, and monitoring we will release it to our entire customer base. The entire project took five weeks but we broke it up into sprints to constrain us. We were able to take a fairly complicated piece of work, break it down into week long challenges, and are tackling each. We are forced to attack each bit with our best creative problem solving skills.

You will need to have clearly defined success, and failure metrics. Find what is important, and what you think is realistic. Trust the people around you to take ownership of getting across the finish line. Perhaps if you can’t decide on the storage engine after a full week of work you are solving the wrong problem. This will all depend on your team, and its makeup.

Read the book by GV on Sprints. It will help you think about your team’s cadence and how you can be more consistent. It’ll also help you decentralize the problem solving. Everyone will feel like an integral part of the successes and failures. They will clearly understand the problem before them — one week instead of twenty four weeks!

This is life… in Trello

I used to be just like you. I used to have a mass of notecards, Post-It notes, and Evernote checklists. While I used to be unorganized, and lost I am now focused and organized. How did I do that? How did I manage to know everything, and travel through space-and-time with minimal effort? Let me take you on a journey of self-discovery and self-awareness. Let me tell you about…

A five-bin kanban system

Kanban is a well known tool for dependency management. Just ask Google about how you use it on software development! I’ve modified this three-bin system into a five-bin system. My bins are time-based instead of dependency-based. They are as follows: inbox, later, this week, today, and done.


This is a dumping ground for all of the little tasks that need to be prioritized. Quick notes can also end up in here like “you should write a blog post about how you manage your life.” This is a tool to make your e-mail less of a todo list, and more of a communication tool — I believe in no e-mail in your inbox but am not an Inbox Zero zealot. Did someone ask you to do something while you were focused elsewhere? Add a card to the inbox bin.


Do you have a list of tasks you need to eventually to take care of? The later bin is for tasks that don’t have a deadline, but need to be tracked or are going to take a big more work than you can support right now. An example card in this bin might be ‘re-architect pgbouncer infrasctructure to run on Mesos.’

This Week

There are tasks you know you need to get done this week because of a deadline. Do you have a presentation to prepare for on Friday, and it is Monday? The this week bin is perfect for that card. The work in this queue is generally prioritized by being moved into the today bin on the day I will have time to handle it.


The today bin is the prioritized queue of work you will complete between 00:00:00 and 23:59:59 of the current day. This queue is prioritized when your day begins, and is empty when your day ends. This is the meat and potatoes of getting things done.


Cards for tasks that have been completed are moved into the done bin. If Trello is your tool of choice at the end of the week you can ‘Archive All Cards In This List’ to start the following week fresh.

Tracking multiple focuses

I have a very basic labeling system to be able to quickly glance at what needs focusing, as well as what needs filtering. I have three labels in Trello. ShopKeep, Family, and Personal. While your labels may differ you must be able to deterministically label cards.


Don’t be afraid of cross-prioritizing. There are only so many hours in the day to focus on and you need to find balance. Spend 15 minutes in the morning making sure things are properly labeled, and bined. Finding time to re-prioritize is key here. Things come up! Nothing is a “stop what you are doing and refocus” event so a lot of these are dropped into the inbox bin. Trello has mobile apps, and you can use those to quickly add cards to your inbox on the go.

Evernote vs. Trello vs. Notes vs. Paper

Any tool can be used to keep track of your cards, and bins. Find a tool that works for you and use it to power your life.

In conclusion

Quickly, and efficiently viewing your day as a work queue will help you be more organized, and more focused on what you need to do. You will find yourself having more clarity into your efficiencies and inefficiencies. Be retrospective on what you did, and didn’t do. Be retrospective on what you can do and you find yourself accomplishing more towards your goals.

Sharpen Your Focus

As developers, we have keep too much in short term memory. When was the last time we integrated with master? When was this feature supposed to be turned on in production? Where are we? Who are we? With all of these questions, the addition of social networking we are far too distracted to be as efficient as we should be.

Since the introduction of ‘Do Not Disturb’ across the iOS/OS X framework I have come to know, and love it. It has freed us from the bounds of push notifications and the binding chains of e-mail. Turning it on, you are now notified quietly in the background about what is going on in your eLife. Before this functionality, we were bombarded with Facebook/Twitter/Instagram/LinkedIn/iMessage/Email notifications that are distracting more times than not.

Please allow yourself to break free from the hell that is synchronous notification. All of the tools we use are only as good as how we use them. You simply cannot bring yourself to deleting your eLife, so we have to learn to live with them inside the workflow of our daily life. ‘Do Not Disturb’ is one such way we can all do this successfully.

‘Do Not Disturb’ should have been named ‘Do Not Distract.’ We speak a lot about context switches as a bad thing in our software, so why could it be a good thing in our minds? Stopping these context switches will allow you to sharpen your focus on what matters. Perhaps right now email matters, which often times it can, you won’t be distracted by Twitter telling you that you’ve been followed by a cat.

Do ourselves a favor, work less distracted for a day. Silence all notifications and simply focus on your tasks. We will find out that perhaps push notifications weren’t such a great idea when it comes to productivity.

Keep in mind that your mileage may vary with this. I’ve come to find that it is so useful to allow me to sit and be focused on the task at hand, and then when I am ready I can switch my context to either the next notification that is waiting or something else entirely. My productivity has gone up since utilizing this tool. Many others like it exist, but my iPhone is my information hub so ‘Do Not Disturb’ is exactly what I use and love.