A while ago, I had to get emergency surgery. August 20th was a weird day for me. I went from minor stomach pain in the morning to recovering from an appendectomy in the evening.
My experience that day taught me one of the most valuable lessons of my career and life. Sometimes the best thing you can do is to step away.
I started the day pumped about a big week for the Athens project. We’re working on a server for the brand new Golang modules system. I’m incredibly passionate about this new technology, and I truly believe it’s going to make the experience for Go developers amazing.
As the situation with my health got progressively more serious, I kept checking my phone, making sure that I didn’t miss anything on the Athens Slack channel. I was so ready to get back to my office without missing a beat. After all, if I was gone for too long, the community would crumble without me.
I genuinely felt like the project would wither and die in a matter of hours if I wasn’t there to guide everyone. In retrospect, that was dumb, not to mention arrogant.
Before I left, I was micromanaging the project.
The Athens community is made up of smart, motivated, and independent people, so why did I think they couldn’t survive without me for a few hours, a day, or even a week? Why did I feel like I needed to micromanage these wonderful people?
I would later come to realize the problem: I was obsessed with the project succeeding, not the community. And so, I felt like I needed to tell the community exactly what they needed to do to realize my vision of Project Athens.
I soon learned the power of the community and why my micromanagement strategy was unnecessary.
After any surgery comes recovery. I have always tried to keep healthy, but I learned through this experience that no matter how healthy you are, getting cut open messes you up. You can’t walk well, it’s hard to sit up, and you don’t want to eat much. Your body shuts down for a while, and you can’t do anything about it.
I was sure that in the best case the community would move on without me
In my case, “a while” was a week. It was my worst nightmare. Surely, I thought, I would come back to a community in ruins and all my hard work would be for nothing. All the contributors might leave, and everything could be broken.
Regardless, I had to accept that I’d be out for the next week, at least. And not “I’ll be online for a few hours a day” gone; more like “I’m disappearing completely” gone.
Right before I went into surgery, I had to tell everyone I’d be out of contact. I felt terrible. I was sure that in the best case the community would move on without me, and there would be no place for me in the community I had worked so hard to build.
I had it all wrong.
Everybody I told said, “Come back when you’re healthy. We’ve got this until you’re ready.”
By Wednesday, I was finally comfortable being away and had accepted that the project was probably okay. But the epiphany really came when I returned a week later.
I was struck by how quickly and easily everybody was making progress and how much the community had grown. I still felt like nothing was perfect, and things weren’t happening the way I wanted them to. But deep down, I knew that didn’t matter. Things were good, and I wanted to know why.
I racked my brain and eventually figured I’d keep doing what I was doing and see firsthand how work was getting done. So I started observing.
When I “disappeared”, I removed myself from the center and I was no longer suffocating everyone.
I saw that the group worked like an open source project is supposed to work:
- People pick up issues they want to work on
- They submit a pull request (PR), and it gets reviewed
- Discussions happen mainly on issues and in PR comments
- There’s a weekly meeting on video chat that people come to if they can
Most importantly, all communication is asynchronous. There’s plenty of literature on the pros and cons of async communication, but I had already seen that it works well in our community. Then I had a revelation:
Before I left, I was micromanaging the project. I was reviewing almost every PR. I was trying to answer every question. I was trying to welcome every newcomer and weigh in on every decision.
I thought I was helping the project scale by growing the community and fostering great practices, but practically, I was doing the opposite. I was hurting the project by putting myself in the center of everything! Before I left:
- People in other time zones had to wait for me
- Everyone felt like a decision wasn’t “final” until I agreed
- Everyone felt like they had to wait for me to sign off on their PRs
When I “disappeared”, I removed myself from the center and I was no longer suffocating everyone. I had to put aside my urge to be involved in every last detail, and that empowered folks in the community to step up and do their best work without waiting for me.
Fast forward to today: I now do less in the community, and things are going great. I focus on larger concepts like long-term release planning. I check in with folks one-on-one more. I do administrative things so others don’t have to (like running weekly meetings).
And most importantly, I’ve cemented in my brain that people will do a better job when I’m not always in their face!
It took some emergency surgery, but this whole experience taught me some incredibly valuable lessons about leadership, community and life. Things that would have taken me years to learn otherwise.
Sometimes the best thing you can do is to step away.
I learned that building a culture and setting a “vibe” for a group is way more powerful than micromanaging the day-to-day of a group. I learned that giving folks all the power they need is better in the long run than holding onto power. And most importantly, I learned that stepping away from a community is sometimes the best way to let it grow and thrive.
Take a moment to think about the projects you’re working on, the communities you manage, or your professional groups at work. What would really happen if you took a break? If you were gone for a week, would the group thrive? Think about how you can foster a culture where you enable, not throttle.