open-simulation-platform / libcosim

OSP C++ co-simulation library
https://open-simulation-platform.github.io/libcosim
Mozilla Public License 2.0
54 stars 10 forks source link

Replace terminology master-slave #749

Closed StephanieKemna closed 1 month ago

StephanieKemna commented 8 months ago

Hei OSP maintainers,

I joined DNV earlier this year and have been surprised a couple times with folks occasionally still using the master-slave terminology, which I heard is being used on our end because these are the names used in OSP. Since it does not seem of this day and age anymore, I thought I'd create an issue and see if y'all are open to changing it for some future update. Maybe I am more sensitive to this, having lived in the US, but it would really be great for general human decency, correcting the errors of our past, and inclusivity, to change the terms to something less troublesome. I'd be happy to help on this.

Some references: https://www.wired.com/story/tech-confronts-use-labels-master-slave/ https://www.theserverside.com/opinion/Master-slave-terminology-alternatives-you-can-use-right-now https://www.vice.com/en/article/8x7akv/masterslave-terminology-was-removed-from-python-programming-language https://edition.cnn.com/2020/07/06/us/racism-words-phrases-slavery-trnd/index.html You can find a million more articles if you do an internet search on this topic, some even from 20 years ago, e.g. https://edition.cnn.com/2003/TECH/ptech/11/26/master.term.reut/index.html

markaren commented 8 months ago

It's worth noting that FMI 3.0 has all but removed occurrences of the master/slave terminology in the standard text.

Instance, ModelInstance or Component may be suitable replacements.

restenb commented 6 months ago

Well, where are we using master and slave? All I can think of is the git master branches, and the cosim::slave interface. Replacing cosim::slave with e.g. cosim::model_instance should be easy enough, though it will obviously break any downstream applications that are using the old interface name. Still not likely to be a big issue.

Changing the master branch names is just unnecessary busywork. The notion that master branch in Git has to be replaced by e.g. main has always been silly, since there are no corresponding slave branches in Git. The negative assocation isn't there to begin with. We can always start the next repo with main instead.

kyllingstad commented 1 month ago

There are plenty of issues with the names we use in our API, but I am more worried about their lack of precision and descriptiveness than I am about their offensiveness. I opened #767 to have a broader discussion about names and naming conventions (on technical rather than cultural terms).