Em referência ao desenvolvimento e startups do .NET [closed]

4

Não postando uma pergunta minha por si só, mas eu sou um "desenvolvedor .NET". Eu li o seguinte artigo sobre a opinião de um CEO de startup de contratar desenvolvedores .NET com experiência. Ele tem alguns comentários no blog, mas não muito de um formato de discussão como o que é possível aqui. Eu também não sei nada sobre esse homem, ou estou promovendo seu blog de qualquer forma, mas o artigo me jogou fora, e eu gostaria de ouvir alguns comentários de desenvolvedores.

Pessoalmente, vejo seu ponto, pois é muito fácil para algumas pessoas criarem um site ASP.NET básico ou algumas outras soluções automatizadas sem muito conhecimento de nada além disso, e assim não as tornariam boas programadoras. Mas eu também acho que ele ignora a realidade de que, embora muitas partes do framework tenham sido automatizadas e funcionem bem, você pode encontrar algumas soluções muito avançadas se realmente tiver o know-how e a motivação para explorar todos os recursos do framework. o quadro. Muitas de suas ferramentas automatizadas são "caixa preta", mas eu nunca tive um problema onde, se eu precisasse obter mais "baixo nível" ou estender alguma classe base para me dar o que eu realmente precisava de uma forma que não era já disponível.

Quais são suas opiniões a favor ou contra?

CEO Friday: Por que nós não contratar programadores .NET

    
por jaywon 27.03.2011 / 04:55
fonte

8 respostas

22

Além das imprecisões óbvias no post do CEO (.Net não é uma linguagem, é um tempo de execução gerenciado, análogo à JVM), ele obviamente não passou muito tempo com .Net, e seu conhecimento dele parece limitado ao que você encontraria em um anúncio para o Visual Studio há cerca de 7 anos. É tão preciso quanto dizer que o PHP é a melhor linguagem para construir uma startup web, porque muitos sites na web a utilizam. (Sim, por favor, pare com isso, eu não quero mais limpar isso. Eu vou me auto-selecionar contra startups que escolhem o PHP porque apenas cerca de 1 em 50 lojas PHP tem código que vale a pena tentar manter).

Eu passei um tempo com praticamente todos os idiomas e plataformas mainstream, um bom número de programas não tão mainstream e prestei atenção à programação em linguagem Basic, Logo e Assembly em uma TI-99 / 4A e Comodoro 64/128. A razão de eu ter feito isso é porque eu gosto de aprender essas coisas.

O único ponto válido e útil que aquele CEO faz em seu discurso é que os desenvolvedores gostam de se desenvolver. Eu escolhi aprender .Net em parte porque trabalhei para a Microsoft no final dos anos 90, mas também porque vi algum valor nela e achei que poderia melhorar minha produtividade. Agora é um ecossistema muito melhor do que era quando era amplamente percebido como uma resposta tépida ao Java; C # e F # são muito mais expressivos e produtivos como linguagens do que o Java parece ter, e frameworks como o Asp.Net MVC compensam a maior parte das frustrações que já tive com o formato WebForms da Asp, uma versão antiga do VB. Net.

Existem alguns problemas culturais que encontrei no mundo do .Net; vários desenvolvedores de longa data da Microsoft stack demoraram relativamente a se aquecerem para ORMs, injeção de dependência, TDD, loose coupling e técnicas similares, mesmo que desenvolvedores Java de longa data e sintaticamente frustrados tenham presumido que essas coisas eram apenas What You Do (TM ). Mas eu encontrei códigos ruins em todas as pilhas de tecnologia possíveis.

Em vista de minhas escolhas, eu definitivamente escolheria uma loja Rails em uma loja de Websites da Asp.Net, mas seria praticamente uma lavagem se eu estivesse escolhendo entre Rails e Asp.Net MVC e FluentNhibernate e todas as ferramentas que o dinheiro pode comprar. Por outro lado, nunca mais irei escolher trabalhar em uma loja que decida construir sua arquitetura em Perl ou PHP, a menos que Perl seja escrito por Brian D Foy, ou os desenvolvedores pelo menos tivessem o bom senso de construir seu PHP app em um framework MVC decente, e tudo mais sobre a empresa me esfrega do jeito certo. (Divulgação completa: Eu estou, de fato, trabalhando para uma empresa que construiu sua arquitetura em Perl e PHP. Ugh. Mas estamos tentando consertar isso.). A vida é curta; Eu quero programar em algo que me traga alegria.

Mas, o mais importante, eu nunca iria trabalhar para um CEO que pensa que, porque você aprendeu algo, você é menos valioso do que alguém que não aprendeu isso.

    
por 27.03.2011 / 06:14
fonte
13
Generalidades gerais nunca são úteis ou interessantes.

O artigo é uma perda de tempo, porque o autor não consegue fazer uma única afirmação específica e falsificável sobre o desenvolvimento de software.

.NET is teaching the wrong things for startups.

O que isso significa?

Every day spent learning a Microsoft kitchen takes TWO days to unlearn.

O que! Por quê?

Se o autor quisesse ser rigoroso e convincente, ele teria que se afastar do uso pesado da analogia hambúrguer-esquilo e realmente falar sobre desenvolvimento de software.

    
por 27.03.2011 / 05:22
fonte
2

Você pode criar aplicativos sólidos em várias plataformas diferentes. Eles têm várias características e trade-offs associados, mas lembre-se que as soluções "livres" são apenas "gratuitas", pois provavelmente você não se incomodará em comprar suporte (como algumas grandes empresas fazem) para elas e isso depende de uma versão madura apenas funciona ou já tem desenvolvedores que sabem como funciona e / ou podem corrigir problemas com relativamente pouco esforço.

SE você obtém mais produtividade ou escalabilidade de uma oferta comercial em relação ao dinheiro economizado na criação do produto, pode valer a pena pagar as taxas de licença. Caso em questão: o StackExchange executa a pilha da Microsoft. De suas postagens no blog, parece que sua arquitetura é muito eficiente em termos de hardware . isso ajudaria a mitigar o custo das licenças.

A chave é arquitetura sólida muito mais do que a escolha de plataforma específica. Dito isso, algumas plataformas ajudam você mais do que outras pessoas a fazer as coisas difíceis.

    
por 27.03.2011 / 05:49
fonte
2

Eu posso ver seu ponto de vista, mas eu diria que toda linguagem, paradigma, metodologia, etc. tem desenvolvedores de todos os níveis que os empregam. Eu não sei exatamente como ele está definindo a startup, mas eu diria que se refere a uma nova empresa apoiada por capital de risco que está procurando crescer o mais rápido possível. Se esta é realmente a definição, então eu diria um dos seus principais pontos (muito poucos "startups" executando o Windows Server) com isso:

A pilha de tecnologia da Microsoft é cara . Muito caro quando você considera que a principal alternativa pode ser obtida gratuitamente. Pode não influenciar as decisões de algumas startups?

Eu concordaria que o .Net reduz o preço de admissão para os desenvolvedores e, como resultado, você terá muitos programadores de .Net que não progridem muito além do básico. O argumento de que você simplesmente "não pode" fazer um hambúrguer de 1,7 oz é bem ridículo; programadores experientes em .Net certamente podem fazer com que 1,7 oz patty, quando necessário, e poderiam se beneficiar do aumento de produtividade desses hambúrgueres de 1,6 onças, quando 1,6 rissóis são tudo o que é necessário para o problema em questão.

O resultado é que você encontrará desenvolvedores extremamente talentosos em praticamente qualquer idioma.

    
por 27.03.2011 / 05:35
fonte
1

Como outros já disseram, o cara que escreveu esse post é ignorante e desinformado, e provavelmente escreveu um post provocativo simplesmente por atenção.

IMO o problema é um dos custos de licenciamento; custa praticamente nada além do preço de um nome de domínio e servidor de hospedagem, e possivelmente uma conta de processamento CC para iniciar uma empresa usando a tecnologia de código aberto. Com o .NET você tem taxas de licenciamento muito caras; Mesmo com o programa Bizspark você só tem direitos de uso por três anos, e então você precisa pagar o nariz para continuar a usá-lo - enquanto três anos é tempo de sobra para conseguir dinheiro se sua startup tiver algum valor, ainda é um desvio, porque esse dinheiro pode ser usado para marketing e outras coisas que vão colocar seu nome lá fora e gerar negócios.

Eu falo por experiência como estou / estava no processo de tentar minha mão em uma startup e tive que escolher entre open source e .NET (e meu trabalho diário é um desenvolvedor .NET). Eu finalmente escolhi o código aberto, embora eu seja membro do Bizspark, porque o IMO de longo prazo, a rota de código aberto, é mais estável, e normalmente há uma comunidade muito maior e mais envolvida.

    
por 08.04.2011 / 21:49
fonte
0

Parece que o autor do blog está à procura de certos tipos de pessoas para se juntar à sua equipe (jovem, quadril e com um Mac). Eu acho que uma alta porcentagem de desenvolvedores .NET vem do mundo corporativo ou aprendeu na faculdade. Eles estão procurando por empreendedores nascidos naturalmente, por isso, se você não tiver a barraca de limonada de maior bilheteria quando era criança ou trabalhou em um projeto de código aberto ao escalar a Cordilheira dos Andes, não se candidate.

Outro comentário em sua página de postagem de emprego é:

You can switch on a dime between C++, PHP, Bash, Cron, HTML, CSS, JavaScript, jQuery, Dwoo, SQL — not because you know them all, but because you're the sort of person who can just pick it up and figure it out.

Meio que um bom ponto, mas quando você diz que contrata o melhor, ele deve saber o material atual e pegar o novo (acabei de descobrir que compramos uma empresa que usa o Salesforce e talvez eu precise fazer alguma integração. ). Não pode bater no treinamento de trabalho, mas as startups podem pagar isso?

    
por 27.03.2011 / 18:06
fonte
0

Eu não sou profissional (tenho 17 anos), mas uma frase chamou minha atenção:

It is full of amazing tools that automate absolutely everything.

Comecei com C (por conta própria), depois aprendi a montagem (ainda por conta própria) e agora, na escola, C #. O que eu notei é que o C # (e o .NET) permite que você esqueça tantas coisas e ainda seja capaz de fazer coisas incríveis. É muito fácil. Pode ser ok para bons programadores, mas os de nível superior devem saber o que está acontecendo nos bastidores. É por isso que esse cara não quer programadores .NET, eles podem não saber exatamente o que estão fazendo, e isso não é bom para

hiring the best programmers in the world.

    
por 27.03.2011 / 19:27
fonte
0

Sempre que trabalho em um projeto do Windows, sempre me pergunto como automatizar todas as coisas que estou acostumado a automatizar no Unix. Por exemplo, como automatizar a criação de um espaço de trabalho de um estúdio visual quando um novo desenvolvedor se junta à equipe? (Eu sei, Eclipse não é melhor).

Em geral, vi desenvolvedores do Windows repetidamente executando procedimentos em várias etapas com alguma GUI, quando um desenvolvedor Unix teria escrito um script na segunda vez. Os desenvolvedores do Unix estão constantemente construindo pequenas ferramentas, mas eu não vi desenvolvedores do Windows fazendo o mesmo.

Já faz alguns anos desde que eu fiz o desenvolvimento .NET, então talvez as coisas tenham melhorado drasticamente. Ainda assim, acho que isso é um fator na má opinião de Barret sobre os desenvolvedores que trabalharam apenas no ambiente Microsoft.

    
por 08.04.2011 / 21:15
fonte

Tags