Skip to content

Commit 1a81e1b

Browse files
andyblundellRickyHardingharryhmc
authored
Inclusive language (#238)
Co-authored-by: RickyHarding <[email protected]> Co-authored-by: Harry Coulter <[email protected]>
1 parent 4850a25 commit 1a81e1b

File tree

3 files changed

+48
-0
lines changed

3 files changed

+48
-0
lines changed

.github/CONTRIBUTING.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,4 @@ When committing your changes, please reference the issue they're resolving, so i
2121
* The framework is open to the world. This has a few implications:
2222
* Nothing in it should be confidential, private to NHSD or include any personal data.
2323
* All links in framework pages should be public.
24+
* Use [inclusive language](../inclusive-language.md): avoid terms which cause hurt and offence, including if they have historically been considered industry-standard terms.

inclusive-language.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# Inclusive language
2+
3+
## Context
4+
5+
* This is part of a broader [quality framework](README.md)
6+
* This guidance has been co-authored with the NHS Digital [EMBRACE network](https://digital.nhs.uk/about-nhs-digital/corporate-information-and-documents/staff-networks#ethnic-minorities-broadening-racial-awareness-and-cultural-exchange-embrace-) and the [Lesbian, Gay, Bisexual, Transgender, Queer and Allies (LGBTQ+) network](https://digital.nhs.uk/about-nhs-digital/corporate-information-and-documents/staff-networks#lesbian-gay-bisexual-transgender-queer-and-allies-lgbtq-)
7+
8+
## Background
9+
10+
The language and terminology we use is important, and there are certain industry-standard terms which cause hurt and offence. Furthermore, the 'old' standard terms use arbitrary language, for example replacing White / Black with terms such as Allow / Deny or Permit / Block removes ambiguity and delivers a better experience for all users.
11+
12+
In line with organisations such as the [Home Office](https://hodigital.blog.gov.uk/2020/07/23/not-a-black-and-white-issue-using-racially-neutral-terms-in-technology/) and the [National Cyber Security Centre](https://www.ncsc.gov.uk/blog-post/terminology-its-not-black-and-white), we recognise that historically we have used these terms, and we will strive to avoid using these terms in the future.
13+
14+
## Details
15+
16+
| Context | Term we will avoid | Terms we will use instead (suggested) |
17+
| :------------------------------ | :-------------------- | :------------------------------------ |
18+
| Infrastructure (e.g. databases) | Master | Primary |
19+
| Infrastructure (e.g. databases) | Slave | Replica / Secondary / Worker / Agent |
20+
| Source control | Master | Main (see [below](#renaming-the-master-branch-in-github) for GitHub notes) |
21+
| Security / permissions | Whitelist | Allowlist / Permitlist |
22+
| Security / permissions | Blacklist | Denylist / Blocklist |
23+
24+
Note: this is not intended to be an exhaustive list, and further suggestions are [very welcome](.github/CONTRIBUTING.md).
25+
26+
## Renaming the master branch in GitHub
27+
28+
GitHub have published [guidance](https://github.com/github/renaming) around renaming the master branch. It is worth noting that GitHub retains a history of the names of the parent branch so that existing links to your repository aren't broken - for example the parent branch in this repository has been renamed from master to main, but old links to the master address still work ([https://github.com/NHSDigital/software-engineering-quality-framework/blob/master/README.md](https://github.com/NHSDigital/software-engineering-quality-framework/blob/master/README.md)) and are automatically redirected to the main branch.
29+
30+
In addition to the guidance from GitHub, developers will need to update local copies of a repository if the "master" branch is renamed - this example is for a renaming from master to main:
31+
32+
```
33+
git branch -m master main
34+
git fetch origin
35+
git branch -u origin/main main
36+
git remote set-head origin -a
37+
```
38+
## Further reading
39+
40+
* [inclusivenaming.org](https://inclusivenaming.org/word-lists/overview/)
41+
* [Internet Engineering Task Force](https://datatracker.ietf.org/doc/draft-knodel-terminology/)
42+
* [Python](https://bugs.python.org/issue34605)
43+
* [GitHub](https://github.com/github/renaming)
44+
* [NCSC](https://www.ncsc.gov.uk/blog-post/terminology-its-not-black-and-white)
45+

principles.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,8 @@ We need to figure out how to deliver software as fast as possible. This reduces
138138

139139
**No blame.** When things go wrong, treat it as a learning opportunity for the team and organisation. Use blameless post mortems and Five Whys.
140140

141+
**[Use inclusive language.](inclusive-language.md)** Avoid terms which cause hurt and offence, including if they have historically been considered industry-standard terms.
142+
141143
## 7. Optimise the whole
142144

143145
**Visualise the work.** Map the value stream with a Kanban board, identify bottlenecks.

0 commit comments

Comments
 (0)