Si une Pull-Request désigne l'action qui consiste à demander au détenteur du dépôt original de prendre en compte les modifications que vous avez apportées sur votre fork et que vous souhaitez partager, le fait d'accepter votre pull-request a aussi un petit nom qui est le merge. C'est ce qui s'est passé avec une Pull-Request sur le langage de programmation Rust intitulé Avoid "whitelist" (évitez [d'utiliser] « liste blanche »).
Durant les échanges sur le Pull-Request, certains commentaires ont été modérés de par leur nature et l'un des contributeurs a noté que « la réaction à ce PR démontre la raison pour laquelle ce type de changement devrait être fait le plus tôt possible ». Néanmoins, certains développeurs comme Niko Matsakis, qui est également contributeurs, se sont montré en faveur du changement : « je suis favorable à la suppression du terme "whitelist" et au passage à "allowlist" ou à une autre terminologie plus précise (gros +1 à "AssumeUsed" en particulier) ». Il a tout de même demandé si ces changements seraient purement interne et s'il n'allait pas « affecter tous les drapeaux (flags) "visibles par l'utilisateur" ».
Rust rejoint donc le rang de nombreuses entités qui ont décidé de supprimer des termes comme « liste blanche » comme les développeurs de la base de données MySQL, qui ont annoncé leur intention de cesser d'utiliser et de remplacer des termes tels que master, slave, blacklist et whitelist dans le code source et la documentation de la base de données.
« Quiconque utilise la réplication MySQL connaît les termes : ‘master’ et ‘slave’. Les origines de ces mots sont négatives. C’est clair. Chez MySQL, nous avons pris la décision de changer cette terminologie. Déjà, beaucoup d'entre nous ont changé la façon dont nous nous référons à ces rôles dans les billets de blog et les présentations - en utilisant généralement des termes comme ‘primaire’, ‘secondaire’, ‘source’ et ‘réplique’. Nous avons maintenant commencé le processus de modification de la syntaxe MySQL dans notre code source et notre documentation pour faire correspondre tout cela ».
La connotation de la terminologie est également évoquée du côté de Linux par Dan Williams, lors des discussions autour de la proposition qui a été acceptée : « La traite des esclaves africains était un système brutal de misère humaine déployé à l'échelle mondiale. Les décisions relatives au choix des mots dans un projet de logiciel moderne ne sauraient effacer ce malheureux héritage, mais peuvent aller dans le sens de maximiser la disponibilité et l'efficacité de la communauté mondiale des développeurs pour participer au processus de développement du noyau Linux ».
Les ingénieurs de Twitter prévoient eux aussi « d’éviter le langage non inclusif » en supprimant un certain nombre de termes, notamment whitelist, blacklist, master/slave, grandfathered, divers pronoms de genre (comme « les gars » ou « il / lui / son ») mais aussi des termes comme man-hour (qui est la quantité de travail effectuée par le travailleur moyen en une heure. Il est utilisé pour estimer la quantité totale de travail ininterrompu nécessaire pour effectuer une tâche).
D'autres entreprises et projets open source qui ont récemment promis d'apporter des changements similaires et de nettoyer leur jargon technologique incluent GitHub, Microsoft, LinkedIn, Ansible, Splunk, Android, Go, PHPUnit, Curl, OpenZFS, OpenSSL, JP Morgan et autres.
L'objectif principal de ces efforts est de rendre les produits technologiques et les environnements informatiques plus accueillants pour les personnes de couleur. Certains membres de la communauté technologique ont critiqué le mouvement comme étant un signal de vertu superficielle plutôt que comme quelque chose qui aide les personnes de couleur et le racisme systémique.
Source : Pull-Request Rust
Et vous ?
Que pensez-vous de cette décision ?
Au point où nous en sommes, l'industrie gagnerait-elle à trouver un standard afin d'éviter de se retrouver avec des terminologies différentes pour désigner la même chose ? Dans quelle mesure ?
Voir aussi :
Le langage Rust est la meilleure chance offerte à l'industrie informatique pour la mise sur pied d'applications système sécurisées, d'après Microsoft
Enquête Stack Overflow 2020 : Rust demeure le langage le plus aimé par les développeurs professionnels, TypeScript est plus apprécié que Python
Microsoft annonce Rust/WinRT, une projection du langage Rust pour les API Windows Runtime implémentée comme une bibliothèque basée sur des fichiers d'en-tête
Apple recherche des ingénieurs logiciels afin de convertir une base de code établie en C vers Rust
« Rust est le futur de la programmation système et C le nouvel assembleur », d'après un ingénieur d'Intel qui explique pourquoi il est pertinent de passer à Rust
Le langage de programmation Rust va désormais utiliser la terminologie "Allowlist" au lieu de "Whitelist"
Préférant des terminologies « plus inclusives et précises »
Le langage de programmation Rust va désormais utiliser la terminologie "Allowlist" au lieu de "Whitelist"
Préférant des terminologies « plus inclusives et précises »
Le , par Stéphane le calme
Une erreur dans cette actualité ? Signalez-nous-la !