As many seem to have overlooked itb this is from more than a decade ago.
And to those setting “not being toxic” == “being vague”:
Suggestion if you’re in a situation: separate the subject discussed from the person and, to the contrary to what is said in some other posts, be very specific!
Improvised example:
Hey all,
patch xyzz and its aftermath communication is unacceptable.
It’s content is not to the standards we have set here (explain).
Even worse, in the communication aftermath we blamed behavior of user space applications for bugs that are within our domain instead of owning up.
The bugs within the kernel will be focused on with highest priority by a, b and myself.
For the communication: (consequences). As explained the patterns shown here are unacceptable.
I have decided to no longer have x as a kernel maintainer on our team/enforce pairing for all communication/set up stricter consequence catalogue. Any specific action,really…
Not perfect as it’s very early here, I haven’t slept well and I’m not deep into the topic.
Just remember to separate subject to be discussed from person(s) acting please.
And always remember: bad communication is really easy and a lot of managers trained that their whole life! ♥
Reading this version I wouldn’t know the writer is deeply disappointed, frustrated and angry. It’s good you’re trying to improve the letter but this is exactly what many people don’t like about it: it changes the meaning. Perhaps you could include a paragraph which conveys this, such that the reader understands the gravity of the situation better.
I think removing someone’s maintainer status does communicate disappointment in their performance quite well.
And as for anger and frustration, these things really don’t matter in this circumstance. Work is not therapy. If you need to vent anger and frustration, get a therapist. Employees are employed to do their job, not to be the emotional punching bag for a manager who can’t control their temper.
If an employee doesn’t perform to expectations repeatedly and even after you had a few constructive one-on-ones, then demote them or fire them. No need to vent your anger on them and lose your professionalism.
Tbh, the first time a boss of mine loses their temper and verbally attacks a colleague like Linus did here, they have also lost all of my respect for them. And at that moment I will start to look for another job.
I am not and was not advocating for venting - just for communicating emotion. This can be as simple as:
“Your actions have deeply frustrated me and caused great anger on top of [technical reasons]. I would ask that you be more careful in the future.”
This ensures the reader not only understands they hurt Linux with their actions but also another human being. Many people will be more careful if they know they caused personal pain to an actual human being and not just to an abstract technical object such as a codebase.
I know I am going against established cultural norms in western business context - please don’t disregard my proposal just because it contradicts established culture.
I would disagree just because the success of the product (be it closed or open source) shouldn’t be dependent on the feelings of one person. You can be frustrated and angry, but it’s more useful to explain why you feel that way and what can be done to address it. Including your feelings only makes the person not want to do what specifically hurts you, not what is best for the project.
I do understand what you mean, and it makes much more sense than advocating for venting.
But I still feel that putting emotions into a discussion about work performance isn’t the right way, especially when done in public.
In a situation like that where something caused a lot of negative emotions (that go beyond your work performance is bad), I think you should have two separate talks. One about the factual things where one is boss and the other is employee, and one about the hurt/emotions the behaviour caused and in this talk, both are just people resolving their personal problems.
Something like the issue in the OP really shouldn’t cause anger on Linus’ side, since it’s a totally factual issue. A propper response would have been to decline/revert the change while publically saying “This change validates that rule of the project” and then privately contacting the maintainer in question and tell him, “We talked about this repeatedly, if you don’t stop, we need to take consequences.”
Emotions should really only enter the picture when personal offenses where comitted before or maybe if the employee did something with the intent to hurt the project/company/manager.
But if you get really angry because your employee did something wrong, then that’s a problem on the side of the manager and not on the side of the employee.
That said, I think it’s totally ok to tell the employee about the consequences of their actions (“We lost X amount of money” or “It took Y amount of time to correct it” or something like that).
But if you get really angry because your employee did something wrong, then that’s a problem on the side of the manager and not on the side of the employee.
This is probably taught in manager courses in order to protect their subordinates from managerial outbursts, which is a good cause, but they’re not quite right.
The Linux kernel is Torvalds life work. He literally spent most of the time he has on this planet on it, as did thousands others. Instead of watching his children grow, he made sure the planet gets a great operating system. It takes immeasurable effort to keep a vast software project in a good state - most large organisations with many times the resources fail to do so.
The maintainers behaviour represents a complete disregard for this sacrifice. They are showing through their actions that they don’t care that Torvalds and many others spent the little time they have on this planet on this software project instead of more fulfilling and joyful activities. I cannot imagine many more hurtful or disrespectful insults than this. It’s not far from saying their efforts are null and thus their life wasted.
I am saying all of this because I feel that you are speaking as a leader in a company, where you make sure other people’s money is spent productively. This not at all the same thing as what Torvalds is doing, because it’s not just a job, it is his literal life or life’s work.
This doesn’t excuse the behaviour, obviously - but it makes it very human. It’s good that he changed. I just hope we can find a middle ground between forced business speak and emotional outbreaks.
I’m not a manager (used to be team lead, but managing is not for me), but I’ve worked under a few coleric managers and some that where able to communicate in a sensible way.
One of my bosses, for example (that was the job where I was team lead) had a pretty similar style of communication as Linus.
Sure, the company was his life work. But I also started there shortly after the company was founded and I too spent a lot of time and was very emotionally invested in the company and the products. And my boss was just human (and on top didn’t know a lot about the subject), so he made mistakes. And his judgement was often wrong.
But he was never able to accept that he made any mistakes. He’d offload all his mistakes onto some employee, while claiming that every idea that worked out was his, and not the idea of the employee who actually had the idea and had to convince him first. And every time something went wrong, he’d slam the door of some employee open and shouted and swore at that employee.
Turns out, that’s not a great way to encourage people working there. Most of the good people quit after one especially bad explosion of his.
Back to Linus: is it human to be angry that someone disagrees with you? Maybe.
Is it in any way helpful to anyone? Clearly not.
I am pretty sure that anyone who gets to be a maintainer on the Linux kernel is heavily invested and has sacrificed a lot to get there. Attacking them like Linus did, that really renders their life work worthless.
The maintainer did nothing with the purpose to harm the Linux kernel project. He just accepted a change that he thought would improve Linux. Disagreeing on a factual topic with your boss should never trigger an explosion like that.
Oh that was in purpose! It shouldn’t matter that I personally am angry. My employees should never NEVER try to prevent me from being angry but focus on doing the best job they can.
That’s what I admire about Linus: he realized the negative impact his anger had on the performance of others - and fixed it!
To be clear: I can be angry - but my anger isn’t the reason I want things to change. Being angry is MY FAILURE as manager!
Think about it in another way: do you want your colleagues do things they thin prevent you from being disappointed, frustrated or angry - xor do you want then to move your collective goal forward no matter what you’d think.
Another example: if I’d be the one to have caused this communication mess I’d want my employees to call me out - even though I will get angry the moment I realize I’ve fucked up big time!
Ignoring emotions is very unhealthy. I understand that it is seen as desirable in a business context, but it is very unhealthy and detrimental in the long run.
I agree! Making someone aware of your feelings doesn’t mean exploding. You can just tell them. “I am very sad, frustrated and angry due to your actions. Please don’t do this again.” Is very clear and hurts no one.
I apologize - it wasn’t my intention to imply that at all! Emotional self management is a critical skill for managers - and that shouldn’t mean “go away, emotions!”. A trainer and coach I highly respect phrased it simply: “emotions are. They exist if we like them or not.”.
What I intended to convey was “do not use a public platform to channel your emotions.”
If this would’ve been a private conversation I would integrate an explanation of my current situation, feelings and context for my reaction. And also this sounds abstract it can totally be a “dude I’m absolutely pissed. I need you to work with me through this.” (this works btw in both meanings of “pissed” ;)).
Honestly, with this response although I think he didn’t deserve all of that from Linus, he did deserve quite a bit of it. So condescending and smug to application developers that actually make the user experience of Linux a good thing.
Okay, I agree that this is a really dickish way to respond to a dev, and I can see Torvald’s message being as much an olive branch to app devs as it was a thorough humbling of the maintainer. Still wouldn’t call it professional, but… I get it.
Seeing the rest of the thread really contextualizes Linus’ anger.
Only seeing the message from Linus makes him look like a dick. But when you see that he’s responding to someone deflecting blame and being a shithead to the guy trying to report a problem and provide a suggested fix, the aggressive response seems more justifiable.
Yes. I did not include patch from first person in screenshot because I thought it would make it too boring to read. But it kinda adds even more to context.
Replying to “I get this regression with KDE on this system caused by this commit and here how I fixed it” with “lol, pulseaudio sucks, opensuse sucks” of course will make Linus angry and he will reply not only “no u”, but also “and here’s why”.
Treat your volunteers well, or why should they continue volunteering?
Kernel maintainers have plenty of other opportunities.
I don’t know if they are volunteering or being paid. The other person said they are being paid.
Either way, no one deserves being talked down to like that, even if they made a mistake. It’s a matter of respect and self-respect. And as a skilled person like a kernel developer, it should be trivially easy to find other work in a more appropriate environment.
That being said, maybe I’m missing something. Torvalds has been known to be like that for a long time (although that seems to be over now). And still, Linux has been developed over decades. So apparently, skilled people flocked around Torvalds, or maybe rather his project. Not entirely sure why, but I’m taking it as a hint I might be missing something.
Generally speaking: not these days, and not for a long long time. Mauro, for instance, worked for Red Hat at the time. It’s of course possible to be unpaid and work for Linux, but I believe it’s much more likely that one is employed by a big tech corpo and they maintain the kernel as part of their work.
The fact that people here value feelings and pretty expressions more over quality, standards and passion shows exactly how human civilization will decline into mediocrity and sickness.
Your subpar ability to understand that the self fellating anger in that email is in no way something that generates quality and standards says much more about the decline to mediocrity.
Nonsense. It’s simply that that kind of conduct is deeply unprofessional and reflects poorly on Linus. He could have said the exact same things about the issues with that patch without the obscenities and personal attacks.
I’ve worked as a software team lead for nearly 30 years, you do not get the best out of people by belittling and berating them.
I find it ironic that Linus’s explanation for ENOENT being invalid for an ioctl given its meaning of “No such file or directory”, while simultaneously ioctl can return ENOTTY when using a mismatched device fd despite the error meaning “Not a typewriter.”
In the following responses Mauro was very professional. l haven’t heard much about recently but Linus had some high tier anger issues. Most of the cases I was following back then he was right, but desperately needed to cool off.
Poor Mauro: they weren’t good at what they loved, they blamed others for their failings, and their community leader was nuts.
Jokes aside, we’ve already got toxic right there. Linus isn’t right, but someone like that would be fired with good cause. It’s one thing to make a mistake, it’s quite another to blame your co-workers for your own shoddy work.
One does not simply break userspace. You’ll receive more than just angry bug reports. There are restless maintainers who will not sleep. And the great corporations are ever watchful.
Add comment