[Когда заняться нечем]Проект Python для соблюдения политкорректности избавляется от терминов "master" и "slave

отметили
33
человека
в архиве

Гвидо ван Россум (Guido van Rossum) поставил точку в споре, возникшем среди разработчиков языка Python из-за изменений, предложенных Виктором Штиннером (Victor Stinner), работающим в Red Hat и входящим с число ключевых разработчиков Python. Виктор предложил вычистить код Python от упоминания слов «master» и «slave», так как их использование является неполиткорректным и ассоциируется с рабством и неравноправием. Несколько лет назад некоторые открытые проекты уже затронула череда подобных переименований, например, в Drupal термины «master» и «slave» были заменены на «primary» и «replica», а в Django и CouchDB на «leader» и «follower».

Предложение вызвало бурную дискуссию, которая привела к расколу сообщества на сторонников и противников переименования. Противники мотивировали свою позицию тем, что не следует смешивать политику и программирование, «master» и «slave» лишь термины, значение которых уже устоялось в компьютерной технике и не имеет ничего общего с одобрением рабства. Кроме того, замена устоявшихся терминов неизбежно вызовет путаницу среди разработчиков и может привести к нарушению обратной совместимости. Также упоминается, что одно дело когда какие-то выражения являются оскорбительными или непонятными, но в случае с «master» и «slave» имеет место лишь неопределенно сформированные представления о политической корректности, мешающие использованию простого английского языка.

Несмотря на намерение уйти с поста великодушного пожизненного диктатора, в спор пришлось вмешаться Гвидо ван Россуму и принять конечное решение. Из пяти коммитов, предложенных при обсуждении переименования «master» и «slave» на parent/main/server и child/worker, в кодовую базу принято четыре. Изменения отразятся в релизе Python 3.8. Одно изменение отклонено, так как затрагивает устоявшуюся терминологию UNIX ptys, используемую другими проектами.

Среди принятых изменений:

«master process» заменён на «parent process»;«master option mappings» на «main option mappings»;«master pattern object» на «main pattern object»;В модуле ssl слово «master» заменено на «server»;В pty.spawn() параметр master_read заменён на parent_read;Метод pty.slave_open() переименован в pty.child_open(), но вызов pty.slave_open пока оставлен для обратной совместимости;В os.openpty() и os.forkpty() параметры master_fd/slave_fd переименованы в parent_fd/child_fd;Внутренние переменные master_fd, slave_fd и slave_name переименованы в parent_fd, child_fd и child_name;Опция "--slaveargs" заменена на "--worker-args";Функция run_tests_slave() переименована в run_tests_worker().

Дополнение: Сообщество разработчиков СУБД Redis также обсуждает предложение по избавлению от терминов «master» и «slave». При этом, предлагаются более кардинальные изменения, такие как переименование операции «SLAVEOF» в «REPLICAOF» и настройки «slaveof» в «replicaof» (для сохранения совместимости поддержка «SLAVEOF» будет сохранена в виде опции). Поддержка признака «slave» в командах INFO и ROLE пока будет оставлена, так как связана с большими нарушениями совместимости. Но в будущем планируется предложить альтернативу INFO и заменить в ROLE «slave» на «replica».

Обсуждение поднял Сальвадор Санфилиппо (Salvatore Sanfilippo), создатель СУБД Redis, который не считает, что переименование оправданно, но вынужден реагировать из-за давления со стороны политактивистов, призывающих не использовать Redis из-за применения дискриминационной терминологии.

Добавил X86 X86 13 Сентября 2018
проблема (1)
Комментарии участников:
Юлька с н2
+1
Юлька с н2, 13 Сентября 2018 , url

Тут вроде не столько политкорректность, сколько нежелательная связь с гейским сленгом «master» и «slave» -  актив и пассив. 

Будь я разработчиком языка программирования, наверное, тоже заменила это. Во избежание ненужных ассоциаций. Несмотря на то, что педики свои термины распиарили позже, чем создавался язык.

X86
+3
X86, 13 Сентября 2018 , url

Так можно дойти до того,  что отказаться от слов типа motherboard и т.д.

SitterOk
0
SitterOk, 14 Сентября 2018 , url

Дык, давно исползуется альтернатива: MB = Mainboard… Хотя ХЗ… что тут чему альтернатива ;))

Don Chipsone
+2
Don Chipsone, 13 Сентября 2018 , url

Это важно! И как только раньше с этими master/slave программеры работали, ума не приложу.



Войдите или станьте участником, чтобы комментировать