The distributed opportunity

A new reality

After a surge of optimism about re-opening the world and all of its offices, we’re now in uncertain times again with fourth waves of Covid-19 raging in many countries.

In March and April 2020, many knowledge workers were suddenly thrust into a new way of working. For some, this meant having to work at the kitchen table while taking care of young children — not an ideal environment for doing your best work or for taking the best care of your children. For others, it meant suddenly having a lot more autonomy over how to weave their work into their life and being able to create an environment that truly lets them do their best work. Some moved to different cities or countries to be nearer to family or just to live in a place that works better for them.

There was high variance, too, in how teams adapted to suddenly being distributed. Teams that already had high levels of trust and autonomy likely had smoother transitions than teams that already struggled with alignment and decision-making when they were co-located. These teams were already broken in the office.

Don’t waste the opportunity

Some anxious execs are eager to get their staff back into the office where they can be “collaborative, innovative, and productive”. I think it’s worth examining that claim and whether it might just be code for “Help, I don’t know how to lead a distributed team!”

It’s true that leading distributed teams is harder. It requires more empathy, more asynchronous communication, better tooling, and some emotional intelligence. It’s also true that there are as many ideal working environments as there are people in your company, and asking everyone to work in the office because some of your leaders don’t know how to lead distributed teams ignores a massive opportunity to let everyone do their best work by choosing their best work environment. If and when the scourge of this pandemic subsides, don’t waste that opportunity.

I’ve been working in distributed teams for almost twenty years, including a few years of consulting, five years as a founder, ten years at Automattic, and now at community and events company Bevy. I have not worked full-time in an office since the last millennium.

Create sparks, then execute

I understand that some people get energy from working in the office. Being in person with your co-workers is energizing. Sometimes creative sparks happen easier and faster when you’re together. But if we’re honest, work is not about letting creative sparks fly most of the time. It’s about turning those sparks into goals and then designing and executing and iterating and shipping. The sparks to execution ratio is maybe 1:50, so don’t over-optimize for sparks!

You also don’t need an office for making sparks. Being in an office all day every day is a one-size-fits-all environment that is exhausting and decidedly un-sparky for many people. Instead, bringing your distributed team together in meetups (week-long [Monday-Friday] in-person gatherings) is great for unleashing bursts of creativity and creating strong relationships that fuel distributed work for the rest of the year or quarter or whatever the cadence of your meetups is. Doing activities and having meals with your colleagues is better for forging human connections than hanging around the proverbial or real water cooler at the office. To me, the connections I’ve made with my remote colleagues at in-person meetups are deeper than ones I’ve created in the office.

Different people thrive in different environments. Some people need social interaction more than others, but I’d argue that for most people, spending the majority of our work time in an environment that’s quiet by default and affords flexibility and autonomy leads to better work and healthier, better-functioning teams.

I realized that even though I’ve been leading distributed teams for more than fifteen years, I haven’t written much about it. I’m still learning, but if I have time I’ll share some advice in future posts.

Hiring: Assessing Communication

We’re hiring for the Data team at Bevy.  One of our core values is “communicate like a legend,” and it’s about communicating with respect, candor, clarity, courage, and empathy.  We are building for the long term at Bevy, so it’s also about communicating to our future selves and future colleagues.

Of all the attributes we are looking for in Bevy data team members, I’ve been thinking a lot about communication lately.  I’m trying to learn a lot about a candidate during relatively few interactions, and the nature of our communication during the hiring process is different from how we’d communicate if the person is hired to the team.  An interview is different from a team meeting because the objective is different and there is more at stake.  A take-home challenge is different from a team project because there is less discussion and there is more at stake.  And there is a lot more talking than writing during the hiring process, with about 6 hours of live interviews.  So how do you “get signal” on communication?

It starts with the resume

Call me shallow, but if I’m reviewing 100 resumes and I come across one that consists of two pages of lists of languages and frameworks, and each past job is a list of 35 bullets about how they “re-architected and implemented data services while meeting business deadlines and using software development lifecycle methodologies”, I’m going to skip that one.  Being able to lift out your important contributions and explain them concisely to a technical audience (the hiring manager) is an important communication skill.

Communicating remotely, or remotely communicating?

During the first interview, in addition to (I hope) getting some positive signal on their technical attributes, I learn whether they can concisely and clearly explain why we are here: Did they do some research on Bevy? Can they articulate how they can contribute to Bevy and how we can contribute to their goals for growth and impact as a data professional?  And, as importantly, do they actively listen and confirm their understanding of a question?

If they do well in the interview, we invite them to do a take-home challenge and we start to communicate more in writing.  Bevy is a remote company and most of our communication is written, so this part is very revealing.  My unscientific estimate of how much time an individual contributor spends writing software or writing and speaking English looks roughly like this:

To communicate well in a remote team, writing is not optional.  Writing is the foundation for sharing knowledge, enabling others to be productive asynchronously, and documenting your work for the future.  Writing happens in Confluence, GitHub, Jira, and Slack.  Meetings are the smallest part.  Each requires different skills, see for example tip #3, the “quick chat protocol” in Thomas Limoncelli’s excellent collection of pro tips for remote working.

During the take-home challenge, we exchange emails, ask and answer clarifying questions, and eventually review a PR with the candidate’s answer to the challenge.  This is where we learn the most about their ability to communicate like a legend.  Did they update the README?  Do they explain their approach?  Did they add some diagrams?  Can they spell?  Or, if not, can they install Grammarly?  If writing is the foundation of how we collaborate in a remote company, then this part of the interview process is where we learn the most, even if it doesn’t perfectly simulate working in our team.

The tl;dr

One of the things I appreciate in written communication is a sentence or two at the top that summarizes the page.  This helps me and every other audience get the gist and decide whether/when I need to read the whole document (can I read it quickly between meetings or should I make a cup of tea and find a quiet 45 minutes so that I can really digest it?).

The same goes for Slack.  Starting a conversation with “Hi!” and waiting for a response before revealing the riveting details of some non-urgent question you have is not great.  I prefer a short “I have a question about usage reporting for a customer, not urgent”, which lets me decide whether I need to leave a meeting to deal with this or not.  

The Slack Ack

And while I’m on Slack pet peeves, if I send someone a message like “working on that report, will have it to you as soon as the Airflow job finishes, ETA 2 hours” or “here is a candidate that came through for one of the data roles, but they might be a fit for your team.” then you might not have time to look at the resume for another day or two, but it’s nice to acknowledge it with a 👍 or a ✔️.  It’s the equivalent of a simple “OK” and keeps the social contract alive.  We don’t use Slack during the interview process, but you can get an idea of whether a candidate is a thoughtful summarizer versus a meandering narrator from their emails.

Keeping it in perspective

As much as we try to turn the interview loop into a hyper-rational process with question banks and rubrics, it is still a few humans making decisions about other humans based on sparse, noisy data.  If I find myself excited or critical after an interview, I have to remind myself of that.  It helps me to zoom out and reflect on the whole range of conversations and emails I’ve had with this candidate and with others, where the skills they are demonstrating fall into the communication donut, and whether the full circle of their communication has the potential to be legendary.

Up or down

America was a roller coaster over the weekend.

Watching a SpaceX rocket lift off from launch complex 39A at Kennedy Space Center and deliver two NASA astronauts to the International Space Station was exhilarating, even more so because my son worked on the spacecraft. I’m glad that America hasn’t given up on space, as it looked not too many years ago. Public-private partnerships are saving money and accelerating timelines, and I’m heartened that even when we agree about almost nothing in politics, we can still fund (some kinds of) science.

Watching Americans protest police brutality and systemic injustice was also heartening. Watching heavily armed police confront peaceful protesters was heartbreaking. Watching the president once again come up empty on empathy and ratcheting up the combative rhetoric on Twitter was pretty much the only predictable thing that happened all weekend.

When I came to the U.S. as a student in the 1980s, I was an idealistic young nerd coming to the country that had flown humans on the moon and vanquished racism in the aftermath of the civil rights movement. I was not a fan of Reagan, but I was a fan of people who worked hard for progress and justice. That’s what America meant to me. The U.S. in the late ’80s was the right choice for a computer nerd, but it took me about three days to realize I’d been wrong about the vanquishing racism part. The civil rights movement of the ’50s and ’60s had many successes, but there is much more work to do before we can talk about vanquishment.

Just like last weekend, two of the things I admire about America — a commitment to space exploration and the pursuit of social justice — have intersected before. On the eve of Apollo 11’s flight to the moon on July 16, 1969, Reverend Ralph Abernathy led a protest at launch complex 39A. Abernathy said that money spent on the space program should be sent to alleviate poverty instead:

What we can do for space and exploration we demand that we do for starving people.

Promises were made and mostly forgotten. Within a few years, the moon program was defunded (not re-allocated to fighting poverty), the civil rights movement shifted into a lower gear, and the country became pre-occupied with Vietnam, Watergate, oil, hostages, and just getting through the 1970s. Today, poverty rates in the United States are still shamefully high, income inequality is rising, and the economic effects of the coronavirus pandemic could be far worse than the 2008 financial crisis.

Some people say we shouldn’t be sending rockets into space when there is so much injustice down here. I think that’s a false choice. I’m not a historian or economist, I’m just a nerd and you know my bias since the second sentence. The U.S. must have the capacity to solve more than one problem at a time. We must make a real commitment to a just society, and I believe that neither story is done.

Space is hard. This is harder, but we must address it. We have to fix oversight and accountability of police. We have to include more voices in the political process and find leaders who will not only serve themselves. If we directed one hundredth of the energy that goes into Twitter punditry into inclusive, collaborative policy-making, we could put some constructive energy toward fixing our democracy. For example, take all of the brainpower that was wasted on interpreting Rudy Giuliani’s accidental tweet on Saturday and apply it to a real policy problem, like smart and just allocation of pandemic relief spending.

Human spaceflight is a model for cooperation in the face of ideological differences. You have to focus on the job, or it won’t get done. If you watched the arrival of the astronauts at the ISS on Sunday, you witnessed Americans working side by side with Russians. Million of people watched Saturday’s launch, and there are up to a hundred thousand people in the whole supply chain of the project. As Ralph Abernathy also said:

On the eve of [humans’] noblest venture, I am profoundly moved by the nation’s achievements in space and the heroism of the three men embarking for the moon

A just society lifts us up. Space exploration inspires us. All of us have to solve more than two problems in the course of every day. Our government should do the same.

Word Sequentialization

In some ways, “data visualization” is a terrible term. It seems to reduce the construction of good charts to a mechanical procedure. It evokes the tools and methodology required to create rather than the creation itself. It’s like calling Moby-Dick a “word sequentialization” or The Starry Night a “pigment distribution.”

It also reflects an ongoing obsession in the dataviz world with process over outcomes. Visualization is merely a process. What we actually do when we make a good chart is get at some truth and move people to feel it—to see what couldn’t be seen before. To change minds. To cause action.

— Scott Berinato, Visualizations that Really Work,

Unfairbnb – avoid host “A.C.” in L.A.

I’ve used Airbnb for personal and business travel.  I’ve been a fan.  Airbnb used to be the future, and it used to be cool.  Recently, I had an experience with a corporate host that was not cool, and was not handled well by Airbnb.  The host is called Air Concierge.  They manage Airbnb properties in Southern California.

Planning a family reunion

This story starts in October, when we realize that our son, who lives in Los Angeles, is going to be too busy at work to come home to Colorado for Christmas.  We start planning a trip to visit him, and I convince my parents to make a rare visit from Germany to join us as well.  Next step, find a place to stay for 5 people.  It’s only October, but there’s not much available.  I manage to find a nice but expensive rental in Venice on Airbnb.  I book it, make a payment of 50% plus fees, and make a mental note of the strict cancellation policy (48 hours for a full refund), and over the next couple of days keep looking for something closer to where our son lives.

Something opens up much closer, I realize that I’m coming up on the 48 hours, so I hustle to my computer …  except, I missed the 48-hour cut-off by about 20 minutes!  I shouldn’t have played it so close.  I check with the host on refunding anyway:

Hi A.C., I just found out that another place is available down the street from where our son lives. I missed the 48-hour window by 20 minutes. Any chance I could still cancel the reservation with you? Thank you.

I get this reply:

Hey there Martin,
If you wanted to cancel now, the dates will be opened up.
And once we get those dates rebooked we can refund you the appropriate amount. Unfortunately we must stick to our strict cancellation as this is our companies policy that we are unable to bypass.

20 minutes

Missing the cutoff is my fault.  20 minutes earlier, and a refund would have been automatic.  That’s frustrating.  But it’s still 67 days before the check-in date, so I’m optimistic that they can rebook the property and then I can get my money back — after all, it’s sunny Venice at Christmas time, and they’ve got more than two months to do it.  So I cancel the booking, knowing there’s a chance that they can’t rebook, but convinced that if they can, they’ll refund me.  I set myself a reminder to check their availability calendar every couple of weeks.

After a few weeks I see that they’ve rebooked the property for all of my original dates.  It’s still 6 weeks before my original check-in date.  Piece of cake.  I message the host:

Hi, I see that you have my original dates rebooked. I’d be grateful if you could process the refund. Thanks.

No reply from the host.  I try a couple more times over the next 2-3 weeks, without any reply.  The host has gone silent and apparently changed their mind about refunding me what I’d paid.  I get curious about this host who is starting to seem like a jerk.  It turns out “A.C.” stands for Air Concierge.  It’s a company that manages 150+ properties in Southern California.  They specialize in managing, designing, photographing, and pricing properties.  And apparently in being jerks and reneging on promises.

With the host being unresponsive, I get in touch with Airbnb customer service to explain the situation to them, and invite them to read my message history with Air Concierge.  I get this:

I have reached out to your host to resolve the refund to get this taken care of! I will follow up when I hear back from them! 🙂

That sounds promising, but after a few days I get this:

I reached out to your host and requested the refund for you. I requested the amount you desire, and the host denied and agreed to $25 refund. I understand this was not what you wanted, however, the host stated that they would provide a refund of the appropriate amount. They deem that $25 was the appropriate amount as normally you would not receive any of the $4,793.73 for this cancellation. I am sorry this was not the amount that you wanted refunded to you. However, the $25 will be in your account within 3-15 business days.

Not appropriate

Wow!  Twenty-five bucks on almost $5k ???  And this after you rented the property to someone else within a few weeks of my cancellation and 6 weeks before the dates?

At this point, they’ve technically upheld their promise and issued a refund.  We’re just really, really far apart on the definition of “appropriate”.  I think Air Concierge is confusing a cancellation policy with a business model.  I find the offer of $25 insufficient, offensive, condescending, and abusive, and I tell the case manager at Airbnb as much:

Thanks for your reply. I have to say that I find their offer of a $25 refund not only insufficient, but actually offensive, condescending, and abusive. Consider the facts:

  • I cancelled after 48 hours and 20 minutes. 20 minutes earlier, there would have been no question about a full refund.
  • When I cancelled, it was still 67 days before check-in day.
  • They promised a refund if they can rebook the property (see my message history with the host).
  • They were able to rebook, so they’ve incurred no economic loss, one more reason I find their position unnecessarily rigid and abusive.

I’ve been patient throughout this with the host, but I’d like to ask you to escalate this issue within your department. Apparently the host is a corporate host (Air Concierge), and I find that this behavior reflects poorly not only on them, but also on the platform.

The next day, I get a message from a supervisor at Airbnb apologizing for the inconvenience and thanking me for my patience and … blah blah blah …

Regrettably, at this time you agreed to the terms of this reservation and the terms of the cancellation when it was processed. Again, I sincerely apologize for the inconvenience this has caused you but thank you so much for your patience throughout the process. I hope that I have been able to clear things up and alleviate any concern or confusion you may have had.

Half-time reminder: I’m not arguing that the cancellation policy does not apply to me — although, yes, a human rather than a corporate host might have given me a break right on the spot, considering the timing.  I googled it, and it happens: humans being human on Airbnb.  The issue is that Air Concierge promised a refund if they rebooked the property — they rebooked the property and then reneged on that promise.  Also, 20 minutes.  Come on, be human.

I tried one more time to focus the Airbnb case manager on the issue — the promised refund is now there, but it’s not anything close to appropriate.  I get a reply sympathizing with my frustration and letting me know that “At this time, A.C. An Airbnb Property Host has not agreed to a full refund and wants to uphold their strict cancellation policy” and that “Going forward, this case is now considered closed.”

I don’t really have more time to spend on this, but there are few things that annoy me more than people and companies being jerks — like Air Concierge and Airbnb.  Call it what you want, but I’m a stickler for fairness and keeping your promises.  I’m so annoyed that it’s making me think out loud on my blog, which hasn’t happened in … years!

So what’s next?

My family (probably) won’t starve if I don’t recover the money from Air Concierge.  And we’re going to have our family reunion at the other property I booked — which is owned and managed by a human, we talked on the phone the other day to confirm check-in details.

I’m weighing these options:

  • Arbitration per section 19 of Airbnb’s terms of service.
  • Dispute the charge with my credit card.  Apparently there’s a category of complaint called “claims and defenses,” although since I paid the charge (in good faith that Air Concierge would uphold their promise), it’s not clear I can use this.
  • Something else?  Any advice from any Airbnb guests who’ve been in a similar situation?

I’ll post updates here.

Thanks for the memories, Softpro Books

Before moving to Denver 17 years ago from Silicon Valley, I used to spend hours every weekend at the Computer Literacy bookstore in San Jose.  I was a student and this store embodied a world of possibilities.  I’d thumb through, and often buy, books about what was then still unselfconsciously called AI; or books about numerical methods, graph theory, UNIX, C, Smalltalk, or Perl.  Before blogs, Google, Stackoverflow and eBooks, books were an important part of learning.  At least, they were for me.

Computer Literacy was on the (very short) list of things I knew I’d miss about the Valley.  Imagine my joy at discovering Softpro Books within a week of moving to Denver.

softpro books

I feel like we grew up together, Softpro and I.  I bought dozens of books there every year, even when I couldn’t really afford it.  It was an investment in my craft.  At first it was C++ and more UNIX, then the Web started eating the world and there was HTML, ASP, PHP, MySQL, Python and Java.  And there were always the books from the “esoteric” section, my favorite section at Softpro.  These were books on genetic programming, neural nets, data mining, and machine learning.  I don’t think I finished many of them, but as a favorite professor of mine used to say, you can get a damn fine education by reading the first few chapters of a lot of books.

When I ran out of space in my office, I gave away books to make room for more.  Out with you, Oracle Performance Tuning and XSLT!  Make room for Lucene and R.

Computer Literacy closed in 2001.  Next week, Softpro will be closing its doors.  There will still be an online presence at, but this is the end of the browse-and-buy era.  The last 17 years have seen amazing changes in how we use and program computers, and in where we get information and learn.  I feel just a little bit old, but I also feel very lucky to be in this business and hungry to keep learning.  I’m sad I’ll have to do that without Softpro.

Jim and Eric – you’ll be missed; thanks for being there all of these years.

Running is like Roomba for your brain

Roomba roams around your space, apparently aimless, picking up old or new detritus from hard-to-reach places under the furniture.  Often when I’m running, my brain roams around the space of my work, life, and relationships to bring back long-forgotten memories, things that fell off my todo list, or even brand new ideas (formed from bits of stuff that were hiding under the furniture of my brain).

“Seven Roombas in the dark” by ibroomba

Many people experience some kind of meditative state while exercising. It doesn’t happen to me every time I run. It happens more often on longer runs. It never happens when I’m not moving. Learning how to meditate has been on my list for ages, but I’ve never managed to create time or space for it.  I just can’t relax.

I’m terrible at those biofeedback video games where you arrange stones in a Zen garden by calming your breath or something. My mind starts to race, the stones fly off in all directions instead of settling into a neat stack, and pretty soon I’m tearing the biofeedback sensors off my fingers and flinging them across the room.

The roomba effect is the closest I get to meditation. With my body and breath doing their rhythmic running thing, my brain somehow disconnects from my immediate physical reality and starts to roam freely in search of loose ends, until my battery runs out.

iWeb to in 45 minutes

Apple sent out another round of emails today about iWeb and MobileMe shutting down on June 30th.  That’s slightly annoying, but good for Apple to recognize that this stuff is not core for them, and for communicating well about the approaching sunset.

My sister has a site on iWeb for her portfolio of drawings.  I decided to help her move it to  The whole thing took about 45 minutes, including downloading and then uploading images, picking a theme (Linen FTW) and adding some image galleries (which use the beautiful new carousel feature).

Here is her new site on, what do you think?

Tweaking the UI

Who wrote this?

… with enough money … I’ll tell you what I would do.  In the first place, I would change the general appearance of the site and make seven wide columns where we now have nine narrow ones.  Then I would have the font spaced more, and these two changes would give the site a much cleaner appearance.  Secondly, it would be well to make the site as far as possible original, to clip only some leading sites … [we] must also increase our number of advertisements [even] if we have to lower rates to do it … images are a detail, though a very important one … images attract the eye and stimulate the imagination … all these changes [should] be made not by degrees but at once so that the improvement will be very marked and noticeable and attract universal attention and comment.

Perhaps the antiquated language at the end gave it away.  This is not an email from an online publisher to her investors in 2005.  I just replaced paper with site, type with font, and illustration with image in an excerpt of a letter William Randolph Hearst wrote to his father in 1885, listing changes he would make to the San Francisco Examiner if his father would just let him run that paper.  Hearst did take over the paper and, after making a number of changes like these, made the Examiner the most popular paper on the west coast.

Source: The Uncrowned King: The Sensational Rise of William Randolph Hearst by Kenneth Whyte (a great read).