A lot of eyes outside tech enclaves are on Linus Torvalds, the so-called father of the Linux kernel. For more than 25 years, Torvalds has been in charge of maintaining the kernel — and its 20 million lines of code — and the open-source community around it — with its more than 600,000 users. It also seems that for more than 25 years now, he’s been very quick to tell developer contributors — often volunteers — when he thinks they are wrong, using a lot of four-letter words.
It all came to a head last week when what would normally be a misunderstanding — Torvalds double-booked a family vacation and the Linux maintainers conference — revealed long-term animosity from the Linux community. Torvalds acknowledged this in his weekly Linux kernel mailer:
“This is my reality. I am not an emotionally empathetic kind of person and that probably doesn’t come as a big surprise to anybody. Least of all me. The fact that I then misread people and don’t realize (for years) how badly I’ve judged a situation and contributed to an unprofessional environment is not good.
“This week people in our community confronted me about my lifetime of not understanding emotions. My flippant attacks in emails have been both unprofessional and uncalled for. Especially at times when I made it personal. In my quest for a better patch, this made sense to me. I know now this was not OK and I am truly sorry.
“The above is basically a long-winded way to get to the somewhat painful personal admission that hey, I need to change some of my behavior, and I want to apologize to the people that my personal behavior hurt and possibly drove away from kernel development entirely.
“I am going to take time off and get some assistance on how to understand people’s emotions and respond appropriately.”
Most volunteers of any effort would be appalled be being told to “SHUT THE FUCK UP!” as Torvalds did to Samsung’s Mauro Carvalho Chehab in 2013. Yet some of the targets of this (allegedly unintentional) abuse have been a part of this project for years and years and Linux is a beloved system for hundreds of thousands of developers. Indeed, it’s hard to walk away from something you love and have given so much to, even if this is the logic people in abusive relationships use.
But one can apply the same statement to Torvalds, who had dedicated his adult life to this kernel. Much of his newsletter talks about how he is embarrassed about double-booking, but how he felt relieved he might get out of attending the annual summit. They worked around him and the community leadership insisted he come and even changed the date, but he doesn’t seem thrilled to go.
Torvalds has a lot of signs of occupational burnout, even if he maintains toward the end of the letter that he isn’t burnt out and is eager to continue with the project, including joining the annual summit in a couple weeks.
So when asked by The New Stack to write a feature on the topic, it seemed like a good time to talk about self-sustainability. When you inevitably come across people offering you negative feedback, how do you emphasize your personal resilience? How do you not increase the negativity but rather move the conversation forward?
Moving Beyond a Blame Culture Toward Self-Resiliency
Button says a lot of companies have what she calls “A culture of blame.” Bad stuff happens. Production outages happen. This is the nature of distributed systems.
“Our systems are unstable and unpredictable. And any time any data changes, our system is at risk of failure. So stop trying to prevent it and go and embrace our failure,” Button said at recent Devopsdays talk.
She said your work as a manager — and really any teammates — is about preparing yourself for that failure and chipping away at a culture that says failure is bad.
“Failure is so painful because it’s been built into ourselves for thousands and thousands of years as bad. It’s negative feedback and humans aren’t equipped for responding to negative feedback,” she said.
Another very human defense mechanism is seeking someone to blame. This cultural trend has to break in order to embrace DevOps and agile transformations — and even to embrace distributed systems in general where stuff is absolutely going to break. Button offers techniques to break this human nature.
To start, she recommends, “Think back to a really painful failure you’ve felt.”
This opens you up to address the problem more empathetically.
Then, instead of doing the normal ask of who is at fault, rephrase the question: What are the factors that contributed to this failure? Button says it’s the job not just of team leaders but of everyone to remind each other it’s OK to fail because you learn from failure.
Next step is to create and contribute to a culture of brutal transparency.
“Share every decision you’ve made and share every action you’ve taken. Don’t be afraid to share how your managers are reacting,” Button said.
She says to contribute to a culture of transparency by using Slack or other communication radiators “to share and keep a quick lightweight internal record of all actions we take, recording our assumptions.”
Button emphasized that these should be public channels and is against even having private Slack channels for management at all.
She also recommends taking the agile practice of pair programming and applying it to incident management. She says having a driver and co-driver paired up helps avoid exhausted decisions made under fire at the eleventh hour. Pair-incident management should especially be performed before:
- Any external communication
- Any diagnosis of logs and metrics
- Any changes before they are applied
Button says everyone is responsible for developing a culture of collaboration and accountability, which often, like with Torvalds, comes down to the words we choose. She says to get into the habit of using “We” instead of “They, I, You, or Them.”
Similarly, she offers Dave Zwieback’s recommendation to get less morbid and stop calling it a “post-mortem.” What Button calls “learning reviews” are a positive way to make failure highly visible and to understand what is normal for your systems. Then create information radiators like large screens in common areas that let everyone note system status, particularly flagging when things are wrong.
She told The New Stack that we need to cultivate a culture of gratitude and supportive language particularly around sharing failure. She says we should say thank you to anybody that tries to share their honest account of a situation.
Likewise, Button offers gratitude as a way to deal with negative feedback like Torvalds’, recommending you should always reply “Thank you for the feedback.”
“However harsh someone criticizes you, don’t let your response show your emotion until you’ve worked out how you really want your response to come across.”
Continuing to talk about Torvalds’s communication as a leader, she noted that “The other thing I recommend to my mentees in similar situations is to consider our work to be like running. I’m a slow runner and as a kid hated sport because of the competitive nature but these days in running communities most people say that the race is with yourself — you’ve nobody to beat but you. So even if someone is trying to compete with you at work, or belittles your achievements, remember your own goals and work on improving yourself one increment at a time.”
Sometimes only when you take yourself out of a situation can you help to make it better.
Button ended her conversation with The New Stack with a reminder:
“Finally, don’t think you’re in this alone. Don’t assume everyone else isn’t hurting. Work together, discuss your shared challenges and present a united front.”
Writer’s Note: In trying to follow Torvalds’s journey toward being a more empathetic person, I did want to make this article about more than what he said. However, I think it’s important to note, whether you have a Code of Conduct or not, the language quoted from some of his correspondence is never OK. Let’s try to review what we write before we hit Send to make sure we are as respectful to our fellow human beings as possible. More and more our decision making is being filtered through machines, lets try to be better, more respectful people so the machines reflect that behavior too.
The Linux Foundation, which manages the Linux kernel, is a sponsor of The New Stack.
Feature image via Pixabay.