Resposta tardia, mas como ainda não há resposta aceita, tentarei. Tomo isso como duas perguntas e tentarei respondê-las separadamente:
Como os gerentes escolhem as linguagens de programação?
Depende muito do tamanho da experiência da organização e do gerente, mas geralmente envolve a avaliação da situação atual e dos cenários e requisitos futuros. Isso geralmente é feito por meio de PESTLE ou análise semelhante, e apenas para fornecer algumas amostras em cada categoria:
- Político
- "Ninguém foi demitido por comprar a IBM" - escolha segura.
- CEO ouviu que Java é legal - hype.
- O arquiteto-chefe adora o projeto .NET - pet.
- O idioma é controlado por um concorrente hostil - por que o Google não depende de C #.
- Econômico
- Custos de licenciamento.
- Custo do treinamento do desenvolvedor.
- Custos de migração da base de código.
- Social
- Buy-in da equipe.
- Disponibilidade de habilidades em casa (necessidades de treinamento, continuidade).
- Disponibilidade de habilidades no mercado.
- Ameaça ao status quo existente na equipe de desenvolvimento.
- Disponibilidade de comunidade de prática suficientemente grande.
- Tecnológica
- Aumento de produtividade.
- Melhoria da qualidade.
- Capacidade de interoperar com a base de código existente.
- Adesão aos padrões.
- Maturidade.
- Legal
- Termos de licenciamento.
- Controle de tecnologia (quem é o proprietário e controla a tecnologia? Qual é a provável estratégia futura de licenciamento?)
- Conformidade legal e regulamentar.
- De Meio Ambiente
- Infraestrutura existente na empresa.
- Habilidades existentes na empresa.
- Integração com parceiros externos.
- Nível de suporte tecnológico por um ambiente mais amplo.
Em seguida, vários idiomas que atendem aos critérios podem ser avaliados ainda mais usando SWOT , análise de custo- benefício ou similar.
Todo o processo pode ser bastante complexo, mas, como resultado, a maioria das empresas ou equipes de projetos buscará a opção mais segura, dadas as circunstâncias atuais, que ainda podem oferecer os recursos necessários. Muitas vezes, pode significar aderir à plataforma atual por mais tempo.
Como um programador pode ajudar a garantir que a linguagem de programação correta seja escolhida para um projeto
Como foi demonstrado, espero, que um programador típico normalmente teria apenas 1/6 da entrada total no processo de tomada de decisão. E, como regra, ela ou ele estaria principalmente interessado apenas nas capacidades linguísticas!
Bem, a melhor maneira de influenciar a decisão parece ter uma visão mais ampla do processo de seleção, formar aliados dentro e fora da equipe, criar um bom resumo do lado tecnológico das coisas e tentar não se concentrar apenas nas capacidades linguísticas.
E, é claro, é preciso entrar na posição quando um gerente de projeto ou desenvolvimento (ou qualquer outro responsável) vê os benefícios de passar por todo o processo de avaliação e está preparado para considerar os riscos e incertezas de mudar para um diferente idioma em primeiro lugar. Para que isso aconteça, é necessário demonstrar que:
- A plataforma atual não é mais adequada.
- Uma nova plataforma promete benefícios que superam de longe os problemas.
No entanto, se você tivesse perguntado "Qual é a melhor maneira de poder usar no trabalho o idioma que eu gosto", a resposta provavelmente seria "ingressar em uma empresa que já usa o idioma ou inicia o seu próprio".