VMware, Red Hat, Linux Foundation, IBM и Cisco предложили инициативу инклюзивного нейминга
VMware, Red Hat, Linux Foundation, IBM, Cisco, Akamai и Cloud Native Computing Foundation (CNCF) объединили свои усилия в рамках совместной инициативы инклюзивного нейминга (Inclusive Naming). Известные и успешные IT-компании предлагают всем разработчикам в глобальных масштабах заняться изменением кода своих проектов, а также исправить документацию, убрав оттуда оскорбительные, призывающие к насилию и ругательные слова и выражения, заменив их на нейтральные термины, согласно контексту.
В рамках инициативы уже разработан основной список терминов, подлежащих незамедлительной замене на их альтернативные варианты.
Помимо стандартных замен whitelist/blacklist на allowlist/denylist, предлагается заменять master/slave на сontroller/doer, primary/replica или primary/secondary, также допускается замена на leader/follower или parent/child. Отдельный термин master можно заменить на main, original, source или control plane.
Авторы инициативы пояснили в FAQ, что это не еще один шаг к созданию антиутопического мира произведения »1984» Оруэлла, а важные и нужные для всех изменения.
Цель этого проекта — использовать более точные термины, чтобы избежать непреднамеренных коннотаций, которые имеют многие устоявшиеся за десятки лет в программировании слова и фразы. Замена терминов не только устраняет вред, причиняемый этими коннотациями, но также улучшает понимание ситуации, особенно для пользователей, которые читают код и документацию не на своем родной языке, когда эти идиомы могут сбивать с толку.
Вдобавок в рамках инициативы инклюзивного нейминга уже разработан специальный фреймворк. С его помощью компании и разработчики могут выявлять в своем коде и документации неподобающие к употреблению в современном мире термины и словосочетания. При его использовании можно обнаружить в коде и документации «проблемы первого, второго и третьего порядка, ранжированные в порядке потенциального вреда для сообщества».
Проблемы первого порядка — это формулировки и термины, использование которых является вопиющим и явно проблематичным. Проблемы второго порядка — это слова, использование которых также вызывает неприятные ассоциации, но они оказывают на пользователей менее негативное воздействие. Проблемы третьего порядка указывают, что в коде есть термины, которые можно заменить, но сейчас они не наносят очевидного вреда другим пользователям.
Фреймворк инициативы инклюзивного нейминга может определять сексистские, трансфобные, гомофобные термины, а также слова, которые могут быть восприняты, как неуважение к инвалидам. Также с его помощью можно обнаружить милитаристские и призывающие к насилию термины, например marshal и kill, которые лучше не использовать в коде, инструкциях и документации. Разработчики могут обнаружить в своих проектах двусмысленный и неоднозначные термины, которые могут вызвать у пользователей дискомфорт, например, abort, которые лучше также поменять по возможности на более понятные и трактуемые в одном смысле.
10 ноября 2020 года Google объявила об обязательном вводе инклюзивной терминологии во все открытые проекты, в которых принимают участие специалисты компании в рамках программ Google Open Source Programs Office (OSPO). Эта инициатива также распространяется на все открытые проекты, которые используются внутри Google.
Google пояснила, что с октября 2020 года для всех новых проектов обязательно применение инклюзивной терминологии, а с 2021 года специалисты компании будут внедрять ее в существующие открытые проекты OSPO, включая TensorFlow, IoN, WebRTC. Flutter, V8, Magenta, Go, Dart и другие. Исправления в рабочем коде будут вноситься при условии, что они не нарушают его обратную совместимость.
См. также: