comment savoir si les fautes d'orthographe dans le code source sont un problème grave ou non? [fermé]

15

Je trouve une quantité très troublante d'erreurs d'orthographe que je vois tous les jours dans notre base de code, à partir de laquelle je vais reproduire un exemple très court mais représentatif:

ArgumnetCount
Timeount
Gor message from queue 

Malheureusement, cela n'est en aucun cas limité à une seule personne. Il y a beaucoup de anglophones non natifs dans notre équipe qui contribuent à cela, mais je peux également identifier certaines des pires fautes d'orthographe de notre architecte logiciel américain, né et élevé.

Ceux-ci se retrouvent également dans les e-mails, les présentations, les documents, quelle que soit l'information écrite que nous avons dans une société de développement de logiciels.

J'aimerais savoir si c'est un problème grave ou non?

J'ai toujours rencontré ces fautes d'orthographe avec inquiétude, mais ma propre politique officielle et personnelle est que nous ne sommes pas payés pour épeler les choses correctement, nous sommes payés pour faire avancer les choses, donc à l'intérieur de l'entreprise, je n'ai jamais vraiment critiqué personne à ce sujet. Mais j'ai soulevé ce problème avec certains de mes amis proches et je ne l'ai jamais réglé pour de bon.

Andrei G
la source
4
A voté pour fermer hors sujet. Ce n'est pas lié au développement, mais à tout domaine où les gens écrivent, des commentaires YouTube au contenu des sites Web. Certaines personnes ne se soucient pas de leur écriture et de leur vérification orthographique. Ils sont heureux de créer leur site Web de commerce électronique à grande échelle qui a trois erreurs dans son propre titre, écrit en gros sur la page d'accueil. Et malheureusement, la plupart des utilisateurs de ce site de commerce électronique ne s'en soucient pas non plus.
Arseni Mourzenko
5
@MainMa: l'écriture dans un langage de programmation est suffisamment différente de l'écriture dans un langage humain. Lorsque vous écrivez pour des commentaires YouTube, il est parfaitement évident que vous écrivez pour des lecteurs humains, mais avec le code source, une attitude courante est que tant qu'il compile et fonctionne, tout va bien.
tdammers
2
@tdammers: lorsque vous écrivez du code source, ou une question sur Stack Exchange, ou un livre, ou un commentaire YouTube, ou un contenu de la page d'accueil de votre site de commerce électronique, dans tous les cas, vous le faites pour des gens qui liraient il. La programmation n'est pas différente, et votre compilateur ne se soucie pas si vous nommez votre variable ArgumentCountou ArgumnetCount.
Arseni Mourzenko
16
Voter pour rouvrir. Les commentaires dans le code sont très différents des commentaires sur d'autres supports et doivent transmettre des informations complexes de manière succincte. Je ne suis pas d'accord pour dire qu'ils sont tous les mêmes
Tom Squires

Réponses:

19

Les fautes d'orthographe peuvent signifier l'une des deux choses suivantes:

  • La personne qui les fait ne maîtrise pas l'anglais et ne prend pas le temps de compenser en utilisant des outils appropriés (dictionnaires, vérificateurs d'orthographe, etc.)
  • La personne qui les fabrique maîtrise l'anglais, mais ne se soucie pas du tout de l'orthographe.

L'un ou l'autre est un signe assez mauvais, car cela signifie que la personne en question n'a pas la lisibilité, la maintenabilité et l'élégance en haut de sa liste de priorités; si la cause est un manque de maîtrise de la langue anglaise, cela signifie également que la personne n'a pas deux compétences essentielles - la communication écrite en anglais et un sentiment général pour les langues (si vous ne pouvez pas exprimer clairement vos pensées en anglais, il est probable que vous puissiez '' t bien les exprimer dans un langage de programmation non plus).

Mais pourquoi exactement les fautes d'orthographe sont-elles mauvaises, toutes choses étant égales par ailleurs? Après tout, le code fonctionne et le compilateur ne se soucie pas du tout de la façon dont vous nommez vos identificateurs, tant qu'ils ne violent pas les règles de syntaxe. La raison en est que nous écrivons du code non seulement pour les ordinateurs, mais aussi et surtout pour les humains. Si ce n'était pas le cas, nous utiliserions toujours l'assemblage. Le code source est écrit une fois, mais lu des centaines de fois au cours de son cycle de vie. Les fautes d'orthographe rendent la lecture et la compréhension du code source plus difficiles - les erreurs légères font trébucher le lecteur pendant une fraction de seconde, beaucoup d'entre elles peuvent entraîner des retards considérables; de très mauvaises erreurs peuvent rendre le code source complètement illisible. Il y a un autre problème, c'est que la plupart du code que vous écrivez sera référencé par un autre code, et ce code est plus souvent qu'autrement écrit par quelqu'un d'autre. Si vous mal orthographiez vos identifiants, quelqu'un d'autre devra se rappeler (ou chercher) non seulement quel est le nom, mais aussi comment exactement il est mal orthographié. Cela prend du temps et rompt le flux de programmation; et comme la plupart des codes sont touchés plus d'une fois lors de la maintenance, chaque erreur d'orthographe provoque de nombreuses interruptions.

Considérez comment le temps du développeur est égal au salaire et aux dépenses. après tout, interrompre le débit et y revenir peut prendre jusqu'à 15 minutes. De cette façon, une grave erreur d'orthographe peut facilement coûter quelques centaines de dollars en développement et en maintenance (mais ce sont des coûts indirects, non directement visibles dans les estimations et les évaluations, ils sont donc souvent ignorés par la direction).

tdammers
la source
5
J'ajouterais que les fautes d'orthographe peuvent causer des problèmes difficiles à déboguer où thisVaraibleet se thisVariableressemblent presque et sont «techniquement» corrects.
Spencer Rathbun
6
+1, mais la déclaration: "si vous ne pouvez pas exprimer clairement vos pensées en anglais, il est probable que vous ne puissiez pas non plus les exprimer correctement dans un langage de programmation" est tout à fait absurde!
Martin Ba
2
@Martin: Je n'ai pas encore trouvé de programmeur de classe mondiale avec un style d'écriture atroce. Tous les meilleurs programmeurs que je connaisse sont également capables d'écrire un anglais concis et clair; certains d'entre eux (Knuth, Dijkstra) sont même quelque peu célèbres pour leur style d'écriture.
tdammers
5
@tdammers: S'ils sont en anglais langue maternelle, je suis d' accord. Mais si vous avez une langue maternelle différente, vous pouvez avoir une compréhension assez horrible de l' anglais tout en étant un bon programmeur. C'est ce que je voulais dire avec un non-sens. Je suis d'accord que les bons programmeurs sont également capables d'écrire bien - dans la langue naturelle dans laquelle ils parlent couramment (un peu d'anglais aide évidemment à trouver votre chemin sur le net, mais vous n'avez en aucun cas besoin d'être fluide ou un bon écrivain ou avoir une compréhension de la grammaire ou du style en anglais :-)
Martin Ba
5
Notez que Dijkstra n'est pas un locuteur natif ...
tdammers
9

En fait, je doute que "Timeount" soit une question de ne pas être natif. Les gens font des tonnes de fautes de frappe dans leur première langue. Je ne qualifierais pas ces exemples particuliers de "Engrish".

Cela dit, je comprends qu'il ne s'agit pas de ces exemples particuliers. Je suis d'accord avec vous en principe. J'ai rencontré des problèmes réels causés par ce type de choses ("s'il n'y a pas de colonne nommée pièces jointes, créez des pièces jointes").

Être programmeur, c'est être précis et prudent avec les fautes de frappe, les virgules, les points-virgules, les points, ce qui est la plupart du temps indépendant du langage humain.

Konrad Morawski
la source
9

La première fois que vous perdez du temps à rechercher la Timeoutvariable juste pour découvrir qu'elle a été écrite Timeount, vous saurez une autre raison pour laquelle l'orthographe est importante.

Eric King
la source
7

Si ce problème vous dérange, la plupart des IDE autorisent désormais la vérification orthographique dans les commentaires afin que les dyslexiques puissent au moins avoir l'air de savoir comment épeler. Ça m'aide bien sûr! C'est donc une "solution" triviale d'avoir une bonne orthographe.

Sardathrion - contre les abus SE
la source
2
Si vous votez contre, pourriez-vous prendre le temps de dire pourquoi afin que je puisse améliorer ma réponse?
Sardathrion - contre les abus SE
6
Je n'ai pas déçu, mais vous ne répondez pas vraiment à sa question. Vous donnez des conseils sur la façon d'éviter les fautes d'orthographe. C'est un commentaire parfaitement valable, mais pas ce qu'OP a demandé.
Konrad Morawski
6

Les fautes d'orthographe dans les noms et méthodes des classes publiques ne sont tout simplement pas professionnelles. Ils coûtent du temps et de l'argent. Ils sont pénibles dans les langages typés statiquement comme Java, où l'EDI peut produire un menu de noms de classe et de méthode. Ils sont intolérables dans les langues typées dynamiquement.

Pire encore, les fautes d'orthographe dans les noms de table de base de données et les noms de colonne.

D'après mon expérience, l'orthographe correcte n'est que légèrement liée à la compétence en anglais du codeur. J'ai vu des anglophones natifs produire du code avec une orthographe et des sauts de mots essentiellement aléatoires, et j'ai vu des anglophones non natifs qui veillent à produire des orthographes correctes. Mais l'orthographe correcte est fortement liée à la qualité globale du code. Les programmeurs compétents, peu importe leur maîtrise de l'anglais, se soucient de la qualité de leur travail et font attention à la dénomination.

Kevin Cline
la source
5

Dans le code source, les présentations internes et les documents, etc., les petites fautes de frappe qui ne modifient pas le sens ou n'entravent pas la compréhension ne sont pas un problème. Fixez-les simplement dans la source si vous les trouvez irritants.

De plus, en particulier dans les commentaires, la substance est plus importante que la forme. Pas d'approfondissement ici:

String s = "Wikipedia"; / * Attribue la valeur "Wikipedia" à la variable s. * /

Le fait est que certaines personnes sont naturellement des écrivains plus prudents que d'autres (que cela soit dû à l'éducation, à l'attitude, à l'intelligence ou autre, n'est pas pertinent). Combien dépenser des efforts pour corriger cela est une question de valeur commerciale: obtenez-vous plus de valeur en réparant les fautes de frappe, que vous dépensez en les réparant? En cas de problèmes internes, la réponse est généralement non. Vos clients ne vont pas se plaindre de fautes de frappe dans vos commentaires de code source (sauf si vous faites de l'open source).

Les fautes de frappe intentionnelles et les commentaires inappropriés ne sont pas professionnels et doivent être évités, mais l'accent doit être mis sur les choses importantes (c'est-à-dire générer de la valeur commerciale, si vous travaillez pour les entreprises).

Les documents publiquement visibles doivent bien sûr être soigneusement relus.

Joonas Pulakka
la source
2
Veuillez me dire que vous avez délibérément tapé "porblem". :)
pdr
2
Certes, je l'ai fait. Si vous le trouvez irritant, vous pouvez le réparer;)
Joonas Pulakka
2
Oh non. Je l'ai trouvé scandaleusement amusant.
pdr
6
"Certaines personnes sont des écrivains plus prudents ..." Oui, et les mêmes personnes sont des programmeurs plus prudents. Je n'ai pas encore rencontré un bon programmeur qui n'a pas été aussi prudent en communication écrite.
Kevin Cline
4

Le problème ici n'est pas l'appréciation elle-même mais le manque de clarté des commentaires. Un anglais parfait n'est pas nécessaire, un anglais clair l'est. Son trivial pour exécuter quelque chose via Google pour ramasser les erreurs évidentes.

Par exemple, ce n'est pas clair au premier coup d'œil si cela Gor message from queuesignifie "a reçu un message de la file d'attente" ou "message GOR de la file d'attente". Vous auriez besoin de lire le code pour comprendre la signification du commentaire (vaincre ainsi l'objet du commentaire).

Vous devriez demander à mettre en œuvre des revues de code dans votre entreprise. Vous pouvez alors «critiquer» les gens de manière constructive tout en vous faisant de même.

Tom Squires
la source
2

Il devrait être évident que le compilateur ne se soucie pas des fautes d'orthographe, tant que vous utilisez la même orthographe, par exemple lors du référencement d'une variable. La question devient alors de savoir si les fautes d'orthographe ont un impact négatif sur la capacité des membres de l'équipe à maintenir le code.

La seule façon pour moi de le faire serait de parler aux personnes chargées de la maintenance, et vous pourriez commencer par demander si quelqu'un a eu plus de mal à suivre le code contenant des fautes d'orthographe.

Je ne pense pas qu'il existe un moyen de supprimer complètement la subjectivité de ce problème, mais pour le réduire, vous pouvez (manuellement ou via un script) analyser la source pour obtenir un nombre estimé d'orthographes erronées pour un module de code particulier, et voir si la maintenance sur les modules avec un plus grand nombre de fautes d'orthographe a pris plus de temps en moyenne que les modules avec moins de fautes d'orthographe.

Bien sûr, tous les modules ne sont pas égaux, vous pouvez donc penser à pondérer vos résultats avec diverses mesures telles que la complexité cyclomatique du module.

Mike Partridge
la source
Mike, la divergence des réponses et la question est une modification massive récente qui lui a été apportée. Jusqu'à la version 3, le titre de la question était: Que pensez-vous de l'intégration du code source? et le texte était bien dans la ligne avec lui
moucher
Cela a du sens @gnat; J'ai supprimé le paragraphe supplémentaire de ma réponse.
Mike Partridge
2

D'après mon expérience, ces fautes d'orthographe de base sont troublantes et peuvent être symptomatiques de problèmes plus profonds. Chaque projet sur lequel j'ai travaillé avec des erreurs "triviales" comme celle-ci avait de vrais problèmes de conception qui, d'une manière ou d'une autre, n'ont survécu que lors du développement, ce qui n'est pas le cas lorsque vous voulez découvrir que les fonctionnalités essentielles dont vous avez vraiment besoin n'est pas là.

Je revérifierais les spécifications du système (si elles existent) et j'examinerais la conception globale; Je ne serais pas surpris si vous trouviez des trous.

John Bode
la source
1

Il s'agit en fait de deux problèmes distincts mais liés. Cela dépend de l'emplacement des fautes d'orthographe:

1) Dans le code source. Si vous avez un identifiant comme ArgumnetCount, cela peut créer de réels problèmes lorsque quelqu'un arrive et utilise l' orthographe correcte . Vous devez donc corriger ces erreurs chaque fois que possible. Si vous devez préserver la compatibilité de l'API en amont, vous pouvez faire quelque chose comme:

/**
 * @deprecated - use setArgumentCount()
 */
public void setArgumnetCount(int c) {
    setArgumentCount(c);
}

2) Dans un texte lisible par l'homme (courriels, documentation, commentaires de code). Les écrire correctement est important, mais je dirais que c'est une priorité inférieure, car le logiciel d'analyse à l'intérieur de votre tête est beaucoup plus indulgent. Si vous voyez un texte avec quelques erreurs, c'est toujours lisible, alors ne vous inquiétez pas - ce n'est pas votre problème. Mais si quelqu'un vous envoie des absurdités associatives libres et s'attend à ce que vous utilisiez ces absurdités comme modèle pour une application Web multi-utilisateurs, vous devez envoyer à l'auteur une note polie demandant des éclaircissements (quelque chose comme: "Espèce d'idiot analphabète, comment faire vous vous attendez à ce que je comprenne cette merde? ")

Mike Baranczak
la source
-1

L'orthographe correcte de l'anglais est indispensable dans le code. J'ai également une grande base de code pleine de charabia et c'est un cauchemar à entretenir.

Ne laissez pas cela devenir incontrôlable. Essayez d'éduquer tout le monde que les responsables du code ne sont pas des lecteurs d'esprit.

linkerro
la source
1
"Essayez d'éduquer tout le monde" - je l'ai fait et maintenant ils mal orthographient / tapent des trucs juste pour me contrarier. Je dois l'aimer ...
MetalMikester
5
@MetalMikester: il est peut-être temps de chercher une boutique plus professionnelle.
kevin cline
-1

Eh bien, c'est un problème culturel aux multiples facettes.

Parlant d'un point de vue allemand: nous remarquons comment notre propre langue est de plus en plus influencée par les termes anglais. Cela va jusqu'à des entreprises nationales ayant des slogans ou des publicités en anglais. Certaines personnes, en particulier dans les postes de direction, ne sont entre-temps apparemment pas capables de prononcer une seule phrase en allemand simple. Leur discours est plein de mots à la mode et d'argot de gestion incompréhensible. Nous disons que ces personnes parlent "danois".

Étant donné cet état de fait et l'anglais étant la "lingua franca", en particulier dans le secteur des logiciels, il est inévitable que l'anglais lui-même soit influencé par le grand nombre de locuteurs non natifs. Mais pour les anglophones, c'est encore mieux que d'avoir à parler, par exemple, le chinois pour participer à l'industrie du SW.

Ingo
la source
-1

Est-ce de la couleur ou de la couleur? Dont la version de l' anglais ne vous pensez est la bonne? L'orthographe correcte d'un homme est une autre excuse pour commencer une guerre gagnable.

Si vous voulez commencer une guerre, choisissez soigneusement vos batailles et gagnez-les. Dans votre cas, ne vous inquiétez pas des commentaires, ne vous inquiétez pas moins des internes et concentrez-vous (presque) exclusivement sur les API

mattnz
la source
-3

J'ai une maxime: le code bien rangé ne signifie pas nécessairement un esprit bien rangé, mais le revers est certainement vrai: code désordonné, esprit désordonné.

Un programmeur qui ne prend pas le temps de nommer les variables correctement et d'épeler correctement les commentaires ne prend certainement pas le temps de faire quoi que ce soit d'autre correctement. Que le programmeur soit anglophone natif n'est pas un vrai problème, car les problèmes avec son anglais peuvent (et devraient) être résolus lors de l'examen par les pairs.

Oui, c'est un problème sérieux pour le produit, pour l'équipe et pour les individus.

  • Pour le produit: la correction peut introduire des défauts qui ne sont détectés que par les clients
  • Pour l'équipe: l'équipe passe du temps à corriger le codage bâclé plutôt qu'à créer de la valeur
  • Pour les particuliers: une mauvaise orthographe vous fait paraître stupide et abaisse votre statut professionnel parmi vos pairs.
Christopher Williams
la source
4
cela ne semble pas offrir quelque chose de substantiel par rapport aux points soulevés et expliqués dans les 14 réponses précédentes. Ça vaut vraiment la peine de sauter une question de 3 ans avec un contenu comme ça
moucher