Nota:
Eu não sou funcionário da Microsoft. A opinião é completamente pessoal. Muitos pensamentos são dos últimos 5 a 7 anos ao usar o código aberto em conjunto com grandes fornecedores como desenvolvedor.
A monocultura é boa:
minha regra pessoal para o ASP.NET é dar preferência à Microsoft e não escolher código de terceiros (código aberto ou não), a menos que não haja outra opção. A monocultura é gratificante, porque você está sendo transportado por um grande fornecedor, e a quantidade de usuários que repetem a mesma experiência é sempre grande o suficiente para obter ajuda e encontrar uma solução alternativa.
Cidades fantasmas:
O problema do código aberto em 2012 é que não é mais 2000 ou 2005. A quantidade de projetos continua crescendo, quando a quantidade de usuários, adoções e colaboradores é praticamente a mesma de anos atrás. O público é esticado. Muitos projetos interessantes ficaram obsoletos, abandonados. Não existe orçamento de projeto de código aberto. Portanto, quando o interesse termina, não há ninguém para anunciar honestamente que o suporte acabou e apaga as luzes. Os projetos nunca morrem para deixar a atenção do público focada em algo melhor e novo. Portanto, o código aberto sempre continuará crescendo e se fragmentando. Não tendo feedback em forma de recompensa monetária ou morte financeira, são entidades eternas, existindo em prol da glória eterna.
20 graus de separação:
toda adoção de uma nova biblioteca o separa do mainstream, muda para uma minoria de casos extremos. Depois de 20 etapas, como escolher a configuração de segurança, usar uma versão, estrutura, plug-in, etc. específicos. Sua solução se torna uma combinação única e global de detalhes. A pesquisa no Google ajudará apenas a provar o quão raro ou único é o problema. É sempre algum problema de autoatendimento, puramente técnico. Nunca é relevante para os negócios reais.
A qualidade vem do foco, o dinheiro é irrelevante:
não há oposição entre software comercial e código aberto. Toda a comunidade de desenvolvedores é apenas uma comunidade como sempre foi. Os grandes fornecedores simplesmente têm a vantagem de envelhecer o código por mais tempo, em melhores condições, com públicos mais amplos do que os grupos de código aberto.
Consenso: Você está perguntando se existe consenso. Possivelmente não. Infelizmente, uma grande quantidade de usuários de código aberto é politizada demais. Afinal, o código aberto é um movimento social. O código aberto é imune à crítica, porque muitas vezes a opinião negativa será vista como um ataque pessoal antitecnológico. Meu consenso pessoal: atenha-se à Microsoft.