Linux founder Linus Torvalds has told the BBC that he is seeking professional help to become more empathetic towards fellow developers, but admits he may have to “fake it until I make it”.
Mr Torvalds stepped back from his role heading the organisation, following accusations of bullying and rudeness.
He admitted to bad behaviour but added that the Linux community also has to look at the way it conducts itself.
He told the BBC parts of it had become “a morass of nastiness”.
Mr Torvalds developed the first version of the Linux operating system while studying at the University of Helsinki, Finland in 1991.
He has always had a reputation as someone who provides blunt feedback to engineers, with expletive-laden emails, once describing an Intel fix as “complete and utter garbage”.
In a TED (Technology, Entertainment, Design) Talk in 2016, he spoke openly about how even as a child he was not a “people person”.
The Linux kernel – the code that lets software and hardware work together – has since been through many revisions and now powers many of the world’s web servers, including those of Google, PayPal, Amazon and eBay. It is also behind the two billion mobile phones using Android.
Mr Torvalds oversees every line of code added to the kernel, but in recent years the male-dominated community has become increasingly divided.
Rows about sexism and rudeness led to the creation of a Code of Conflict (CoC) in 2015 which was short – simply recommending people “be excellent to each other”.
That has now been replaced by a more detailed Code of Conduct – which retains the acronym, but attempts to be more inclusive and eliminate insulting and derogatory comments and behaviour.
In an exclusive email to the BBC, Mr Torvalds shared his thoughts on his decision to temporarily step aside, the controversy behind the CoC, and the defects of the community he set up.
“So I’ve obviously long been on record as wanting to deal with the technical side, and not really wanting to get involved in most other discussions.
“Because technology is what I have always found interesting. People? Not my forte. Never has been, clearly. If you watched that TED talk, you’ll know I wasn’t a people person even as a child.
“And if you have read any of the recent stories, you will now know at least one other reason why I’ve wanted to stay away from that whole discussion. Because it’s not just my lack of people skills. It’s the discussions themselves.
“The advantage of concentrating on technology is that you can have some mostly objective measures, and some basis for agreement, and you can have a very nice and healthy community around it all. I really am motivated by the technology, but the community around Linux has been a big positive too.
“But there are very tangible and immediate common goals in any technical project like Linux, and while there is occasionally disagreement about how to solve some particular issue, there is a very real cohesive force in that common goal of improving the project.
“And even when there are disagreements, people in the end often have fairly clear and objective measures of what is better. Code that is faster, simpler, or handles more cases naturally is just objectively ‘better’, without people really having to argue too much about it.
“In contrast, the arguments about behaviour never seem to end up having a common goal. Except, in some sense, the argument itself.
“Have you read the Twitter feeds and other things by the people who seem to care more about the non-technical side? I think your ‘hyped stories’ is about as polite as you can put it. It’s a morass of nastiness. Instead of a ‘common goal’, you end up with horrible fighting between different ‘in-groups’.
“It’s very polarising, and both sides love egging the other side on. It’s not even a ‘discussion’, it’s just people shouting at each other.
“That’s actually the reason I for the longest time did not want to be involved with the whole CoC discussion in the first place. That whole subject seems to very easily just devolve and become unproductive. And I found a lot of the people who pushed for a CoC and criticised me for cursing to be hypocritical and pointless. I could easily point you to various tweet storms by people who criticise my ‘white cis male’ behaviour, while at the same time cursing more than I ever do.
“So that’s my excuse for dismissing a lot of the politically correct concerns for years. I felt it wasn’t worth it. Anybody who uses the words ‘white cis male privilege’ was simply not worth my time even talking to, I felt.
“And I’m still not apologising for my gender or the colour of my skin, or the fact that I happen to have the common sexual orientation.
“What changed? Maybe it was me, but I was also made very aware of some of the behaviour of the ‘other’ side in the discussion.
“Because I may have my reservations about excessive political correctness, but honestly, I absolutely do not want to be seen as being in the same camp as the low-life scum on the internet that think it’s OK to be a white nationalist Nazi, and have some truly nasty misogynistic, homophobic or transphobic behaviour. And those people were complaining about too much political correctness too, and in the process just making my public stance look bad.
“And don’t get me wrong, please – I’m not making excuses for some of my own rather strong language. But I do claim that it never ever was any of that kind of nastiness. I got upset with bad code, and people who made excuses for it, and used some pretty strong language in the process. Not good behaviour, but not the racist/etc claptrap some people spout.
“So in the end, my ‘I really don’t want to be too PC’ stance simply became untenable. Partly because you definitely can find some emails from me that were simply completely unacceptable, and I need to fix that going forward. But to a large degree also because I don’t want to be associated with a lot of the people who complain about excessive political correctness.
“Am I turning into some cuddly people person? I’ll admit that sounds very unlikely. I still care about the technology, and I’m still not exactly the most empathetic person. But I’m hoping I can at least ‘fake it until I make it’. Part of that ‘faking it’ is definitely going to be a filter on my outgoing emails, but as mentioned, I’m actively also trying to find a professional therapist to talk to as well.
“Will everybody be happy? No. People who don’t like my blunt behaviour even when I’m not being actively nasty about it will just see that as ‘look, nothing changed’. I’m trying to get rid of my outbursts, and be more polite about things, but technically wrong is still technically wrong, and I won’t start accepting bad code just to make people feel better about themselves.
“But if people at least realise that I’m not part of the disgusting underbelly of the internet that thinks it’s OK to show the kind of behaviour you will find if you really have been reading up on the ‘discussions’ about the code of conduct, then even that will be a really good thing.
“And again – the above is just my explanation of why I applied the CoC even if there is obviously discussion about it. We will have the maintainer summit in Edinburgh next month, and we’ll talk about this issue a lot more.
“In the meantime, I’m taking a break from the kernel and probably shouldn’t talk to journalists.”