Replace slave and/or master/slave language
We appear to have a lot of instances of slave in our source code.
I would like to replace that language with more inclusive terminology.
Before this task can even begin, we should come to some consensus as a group what replacement terminology we should use...
From InclusiveNamging web site (I crossed out options I think are just untennable for us)
- ~~Control plane/control plane node~~ (too long)
- Controller/doer
- Primary/replica
- ~~Primary/secondary~~ (too much potential for confusion with other (classified) topics)
- Leader/follower
- Parent/child
Some others I have thought of...
- Manager/worker
- Supervisor/worker
- Leader/worker
- Boss/worker
- Director/worker
- Commander/crew
- Captain/crew
Next blindly replacing master/slave with whatever replacement terminology we agree might be just fine.
However, there is the possibility that the master/slave metaphor didn't really properly capture key aspects of the algorithm design where that terminlogy is used to begin with. If that is the case, the replacement may be even worse in conveying aspects of the algorithm design and different replacement terminology would be better. However, this requires a much deeper understanding of all the code this change will touch and I don't think we have the bandwidth for that.
Thoughts?
@ARSanderson I think a lof of the code that will change is related to IntegralCurve operator (and friends). Do you have any opinions on replacement terminology?
Initially, my thought leads to thread terminology.
- Manager/worker
- Supervisor/worker
But no strong thoughts.