Skip to content
This repository has been archived by the owner on Jan 24, 2024. It is now read-only.

SEP 28: proposal to add inclusive-language #37

Closed

Conversation

justindesilets
Copy link

No description provided.

@justindesilets justindesilets requested a review from a team as a code owner October 5, 2020 21:34
@justindesilets justindesilets requested review from twangboy and removed request for a team October 5, 2020 21:34
@ghost ghost requested a review from krionbsd October 5, 2020 21:34
| ---------------------------- | ------------------------- |
| Whitelist | Allowlist |
| Blacklist | Blocklist |
| Master/slave | Leader/follower, primary/replica, primary/standby |

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Salt does not use the word "slave". None of the preferred terms accurately describe the role of the master.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried to include a list of terms that have been provided by other companies as general alternatives. I understand that in this context, the alternative names do not provide an accurate label. While "slave" is not included in any of Salt's language, the term "master" ,on its own, is enough. Having to have a conversation about why a word isn't racist, right or wrong in the given context, highlights the need to change it. A possible alternative name might be "commander". This could be tied into the branding as well, "Salt Commander, helping lead the good fight in SecOps".

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right or wrong in the given context

So we should just accept the wrong thing as being true? Or pander to minority groups by making mindless, meaningless changes?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right or wrong in the given context

So we should just accept the wrong thing as being true? Or pander to minority groups by making mindless, meaningless changes?

"mindless, meaningless changes" feels like a strong statement with many other software companies seeing value in removing these terms. Even Github themselves now prefer main vs master https://github.com/github/renaming/

VMware seems to have an opinion, which will hopefully impact Salt https://www.vmware.com/company/news/updates/replacing-problematic-terminology.html

Copy link

@OrangeDog OrangeDog Oct 6, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

VMware seems to have an opinion

Hopefully that means we don't have to argue about it. There's no need for an SEP if they just make the decision.

many other software companies

Doing it because everyone else has is a pretty good definition of "mindless". Github especially have been widely criticised for it, as the word "master" in that context doesn't even anything to do with being in charge.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

While I agree with the sentiment around master in the context of Salt doesn't evoke comparisons to a very controversial past, there's no doubt a not-insignificant number of people do (regardless of context). Might I suggest the most appropriate alternative be "director?"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To continue the bikeshedding a bit, and maybe explore some history, I'll throw in my $0.02USD.

Salt has never used "master/slave" terminology, AFAIK, but has been "master/minion". The origins of minion seem to come from the French "mignon" -- which meant "a king's favorite". Eventually it came to just mean a hanger-on, a follower.

Master, in the Salt master/minion relationship definitely applies to the 14c use of "one who has the power to control, use, or dispose at will". Obviously the word also has strong ties to slavery, especially American slavery. As @ggiesen rightly states, for many people the word "master" evokes those ties -- so it is worth avoiding.

If the term master is off the table then, what's the most accurate term we can use to replace it? Well, the Moby thesaurus has a multitude of options, but I'll just provide a handful:

  • boss
  • captain
  • chief
  • commander
  • controller
  • director (suggested by @ggiesen)
  • executive
  • instructor
  • maven
  • owner
  • proprietor
  • wizard

The fantasy fan in me wouldn't mind a wizard casting spells, but a change like that definitely requires an alternate reality :trollface: Out of the rest of these, controller seems most accurate to me. Director is a good choice, but at least in my experience a director's instructions can be flexible or ambiguous. In Salt, that's not the case. Instructions sent to the minions must be followed precisely and accurately. The computers must be controlled. Which sounds a bit like the beginning of a dystopian sci-fi movie, TBH 😂

Anyway - those are my thoughts on the color of this bikeshed 🙃

Copy link

@ITJamie ITJamie Dec 9, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Internally we called our setup salt-director. moving away from salt-master needs to happen IMHO

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah I thought "director" might be a good term because of synergies with other VMware products (vCloud Director). Of course, the opposite might be true and there could be concern about confusion

Copy link

@ScriptAutomate ScriptAutomate Dec 10, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really like salt-hero as a potential, too.

Working with heroes makes it sound like we all have superpowers when using salt.

We could also make use of salt-sidekick in relation to other things, maybe kinds of minions or minions in general, depending on how complex the renaming initiative may end up developing into.

inclusive-language.md Outdated Show resolved Hide resolved
@sagetherage
Copy link
Contributor

@justindesilets thank you for submitting a SEP! We are committed to using inclusive language and are willing to see this SEP through even as we have many changes on the horizon. We will keep this open, of course, and look forward to adding what we can to the conversation. Thank you!

@OrangeDog
Copy link

OrangeDog commented Oct 13, 2020

This SEP was discussed at the 2020-10-08 Open Hour:

  • There has been conversation about removing problematic terms such as master, whitelist, and blacklist. This is something Salt has been looking at. VMWare has taken a stance on this, so the decision will be deferred to them.
  • We don't want offensive language in the software and are exploring changing blacklist and whitelist to blocklist and allowlist. The change has to be made in a way that doesn't include bugs.
  • Minion and master were initially chosen because, at the time Tom created Salt, Master wasn't considered offensive.
  • Changing Master cannot be easily changed and could create significant potential issues within the product.
  • The changes will need to follow a deprecation path to minimize risk of introducing bugs and usability issues.

@sagetherage sagetherage changed the title SEP proposal to add inclusive-language SEP 28: proposal to add inclusive-language Oct 13, 2020
@kclinden
Copy link

My 2 cents - The word Master shouldn't be considered offensive when not used with the term Slave. Master/Minion is not the same as Master/Slave.

@OrangeDog
Copy link

This SEP was discussed at the 2020-11-19 Open Hour:

  • Tom describes we will be moving to inclusive language as per internal direction from VMware and this SEP will take some time, but it will take a long time to get started and to endure the longevity of this change SEP 28
  • It will take some time to change master through out the code base and likely we will change the master branch name as well.

@sagetherage
Copy link
Contributor

sagetherage commented Feb 5, 2021

https://www.vmware.com/company/news/updates/replacing-problematic-terminology.html
https://www.vmware.com/company/diversity.html

VMware also have an internal list of specific words and the replacements. I will not list all of them here, but will list those that seem most relevant to the Open Source Salt Project:

abort - stop, cancel, halt prematurely, end prematurely, stop prematurely
master - primary, controller, main, original, reference
kill - stop, halt
disable - deactivate
execute - run

@sagetherage
Copy link
Contributor

Changing the master branch name requires all Ports to Master project board is completed (or each PR is explicitly decided to port to new branch), timelines is set forth and communicated, and a plan to change is well documented, communicated, and visible then executed accordingly.

@sagetherage sagetherage added the Draft Initial Status label Feb 5, 2021
@sagetherage sagetherage self-assigned this Feb 5, 2021
@ScriptAutomate
Copy link

https://www.vmware.com/company/news/updates/replacing-problematic-terminology.html
https://www.vmware.com/company/diversity.html

VMware also have an internal list of specific words and the replacements. I will not list all of them here, but will list those that seem most relevant to the Open Source Salt Project:

abort - stop, cancel, halt prematurely, end prematurely, stop prematurely
master - primary, controller, main, original, reference
kill - stop, halt
disable - deactivate
execute - run

Also related: https://www.cncf.io/announcements/2020/11/18/global-technology-leaders-and-organizations-join-to-eradicate-racial-bias-from-code/

@sagetherage
Copy link
Contributor

We do have rough consensus that inclusive language will be used and changing the master branch to GitHub's proposed main or the like will be done in the future. VMware is also asking us to change salt-master to controller. We agree this will need a formal plan, timeline, and communication. We do not necessarily agree to the exact wording and will seek alternatives where possible. We agree this should be implemented with clear implementation plans.

@sagetherage sagetherage added Final Comment Period Speak now or forever hold your peace. and removed Draft Initial Status labels May 12, 2021
@sagetherage
Copy link
Contributor

I am moving this proposal in the Final Comment period of review and will make updates to the PR over the next 7-10 business days. This is rough consensus to implement and details of implementation will be forth coming, along with timelines, communication plans, etc.

@waynew
Copy link
Contributor

waynew commented Jan 5, 2022

Apologies for the long hiatus, we're working to refocus on getting SEPs through the process.


There has been much discussion on this SEP. The main point of concern has been around Salt's master/minion terminology. All the other non-inclusive terms had resistance. SEP 34 (PR #54) was created to specifically address all of the discussion around the other terminology.

Unless there are objections, we should go ahead and mark this as replaced by SEP 34.

@waynew
Copy link
Contributor

waynew commented Feb 15, 2022

This SEP is appreciated, especially as it provided a starting discussion point. However, we will close this as obsolete, in favor of #54

@waynew waynew closed this Feb 15, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Final Comment Period Speak now or forever hold your peace.
Projects
None yet
Development

Successfully merging this pull request may close these issues.