Would You Like to Grab Coffee?

On the Culture of Coffee as a Ritual

The South Bay

Two and a half years ago, I took a job in the South Bay. The South Bay has plenty of great coffee places — Cat and Cloud, Verve, and Barefoot, just to name a few. However, they’re not walking distance from where I work, nor do I have a car.

My office, like many others in Silicon Valley, has wonderful amenities. One of these amenities is a fully stocked espresso station. For nearly two and a half years, almost every day, I would proceed to make myself an Americano. 8–12 oz of water. 2 shots of espresso. I would consume this at my desk over the course of 15 to 20 minutes.

Nothing is wrong with this. The coffee is wonderful. The espresso machine is almost always working. The water is filtered. I don’t think I’ve ever had access to such a nice office espresso setup. But, I found that this morning ritual lacked something I used to have.

The Ritual

Most of the cafe visits I made when I worked in San Francisco were about more than just the coffee. It was a chance to take a break during working hours. In addition to being a relatively healthy break, it was an opportunity to walk somewhere with a coworker, and on an informal rotation, we’d treat each other to coffee. Sometimes, we even did a favour for our busier coworkers, and brought coffee back to the office. We might talk about work stuff, blow off steam, or not say much at all. It was a break where I came up with a lot of solutions to problems. It was a break that helped build a sense of camaraderie. It was a break from detached interactions with colleagues, and a chance to interact with someone I didn’t otherwise have to spend 6 hours a day with.

The coffee run happened at nearly the same time every day. It was a great chance to include a new member of the team, or get to know someone already in the organization. The question, “Would you like to grab coffee?” was almost always answered with a resounding yes. This question is at the beginning of many of my most interesting stories, and an empty cup of coffee helped me get out of some of the least interesting situations.

In Los Gatos, our office has a creek that runs behind it. For a while, I would take a walk with my colleagues on this trail. I quite enjoyed it, until a few months ago when tree pollen levels got bad enough where walking along the creek resulted in me feeling unwell by the end of it. I’m working on fixing that, but it’s a long-term project.

I missed what I used to have.

Make Your Coffee

I wanted to restore some of the ritual I used to have. I had no reason to run my own espresso setup, and I wanted nothing as complicated as a siphon, or nel drip. Furthermore, my desk is a walk away from the kitchen, and having to wash everything after brewing at my desk seemed like a nightmare. The obvious setup might be an Aeropress, Chemex, or an individual pour over. Although all of these solutions would work, they wouldn’t lend themselves to a group-friendly ritual, a crucial part of the equation.

The Coffee Maker

I looked to the SCA, and reviewed their coffee makers that were certified, and able to make the SCA Golden Cup. I also like the look of a glass carafe, and I believe pre-infusion does make a better cup. At this point, I decided upon the Bonavita Metropolitan. Although it hasn’t been submitted by Bonavita for SCA certification, its siblings have been. Its only consumable is a single Melitta, unbleached coffee filter that I could just toss in the trash. Also, if this project went poorly, I wouldn’t feel too bad getting rid of it.

The Coffee (Grinder)

A drip coffee maker needs coffee. We have plenty of pre-ground coffee at work — multiple blends, from multiple brands.

Perhaps it’s psychological, but something about pre-ground coffee puts me off. At some point, I intend to do some testing to see whether or not it’s in my head, but that put me on my next mission — ground coffee.

I remember going into Blue Bottle and seeing pre-ground coffee in little packets that is said to be as good as freshly ground coffee. Blue Bottle’s “Perfectly Ground” coffee was where I decided to start.

Perfectly ground coffee, as far as I can tell, is coffee that has been pre-ground at a specific size on high quality grinders, and packaged up in a pre-measured, airtight bag, which I can only assume has been evacuated of most of its oxygen. This bag, rather than having a one-way valve to deal with off-gassing, can expand to accommodate the growth of volume from the CO₂.

Perfectly Ground coffee actually tasted pretty good when I brewed at an 1:16 ratio. I honestly couldn’t tell the difference between this, and freshly ground coffee. Perhaps, that was because I paid $3.50 for 35 grams of coffee, and therein lies the problem. If we made an entire carafe a day, it would quickly become exorbitant. Interestingly, it doesn’t seem like anyone else is competing in this market. I wonder if market competition is limited due to IP, or there’s no way to make money from this product.

On top of the coffee being ridiculously expensive, I’ve come to find Blue Bottle’s blends a bit boring as of late. I hope that they’ll keep innovating, especially with access to Nestle’s capital and research division.

The only way to deal with this problem was freshly ground coffee. This led to the acquisition of the Baratza Encore. It’s an awesome little grinder that does a perfect job. It grinds at a rate of somewhere between 0.85–0.91 grams / second, putting the 78 grams of grounds required for 1.3L of water at about 90 seconds.

I was pretty happy with this setup for a while. It took about 10 minutes to brew 1.3L of coffee, and I could use whatever beans I wanted. It came with some large problems — running a grinder in the middle of an office is loud — around 85dB. That’s enough to carry around the corner and bother more than just my team. In an open office setting, this makes me the asshole.


I’d never done a Raspberry Pi project before, despite wanting to do one. On top of that, I now had a problem that fit the IoT space very well. For the first time, I could justify buying a Raspberry Pi, and building something.

There’s a window, about 30 minutes before I get into the office, where I can trigger the grinder, and no one is likely to be there. The grinder is left in the “on” position, and it’s connected to a relay which is driven by a gpio on the Rasberry Pi. Now, before people get into the office, we have a new coffee grinding ritual.

Of course, after I completed this project, my coworker pointed out that it might have been simpler just to put a box on top of the grinder.

The Future

Now that I’ve set up a machine that has the ability to control the coffee grinding, I would like to use ChatOps to drive the grinder. Ideally, we would have the ability to trigger it from Slack. The approach that’s been taken today can easily result in two people triggering the coffee grind protocol in one day. Such a mistake may result in an extra 78 grams of coffee.

In terms of other future goals, I want the machine to be tolerant of failure, and not accidentally leave the grinder running forever if something goes wrong.

I did much of this work because I believe the time between grind and brew is critical. Now, with a machine in control of grind-time, as well as time-of-grind, it can vary these factors in order to build a model that can determine if I did all of this work for no point. I want it to decide when to grind the coffee, and vary it as compared to when I consume it. In addition, I think it would be very interesting to change the ratio. If I give the machine feedback directly, it’ll make running a blind analysis much easier.

The Ritual

I still don’t quite have the coffee ritual that was so important to me, but I have a new ritual. I hope that it helps generate a sense of camaraderie. I hope that this incredibly complicated, inefficient system I put together inspires me when I’m out of ideas.

The Setup