Dois-je signaler les erreurs d’orthographe / grammaire dans le code d’une personne? [fermé]


106

En examinant le code d'un collègue, je suis tombé sur des erreurs d'orthographe dans les noms de fonctions, ainsi que des erreurs grammaticales telles que 'doesUserHasPermission ()' au lieu de 'doesUserHavePermission ()' dans les noms de fonctions et de variables.

Devrais-je les lui signaler ou suis-je trop pédant en les remarquant?


3
Je pourrais faire attention à ce que la personne veuille réellement de l'aide avec son anglais, si ce n'est pas sa langue seconde. Certaines personnes se contentent de savoir qu’elles ne sont pas incapables d’exprimer une pensée structurée, qu’elles ne sont tout simplement pas capables de parler correctement anglais. Si l'anglais est leur langue maternelle, alors oui, je pense que la mauvaise grammaire est un problème.
Rei Miyasaka Le

31
Oui. C'est vraiment frustrant quand vous avez une API mal orthographiée. Il se répand comme une traînée de poudre. Il est donc préférable de le corriger dès que possible.

9
@Rei: que l'anglais soit leur langue maternelle ou non devrait être sans importance dans un environnement professionnel; si ce n'est pas trop dommage pour eux mais ce n'est pas une excuse, ils devraient être tenus aux mêmes normes.
Thomas Bonini

4
@Rei, de nombreux travaux de programmation que je vois annoncés exigent la maîtrise des langues autochtones pour cette raison même. Etre capable de discuter des exigences, de la conception, des spécifications et de la construction est très important pour le logiciel dans son ensemble.
Stephen Furlani

Réponses:


205

Un code avec des fautes d'orthographe et de grammaire est impossible à maintenir .

  • Les gens ne se souviendront pas de la mauvaise grammaire, alors ils essaieront d'appeler la fonction comme elle aurait dû être écrite, et c'est ainsi que les bugs se produisent.

  • Vous ne pouvez pas trouver quelque chose dans le code si vous ne savez pas comment il s'écrit.

  • La plupart des gens qui font de la grammaire ou de l'orthographe le font de manière incohérente, ils introduiront donc de nombreux bogues dont le nom ne correspond pas. Ceci est particulièrement problématique dans les langues qui n'exigent pas que les variables soient explicitement déclarées avant leur utilisation, car vous pouvez introduire une nouvelle orthographe et votre code ne s'arrêtera pas de vous dire que vous avez foiré.

La correction de ces problèmes n’est ni pédante ni nécessaire en premier lieu par les opinions des autres sur l’intelligence, l’alphabétisation, etc. (bien que ce soit un effet secondaire important); il s'agit d'écrire un code de qualité, maintenable .


7
+1 Parfois, il est important de ménager les sentiments de quelqu'un, mais lorsqu'il s'agit d'une révision de code ... si vous l'attrapez, il est juste de commenter. Mon entreprise utilise un creuset pour les révisions de code, ce qui permet à toutes les révisions de voir qu’elle a été interceptée et permet au relecteur de la marquer non comme un défaut, mais comme un style.
opello

15
+1 - Une fois que les erreurs d'orthographe et de grammaire se retrouvent dans une API, il est presque impossible de les extraire à nouveau. J'ai passé presque trois ans à écrire "Avtivity" au lieu de "Activity", et c'est toujours physiquement douloureux de le faire.
John Bode

7
Pour le meilleur ou pour le pire, une bonne pratique de programmation se résume souvent à quelque chose de très similaire au pédantisme. De plus, j'aimerais trouver la personne qui a mal orthographié Referrerla spécification HTTP d'origine et lui donner un coup de pied à la cheville. Bien sûr, c'était probablement Berners-Lee et je me sentirais coupable par la suite ...
Malvolio

2
@Stephan Furlani: c'est ce que j'essayais de dire. cela faisait partie d'une API que nous ne possédions pas. Nous ne pouvions pas régler le problème de notre côté, et le processus pour le faire était assez laid et long pour que personne ne veuille le négliger.
John Bode

2
@ John Bode, je pense que vous auriez dû créer une fonction wrapper :) C # a une astuce intéressante pour ça (j'ai oublié son nom cependant).
Job

38

Oui définitivement. Il est plus facile de retenir le nom s'il est correct grammaticalement. Essayer de se rappeler le nom et les fautes de grammaire est une autre chose.


29

Ne les signalez pas comme des défauts dans une révision de code formelle. Au lieu de cela, annotez une liste et parlez-en PRIVÉ à leur sujet. Soyez aussi diplomate que possible, juste "Hé, quelque chose que j'ai remarqué, et j'ai rencontré des gens qui VRAIMENT méprisent ce genre de chose, ils pensent que cela donne au programmeur une apparence négligente et négligée."

Si c'est le code qu'un client va voir, il DOIT absolument être corrigé. Qu'on le veuille ou non, cela reflète la réputation de votre entreprise.

Pour l'exemple que vous avez donné, je suppose que cela a commencé avec UserHasPermission, et quelqu'un d'autre lui a dit que la pratique locale était doUserBlahBlah () plutôt que UserBlahBlah (), et il a simplement ignoré le changement de grammaire.


12
Dire que c'est à propos des perceptions des autres, cela semble insignifiant. Dites la vérité - ils rendent le code plus difficile à maintenir et à développer.
HedgeMage

5
@ HedgeMage: Mon expérience personnelle avec des choses comme celle-ci est que certaines personnes sont extrêmement sensibles aux choses qu'elles perçoivent comme une critique d'eux-mêmes. Pire, il peut y avoir de très mauvaises répercussions politiques si la personne que vous semblez critiquer est appréciée de la direction. (Oui, j'ai les cicatrices pour le prouver.) ET j'ai vu des organisations qui ne se souciaient littéralement de ce genre de chose, tant que le code fonctionnait, pour une définition du mot "travaillé". Mon sentiment personnel est que vous avez une meilleure chance de le réparer, avec un minimum de maux de tête, si vous y allez doucement.
John R. Strohm

12
@John Je peux certainement voir qu'une mauvaise situation de travail peut forcer quelqu'un à avoir à marcher sur des œufs comme ça - mais il est une mauvaise situation , si c'est un problème en premier lieu. Quelqu'un avec un ego aussi fragile (et une culture d'entreprise qui permet leurs manigances) n'est pas bon pour les affaires pour commencer.
HedgeMage

6
La plupart des programmeurs matures acceptent bien les critiques. Après tout, c’est à quoi servent les examens par les pairs (et nous révisons tous le code, n’est-ce pas?) Il n’est pas mal de critiquer l’orthographe et la grammaire des commentaires, les noms de fonction, etc. Cela reflète TOUT non seulement l’auteur, mais aussi sur toute leur organisation.
Rapid_now

6
Je suis d'accord avec HedgeMage ici, si vous ne pouvez pas signaler des erreurs de ce type lors d'une révision de code (en particulier lorsqu'elles sont objectivement fausses, comme dans l'exemple de la question), vous avez de plus gros problèmes ...
Dean Harding

10

Changez-le vous-même.

J'espère que vous êtes dans un environnement où la "propriété" du code n'est pas un problème. Si vous avez accès au projet dans le contrôle de code source, allez simplement le réparer vous-même. Si vous voyez un collègue en particulier commettre le même type de fautes de grammaire ou d'orthographe de manière cohérente, vous voudrez peut-être le souligner, mais cela dépendra de votre relation, du fait qu'il soit ou non anglophone et de sa réceptivité générale. Mais que vous décidiez de le faire ou non, allez-y tranquillement pour remédier à la situation. Je le fais tout le temps, si je vois une faute de frappe, en particulier dans une signature de méthode ou une propriété publique, je la répare simplement. Parfois, je ne peux même pas résister à la tentation de corriger une faute de frappe dans un commentaire, mais ce n'est que moi :)


5
Et puis vous constatez que vous venez de casser le code d'un troisième type. Vous devez corriger ce genre de problème dès que possible, pas seulement lorsque vous pourrez y accéder après que le premier mec ait tout vérifié.
David Thornley Le

Si vous craignez qu'un correctif pour un morceau de code ne casse le code de "quelqu'un d'autre" et que vous ne puissiez pas le dire, alors vous avez de plus gros problèmes que l'orthographe.
Cornel Masson

@CornelMasson: Pas vraiment. C'est un élément clé de la conception d'une API.
Courses de légèreté en orbite

6

Je suis un développeur dont la langue maternelle n'est ni l'anglais, ni le néerlandais, et je ne voudrais absolument pas que quelqu'un me signale une faute de grammaire ou d'orthographe. De cette façon, je peux constamment améliorer mon anglais. Et il n’est certainement pas difficile de corriger toutes les erreurs de votre code source. Un simple script Perl peut facilement être écrit pour parcourir tous les fichiers d'un dossier. Peut-être que même cela peut être fait avec sed? Je ne sais pas.

Donc, je signalerais certainement des fautes de grammaire ou d’orthographe dans le code de quelqu'un d’autre, mais seulement si je suis absolument certain que ce que je dis est correct.


6

Je suppose que cela vaut la peine de mentionner ici que l'en-tête de référent HTTP dans le protocole HTTP était mal orthographié en tant que "référant" (et nous devons vivre avec cela / nous avons appris à vivre avec.) :)


10
Et nous ne voulons plus jamais revoir ce genre de chose.
David Thornley

4

Je suis d'accord avec d'autres réponses en disant que le code avec des fautes de grammaire est intenable.

Je veux aussi ajouter quelques choses:

  • Le code est souvent écrit par des personnes qui ne parlent pas très bien l'anglais et / ou l'anglais n'est pas leur langue maternelle. Si vous examinez une erreur de grammaire dans un code, cela ne signifie pas que votre collègue a commis cette erreur. Peut-être que c'était juste un copier-coller d'un site Web.
  • Si l'anglais n'est pas la langue maternelle de votre collègue, il peut s'avérer une bonne ou une très mauvaise idée de lui parler de cette erreur. Étant originaire de France, j'apprécie toujours les remarques sur les erreurs que je fais en anglais, car c'est le seul moyen de les éviter à l'avenir. Par contre, je connais plusieurs personnes qui se sentent vraiment blessées si vous leur parlez des erreurs de grammaire qu'elles font.
  • Comme John R. Strohm l'a dit, ne le faites jamais publiquement. La plupart des gens seront vraiment ennuyés par cela.

11
"Peut-être que c'était juste un copier-coller d'un site web." Ensuite, la personne qui copie devrait avoir identifié le problème et résolu le problème. Le copier intégralement et laisser des erreurs est aussi mauvais ou pire que de l'écrire eux-mêmes et de créer les erreurs. "Je connais plusieurs personnes qui se sentent vraiment blessées si vous leur parlez des erreurs de grammaire qu'elles commettent." En affaires, nous devrions tous nous comporter comme des adultes et des collègues qui s’unissent pour atteindre un objectif commun. La personne qui soulève la question doit faire preuve de tact et la personne qui reçoit la critique doit l'accepter et en sortir.
Le Tin Man

3
Je conviens à 100% qu'en tant que professionnels, nous devrions nous comporter comme des adultes et ne pas prendre cela personnellement. Mais il faut absolument le signaler et le corriger. Oui, le tact devrait être utilisé, et il devrait être approché au besoin, en fonction de l'individu. Mais si vous êtes dans un environnement où il est recommandé d'éviter le problème, il est peut-être temps de partir. Cela indiquerait un environnement empoisonné.
Mark Freedman

Toute faute d'orthographe peut être vérifiée par une simple recherche sur Google
JoelFan

2

Je recommanderais d'utiliser un IDE avec un correcteur orthographique intégré. IntelliJ Idea fait un travail formidable pour les programmes Java. Il saisit de nombreuses fautes de frappe embarrassantes, non seulement dans les noms de fonctions, mais également dans les messages d'exception que l'utilisateur peut voir. Un programme qui produit des messages pleins de fautes de frappe n’inspire pas beaucoup de confiance.


0

Je le fais seulement si

  • cela affecte l'utilisation du programme
  • cela affecte la précision du programme
  • Je sais explicitement que l'auteur veut être corrigé.

En passant, si les noms de vos fonctions sont suffisamment longs pour avoir une grammaire, ils sont probablement trop longs. Dans l'exemple donné, j'appellerais la fonction userHasPermission et déplacerais la "grammaire" dans votre code, à peu près comme ceci:

if userHasPermission() ...

1
Il existe toujours le même potentiel d'erreurs de grammaire, car dans ce cas, ce userHavePermission()serait une erreur.
Dean Harding

Mais c'est exactement le point !! userHasPermission()implique que cela retourne une valeur booléenne à cause de la grammaire ~ OU ~, cela pourrait signifier qu'il définit l'autorisation de l'utilisateur. (L'agent a le pont :: l'utilisateur a la permission). C'est encore vague.
Stephen Furlani

Bien que je convienne que les exemples de noms dans le Q sont inutilement longs, je mets en garde contre la généralisation "trop ​​longue". Dans ce cas, le concept peut être exprimé en moins de mots, il devrait donc être plus court. Cependant, qu'est-ce que "trop ​​long"? Y a-t-il une limite de caractères ou de mots?
LS

0

Cela arrive aussi BEAUCOUP dans mon projet (peuplé par des personnes parlant hébreu, russe ou arabe), mais même à un niveau supérieur - je vois souvent du code qui utilise une terminologie obscure qui se trouve être ce que le dictionnaire a produit comme traduction ce à quoi l'auteur pensait et cela n'a rien à voir avec ce qu'ils voulaient dire ...

Personnellement, quand cela arrive si souvent et par tant de membres de l'équipe qui auraient pu écrire le code avant même que je rejoigne le projet, j'ai tendance à l'ignorer, parce que ce n'est pas grave.

Cependant, si je commets des travaux dans le même fichier que du code ou des commentaires qui ont été écrits il y a longtemps et qu'ils contiennent des fautes de frappe, je les corrigerai simplement parce que ce n'est pas trop de travail.


0

La règle d'or s'applique

Faites aux autres ce que vous voudriez qu'ils vous fassent.

Je veux que les autres sachent ce genre de chose, alors j’aide les autres. Être aimable et solidaire peut vous être très utile.


2
-1 pour le vague - je n'ai aucune idée de ce que vous conseillez à l'interrogateur de faire.
HedgeMage

@HedgeMage, je conseille à l'OP d'appliquer fr.wikipedia.org/wiki/The_Golden_Rule
kevpie

2
Je le connais bien. En plus d'être manifestement stupide (il n'y a aucune raison de croire que la façon dont Alice veut être traitée est la façon dont Bob veut être traité), cela détourne de la véritable question: créer un bon code. Bien sûr, je ne vais pas être un imbécile à ce sujet, mais je ne me base pas sur le fait de soulever ou non une question technique sur le fait que la personne qui écrit un code incorrect le souhaite ou non.
HedgeMage

Je pense que la plainte de @ HedgeMage peut être illustrée de la manière suivante: je souhaite que le code soit de la plus haute qualité autorisée par le temps et les ressources disponibles, car je me soucie du projet et de mes travaux futurs. Bob veut éviter les critiques pour les erreurs corrigibles, car il ne les accepte pas bien. Nous allons mettre en œuvre la "règle d'or" tout à fait différemment.
paupière

Le conseil signifie que le PO détermine comment il voudrait être traité. Ne pas traiter Bob comment Bob voudrait être traité. J'encourageais le PO de corriger Bob, qui voudrait être corrigé pour les mêmes erreurs, en particulier dans le contexte partagé par le PO.
Kevpie

0

Comme pour beaucoup d'autres bonnes pratiques de programmation, le seul moyen objectif, apolitique et efficace de mettre en œuvre une politique sur l'orthographe dans les programmes est de l'automatiser dans le cadre du processus de pré-validation. L'automatisation vous épargnera d'énormes quantités de griefs même si vous devez écrire votre propre outil à cet effet.


3
La plupart des erreurs les plus importantes ne peuvent pas être détectées automatiquement. Cela s'applique aussi à l'orthographe et à la grammaire. Vous pouvez effectuer une vérification automatique, mais les résultats doivent être équivalents à des avertissements. En effet, les correcteurs orthographiques produisent à la fois des faux positifs (par exemple, des noms propres) et des faux négatifs (deux également). Une intervention manuelle est donc nécessaire.
Matthew Flaschen

Ce type d'automatisation ne résout pas ces problèmes, il ne fait que rattraper certaines des erreurs commises par les utilisateurs.
surentendu

Correction automatique??? Il existe de nombreux exemples de correction automatique "échoue" sur Internet. Ce n'est vraiment pas bon.
Florian F

0

C'est une erreur mineure dans le code, mais c'est une erreur. Traitez-le comme n'importe quelle autre erreur que vous trouvez. Ma politique est toujours de supposer que mes collègues sont compétents et de les traiter de cette manière jusqu'à preuve du contraire.

Si c'est une simple erreur, je pourrais peut-être simplement corriger le problème et l'enregistrer. Si c'est un schéma habituel, je pourrais demander à ce collègue de passer en revue ces correctifs. Dites-leur que vous pensez qu'ils sont un bon codeur, mais que c'est quelque chose qu'il serait bon d'améliorer. Je ne pense pas que je ferais jamais un gros problème avec quelque chose comme ça cependant.

Tant que vous ne le traitez pas comme un gros problème, il devrait être facile de mettre ce collègue dans une position où il peut s’améliorer sans mettre son ego en danger.


-1

userPermission () peut-être? -

Le dernier problème que j'ai rencontré concernait un problème général: les résultats de la recherche n'étaient pas mis en évidence car le nom de la classe était orthographié hightlight. Bug très obscur à repérer.


Voter sans commenter est une abomination.
Mplungjan

-1

Indiquez-le bien, mais ne perdez pas votre temps à vérifier les fautes d'orthographe. Utilisez un outil pour automatiser cela sur votre CI. Sur .net, fxCop peut le faire ...


-2

Tout dépend en grande partie de la nature des erreurs, de leur fréquence et de leur gravité, et de la question de savoir s’il s’agit d’une erreur réelle ou de la façon dont vous la formulez.

Personnellement, je ne peux pas supporter ça quand un idiot traîne une révision de code en 5 minutes en une demi-heure parce qu'il veut que tout soit renommé comme il le ferait et que tous les commentaires soient reformulés juste parce qu'il aime y mettre la main. il n'est pas nécessaire de remplacer "Chargement des objets de données" par "Le composant chargeur d'objet de données va maintenant charger les objets de données appropriés à partir du composant de stockage d'objet de données".

/ rant :)


2
Insister sur les choses à ma façon est une chose. Insister pour que les choses utilisent l'orthographe et la grammaire sont une autre chose.
David Thornley

Je ne suis pas tout à fait sûr de savoir pourquoi ma réponse mérite un vote négatif, mais bon sang… De plus, où est passée ma réponse au commentaire de David? Quoi qu'il en soit, une grammaire anglaise correcte à 100% n'est pas toujours souhaitable dans le développement. Dans l'exemple ci-dessus, "Chargement des objets de données" n'est pas une phrase complète, mais constitue la formulation préférable des deux: concise, facile à localiser et ne prend pas beaucoup de place.
JohnL
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.