DEV Community

Henrique Lobo Weissmann (Kico)
Henrique Lobo Weissmann (Kico)

Posted on

O framework "Maria vai com as outras"

Texto escrito em 2012

"Sabe Kico, eu acho Grails muito legal, mas fico receoso em usá-lo no meu novo projeto porque não é um framework muito popular. O que você acha disto?". Escuto esta pergunta umas 4 ou 5 vezes por semana. Então resolvi me aprofundar nesta questão e, como resultado, surgiu este post, que não deve ser lido como algo específico sobre Grails, mas sim meus pensamentos aplicados a qualquer tecnologia "nova" ou "menos popular".

Definição de popularidade

A definição mais ingenua seria "aquilo que é muito usado" porque só leva em consideração a quantidade, ignorando completamente "quando" e "onde".

Muitas vezes escuto a seguinte frase: "tecnologia X não é muito popular, pois não conheço muitas pessoas que a usam". É um argumento idiota: basta pedir ao sujeito que saia um pouco da sua zona de conforto e pesquise direito antes de falar bobagem. 90% dos profissionais com quem lido trabalham com Java. Isto quer dizer que .net seja impopular?

Outro bom contra-exemplo: Cobol. Não conheço nenhum programador COBOL, mas um estudo de 2007 da Gartner descobriu que 75% (SETENTA E CINCO PORCENTO) das aplicações corporativas eram escritas em... bem: Cobol.

Sendo assim, antes de pensar na popularidade de uma tecnologia, remova as suas impressões pessoais sobre o assunto.

Popular então é algo que possua um grande número de usuários em um certo domínio em um dado momento. Ok, uma definição mais completa, mas que não adiciona nada (ao menos pra mim), e que levanta a seguinte questão:

Qual o grande "ganho" da popularidade?

Mais gente pra falar a respeito e maior suporte da "indústria". Além disto, também há aquele sentimento imbecil de que "se é muito usado, é porque deve ser muito bom".

Gerentes cretinos amam,  pois fica mais fácil encontrar mão de obra e substituir elementos problemáticos. Se você pensa na sua equipe como uma linha de montagem de software, a popularidade de um framework é fundamental.

Pessoalmente tenho nojo desta linha de raciocínio porque só serve para uma coisa: alimentar a mediocridade gerada pela massificação.

É inegável o sentimento de segurança provido pela popularidade de um framework: afinal de contas, peixes muito grandes torcem para que isto ocorra, pois assim conseguem reduzir os custos de produção.

(só pra lembrar, o uso em massa de uma tecnologia acarreta na redução do seu custo que, no caso do software, é a mão de obra, ou seja, você desenvolvedor)

Qual o grande risco da "impopularidade"?

Óbviamente o desaparecimento da tecnologia. Porém este risco só é real se esta for fechada e o acesso a seu código fonte inexistente. Mas como hoje open source domina, no pior dos casos você ainda poderia dar manutenção naquela base de código sozinho. Afinal de contas, migrar de framework em 99,999% dos casos equivale à reescrita completa da aplicação, certo?

O que realmente importa?

Atender bem ao cliente. Não vou usar um framework só porque todas as pessoas "legais" do meu bairro o fazem também, mas sim porque me sinto à vontade com ele e o resultado do seu uso gera um produto cujo nível de qualidade satisfaça (e bem) as necessidades do meu cliente.

Tenho cá minhas dúvidas se realmente é possível atingir a qualidade sem o prazer na execução do trabalho. Eu pelo menos nunca consegui. E outra: se o projeto é seu, por que ficar usando o que não gosta só porque é popular? Pra aparecer bonito na fita?

No final das contas...

Há dois caminhos a serem seguidos: ser pastor ou cordeiro. Escolhi o caminho mais caro que é o primeiro e até hoje não me arrependi. :)

Top comments (0)