jewelfox: A portrait of a foxgryphon with a beak, black fur, magenta hair, fox ears, and a neckband with a large jewel on it. (Default)
[personal profile] jewelfox
Via the Geek Feminism blog, git has a serious bug.

For those reading this who aren't technically-inclined, git (named after Linus Torvalds) is like an ongoing archive of savegames for your programming, except that it also has features that let multiple people work on it at once. It's fiendishly hard to use and easy to break, and those qualities by themselves help to create a culture of complacent experts and frustrated novices. I personally feel that the time savings at the top are erased by the loss of contributions from people who are discouraged from ever learning it.

But besides that, everything you write in git is tied to your name. And it won't let you change it retroactively:
If you change the author, it’s treated as an entirely new commit. Anyone who has grabbed a copy of your original commit and made subsequent changes on top of it finds themselves orphaned from the history of the project. To use a crude analogy, it’s like you rip the trunk of a tree out, while the branches are magically left hanging in the air, connected to nothing and isolated.
This is an example of cismale privilege at work, where by "privilege" I mean "you guys don't have to worry about this." Most guys don't change their names when they get married, and most cisgender people don't think about changing their names, or what it'd be like to need to for safety- or identity-related reasons. Cisguys comprise most of the experts who wrote git and who use it on a day-to-day basis, so this apparently never came up.

The result: People are excluded from Free Software projects without anyone making a conscious decision to exclude them.

That point is extremely important to keep in mind. My intent doesn't matter when it comes to behaviours that exclude other people, any more than it matters when it comes to writing executable code. Blaming the people my actions exclude, or who point out that my actions exclude someone else, is no more productive than blaming the compiler. Instead, I need to educate myself by listening to marginalized others, and by going out of my way to include them. It's only fair, since they didn't choose to be marginalized. It's also the only way I'll know what I and my projects are missing.

(As on the Geek Feminism blog, comments will be moderated for 'splaining or other forms of derailing.)

Also, about

I appear to have been blocked from posting notices to If I had to guess, I would say it was because of the most recent notices I posted (which contain some strong language).

The Terms of Service don't contain any rules against swearing, or even cursing at itself, which I did after becoming frustrated with my inability to block trolls on it. I wasn't warned or given notice, and an email I sent to received no response, so I don't know exactly what kind of speech the site admins will ban people for. But while I don't have the spoons to check on it myself, I'm pretty sure that the trolls who believe that I don't have a right to my identity or spirituality (one of whom also swore at me) weren't banned and never will be.

I've looked into Google+ as an alternative, but found its restrictions on pseudonyms and identities problematic. I am currently considering setting up a personal site as a Tumblr style linkblog. If I do, I will probably syndicate its content on Twitter and Google+, and here on Dreamwidth and Planet GNOME as applicable.

Date: 2012-10-01 08:02 am (UTC)
coffeevore: A tousled-looking woman stirs coffee. (Default)
From: [personal profile] coffeevore
Oh. Yes. Society in general is terribly biased in terms of assuming that the name you were born with or began your adult education/career with is the one you will carry all your life. Or that admitting to a "former/maiden name" should not be a big deal. Depending on your situation, it can be. And that doesn't mean that the people who didn't design with that in mind are eeeevil, but the gracious thing for them to do would to change it when that's pointed out, not argue about how they never made any mistakes with how they handled it ever.

Date: 2012-10-01 08:19 am (UTC)
coffeevore: A tousled-looking woman stirs coffee. (Default)
From: [personal profile] coffeevore

Unnecessary, Steam developers. Really unnecessary.
Edited Date: 2012-10-01 08:28 am (UTC)

Date: 2012-10-01 08:00 pm (UTC)
sophie: A cartoon-like representation of a girl standing on a hill, with brown hair, blue eyes, a flowery top, and blue skirt. ☀ (Default)
From: [personal profile] sophie
Steam is bad regarding usernames, yeah :/ I posted about it myself. I eventually got my case settled purely because of people making a noise about it, but that doesn't help anybody apart from me. :/ I need to go check to see what their policies on it are now.

Date: 2012-10-01 08:56 am (UTC)
From: [identity profile]
If you write an academic paper, have it published, and later change your name for *any* reason, the paper is out there, with that name on it. The same is true for git: the history is exactly that. The same is true for lots of pre-digital domains and many post-digital.

You focus on the fact you can't retroactively change the name attached to a commit, but the same is true for any data relating to the commit, including the email address. 'm sure many programmers of all genders change their email over time, and their historic commits will continue to show their old one, even if it can't receive mail in the future. Just like old email, usenet posts, etc.

Date: 2012-10-01 09:16 am (UTC)
From: [personal profile] xclaesse
This is not a technical limitation, there is a *very* important security reason: With git you can guarantee the integrity the the whole history just by verifying the hash of the commits. So I can download the whole linux kernel tree from any source and verify it is the official Linus' version with no modification. But then what if I change the name of all commits to be my name then I give that to someone? If that's not a modification of the history that would mean that he could verify that the history is the official one and give all the credits to me.

You cannot change the past, live with it.

Date: 2012-10-01 10:43 am (UTC)
mfb: (:>)
From: [personal profile] mfb
Umm ... Git commits come from logged-in Git accounts, right? Why aren't the commits associated to a (possibly hidden?) unique user ID, that then has a changeable display name that's only relevant on the site, not in commits (and therefore irrelevant to hashing)?

I don't know much about Git specifically, but I'm passingly familiar with version control ... I don't understand why the name would be a security issue, from a technical standpoint.

Date: 2012-10-01 11:02 am (UTC)
From: [identity profile] kigurai []
The issue with security is not with names, but with allowing commit history to be changed.

Date: 2012-10-01 11:50 am (UTC)
mfb: (bri)
From: [personal profile] mfb
OK. So instead of making one commit with a name -- a fickle, abstract, wobbly-bendy, often unreliable (Middle name? Middle initial? Maiden name? ????) name that seems fundamentally incompatible with something as necessarily rigid as version control -- why not let them commit with an ID, which can be later associated with a name in a different database? The ID would be consistent across all commits, even if they ended up changing their name associated with it; the name change would also be retroactive.

As a layperson, I know this is in the realm of possibility because I've seen other services do it -- the first one to come to mind is Anipan. (Not version control software, I know -- but art sites do have 'making sure art can be traced to its original artist' as a Pretty Big Problem to solve.) As a programmer I know it's within the realm of possibility because I've done it and have no information that would indicate otherwise.

As for integrating this with the old system where commits are tied to names, it seems logical that a name could choose to associate their commits with the newer ID. That way all of one's commits could be traced to that one identity, for all of time (if one chose to associate them all). There are probably other solutions for this auxiliary problem (possibly ones more relevant to the specific way in which Git stores commit metadata; I wouldn't personally know).

What I'm getting at: I don't see how the problem is insurmountable, should someone choose to fix it. Maybe a little bit awkward, but hell. Sometimes awkward is good.

Date: 2012-10-01 08:59 am (UTC)
From: [identity profile]
I forgot to include another example that occurred to me. Walter Carlos was the composer of the excellent soundtrack to "A Clockwork Orange". Walter is now Wendy Carlos. Walter was a man, Wendy is a woman. However, that soundtrack was credited to Walter, because she had not changed her identity at that point, and it is still credited to Walter, because that was the correct identity at the time the soundtrack was produced.

Date: 2012-10-01 09:11 am (UTC)
coffeevore: A tousled-looking woman stirs coffee. (Default)
From: [personal profile] coffeevore
"Other situations have the same problem" isn't a good reason to allow the problem to persist.

Date: 2012-10-01 11:07 am (UTC)
mfb: (casual)
From: [personal profile] mfb
I feel like a desire for simplicity, instead of actually adapting to the myriad needs of people, is in play here, because when I've made programs that have to, on any level, deal with people, there's always been the temptation to try to shove them in boxes instead of accounting for needed flexibility. (It never went well and always proved to be more work than it was worth -- the box-shoving, that is.) Because sometimes people throw at you something you didn't expect. That is something people are super good at.

For example (in a historic plugin database, to make a long story short): Very slight revisions leading to a bunch of the same-named file with different hashes? Was it my problem to deal with? Yes! Was this sloppy? Probably! Was it my place to get after the original creator for it? Nope!

Certainly, I could've assigned all the files to 'Poops McGee' and put them in a pile in the corner, in disdain of their strange habit. But would that make me a belittling jerk? Yes! Would people in the right to complain at me for being a jerk? Also yes! Especially the original author whose works had been assigned to the newly-minted McGee character.

Making people feel bad is bad! Hurting people: Also bad! It seems like bad practice to fail to avoid this. Or ... you could invalidate the experiences of Weird Demanding People, I guess, that also works; It's just not worth it in the long run. Trust me. (This paragraph is directed toward aspiring developers! Hello, aspiring developers!)

This one might be relevant...

Date: 2012-10-04 10:45 pm (UTC)
From: [identity profile]

Long, but worth reading.

I am quite lucky because (a) I am cisgender [for those not into LGBT issues: roughly speaking, cisgender = not-transgender and not-intersex; it's a bit more complicated, of course...] and (b) I could keep my maiden name when I got married, as most Italian women do. The latter decision generated some funny misunderstanding with English people who knew me, but not so much my husband, and sent us a "Mr & Mrs MySurname" Christmas card... but that's a different story.

About us

~ Fox | Gem | Rei ~

We tell stories, paint minis, collect identity words, and share them all with our readers. If something we write helps you, let us know.

~ She / her ~


Style Credit

Page generated May. 29th, 2017 12:02 am
Powered by Dreamwidth Studios