quinta-feira, 15 de abril de 2010

Bye, bye, James

Essa semana fui acometido com uma notícia um tanto triste: James Gosling, o pai do Java, está deixando a companhia. Após a compra da Sun pela Oracle, é natural que cabeças rolem, mas fiquei surpreso de saber que a cabeça em questão era o mentor chefe da linguagem em que me sustento nos dias de hoje. Ontem estava estudando um pouco a linguagem e percebi a complexidade em que as coisas se tornaram. A quantidade de frameworks [1] em Java é tanta que é praticamente impossível estudar todas elas. O profissional hoje no máximo trabalha com duas a três frameworks principais, as quais deve conhecer bem, e o resto ele “já ouviu falar” e corre atrás do Google por referências. Nessa abordagem, temos vários problemas envolvidos: Dificuldade de encontrar profissional sênior em determinada framework (que tenha desenvolvido pelo menos cinco projetos inteiros ou três anos de experiência, o que vier primeiro), codificação porca e confusa, arquitetura falha, dificuldade de manutenção, uso inadequado de funcionalidade e por aí vai. Com as linguagens atuais mais fáceis, como Ruby, .NET ou até mesmo o bom e velho PHP, o Java perdeu um pouco de espaço. Hoje, para o profissional, a quantidade de frameworks, ferramentas de desenvolvimento, banco de dados, padrões de projetos em Java é tanta que ninguém mais consegue ficar atualizado. Não dá para discernir sobre o que estudar e o que esquecer.

Algumas vezes comento isso com colegas de trabalho e a resposta que ouço não varia muito. “Vá estudar VB então que é mais fácil.” Ou então “Java não é para qualquer um mesmo”. Hoje em dia o programador Java se comporta como o programador C++ de dez anos atrás.

Einstein mudou a física com sua simplicidade de pensamento, e a equação que todos lembram é E=mc2. Simples. Einstein também tinha uma máxima que dizia “Tudo tem que ser feito de maneira mais simples possível, mas não simplória”. Há um princípio chamado KISS (Keep It Simple and Stupid) que prega a simplicidade nos projetos. Quem cunhou esse termo foi Kelly Johnson, engenheiro do Lockheed Skunk Works (criadores do avião-espião Blackbird). Leonardo Da Vinci dizia que “A simplicidade é a sofisticação definitiva”. Não vejo Java como sendo simples. Não vejo jovens querendo aprender Java. Como em alguns artigos que li recentemente, parece haver uma tendência de premeditar a morte do Java baseado nisso. Será que não é hora de mudar?

Se mantivermos esse modelo lento, estaremos com a morte da linguagem decretada. É preciso inovar, e rápido.
-----------

[1] Frameworks são bibliotecas que proveem funcionalidades genéricas, e que permitem uma customização de acordo com o projeto em questão.


Um comentário:

Cristiano Silva disse...

Bom, eu particularmente desisti de acompanhar todas as mudanças de framework e novas tecnologias Java porque, sinceramente, eu tenho vida. E o momento em que tomei esta decisão foi um dos melhores em minha vida.

Talvez você esteja certo, e o Java, tão idolatrado, vai acabar se sufocando. Well, let it be.

Sobre o Ant, quero fazer uma defesa: acho ele muuuuiiito mais fácil que o Maven.

God bless.