-
Notifications
You must be signed in to change notification settings - Fork 0
/
7.html
53 lines (53 loc) · 3.99 KB
/
7.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
<html lang="en">
<head>
<meta content="text/html;charset=utf-8" http-equiv="Content-Type">
<meta charset="utf-8">
<title>
Racism and Oppressive Language in Software Development
</title>
<meta name="author" content="Chrisman Brown">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script type="module" src="scripts/themes.js"></script>
<link rel="alternate" type="application/rss+xml" href="/rss.xml" title="chrisman"> <link rel="stylesheet" href="styles/reset.css"> <link rel="stylesheet" href="styles/main.css"> <link rel="stylesheet" href="styles/code.css"> <link rel="index" href="/list" /> <link rel="prev" href="/6"> <link rel="next" href="/8">
</head>
<body>
<header>
👩💻 chrismanbrown.gitlab.io
<nav>
<a href="list.html">Blog</a> | <a href="about.html">About</a> | <a href="contact.html">Contact</a> | <a href="feeds.html">Feeds</a> | <a href="hire.html">Work with me</a>
</nav>
</header>
<main>
<h1 class="title">
Racism and Oppressive Language in Software Development
</h1>
<p>
small ways to be anti-racist
</p>
<p>
2020-06-12
</p>
<p>There is a lot of metaphor embedded in software development. Julia Evans recently did a really interesting analysis of metaphor in man pages in <a href="https://jvns.ca/blog/2020/05/08/metaphors-in-man-pages/"><em>Metaphors in Man Pages</em></a>.</p>
<p>Another pervasive metaphor that exists in software development is that of white supremacy.</p>
<p>You can see examples of the “Black is Bad” effect when we talk about blacklisting and whitelisting. Or about black hat and white hat hackers.</p>
<p>One surprisingly common convention in hardware and software is to describe things as having a “master / slave” relationship.</p>
<p>In a memo titled <a href="https://tools.ietf.org/id/draft-knodel-terminology-00.html"><em>Terminology, Power and Oppressive Language</em></a> The <abbr title="Internet Engineering Task Force">IETF</abbr> makes several recommendations for alternatives such as replacing blacklist and whitelist with blocklist and allowlist. This is anti-racist, and also has the additional benefit of being more clear, precise, and descriptive by saying what it actually is instead of relying on racism to convey meaning.</p>
<p>They also recommend several alternatives to master/slave such as primary/secondary.</p>
<p><a href="https://github.com/git/git/blob/master/builtin/init-db.c#L268">Master/slave terminology is hardcoded into git</a>. Git by default initializes a project with a “master” branch.</p>
<p>Eliminating racist language from the platform is possible. <a href="https://www.vice.com/en_us/article/8x7akv/masterslave-terminology-was-removed-from-python-programming-language">Python did it</a>. Until that happens though, what you and I can do right now is to configure git locally to initialize with a primary branch called something–anything, really–besides master.</p>
<p>You can do this with <a href="https://git-scm.com/docs/git-init#_template_directory">git template directories</a>, which contain everything you want copied into a <code>.git</code> directory upon initialization. Including the <code>HEAD</code> file, which contains a reference to the name of the primary branch.</p>
<p>So I did it.</p>
<p>I created a template directory, and <a href="https://github.com/chrisman/dotfiles/commit/ab92f5b8928869ca24d8a459ba612f3839960403">updated my gitconfig</a> to use it.</p>
<p>Now every time I run <code>git init</code> I start with a “main” branch.</p>
<p>Because we should be dismantling racism when ever and where ever we encounter it.</p>
<p>You can use <a href="https://github.com/chrisman/kill-your-masters" class="uri">https://github.com/chrisman/kill-your-masters</a> to get started yourself.</p>
<p>Kill your masters.</p>
</main>
<footer>
<a href="6.html">« older</a> | <a href="7.html">2020-06-12</a> | <a href="8.html">newer »</a>
<nav>
<a href="list.html">Blog</a> | <a href="about.html">About</a> | <a href="contact.html">Contact</a> | <a href="feeds.html">Feeds</a> | <a href="hire.html">Work with me</a>
</nav>
</footer>
</body>
</html>