O colega de trabalho renomeou todas as minhas consultas [fechado]

63

Não sei se devo ficar muito irritado ou o quê. Eu, sozinho, construí mais de 300 consultas para um grande banco de dados e desenvolvi uma convenção de nomenclatura para encontrá-las mais tarde. Ninguém mais no meu escritório sabe como criar uma consulta, mas vim ontem para descobrir que todos eles haviam sido renomeados. Agora estou tendo dificuldades para encontrar coisas e estou tentando descobrir o que fazer.

Falei com a pessoa responsável, e ela apenas minimizou a coisa toda. Ela disse que os renomeou para encontrá-los mais facilmente. Infelizmente, sou o único que sabe como construí-los, editá-los e mantê-los, e a única razão pela qual ela precisava encontrá-los era testar as consultas. A nova convenção de nomenclatura não faz sentido e sinto que demos um passo atrás no processo de desenvolvimento.

O que estou tentando descobrir é:

1) Estou exagerando?

2) Qual é a melhor maneira de lidar com isso? Eu odeio mencionar isso para o meu chefe, mas depois de falar com minha colega de trabalho ontem, já posso dizer que ela sente que não fez nada de errado.

anon
fonte
29
Embora trabalhemos em equipes, existe um conceito de quem é o dono e a permissão deve ser solicitada antes de alterar o código que outra pessoa criou. Uma vez eu fiz (tenho vergonha de dizer) e fui repreendido. Quando aconteceu comigo, eu mudei de volta e pedi que não fizessem isso.
91111 Mike On-line
30
Duelo ao amanhecer ...!
46
Você tem um backup / SVN certo? Restaure antes que ela mude e relaxe.
21711 JYelton
11
se alguém renomeasse meu código, eu arrancaria a vida deles como Shang Tsung!
Glenn Ferrie
24
Se ela tiver filhos, renomeie-os.
Matt

Respostas:

81
  1. Na verdade, não - isso é uma coisa incrivelmente desrespeitosa de se fazer.

  2. Você conversou com ela e nós não, mas parece que você estaria dentro de seus direitos para restaurar as convenções de nomenclatura anteriores de um backup ou revertê-las se elas estiverem em um controle de origem. Notifique seu chefe e colega de trabalho se você fizer isso e forneça seu motivo (você não pode manter seu próprio trabalho).

A última coisa que você quer é entrar e voltar a esse ponto, mas lide com isso conforme a situação parecer ameaçadora, mas deve pelo menos ser documentada caso se torne parte de um padrão de desrespeito.

DKnight
fonte
81
Além disso, se seu papel no projeto é realmente "testador", ela não tem absolutamente nenhum direito de alterar o código-fonte. Período. Mas eu gostaria de acrescentar que, para evitar esse tipo de situação, você deve compor um pequeno documento (marcadores!) Que indique a convenção de nomenclatura, pois, no futuro, sua empresa poderá contratar alguém para trabalhar com você ou até coordenar você, e estaria dentro dos direitos dele mudar de nome se não houver uma convenção oficial .
Bruno Brant
11
Eu concordo com esta resposta. Se você não fizer nada, crie um precedente que pode exacerbar discordâncias futuras.
21711 JYelton
2
Explique-lhe como você convenção de nomenclatura funciona
GerManson
13
Certifique-se de tirar os seus direitos de edição para o banco de dados enquanto você está nisso ...
Ant
11
@ Ant: Se o exemplo do OP é toda a história, acho que pode ser um pouco duro. Se houver mais (ou eles nunca deveriam ter direitos de edição em primeiro lugar), você pode estar certo.
BCS
117

Por que você simplesmente não lida com isso como um adulto: sente-se, sem confrontos, e elabore uma lista de prós e contras de um esquema de nomeação, concorde com um e torne-o oficial escrevendo um pequeno documento descrevendo-o. Desperte um interesse genuíno em sua opinião para que ela se sinta (e esteja) envolvida.

Se é principalmente uma questão de gosto e se ela é o tipo de pessoa que absolutamente tem que ter as coisas do seu jeito, fique contente por você ser a pessoa maior e deixar para lá. A vida é muito curta para ter um concurso mijando de esquemas de nomeação.

O problema é o esquema de nomenclatura ou você sente que não recebe nenhum respeito? Nesse caso, talvez você possa trabalhar em sua relação de trabalho. Se você acha que não vale a pena, por que se importa com o que ela pensa? :) Outra opção pode ser que ela realmente não sinta muita importância e se você explicar bem que está tendo problemas para encontrar coisas, talvez possa mudar de volta.

konrad
fonte
2
Eu ia dizer mudar de volta e pedir para ela não fazer isso, mas sua resposta é ainda melhor.
Mike Dunlavey
Este é um local bonito.
Wayne Molina
20
E, em seguida, fazê-la mudar para o novo acordado convenção :)
7
@ konrad, você está negligenciando uma questão crucial - um testador não tem autoridade nem qualquer tipo de negócio fazendo qualquer tipo de edição como essa em primeiro lugar . O @anon é o programador responsável, as convenções de nomenclatura são apropriadamente sua decisão e não estão em votação no comitê, muito menos em alterações unilaterais de alguém que nunca precisará depurar o código posteriormente.
Shadur
36
  1. O design do banco de dados inclui permissões (GRANT e REVOKE).
  2. O teste inclui permissões de teste.
  3. Relativamente poucas pessoas devem ter permissão para renomear objetos de banco de dados.
  4. Seu colega de trabalho não é um dos poucos.
Mike Sherrill 'Catcall'
fonte
Este é um ponto muito bom. Fiquei me perguntando por que um testador teria acesso a isso em primeiro lugar.
Justin Ohms
Porque é o Access. Não há GRANT e REVOKE no Access. Não há permissões.
Kibbee
7
Na verdade, existem permissões no Access, mas ainda não encontrei alguém que entenda como elas devem ser usadas (quanto mais implementá-las) #
719
11
Porque sem dúvida, essa mesma empresa provavelmente nem tem sistemas de controle de origem, sem falar em um DBA qualificado que bloqueou o Access. Entre você deve procurar, não é muito difícil de fazer.
Tipo anônimo
21

"A nova convenção de nomenclatura não faz sentido" parece que um destes pode ser o caso:

  1. Ela aplicou alguma norma da empresa a eles. Geralmente, eles são usados ​​para garantir que o código seja pelo menos consistente e, no melhor dos casos, pode ajudar coisas periféricas, como pequenos scripts personalizados, a encontrar o código facilmente. Nesse caso, você precisa entender a norma e por que "não faz sentido" na sua situação. Se você ainda acha que é melhor para todos os desenvolvedores deixá-lo como estava, explique a eles por que exatamente seu método é superior e pergunte se você pode mudar a norma (provavelmente OK se eles concordarem que é superior) ou renuncie no seu caso (improvável e confuso a longo prazo).
  2. Ela inventou seu próprio padrão no local e aplicou isso. Isso é mais provável se ela for nova, e ela deve explicar sua lógica. Você pode aprender alguma coisa e / ou ela pode aprender alguma coisa se, então, explicar sua lógica.

Um ponto importante é que não é o seu código (singular), se é que pertence ou será modificado por todo o grupo. Nenhuma crítica sobre código deve ser centrada em quem o escreveu.

l0b0
fonte
2
+1 ponto bom. todo mundo que responde assume que o questionador possui um esquema de nomenclatura válido. E se ele / ela for realmente o "coletor de informações" das empresas. Talvez seja o testador que está facilitando para que todos (e todos os novos) da empresa encontrem consultas.
Tipo anônimo
Bons pontos. Se o esquema de nomenclatura for bom, as duas partes poderão usá-lo (assim que se acostumarem), independentemente de quem o criou.
BCS
2
@bcs Mesmo nesse caso, a maneira correta de fazê-lo seria informar o programador PRIMEIRO e solicitar que ele próprio alterasse a convenção de nomenclatura, em vez de espreitá-la e esperar que ele viesse trabalhar no dia seguinte e descubra toda a sua estrutura danificada.
Shadur
16

Falei com a pessoa responsável, e ela apenas minimizou a coisa toda.


Então eu vou te dizer, descaradamente:

Reverta as alterações.

Faça esta guerra. Seu gerente deve apoiá-lo e solidificar sua autoridade.

Jim G.
fonte
Acordado. Verifique com ela primeiro que não há uma boa razão para que os novos nomes sejam melhores. Se não, basta mudar de volta.
Richard
11
Quando é que "Wage this war" é sempre um bom conselho?
Sverre Rabbelier
3
@Sverre Rabbelier: ... Quando um n00b tenta instalar práticas de software abaixo do ideal. O OP tentou argumentar com ela. Agora é hora de corrigir o problema. Debater ad nauseum com um n00b sobre algo tão óbvio é um movimento improdutivo e desperdiçado.
9137 Jim G.
4
@ Jim Talvez o OP seja o newb?
9138 Joe Phillips
3
Se ela não é sua chefe, mude essa merda para trás e não olhe para trás. Não estou dizendo guerra salarial, mas com certeza não deixe alguém agir como se fosse o dono do lugar. Os gerentes de projeto são aqueles que deveriam impor padrões de codificação. Não se trata tanto de autoridade quanto de experiência, ordem e um ambiente de trabalho produtivo.
Jonathan Henson
10

1) Não, você não está reagindo demais. Alguém mudou o seu trabalho sem avisar e ignorou quando você perguntou o porquê. Isso é extremamente desrespeitoso e rude.

2) Você é o DBA oficial ou, pelo menos, a pessoa que se tornou detentora do DB? Nesse caso, altere novamente os nomes e escreva um documento de convenções sobre como você faz as coisas. Além disso, escreva um documento no estilo 'Guia do Usuário' para que, se alguém precisar acessar o banco de dados e encontrar algo que possa.

Eu enviava isso para o grupo, sem apontar nenhum dedo, com uma observação útil de que você ficaria feliz em sentar e guiar as pessoas por algumas das nuances da estrutura.

Caso contrário, crie convenções como equipe e siga-as como equipe.

Em uma nota lateral, para alguém que teve que testar algo para alterar os nomes de mais de 300 consultas, parece bastante infantil. Quanto tempo ela perdeu fazendo isso, e apenas para encontrar coisas? Em vez de pedir ajuda a alguém, ela perdeu seu tempo, seu tempo e o tempo da empresa. Sem mencionar que o código provavelmente quebrou quando ela fez isso, perdendo também o tempo de outro membro da equipe.

Se eu fosse você, esperaria até você esfriar um pouco, tentaria conversar com ela novamente. Se isso não funcionar, vá com o chefe. Esse tipo de mentalidade de caubói acabará com toda a equipe.

Tyanna
fonte
8

Renomear aleatoriamente no banco de dados pode facilmente causar um ambiente de produção inativo. Se esses procedimentos estivessem sendo referenciados em algum lugar do código, isso poderia ter sérias conseqüências. Você pode reverter, mas se um testador como esse realmente não sabe o que está fazendo, não é tão longe assim ver que o testador faz algumas alterações na produção. Isso pode significar perda de negócios, e é por isso que você deve tentar implementar funções de usuário separadas para desenvolvedores e testadores. Fazemos isso com nossos testadores e funciona muito bem. Os testadores geralmente apreciam isso, porque não precisam viver com medo de estragar os dados ao vivo.

Morgan Herlocker
fonte
5

Não parece ser abordado em nenhum outro lugar, mas qualquer fonte (por exemplo, uma consulta) colocada em um local público deve estar sob um sistema de controle de versão.

Então, se um colega de trabalho alterar seu esquema de nomenclatura, você poderá voltar ao seu esquema de trabalho facilmente (e ver as alterações deles; e potencialmente, se necessário). Você também vincula as alterações a usuários específicos, para poder ver quem estragou tudo.

dr jimbob
fonte
2

Não olhe um cavalo presente na boca.

Primeiro, a propriedade coletiva do código - eles não devem ser 'seus'.

Em segundo lugar, se eles os renomearem, pergunte o motivo do novo esquema de nomenclatura. Ou eles estão usando as consultas - nesse caso, é o tipo de chamada deles; ou é o primeiro passo para começar a ajudá-lo a mantê-los.

Se todo mundo pensa que é 'seu', você nunca se livrará deles e seguirá para algo novo.a

Esquilo
fonte
2

Não sei se isso foi solicitado, mas qual convenção de nomenclatura é a versão oficial? Se a sua versão for oficial, direi: resolva o problema da perspectiva. Então, ao invés de dizer "Pessoa X revertida todas as minhas alterações", basta dizer "Pessoa X fez alterações que são contrárias às convenções oficiais de nomenclatura". Se não houver uma convenção oficial, sugiro que ela saiba que você não aprecia as alterações feitas sem consultá-lo primeiro.

Em ambos os casos, acho que travar uma "guerra" não é a resposta. Mesmo se você ganhar, você perde.

Tundey
fonte
Esta é a única resposta correta. Se houver um padrão de nomenclatura, os nomes devem estar em conformidade com o padrão e qualquer pessoa que queira que eles tenham outros nomes está errada. Se não houver um padrão de nomeação, deve haver um padrão de nomeação - a equipe, o líder técnico ou quem quer que seja - deve escrever um. Convenções de codificação como essa são monótonas, mas são uma parte essencial do tecido social que permite que uma equipe opere.
21711 Tom
1

Esse é um comportamento terrível. Parece que ela não se arrepende, então leve-o ao seu chefe e faça um caso para que o acesso seja revogado até que ela possa se convencer de não mexer.

Se seu chefe não for técnico, explique-o em termos que eles entenderão. Imagine começar o trabalho em uma sala de postagem, onde a postagem é classificada em buracos prontos para entrega. Você decide unilateralmente classificar os buracos dos pombos por andar e por sobrenome, em vez do atual sistema de departamento e andar. Isso pode facilitar sua vida a curto prazo, mas você seria assassinado pelos outros funcionários da agência postal.

Está além de rude. Eu ficaria furioso.

Ian
fonte
1

Além de definir permissões para impedir que pessoas aleatórias as alterem, você também deve explicar, pois é seu trabalho testar a funcionalidade; você não pode dar nenhuma garantia de confiabilidade se pessoas aleatórias estiverem fazendo alterações no código.

Craig
fonte
1

Como todos disseram, ela não deveria ter feito isso, apenas por respeito a você, já que você é o mantenedor criador dessas consultas.

Dito isso, não vejo ninguém mencionando o fato de que, se ela renomeou suas consultas, foi porque ela não conseguiu entender sua convenção de nomenclatura.
Portanto, o problema pode ser facilmente resolvido documentando sua convenção de nomenclatura e garantindo que os colegas de trabalho tenham acesso ao documento e possam encontrar o que precisam.

Você também deve ter cuidado e levar em consideração como outras pessoas encontrarão e usarão suas consultas: se sua convenção de nomenclatura não permitir que eles realizem seu trabalho com eficiência, provavelmente será necessário manter uma lista mais completa de suas consultas, usando talvez tags e palavras-chave acordadas para que outras pessoas possam encontrar o que estão procurando.

A chave aqui, penso, é que ninguém trabalha isolado e a melhor maneira de evitar pisar um no outro é se comunicar e concordar com regras básicas comuns.

Renaud Bompuis
fonte
0

Eu responderia da mesma maneira - subestimando sua decisão de reverter tudo de volta. Basta reverter as alterações e escrever um email muito curto para seus colegas de trabalho:

"Mudança revertida rXXXX por enquanto, porque não entendia sua convenção de nomenclatura. Obrigado por tentar. :)"

AareP
fonte
0

Sim, você está exagerando.

Existe algo chamado controle de versão que, entre outras coisas, é usado para não ter de vencer os $ #! 7 dos colegas de trabalho quando eles mexem com suas coisas. Basta reverter para a versão anterior e bloquear o arquivo, deixando-a lidar com a raiva. Isso abrirá a oportunidade para você explicar que realizar mudanças radicais no código que depende das coisas de outra pessoa sem uma razão sólida e sem perguntar primeiro não é apenas errado, extremamente impraticável e praticamente um pecado.

É claro que isso pressupõe que sua convenção de nomenclatura é melhor que a dela e que você pode realmente fazer backup dessa decisão com argumentos objetivos sólidos, se esse não for o caso, a coisa mais sensata a fazer é começar a mudar seu código assim que possível para lidar com as alterações e tente criar uma convenção de nomes melhor na próxima vez.

Não leve para o seu chefe, a maneira madura de resolvê-lo é diretamente com seu colega de trabalho; depois disso, você precisará trabalhar com ele para que seja estúpido danificar a relação de uma briga facilmente solucionável.

Chepech
fonte