Reading about this xz backdoor story from the outside as a person who is still learning much about the technical ins and outs, but as a psychologist it is just overwhelming to imagine a maintainer in this position and all of the feelings of pressure and skill based identity and social isolation that must be involved.

Imho psychology has a duty to show up for technology practitioners and work for them just like we see and work for the well-being of emergency workers, healthcare providers.

I feel that as a field, psych has largely let the human side of software development pass it by and we have been content to be merely consumers as much as the rest of the world. But the needs of these people are going unaddressed, undermeasured and unheard. I talk to a lot of psychologists about why I started working with software teams and the human needs that are there and the massive amounts of societal responsibility & pressure that are there too. We really need to have this conversation.
@grimalkina This might be of interest, in case you haven't already read it: https://medium.com/message/4c1dbcbe1099
How I Explained Heartbleed To My Therapist - The Message - Medium

Three years ago, my husband, an open source architect and developer, killed himself. For years, everywhere, we had struggled together against depression, and worked together to try to make our world…

The Message
@pettter I have read this but it was well worth a reread.

@grimalkina Really appreciate you doing this work.

Here's a question I think about a lot: What's the rate of occupational burnout in software engineering?

Is it more common than in similar professions? Do we talk about it more?

Amongst my circles it sometimes feels omnipresent but I have no idea if that's "real" or just an artifact of who I happen to know. I don't know if anyone's even done surveys on the topic.

@nat @grimalkina there were surveys & I’ll link to them directly later; here are links to my series of 10 articles , linking OSI layers & Maslow needs layers : first 2 are about physical & mental health : https://labs.ripe.net/author/becha/you-are-not-alone-ripe-community-resilience/ & https://labs.ripe.net/author/becha/ripe-community-resilience-physical-layer/
You are Not Alone: RIPE Community Resilience

The continued resilience of the RIPE community during the COVID-19 pandemic has helped the Internet keep running. This hasn't been easy, but we're in it together! Vesna Manojlovic draws a parallel between universal human needs and OSI model networking abstraction layers.

RIPE Labs
@grimalkina My degrees aren't in tech. My undergrad is in Psychology and I'm always amazed at how relevant it is to tech. Tech problems are fundamentally people problems (eg, Conway's Law).
@grimalkina Whenever I start a new job as a DevOps engineer, I know I'm going to be disliked for at least the first 6-12 months. You don't change the dysfunctional software development workflows without changing the culture that built those workflows. Eventually, it comes together and is absolutely worth it, but it can definitely take a strong toll on the mental health of the people implementing the necessary work. It's little wonder there's a high burnout rate for DevOps.
@vwbusguy I bet :/. Do you feel like you have a larger community around this of fellow practitioners who "get it"? Or does it feel really solitary? Both?
@grimalkina It's one of the reasons I make a point of getting out to at least one conference per year, even if I have to pay out of my own pocket. Networking with others in the field is important, both for learning new and useful things, but also for sharing war stories and encouraging one another.
@grimalkina The short answer though, is "both". At times it's easy to feel lonely and underappreciated, but belonging to the greater community of DevOps and open source developers can also go a long way in helping in those times.
The aesthetics of source code

The aesthetics of source code is a PhD thesis on the role that formal presentation plays in machine languages.

@grimalkina Not just psychology, most of the humanities have passed on it and mostly remains a passive consumer.

@grimalkina Thanks for this. I've been an Open Source maintainer for a major project, I had my project attacked, and I did burn out doing so from community abuse, so I sadly speak with a tiny bit of experience, along with my overall experience as a software engineer and technical executive.

(1/n)

@grimalkina
A difficulty with software work is that it begins by dealing with code and it evolves into dealing with people. For professional work, that tends to happen at milestones that are more or less predictable, i.e. promotions.

For Open Source, the timing of that transition is unpredictable and uncontrollable. The worst that can happen is to have no users, because the efforts go to waste, but the worst that can happen is to have users, because now you have to deal with them.

(2/n)

@grimalkina Another very messy aspect of Open Source is related to time-frames and people's priorities. Open Source licenses are forever, but people's involvement is not, at least not automatically.

Chances are, original authors of Open Source want to do good, and they express that by releasing code. Over time, though, it's not about code, it's about people, which becomes a potentially toxic situation. However, the underlying desire to do good keeps maintainers from saying "no".

(3/n)

@grimalkina That has me wondering, should Open Source leaders set better expectations that authorship of code and stewardship of a successful Open Source project are two very different roles, that require different skills, such that people who did the first part well might not be ready for the second part?

In turn, should we work to recruit people who are good at the second part, even if the first part isn't as interesting to them?

(4/n)

@grimalkina I'll be happy to discuss that a lot more in private, if you'd like to hear from my experiences.

(5/5)

@grimalkina Worse, what‘s apparently going down in the community already again.

The original maintainer was apparently on a vacation and got this all dropped on them after years of basically thankless work… and then a social engineering attack including sockpuppets making pressure to have more maintainers on the project.

It‘s a sad, damning state of affairs about the psychological health of OSS maintenance.

From: @mmeier
https://social.mei-home.net/@mmeier/112185416457113560

Michael (@[email protected])

@[email protected] Yeah. I just saw somebody complaining about the fact that the original maintainer, being on vacation at the moment and still having made a commit or two, hasn't set up commit signing yet, and that that should really be the first thing on said maintainer's mind right now. That really switched me from yesterday's "Hey, I think this was overall handled pretty nicely" straight back to pessimism.

Meier's Mastodon
@Sevoris @grimalkina @mmeier exactly - seems like this was primarily a psychological exploit designed to target a vulnerable individual - I feel terrible for them

@mrcompletely @grimalkina @mmeier worse, to me it seems like there were compounding failures here.

The attacker tried to get his malicious code past an OSS fuzzer system by argueing with a 2015 bug that hadn‘t been resolved in 2023…

But is it surprising this "small fish" doesn‘t get fished when people are under pressure and underpaid? Where do you take the psychological security to treat small issues significantly?

From: @Sevoris
https://mastodon.social/@Sevoris/112183791413962910

@mrcompletely @grimalkina @mmeier nothing in the exploit chain to me screams "that one big fish". It was a dozen tiny failures that almost enabled this.

Safety engineers would probably have a field day argueing that this is precisely how systems fail, ultimately- tiny individual problems that "lign up the holes".

But where do you take the psychological health and energy from to address all of that? There‘s so many tiny issues everywhere…

@Sevoris @grimalkina @mmeier insightful. my experience as an engineering manager with some big legacy codebases that are potential targets is that in a normal well run system, minimally two but really three holes have to align to cause a significant failure, which is a kind of safety culture adage going back to NASA at least. In an even more carefully secured system, the number of holes required to be in conjunction goes up; but as you're pointing out, the number of small holes is very large
@Sevoris @mrcompletely @mmeier "how can we help people recover and heal once they have been at the center of something like this" feels like a very important and immediate question and yet so often left out

@grimalkina @Sevoris @mrcompletely @mmeier

Trauma-informed maintainer support ❤️❤️❤️

@grimalkina @Sevoris @mmeier bless you for making this kind of thing your work, I've been in this field for a long time and while I think a lot of the reason I've gotten pretty far ahead is that I'm often the one eyed person in the kingdom of the blind when it comes to emotional intelligence - until this most recent generation of coders, maybe - it's always been kind of a lonely trip, with few peers and NO bosses who really understand and value an empathetic human centered view
@mrcompletely @Sevoris @mmeier I can imagine that's been really lonely but really important. It's people like you that I try most to learn from and amplify as we can with the expertise we have access to. Bridges needed for us all. 🙏
@grimalkina @Sevoris @mmeier I feel like the industry is bifurcating in this regard. Many companies are doubling down on heartless, quantified, impersonal management while overall and particularly at the worker peer level - again, imo mostly due to the under 30ish contingent, whom I largely adore - the culture is getting healthier, wiser, more caring. A strange situation that seems destined for a chaotic phase transition of some kind

@grimalkina the part that stood out to me was that the decision from the poor maintainer to hand over the maintainership to the malicious actor was… expedited by a slew of psyops abuse from various sockpuppet accounts that were *absolutely indistinguishable* from the demands that OSS maintainers of popular packets get on a routine basis.

e.g.: https://www.mail-archive.com/xz-devel@tukaani.org/msg00568.html

Re: [xz-devel] XZ for Java

@analogist this stuff moves me to tears I can't imagine being the recipient of it. We need to build walls of psychological protection for people somehow long before things like this happen. This is why software development needs to be healthy and kind and communal.

@grimalkina @analogist It's so horrible. It's no wonder the maintainer reported struggling with mental health issues for years. Who wouldn't?

To attack someone for years and erode their mental health and then slowly slip into their source code and plant sleeping exploits deep in the software supply chain is unreal. But it appears to legitimately be happening, and repeatedly.

I truly agree here. Psychological protection needs to happen

@hazelweakly @analogist it gives me a lot of hope to see the vast amounts of empathy and compassion from developers themselves whenever there are these events, but the vast economic forces and history of technology has truly trapped that compassion on the individual level. Developers are so powerful and yet so disempowered and it is an acute social science question to me, how can we move that compassion in a way that will protect more people like this

@grimalkina

Yeah. I've been trying to think about some practical things we technologists can do for each other, and made some suggestions in https://www.harihareswara.net/posts/2023/user-support-equanimity-potential-cross-project-tools-practices-open-source/ , and hope this incident can spur some more creative and substantial effort. Then again, I'm thinking about the past 10 years, post-Heartbleed, and that doesn't feed optimism.

@hazelweakly @analogist

@grimalkina @hazelweakly @analogist IMO stop with VC funded companies. Organic growth allows for setting more of your own policies.

@grimalkina @analogist

Good heavens yes, to all of that.

I don't wonder that the angry martyr unix admin trope is a reaction to that toxic environment.

@grimalkina truly, thank you. I know this phrase is often used as a joke but I do not mean it in a jokey way: I feel seen.
@grimalkina boy do I have feels about this.
@grimalkina completely agree! Have some colleagues and friends working in bringing behavioural science and technology to the same world. A breath of fresh air, but also received with a lot of reluctance and resistance. Hope thing will change soon.

@grimalkina Unrelated to this xz backdoor story, I'd love to see psychologists step-up to help tech workers realize their worth and to help them unify as a labor force.

The default tech personality is a highly isolated introvert. And the default business playbook is to pit these workers against each other and milk them for all they're worth.

@grimalkina oh my. I totally agree and also...

: points at pilots: :points at the state of safety-2:

Happy to talk about it but uh. You are going to join the renegades if you keep going ;)

We do have cookies though.

Reckoning with the Harm We Do: in Search of Restorative Just Culture in Software and Web Operations

Jessica DeVita discusses the difference between blame and accountability and building a Restorative Just Culture.

InfoQ
@grimalkina Maintaining an open-source project in general is just a huge pain. Like it's difficult to get any contributions at all, so when you do it's like... okay this has problems, but if I push back, will I lose my only contributor? I can easily see how someone might accept something they aren't super confident about, simply for the sake of community engagement.
@complexmath and who among us ever works perfectly and without fault???? I think it is absurd to see technology and dev work as any different. Constantly in my research I see the tension between having a learning culture and beautiful values like wanting to "work out loud together" vs immense weight of responsibility and dependencies you never asked for or imagined happening to your work. These are things way beyond any one human.
@grimalkina Software development is a weirdly high stress career, often for bad reasons, but often not. The stress is still real either way. As a team lead in a corporate setting, I think one of the most important parts of my role is essentially being a therapist to the rest of the team (I gotta keep morale up, keep people from burning out, and help them grow in their careers), but I'm left to figure all of that out on my own with little training (as I'm a programmer, not a real therapist).
@grimalkina the maintainers of popular free and open source software projects usually don't even have the benefit of that. There's just a ton of demand and abuse when something is going wrong, which is always, and everyone takes your work for granted.
@grimalkina I think a lot of folks in the field have bad luck working with real therapists, because there's almost always a major cultural disconnect between us and everyone outside the profession, and a good many of us are neurodivergent in some way, so it's like what good is it to pay someone a few hundred bucks a week to talk about your problems when they don't understand what you're going through or have the ability to empathize with you at all & all the time gets eaten up by training them.
@grimalkina so yeah, I think you're absolutely right - there could easily be a whole specialty here, and there's an enormous need that's being unmet
A Microcosm of the interactions in Open Source projects | RobMensching.com

Originally a thread on Twitter about the xz/liblzma vulnerability, when I finished typing it, I realized I had a real world slice of Open Source interaction that deserved more attention.

@grimalkina Thank you so much for saying this. I have a small open source personal project in public and I always get this feeling that, what if I get toxic responses from someone. I honestly don't know how I would respond to something like that. This constant fear and anxiety is really terrible and I can't imagine how the maintainer must be feeling. I think, we need to talk more about the social aspect as well and not just the technical details.