Idea: notes archive

I take a ton of notes in (and previously Simplenote). My preferred workflow is to keep a note in until I’m “done” with it. At the point of done, I save the note as PDF to a local folder.

This distinction between active notes and completed notes is key for how my mind works. Something about reducing mental clutter, or insert your diagnosis here. I want to keep the notes around for future reference but I want them stored on my shelf.

I’d love to instead have a dedicated app serve as my note archive. It could be web or cross-platform as long as it kept privacy at the forefront. Importantly, it would be read-only; it wouldn’t take on the concern of also providing an editing interface.

Forward email newsletters into Feedbin

Email newsletters are some of the best free content produced by news organizations these days — concise, timely, and devoid of their website's megabytes of advertising JavaScript. However, it's distracting to receive them at random points during the day. I much prefer to manage my news consumption at my own pace.

Fortunately, Feedbin is two steps ahead of me! You too can use Feedbin's "Subscribe to Email Newsletters" feature to move your email newsletter subscriptions into RSS. Simply:

  1. Copy your secret newsletter email address from
  2. Add your secret newsletter email address as a forwarding email in Gmail.
  3. Configure a Gmail filter for each newsletter to auto-forward to Feedbin (and mark as read / archive).

Pretty awesome.

Slack is the new email

Does this look familiar?

Person A [6:37 AM] Please ping me when you are online.

Person B [7:42 AM] What’s up?

Person A [8:56 AM] What do you think about topic X?

In case it’s not immediately obvious, this conversation is horribly ineffective. It’s imprecise, has a high degree of latency, and is hugely wasteful.

Email gained a bad reputation because people started abusing it. Slack is the new email because it’s become an “all-day meeting with random participants and no agenda.

I deleted the Slack desktop app a while back. Being signed in to a dozen plus Slack organizations led to notification paralysis — the unread indicator made it impossible to get anything done. Since then, I open the corresponding Slack organization when I’m actively working on a given project, and leave it closed otherwise.

But, this approach still has the problem of mentions / direct messages, email notifications, and high latency. Going forward, I’m instituting a new policy of encouraging email (or some other async medium) when I’m not actively signed in to Slack. If you see me online, feel free to ping me. Otherwise, please use a more appropriate medium.

Three new experimental life hacks

Three new experimental life hacks I’m instituting today:

  • Waiting until 6 am to begin working. For a while now (year or more), I’ve been waking up anywhere between 3:30 and 4:30, and diving right into work. Needless to say, this is a recipe for sleep deprivation during the week. By forcing myself to wait until 6 am to work, I’m (hopefully) forcing myself to sleep another 45 to 60 minutes.
  • Only using Slack through the web browser. Rather than follow every community all the time, I’m only going to open each Slack organization as it’s relevant to what I’m working on. As far as distractions go, Slack is the new Twitter.
  • Using Focus to limit access to distracting websites and apps. I probably should’ve done this a while back. I’d much rather have 7.5 really productive hours in the day, than 10 moderately productive ones.

Managing an open source project

Xavier Borderie sent me a series of questions via email about managing an open source project. My responses are primarily from the perspective of managing WP-CLI.

How do you organize daily/weekly schedules so that community PRs are not forgotten? 

Call me a glutton for punishment, but I receive email notifications for all the GitHub activity of projects I manage. I use email because:

  • Email is easy to quickly process with keyboard shortcuts.
  • Email keeps track of read/unread state for me.
  • As needed, I can create filters to help manage my information flow.

Ultimately, this means I see a pull request as soon as it comes in (or, at least, when I check my email).

When I see the pull request come in, I take some form of action on it. This action is either:

  • Make a judgement as to whether the pull request will be able to land — yes without additional changes, yes with additional changes, or no.
  • Determine I’ll need to set aside dedicated time to review (and make a judgement).

In both cases, I respond to the contributor accordingly. In the latter case, I add the code review to my task management tool, and come back to it when I have the bandwidth.

All of this hopefully underscores I think it’s important to communicate well, and handle contributions in a timely, effective manner.

How do you manage with contributions which need rebasing, amending and/or tweaking — and the contributor is silent for months?

WP-CLI has a two-week abandonment policy. If we don’t hear from you in two weeks, then we consider the pull request is abandoned.

Usually around day 10, I’ll reach out on the thread and as the contributor if they’ll be coming back to finish up. They respond most of the time, with either “yes, just need another day or two” or “no, I’m too busy now.”

When a pull request is abandoned and I want to land the code anyway, I’ll fork their branch so they still get credit for the work they’ve done and finish it up.

Does every team member manages her/his own time, or do you clock community-related work?

My dba, Hand Built, actually just a business of me, myself, and I. In 2015 (the last year I calculated it), I spent 12.26% of my time contributing to open source.

This year, things are bit different. Not only do I get paid (on a part-time basis) to maintain WP-CLI, but I have the budget to eventually hire a couple more part-time maintainers. The first is ramping up right now.

The expectation is that each of us commits an average of five to ten hours per week towards project. The theory is this is enough time to make regular, substantial contributions to the project, while also having enough of a foot in the real world to focus our effort on what’s most important. Each person is expected to manage her/his own time, balancing WP-CLI with the rest of their life as they see fit.

What was the impact of 5 For the Future for you when it was launched, and do you feel the 5FF campaign is still relevant/followed today?

For those who aren’t in the loop, “5 For The Future” was/is a call by Matt Mullenweg for companies to dedicate 5% of their people towards the WordPress project:

I think a good rule of thumb that will scale with the community as it continues to grow is that organizations that want to grow the WordPress pie (and not just their piece of it) should dedicate 5% of their people to working on something to do with core — be it development, documentation, security, support forums, theme reviews, training, testing, translation or whatever it might be that helps move WordPress mission forward.

Personally, I’m not sure how much of an impact 5FF specifically had on increasing the labor pool for the WordPress project. It seemed to be more of a one-time rallying cry than anything else.

I don’t mean to discount the intent, though. While the WordPress project could certainly benefit from more labor capacity, it certainly has a lot already from a healthy variety of companies. Furthermore, introducing more labor to the project also requires scaling up capacity to direct the labor.

On the other side, five percent of people seems to be a very challenging goal for many companies. If I were to put a number to it, it seems like most companies engaged with open source would be in the one to two percent range.

Which isn’t to say it’s not important for companies to more effectively support the open source projects they depend on. Contributing to open source is still hard: it’s a lot of overhead to stay regularly engaged with a project, and difficult to account for the benefit of the contributions.


We’re using Github issues for all of our projects, but I still like Remember The Milk as the interface for deciding what I need to work on next. It would be neat if the two worked together.

An issue assigned to me in Github would produce a new inbox task in Remember The Milk (if one didn’t already exist with the issue in the URL field). I could then list, prioritize, and give a due date as needed. Completing the task in Remember The Milk would complete the issue in Github (and vice versa).

Automattic’s hidden tricks

Automattic has been particularly good at building an effective distributed company. Some pieces (e.g. P2) are obvious. Others are hard won and don’t get the limelight they deserve.

Matt’s Global Search (MGS). Now that I’m on the outside, MGS is the piece I miss most. MGS searches all Automattic P2s of all time.  Ever wonder why something was done a certain way? Just search. You’ll likely find a thread from three years ago discussing the pros and cons of a half dozen approaches, and an explanation of why the fourth approach was picked. For the unacquainted, it takes some retraining to avoid asking a colleague every time you have a question. When you learn to search first, you become infinitely more capable (and ultimately end up in Barry’s good graces).

IRC for everything. IRC — you know, that really old technology like bulletin boards no one uses anymore? Yeah, it’s still really cool. It’s lightweight, you can use it on your desktop or phone, and it’s super hackable. You can pipe all sorts of things to IRC rooms. Like such as fatal errors… server load alerts… down notifications… When you couple your monitoring with IRC, it becomes a realtime health indicator of your platform, and an immediate point of collaboration for your team.

As I transition to my new role with Human Made’s increasingly distributed team, these tricks are at the forefront of my mind.

A tribute to Remember the Milk

Remember the Milk, you are my first and last task management tool. I have tried others, but they were not the same.

You are the epitome of web application. When others change their interface seemingly on a monthly basis, your beautiful design hasn’t change as long as I’ve subscribed to your services. We first met September, 2007. You’ve resisted the temptation to muck with a jewel that already works really, really well.

When you were undergoing scheduled maintenance two days ago, I realized how important you are to my life. You are the very first icon in my bookmarks bar. You are the most accessible location on my iPhone screen; I sync you hourly.

My girlfriend and I share you to keep track of the groceries we need to buy, and the chores we need to do. A simple shared list goes a long way towards de-cluttering the house of bits of paper.

It may have been around as long as I have, but “Inbox Email Address” is a recently discovered pleasure. If I need to jot down a few tasks, boom. If I need to inbox zero my email but log action items, done.

You bring new meaning to the phrase “getting things done.” Thanks to you I never lose track of anything I need to do. Although I may procrastinate on the top priority items, you pay attention to the number of times I postpone and flag it for me if it’s too many.

Thank you, Remember the Milk, for all that you do. Keep on rockin’.