Devo apontar erros relacionados à ortografia / gramática no código de alguém? [fechadas]

106

Ao revisar o código de um colega de trabalho, deparei-me com alguns erros de ortografia nos nomes de funções e também erros gramaticais como 'doesUserHasPermission ()' em vez de 'doesUserHavePermission ()' nos nomes de funções e variáveis.

Devo apontar isso para ele ou estou sendo muito pedante ao perceber isso?

Rahul
fonte
3
Talvez eu tenha cuidado para que a pessoa realmente queira ajuda com o inglês, se não for o segundo idioma. Algumas pessoas se contentam em saber que não são incapazes de expressar pensamentos estruturados, que são incapazes de inglês adequado. Se o inglês é a língua materna, então sim, acho que a gramática ruim é um problema.
Rei Miyasaka
31
Sim. É realmente frustrante quando você tem uma API com ortografia errada. Ele se espalha como fogo. Portanto, é melhor corrigi-lo o mais rápido possível.
9
@Rei: se o inglês é sua língua nativa ou não deve ser irrelevante em um ambiente profissional; se não é ruim demais para eles, mas não é desculpa, eles devem ser mantidos nos mesmos padrões.
Thomas Bonini
4
@Rei, muitos trabalhos de programação que vejo anunciados exigem proficiência em idiomas nativos por esse motivo. Ser capaz de discutir requisitos, design, especificação e construção é muito importante para todo o produto de software como um todo.
Stephen Furlani
11
HTTP-Refererme incomoda com frequência. en.wikipedia.org/wiki/HTTP_referrer#Origin_of_the_term_referer
um nerd pago

Respostas:

205

Código com erros ortográficos e gramaticais não é sustentável .

  • As pessoas não se lembram da gramática ruim e tentam chamar a função como deveria ter sido escrita, e é assim que os erros acontecem.

  • Você não pode esperar por algo no código se não souber como está escrito.

  • A maioria das pessoas que faz gramática / ortografia o faz de maneira inconsistente, para introduzir muitos bugs com nomes incompatíveis. Isso é particularmente problemático em idiomas que não exigem que variáveis ​​sejam declaradas explicitamente antes do uso, porque você pode introduzir uma nova ortografia e seu código não será interrompido para informar que você errou.

Corrigir esses problemas não é pedante, nem é necessário principalmente pelas opiniões dos outros sobre a inteligência, a alfabetização etc. (embora esse seja um grande efeito colateral); trata-se de escrever código de qualidade e manutenção .

HedgeMage
fonte
7
+1 Às vezes, poupar os sentimentos de alguém é importante, mas quando é uma revisão de código ... se você entender, é um bom jogo comentar. Minha empresa usa o cadinho para revisões de código, o que permite que todas as revisões vejam que foram capturadas e permite que o revisor o marque não como defeito, mas como estilo.
opello
15
+1 - Quando os erros ortográficos e gramaticais entram na API, é quase impossível sair novamente. Passei a maior parte de três anos escrevendo "Avtivity" em vez de "Activity", e sempre doía fisicamente fazê-lo.
John Bode
7
Para melhor ou pior, as boas práticas de programação geralmente se resumem a algo muito parecido com pediatria. Além disso, gostaria de encontrar a pessoa que digitou errado Referrerna especificação HTTP original e chutá-la no tornozelo. Claro, provavelmente era Berners-Lee e, por isso, me sentiria culpado depois ...
Malvolio
2
@ Stephan Furlani: esse é o ponto que eu estava tentando fazer; fazia parte de uma API que não possuímos. Não conseguimos consertá-lo do nosso lado, e o processo para consertá-lo foi feio e demorado o suficiente para que ninguém quisesse mexer com ele.
John Bode
2
@ John Bode, acho que você deveria ter criado uma função wrapper :) C # tem um truque legal para isso (eu esqueci o nome dele).
Job
38

Sim definitivamente. É mais fácil lembrar o nome se estiver gramaticalmente correto. Tentar lembrar os erros de nome e gramática é outra coisa completamente diferente.

Jason Baker
fonte
29

Não os indique como defeitos em uma revisão formal de código. Em vez disso, marque uma lista e converse com ele PRIVAMENTE sobre eles. Seja o mais diplomático possível sobre isso, apenas "Ei, algo que notei, e já encontrei pessoas que realmente desprezam esse tipo de coisa, elas acham que isso faz o programador parecer descuidado e desleixado".

Se este é um código que um cliente vai ver, DEVE absolutamente ser corrigido. Goste ou não, reflete sobre a reputação da sua empresa.

Para o exemplo que você deu, suspeito que tenha começado como UserHasPermission, e alguém lhe disse que a prática local era doesUserBlahBlah () em vez de UserBlahBlah (), e ele simplesmente ignorou a alteração gramatical.

John R. Strohm
fonte
12
Dizer que é sobre as percepções dos outros faz com que pareça sem importância. Diga a verdade - eles estão tornando o código mais difícil de manter e desenvolver.
HedgeMage
5
@ HedgeMage: Minha experiência pessoal com coisas assim é que algumas pessoas são extremamente sensíveis a coisas que consideram críticas a si mesmas. Pior, pode haver repercussões políticas realmente feias, se a pessoa que você parece estar criticando é amada pela gerência. (Sim, tenho as cicatrizes para provar isso.) E vi organizações que literalmente não se importavam com esse tipo de coisa, desde que o código funcionasse, para alguma definição de "funcionou". Meu sentimento pessoal é que você tem uma chance melhor de consertá-lo, com o mínimo de outras dores de cabeça, se você for com cuidado.
John R. Strohm
12
@ John, certamente posso ver que uma situação ruim de trabalho pode forçar alguém a andar com casca de ovo assim - mas é uma situação ruim se isso for um problema em primeiro lugar. Alguém com um ego tão frágil (e uma cultura no local de trabalho que permite suas travessuras) não é bom para os negócios.
HedgeMage
6
A maioria dos programadores maduros aceita bem as críticas. Afinal, é para isso que servem as revisões por pares (e todos nós fazemos revisões de código, não é?) Não há problema em criticar a ortografia e gramática dos comentários, nomes de funções, etc. Tudo isso reflete não apenas o autor, mas em toda a organização.
quickly_now
6
Eu tenho que concordar com o HedgeMage aqui, se você não pode apontar erros como esse durante uma revisão de código (particularmente quando eles são objetivamente errados, como o exemplo da pergunta), então você tem problemas maiores ...
Dean Harding
10

Mude você mesmo.

Espero que você esteja em um ambiente em que o código "propriedade" não seja um problema. Se você tiver acesso ao projeto no controle de origem, entre e corrija você mesmo. Se você vir um colega de trabalho em particular cometendo o mesmo tipo de erros gramaticais ou de ortografia, convém apontar isso, mas isso dependerá do seu relacionamento, se a pessoa é um falante nativo de inglês e sua receptividade geral. Mas se você decidir fazer isso ou não, basta fazer o reparo em silêncio. Faço isso o tempo todo, se vejo um erro de digitação, especialmente em uma assinatura de método ou propriedade pública, apenas o corrigo. Ocasionalmente, eu não consigo nem resistir à tentação de corrigir um erro de digitação em um comentário, mas sou apenas eu :)

Marcie
fonte
5
E então você descobre que acabou de quebrar o código de um terceiro cara. Você precisa consertar esse tipo de coisa o mais rápido possível, não apenas quando você pode fazer isso depois que o primeiro cara faz o check-in de tudo.
David Thornley
Se você está preocupado com o fato de que uma correção para qualquer parte do código possa quebrar o código de "outra pessoa" e você não tem como dizer, você tem problemas maiores que a ortografia.
Cornel Masson
@CornelMasson: Na verdade não. Essa é uma parte essencial do design de uma API.
Lightness Races in Orbit
6

Sou um desenvolvedor cuja língua nativa não é o inglês, é realmente o holandês e não me importaria se alguém me apontasse um erro de gramática ou ortografia. Dessa forma, posso melhorar constantemente meu inglês. E certamente não é difícil corrigir todos os erros em todo o seu código-fonte. Um script Perl simples pode ser facilmente escrito para percorrer todos os arquivos em uma pasta. Talvez até isso possa ser feito com sed? Eu não sei.

Portanto, eu certamente apontaria erros de gramática ou ortografia no código de outra pessoa, mas apenas se tiver certeza absoluta de que está correto o que estou dizendo.


fonte
6

Eu acho que vale a pena mencionar aqui que o cabeçalho do referenciador HTTP no protocolo HTTP foi digitado incorretamente como "referenciador" (e temos que conviver com ele / aprendemos a conviver com ele.) :)

Coelhinho
fonte
10
E nunca mais queremos ver esse tipo de coisa.
David Thornley
4

Eu concordo com outras respostas dizendo que o código com erros gramaticais não é sustentável.

Eu também quero adicionar algumas coisas:

  • O código geralmente é escrito por pessoas que não falam inglês muito bem e / ou o inglês não é seu idioma nativo. Se houver um erro gramatical em um código que você analisa, isso não significa que seu colega de trabalho cometeu esse erro. Talvez fosse apenas uma cópia e pasta de um site.
  • Se o inglês não for um idioma nativo do seu colega de trabalho, pode ser uma boa ou uma péssima idéia contar a ele sobre esse erro. Sendo da França, sempre recebo comentários sobre os erros que cometi em inglês, porque é a única maneira de evitá-los no futuro; por outro lado, conheço várias pessoas que se sentem realmente magoadas se você lhes contar sobre os erros gramaticais que elas cometem.
  • Como John R. Strohm disse, nunca faça isso publicamente. A maioria das pessoas ficará realmente irritada com isso.
Arseni Mourzenko
fonte
11
"Talvez tenha sido apenas uma cópia e pasta de um site". A pessoa que a copiava deveria ter detectado o problema e solucionado. Copiá-lo literalmente e deixar erros é tão ruim ou pior quanto escrevê-lo e criar os erros. "Conheço várias pessoas que se sentem realmente magoadas se você lhes contar sobre os erros gramaticais que elas cometem." Nos negócios, todos devemos nos comportar como adultos e colegas de trabalho que estão se unindo para alcançar um objetivo comum. A pessoa que levanta a questão precisa usar o tato, e a pessoa que recebe as críticas precisa aceitá-lo e crescer a partir dele.
the Tin Man
3
Concordo 100% que, como profissionais, devemos nos comportar como adultos e não levar isso para o lado pessoal. Mas absolutamente precisa ser apontado e corrigido. Sim, o tato deve ser usado e deve ser abordado conforme necessário, dependendo do indivíduo. Mas se você estiver em um ambiente em que é incentivado a evitar o problema completamente, talvez seja a hora de partir. Isso apontaria para um ambiente envenenado.
Mark Freedman
Qualquer erro ortográfico pode ser verificado por uma simples pesquisa no google #
JoelFan
2

Eu recomendaria o uso de um IDE com o corretor ortográfico incorporado. O IntelliJ Idea faz um trabalho maravilhoso para programas Java. Existem muitos erros de digitação embaraçosos, não apenas em nomes de funções, mas em, por exemplo, mensagens de exceção que o usuário vê. Um programa que produz mensagens cheias de erros de digitação não inspira muita confiança.

Roman Zenka
fonte
0

Eu faço isso apenas se

  • isso afeta o uso do programa
  • isso afeta a precisão do programa
  • Eu sei explicitamente que o autor deseja ser corrigido.

Apenas como uma observação lateral, se os nomes das suas funções forem longos o suficiente para ter gramática, provavelmente serão muito longos. No exemplo dado, eu chamaria a função userHasPermission e moveria a "gramática" para o seu código, algo como isto:

if userHasPermission() ...
Mark Harrison
fonte
1
No entanto, ainda existe o mesmo potencial de erros gramaticais, pois nesse caso userHavePermission()estaria errado.
Dean Harding
Mas esse é exatamente o ponto !! userHasPermission()implica que ele retorna um booleano devido à gramática ~ OU ~, isso pode significar que ele define a permissão do usuário. (O oficial tem a ponte :: o usuário tem permissão). Ainda é vago.
Stephen Furlani
Embora eu concorde que os nomes de exemplo no Q sejam desnecessariamente longos, aviso sobre a generalização "muito longa". Nesse caso, o conceito pode ser expresso em menos palavras, portanto deve ser mais curto. No entanto, o que é "muito longo"? Existe um limite de caracteres ou palavras?
LS
0

Isso também acontece MUITO no meu projeto (sendo preenchido por pessoas que falam nativamente hebraico, russo ou árabe), mas mesmo em um nível mais alto - geralmente vejo código que usa alguma terminologia obscura que é o que o dicionário produziu como tradução para o dicionário. o que o autor tinha em mente, e não tem nada a ver com o que eles queriam dizer ...

Pessoalmente, quando isso acontece com tanta frequência e por tantos membros da equipe que poderiam ter escrito o código antes mesmo de ingressar no projeto, costumo ignorá-lo, porque simplesmente não importa.

No entanto, se estou comprometendo algum trabalho no mesmo arquivo que o código ou os comentários que foram escritos há muito tempo e eles têm erros de digitação, os corrigirei apenas porque não é muito trabalhoso.

Daniel Hershcovich
fonte
0

A regra de ouro se aplica

Faça aos outros como gostaria que eles fizessem a você.

Quero que os outros estejam de olho nesse tipo de coisa, então ajudo os outros. Ser gentil e solidário pode ajudar muito a seu favor.

kevpie
fonte
2
-1 para imprecisão - não tenho idéia do que você está aconselhando o interlocutor a fazer.
HedgeMage
@HedgeMage, estou aconselhando o OP a se inscrever en.wikipedia.org/wiki/The_Golden_Rule
kevpie
2
Eu estou familiarizado com isso. Além de ser patentemente bobo (não há razão para acreditar que a maneira como Alice quer ser tratada é a maneira como Bob quer ser tratado), isso distrai o problema real: criar um bom código. Claro, eu não vou ser um idiota sobre isso, mas não estou pensando se levanto ou não um problema técnico sobre se a pessoa que está escrevendo um código incorreto deseja ou não que ele seja levantado!
HedgeMage
Acho que a reclamação do @ HedgeMage pode ser ilustrada da seguinte maneira: quero que o código seja da mais alta qualidade permitida pelo tempo e pelos recursos disponíveis, porque me preocupo com o projeto e com meu trabalho futuro nele. Bob quer evitar críticas por erros corrigíveis, porque ele não aceita as críticas. Vamos implementar a "regra de ouro" de maneira bem diferente.
Eyelidlessness
O conselho significa que o OP opera como ele gostaria de ser tratado. Não tratar Bob como Bob gostaria de ser tratado. Eu estava incentivando o OP a corrigir Bob, pois ele (o OP) gostaria de ser corrigido pelos mesmos erros, especificamente no contexto que o OP compartilhou.
kevpie
0

Como em muitas outras boas práticas de programação, a única maneira objetiva, não política e eficaz de implementar uma política sobre ortografia em programas é automatizá-la como parte do processo de pré-confirmação. A automação o salvará de enormes quantidades de queixas, mesmo que você precise escrever sua própria ferramenta para esse fim.

Apalala
fonte
3
Muitos dos erros mais importantes não podem ser detectados automaticamente. Isso também se aplica à ortografia e gramática. Você poderia fazer uma verificação automática, mas os resultados teriam que ser equivalentes a avisos. Isso ocorre porque os corretores ortográficos produzem ambos os falsos positivos (por exemplo, nomes próprios) e falsos negativos (dois também para). Portanto, a intervenção manual é necessária.
Matthew Flaschen
Esse tipo de automação não resolve esses problemas, apenas captura alguns dos erros que as pessoas cometem.
supervisionou
Auto correção??? Existem muitos exemplos de "falhas" de autocorreção na internet. Definitivamente isso não é bom.
Florian F
0

Este é um pequeno erro no código, mas é um erro. Trate-o como qualquer outro erro que você encontrar. Minha política é sempre assumir que meus colegas de trabalho são competentes e tratá-los dessa maneira até que provem o contrário.

Se for um único erro, posso corrigi-lo e fazer o check-in. Se for um padrão, posso começar a pedir ao colega para revisar essas correções. Deixe-os saber que você acha que eles são um bom codificador, mas que isso é algo que seria bom para melhorar. Eu acho que nunca faria um grande negócio sobre algo assim.

Desde que você não trate isso como um grande problema, deve ser fácil colocar esse colega de trabalho em uma posição em que ele possa melhorar sem colocar o ego em risco.

ultrapassado
fonte
-1

userPermission () talvez? -

O último que me deparei foi uma questão global de resultados de pesquisa que não estavam sendo destacados porque o nome da classe estava escrito como destaque. Bug muito obscuro para detectar.

mplungjan
fonte
Fazer voto negativo sem comentar é uma abominação.
precisa saber é o seguinte
-1

É claro, mas não perca seu tempo procurando erros de ortografia. Use uma ferramenta para automatizar isso no seu IC. No .net o fxCop pode fazer isso ...

khebbie
fonte
-2

Depende em grande parte de quais são os erros, de quão comuns e ruins são, e se é realmente um erro de boa-fé ou simplesmente como você o expressaria.

Pessoalmente, não suporto quando um idiota arrasta uma revisão de código de 5 minutos por meia hora, porque ele quer que tudo seja renomeado como ele faria e todos os comentários reformulados apenas porque ele gosta de enfiar o remo. Uma linha de registro que diz "Carregando objetos de dados" não precisa ser alterado para "O componente do carregador de objetos de dados agora carregará os objetos de dados relevantes do componente de armazenamento de objetos de dados".

/ rant :)

JohnL
fonte
2
Insistir nas coisas do meu jeito é uma coisa. Insistir que as coisas usam ortografia e gramática adequadas é outra coisa completamente.
David Thornley
Não sei ao certo por que minha resposta merece voto negativo, mas deixa para lá ... Além disso, para onde foi minha resposta ao comentário de David? De qualquer forma, nem sempre é desejável uma gramática inglesa 100% correta. No meu exemplo acima, "Carregando objetos de dados" não é uma frase completa, mas é a redação mais preferida das duas - concisa, fácil de localizar e não ocupa muito espaço.
johnl