"Vender" codificando meu próximo projeto em um idioma desconhecido

8

Quero codificar meu próximo projeto de trabalho em uma linguagem que eu não esteja familiarizado (python). Eu posso pensar em muitas razões, do meu ponto de vista, por que é uma boa ideia (principalmente porque parece divertida). No entanto, meu gerente provavelmente me perguntará o porquê. Estou um pouco perplexo com as vantagens do ponto de vista dele.

Edição : Eu normalmente código em c #

EDIT2 Minhas razões para querer codificar em outro idioma;

  1. Isso tornará um projeto fácil muito mais difícil, então eu aprenderei mais e será mais interessante
  2. Acabei de ler um livro sobre python. Quero a chance de aplicá-lo em um aplicativo de negócios para entendê-lo adequadamente
  3. Aumentará meu conjunto de habilidades e me tornará mais empregável
  4. Python parece divertido
Tom Squires
fonte
1
Em que idioma você escreveria normalmente?
RYFN 10/10
1
"Posso pensar em muitas razões" O que são? Como isso se traduz em vantagens e desvantagens do negócio (custo, esforço)?
precisa saber é o seguinte
5
Por que não ver se você pode usar o IronPython . Dessa forma, você pelo menos ainda pode usar o .NET.
Jetti 10/10
Além de parecer divertido, quais são seus motivos para querer usar python?
SoylentGray
1
Codificar um projeto de trabalho usando idiomas desconhecidos etc é um risco. Ele também apresenta problemas de manutenção a longo prazo (quantos idiomas os funcionários futuros precisam conhecer?). É preciso haver fortes vantagens específicas do projeto para superar as desvantagens como essa - o idioma deve ser particularmente adequado ao projeto. E se você não tem experiência com o idioma, não está em um bom lugar para julgar isso.
Steve314

Respostas:

8

Prefiro escolher um idioma melhor para a tarefa que tenho que realizar. Que tipo de projeto ? Isso não seria apenas um benefício para a sua empresa, mas também para você (escolher a ferramenta errada pode causar problemas mais tarde).

Se Python é algo que pode entrar na estratégia de sua empresa / grupo e você deseja aprender, eu seria sincero com seu gerente e diria que você deseja fazê-lo em Python para aprender Python. Ele poderá escolher se a relação custo / benefício está boa.

BTW, qual é a alternativa? (ou seja, o idioma 'padrão')?

Matteo
fonte
15

Você não deveria abordá-lo do ponto de "o que devo fazer é o melhor para a empresa" em vez de "o que eu quero fazer e como posso convencê-los de seu valor"?

Eoin Carroll
fonte
10

Você provavelmente não deve correr riscos com o tempo / dinheiro do seu empregador para seu próprio benefício ... apenas um pensamento.

Aprenda Python no seu próprio tempo - então argumentar para usá-lo acontecerá naturalmente, se for apropriado.

jheriko
fonte
5

Parece que você só quer "se divertir" na hora da empresa.

Escolher um idioma sem vantagens atraentes para resolver o problema em questão, levar mais tempo para entregar e deixar um pesadelo de suporte para trás. O que há para o seu gerente gostar?

Você não tem justificativa para fazer isso. Se você quer jogar com um novo idioma, tudo bem, mas faça isso no seu tempo livre antes de tentar convencer seu chefe a deixá-lo usá-lo e escolher uma combinação de projeto / idioma que realmente agregue valor.

Para dar um contra-exemplo: -

Uma vez eu usei o PERL para fazer automaticamente alguma conversão de uma grande base de código Delphi. Eu já havia passado algum tempo jogando com PERL em casa, o código não era suportado além do final do projeto e a funcionalidade RegExp incorporada ao PERL me tornava várias vezes mais eficaz do que escrever a mesma funcionalidade no Delphi, mesmo que meu conhecimento em PERL era bastante limitado.

mcottle
fonte
+1 para o contra-exemplo. Algumas coisas podem ser feitas mais rapidamente em uma linguagem como Python do que em C #.
Caracol mecânico
4

Existe alguma dica em sua empresa de que você deixará a pilha da Microsoft ou deseja evitar ficar totalmente preso? Ter desenvolvedores com conhecimento em outras áreas tornaria isso mais fácil.

Existem sugestões para usar apenas um idioma específico se houver um benefício específico para o projeto. Isso sempre parece difícil de fazer quando você não aprendeu um idioma. Como você sabe o que não sabe? Claro que você pode pesquisar ou fazer perguntas sobre o SO e encerrar sua pergunta ou, na melhor das hipóteses, receber uma resposta "depende".

Isso pode ajudá-lo a desenvolver novas técnicas para lidar com os problemas atuais.

Pode haver uma vantagem em ser uma loja de dois idiomas quando se trata de recrutar talentos. Seu próximo programador pode ter uma preferência por Python, mas também está disposto a fazer algum trabalho em C #.

Tantos lugares se queixam de que seus desenvolvedores estão determinados e não querem aprender coisas novas. Inicie um pequeno projeto e mostre que você está ansioso para aprender, mas disposto a trabalhar dentro dos parâmetros do que ajuda sua empresa.

JeffO
fonte
3

Algumas vantagens (dependendo do tipo de projeto que você deseja realizar e qual seria a linguagem alternativa;)

  • OOP limpo com digitação dinâmica (tão inerentemente genérica)
  • bom para prototipagem rápida
  • Misturável com outros idiomas
  • código aberto e popular
  • portátil
  • Poderosas construções de linguagem e kits de ferramentas / bibliotecas
  • bom para scripts de internet
  • gerenciamento automático de memória
  • Divertido e rápido para aprender e usar

Além disso, pense por que você quer aprender Python e provavelmente encontrará também vários benefícios para sua empresa. Caso contrário, o Python não é adequado e você não deve escolher.

DaveFar
fonte
Boa resposta - mas "bom para prototipagem rápida" - eu sempre me encolho com isso, há muitas coisas diferentes que você pode querer criar protótipo ... Não estou dizendo que o Python não seja adequado para alguns, mas posso pensar em situações em que até C seria melhor simplesmente devido a limitações de desempenho (sim, elas também se aplicam a protótipos - por exemplo, você deseja editar em tempo real alguns vídeos e a parte em tempo real é a chave do recurso).
jheriko
3

Onde está o valor para sua empresa?

Minhas razões para querer codificar em outro idioma; 1) Tornará um projeto fácil muito mais difícil, então aprenderei mais e será mais interessante

E, no processo, faça com que o projeto demore mais e aumente o risco de uma falha total. Não há benefício claro para a empresa aqui, apenas custos / riscos.

2) Acabei de ler um livro sobre python. Quero a chance de aplicá-lo em um aplicativo de negócios para entendê-lo adequadamente

Nenhum benefício para a empresa aqui, a menos que o Python seja uma tecnologia que eles desejam adotar de qualquer maneira.

3) Aumentará meu conjunto de habilidades e me tornará mais empregável

... e mais propensos a conseguir um emprego em outro lugar?

4) Python parece divertido

O mesmo acontece com o esqui aquático. Ambos são irrelevantes para a empresa.

OK, há benefícios em ter a equipe aproveitando seu trabalho, mas nenhum gerente aceita a ideia de que se divertir é mais importante do que realmente fazer o trabalho necessário de forma eficiente e com risco mínimo.


Aprenda Python em seu próprio tempo em seus próprios projetos. Quando você for bom nisso, e quando reunir um conjunto sólido de evidências para reforçar seu caso, converse com seu gerente sobre se é do interesse da empresa adotá-lo. (E esteja preparado para uma resposta pragmática de "Não" ou "Ainda não".)

Stephen C
fonte