Lidando com Fanboys [fechados]

14

Todos nós provavelmente já conhecemos alguém assim, aquele desenvolvedor que apenas sabe que sua linguagem é a única linguagem verdadeira e não vai calar a boca sobre isso. Como você lida como alguém assim? Eu não quero ofender ninguém (especialmente desde que o fanboy no meu local de trabalho é o desenvolvedor sênior). Mas eu quero ser capaz de usar minha própria escolha de linguagem de script quando eu tenho que escrever um script descartável que nunca chega ao repositório e ninguém mais precisa saber existia.

Pensamentos que tive de lidar com isso:

  1. Rir - "Haha sim, talvez a linguagem X seja um pouco mais fácil, eu acho que sou masoquista!"
  2. Siga em frente - eu realmente prefiro evitar isso, pois não posso pagar a queda na produtividade associada à escolha de um novo idioma.
  3. Ocultar meu idioma - Torne-se um programador do closet e oculte meu monitor sempre que estiver criando scripts ou automatizando algo.

O que você sugeriria para essa situação?

    
por jozefg 03.09.2012 / 14:59
fonte

9 respostas

14

Poucas coisas estão saltando da questão.

  • É realmente um roteiro descartável? Se for, é estranho que seja sendo discutido.
  • Tem certeza de que o roteiro descartável permanecerá como está? Muita produção coisas tem sido um script descartável em algum momento.
  • Você vai reescrever o script se ele for promovido e precisar integração no sistema?
  • A escolha de idioma é puramente sintática ou é uma linguagem de outra esfera?

Eu meio que entendo a parte do fan-boy, porque de um lado, eu estou me comportando como um fã-menino às vezes, enquanto protejo meus poucos idiomas de escolha. E eu também lidei com outros fan-boys que tentam trazer coisas novas.

Minha opinião sobre essa situação é assim:

  • Se é um novo idioma, ele pertence a uma lixeira.
  • Se for uma linguagem comprovada do setor, ela pode ser usada se for especializado para a tarefa.
  • Se for uma linguagem muito impopular, ela pertence a uma lixeira, mesmo que é super legal e super rápido.

É porque ninguém sabe como escrever software seguro e rápido em um idioma desconhecido, e tem todos os desenvolvedores de dicas que precisam aprender. O roteiro estúpido terá que ser suportado por mais de 20 anos ou reescrito. Mais de 20 anos, pelo menos 50 desenvolvedores mudam em uma loja média. Se cada um escrever alguns scripts sofisticados em um novo idioma, você precisará de 50 durações de idioma, 50 expertises diferentes na equipe e a base de código tem código com bugs em 50 idiomas. E algumas das linguagens não são mais suportadas no Windows ou no Linux. E precisa de um servidor personalizado com 10 anos sem correção, sem peças de reposição disponíveis, 24 horas por dia.

Além disso, ninguém realmente quer apoiar idiomas mortos como VB, Silverlight, D, etc., quando o código-base provavelmente sobreviverá à própria linguagem.

    
por 03.09.2012 / 15:31
fonte
16

Ele decide o que você usa com base na política da empresa? Recorra seu caso para ele; se ele ainda decidir contra isso, cale a boca e faça seu trabalho com as ferramentas que seu chefe diz que você deveria usar.

Você trabalha lá, não joga lá. Em última análise, está fora de suas mãos.

Mesmo que ele não seja seu chefe, eu consideraria todos os ângulos aqui. Você gostaria que ele conhecesse Fortran e um dia você herdasse todo o seu código? Você teria que aprender uma nova linguagem do zero on the fly , isso é terrivelmente estressante. Agora imagine o seu lado, você pode escrever seus scripts usando o Cobol e ele pode não conhecer o Cobol.

Use algo que a maioria de sua equipe conhece.

    
por 03.09.2012 / 15:03
fonte
9

"2. Go with it"

Esta é a única resposta razoável. Você tem uma ótima oportunidade aqui.

  • Use os comentários do programador sênior para incentivar sua empresa a pagar pelo tempo e / ou um curso e / ou certificação para aprender o novo idioma. Pior cenário: a certificação e o idioma melhorarão seu currículo, você poderá obter uma boa recomendação para ser um membro da equipe e poderá rir de todo o caminho até um emprego melhor em outro lugar.

  • Ganhei insights valiosos sobre programação de todas as línguas que aprendi. Mesmo a linguagem menos prática ( tosse XSLT tosse ) teve seu ponto ideal e estava repleta de oportunidades interessantes de aprendizado (e pagou minhas contas por vários anos). A aprendizagem constante é um dos grandes benefícios de ser um programador.

  • Todos os projetos interessantes provavelmente usam a linguagem favorita do desenvolvedor sênior. Conhecer essa linguagem coloca você no grupo de talentos que pode trabalhar nesses projetos.

  • Alguém está, presumivelmente, pagando a você para fazer certo trabalho de uma determinada maneira. Qualquer outra resposta é provavelmente insubordinação e provavelmente terminará mal.

O desenvolvedor / arquiteto sênior normalmente escolhe o idioma principal usado em uma loja e garante que todos usem esse idioma. Dessa forma, uma empresa constrói uma base de conhecimento em determinadas tecnologias para que um funcionário (você) possa tirar férias e outra pessoa possa pegar seu código e corrigi-lo enquanto você estiver ausente. Além disso, a empresa pode trazer talentos de treinamento relevantes e o departamento de RH saberá quais palavras-chave procurar nos currículos.

Ao aprender sua língua e usá-la para o trabalho, você acumula o capital político de que precisa para advogar efetivamente a sua linguagem favorita. Muitas empresas têm uma linguagem oficial de infraestrutura e uma linguagem de script oficial para relatórios. Prepare uma lista de prós e contras mostrando onde a sua língua se destaca e onde a sua, também onde cada um fica aquém. Você precisa manter essa lista no contexto de um aplicativo específico, como os relatórios que você está escrevendo. Planeje um tempo com ele para lhe mostrar a lista em particular e respeitosamente e discuti-la com ele. Anote suas objeções, pesquise-as após a reunião e, se tiver bons contra-argumentos, planeje uma reunião de acompanhamento.

Boa sorte!

    
por 03.09.2012 / 17:16
fonte
7

Mostre que, em um contexto específico, outro idioma é uma opção mais pragmática.

Se a pessoa é apaixonada por C ++ e você está trabalhando em um projeto de aplicação web, não seria muito difícil. Da mesma forma, alguns contextos são muito inclinados à programação funcional e o uso de uma linguagem não funcional não seria muito sábio.

Notas:

  • Evite situações em que tanto a sua língua como a preferida sejam muito semelhantes.

    Por exemplo, eu dificilmente imaginaria um contexto em que o Java seria "melhor" que o C #, ou C #, "melhor" que o Java.

  • Lembre-se de que a escolha de uma linguagem é muitas vezes subjetiva e é explicada mais pela experiência anterior de um desenvolvedor do que por alguns elementos baseados em evidências.

    Por exemplo, se me pedissem para fazer uma aplicação relativa ao setor financeiro, eu ainda usaria C # em vez de Haskell, mesmo se eu achasse Haskell mais apropriado e verdadeiramente empolgante. O motivo dessa escolha é que eu tenho anos de experiência com C #, mas quando se trata de Haskell, eu só li alguns tutoriais e nunca usei profissionalmente.

por 03.09.2012 / 15:05
fonte
3

A resposta é 2) Siga em frente.

  1. A única maneira de fechar o fanboy é tornar-se fluente (até certo ponto) em sua linguagem de escolha.
  2. A perda de produtividade não é um problema. Você está fazendo como solicitado pelo seu senior, então mudanças de produtividade devem ser acomodadas pelo projeto.
  3. Aprender um novo idioma fará seu cérebro funcionar melhor.
  4. Aprender a ser aberto sobre o aprendizado de novas linguagens tornará você ainda mais bom.

É win-win-win-win. Apreciar!

    
por 03.09.2012 / 23:41
fonte
2

A resposta é que você não lida com isso. Argumentar com eles apenas arrasta o argumentador ao nível deles (onde eles batem em você com experiência) e é, em última instância, não-construtivo, porque eles têm uma mente fechada.

Ignore quaisquer argumentos que eles apresentem a favor ou contra sua linguagem e decida-se. Use as técnicas usuais, como evitar o contato visual, responder monossilabicamente e passar para um novo assunto, quando o silêncio garantir. Treine-os para incomodar a pessoa ao seu lado.

O desafio aqui é que o fã-boy associa a linguagem à sua identidade e qualquer negatividade associada a essa linguagem é pessoal. Não ataque nem defenda. Apenas ignore.

    
por 03.09.2012 / 15:15
fonte
2

Muito poucas coisas em um trabalho são scripts realmente descartáveis. Eu acabo colocando muitas dessas coisas no wiki ou no repositório de qualquer maneira, caso necessário novamente.

Mesmo as coisas que eu acho que estão abaixo do nível de compartilhamento, meus colegas de equipe muitas vezes se sentem diferentes. Por exemplo, eu tenho um alias rgrep no meu .profile. É apenas uma instrução find com um parâmetro, pois não tenho acesso ao rgrep real nesse servidor. Um colega de equipe ficou sabendo e queria isso na wiki. Sim, a declaração de uma linha. Obviamente, não tivemos um debate sobre a linguagem de implementação - ela tinha que ser UNIX. Mas destaca a necessidade de fazer coisas que os outros da equipe possam entender.

Outro giro é que é possível que o desenvolvedor sênior tenha uma razão pela qual você não saiba usar esse idioma. Você já perguntou?

Talvez tente fazer o mesmo script nos dois idiomas uma vez para mostrar por que o seu é melhor.

    
por 03.09.2012 / 16:16
fonte
1

Você deve tentar nebulizar . Isso significa concordar com tudo o que o fanboy diz (em parte ou em todo), mas faça o que você quer, a menos que seja explicitamente instruído a fazer o contrário.

    
por 03.09.2012 / 15:24
fonte
0

Opções passivo-agressivas 1,3 levam a mais sofrimento emocional, então me dê um 2) leve no queixo.

Alguns conselhos gerais para a estrada: 4) Se você não conseguir ouvir de maneira mais inteligente o seu superior, faça seu próprio estudo em linguagem / design de compilador. Escolha um idioma e aprenda quais pensamentos foram aplicados nele. Qual a diferença entre recursos, desempenho e poder expressivo? Quais outras opções estão lá. Isso por si só lhe concederá superpotências de programação inumanas. Aprenda a NBL mesmo, será enorme.

Afirmar-se empurrando opiniões sobre os outros inibe a produtividade e a comunicação. As pessoas podem pensar que desistir do impulso emocional é útil, mas é apenas um band-aid em sua insegurança.

Ser humilde e gentil com conselhos, e melhorar a si mesmo fará maravilhas para expressar suas intuições em um nível técnico. Você vai se sentir melhor e ver as coisas pelo que elas são, porque você será capaz de raciocinar. Difícil ficar bravo quando externalizar as críticas a um contexto técnico.

    
por 03.09.2012 / 21:36
fonte