ThoughtWorks indica reavaliar o desenvolvimento em linguagem Java e investir forte na plataforma

O ThoughtWorks Technical Advisory Board é um grupo dos altos dirigentes técnicos da empresa, eles acabaram de publicar mais uma edição da ThoughtWorks Technology Radar, contendo um relatório para ajudar CIOs e tomadores de decisões nas empresas a avaliar tecnologias novas e atuais que impactam o mercado, ou tendenciarão o mesmo.

Continuando as afirmações do relatório anterior, eles pedem para que as empresas considerem diminuir a quantidade de código desenvolvido especificamente para Java, em favor de linguagens mais indicadas para o desenvolvimento de suas soluções.

Ainda sobre linguagens, eles recomendam a adoção de Ruby, JRuby, C# 4.0, e JavaScript como linguagem de primeiro escalão, e também começarem a tentar Groovy e DSLs.

Por outro lado, eles continuam recomendando a JVM como plataforma, reforçando o uso dela como uma máquina virtual de propósito geral para linguagens como Ruby, Groovy, Scala e Clojure. (retirado do relatório de Janeiro).

Plataformas, também desaconselham o GWT, e desenvolvimento de RIAs, além de seu uso em visualizações ricas. (Abril)

No campo de SOA, aconselham a evitar o ESB, e os WS-* além do básico.

[quote=Bruno Laturner]O ThoughtWorks Technical Advisory Board é um grupo dos altos dirigentes técnicos da empresa, eles acabaram de publicar mais uma edição da ThoughtWorks Technology Radar, contendo um relatório para ajudar CIOs e tomadores de decisões nas empresas a avaliar tecnologias novas e atuais que impactam o mercado, ou tendenciarão o mesmo.

Continuando as afirmações do relatório anterior, eles pedem para que as empresas considerem diminuir a quantidade de código desenvolvido especificamente para Java, em favor de linguagens mais indicadas para o desenvolvimento de suas soluções.

Ainda sobre linguagens, eles recomendam a adoção de Ruby, JRuby, C# 4.0, e JavaScript como linguagem de primeiro escalão, e também começarem a tentar Groovy e DSLs.

Por outro lado, eles continuam recomendando a JVM como plataforma, reforçando o uso dela como uma máquina virtual de propósito geral para linguagens como Ruby, Groovy, Scala e Clojure. (retirado do relatório de Janeiro).

Plataformas, também desaconselham o GWT, e desenvolvimento de RIAs, além de seu uso em visualizações ricas. (Abril)

No campo de SOA, aconselham a evitar o ESB, e os WS-* além do básico.[/quote]

Eu já li o Radar deles passado e quem assina, Jim Webber, que detesta ESBs e acho isso uma tremenda ignorância, pois os patterns de integração isoladamente são muito bem aceitos.

Ninguém tem preconceito com o Apache Camel, por exemplo, e um ESB de segunda geração, trata uma série de outras problemáticas, como tradução de protocolos, throttling (represa de processamento), SLAs e por aí vai.

Aliás, retirado desse radar atual: [quote]In today?s connected systems environments almost all new development needs to integrate with existing applications and services. In conjunction with our adoption of simple message buses and integration techniques at the edges of a system, we have successfully used small libraries such as Apache Camel to perform the protocol bridging, message transformation and message routing tasks common to such integrations. Camel?s fluent Java interface, unit testing support and connectors for many different transports and message formats provide for an effective anti-corruption layer when implementing distributed applications.[/quote]

Aqui há um paradoxo nervoso, pois o Camel é um ESB, pode ser light, pois ele não endereça outras questões.

Eu acho que os caras tem uma raiva de “produtos” e hoje há muita competição nesse mercado, amadurecimento e até projetos opensource como o Oxygen, Camel, Fuse, JBoss que cumprem muito bem o seu papel.

Outra coisa que ele não menciona é sobre centralização de segurança, por exemplo, que é um grande vilão em projetos com equipes e frameworks heterogêneos.

Eu acho esse relatório muito tendencioso a visão de “pregador” RESTful,e acaba um pouco míope.

A mesma coisa sobre WS*, em cenários de integração com outros protocolos, como SNA, vc pode utilizar o odiado SOAP como protocolo lógico que navega sob outros protocolos.

Não vou criar um troll sobre o assunto, mas valeria à pena o pessoal pesquisar sobre o Akka - Scala + Camel, por exemplo e como endereçam problemas de integração.

[quote=Bruno Laturner]Continuando as afirmações do relatório anterior, eles pedem para que as empresas considerem diminuir a quantidade de código desenvolvido especificamente para Java, em favor de linguagens mais indicadas para o desenvolvimento de suas soluções.

(…)

Por outro lado, eles continuam recomendando a JVM como plataforma, reforçando o uso dela como uma máquina virtual de propósito geral para linguagens como Ruby, Groovy, Scala e Clojure. (retirado do relatório de Janeiro).[/quote]

É a tendência desde 2007. E é um alerta para os programadores se adaptarem, procurando aprender outras linguagens. Infelizmente, a reação de muitos é trollar no GUJ ao invés de tomar atitude.

Principalmente o Ruby, né? A recente versão do Rails 3 é pra mim uma prova de que os railers deixaram de ser babacas e se tornaram adultos; pois o framework agora deixou de ser “opinionated” para ser modularizável e extensível, coisa que qualquer framework ou plataforma grande deve ser.

RIA sempre foi bullshitagem pra mim. É colocar a aparência estética acima da simplicidade, elegância e usabilidade. Os projetos RIA que eu participei entregavam softwares bonitos mais muito pouco funcionais, e acredito que essa era a norma do mercado.

Na realidade, é o WB-* Basic Profile, né? Sim, isso é um pé-no-saco, porque é muito fácil criar um Web Service que não possui interoperabilidade com outras linguagens.

Eles falam sobre OAuth, serve?

Eu sei lá, eu consigo imaginar centralização de autenticação, com LDAP ou Active Directory. Mas não acho possível, ou mesmo aceitável, usar a mesma solução de segurança para todos os projetos de uma empresa.

Espera, Espera… Desenvolver menos código em java?? Porque eu deixaria de programar em Java para programar em C# ou Ruby? Existe um bom motivo para eu fazer isso? Pessoal vamos à prática. Se eu resolver abandonar JAVA hoje aqui na empresa, qual linguagem iria mim dá o mesmo suporte em termos de documentação disponível, ferramentas (livres e open source) e grupos de discursão como o JAVA? Qual linguagem eu tenho tudo isso e posso programar para a web, desktop mobile?

Eu reconheço a necessidade de se aprender novas linguagens e tals… Mas não estamos falando disso.

Eu realmente gostaria de saber da opnião de vocês.

E então?

Qual será o motivo disto?
Não da para levar una asneira dessas em consideração, tem gente que gosta mesmo de falta de produtividade e bugs.

Qual será o motivo disto?
Não da para levar una asneira dessas em consideração, tem gente que gosta mesmo de falta de produtividade e bugs.[/quote]

Na verdade o exceço de RIA em sites é um erro, deixa tudo mais lento, e muitas vezes nem é necessário tudo isso, as vezes um HTML resolve, o exagero é que complica.

[quote=JavaFXMan]Espera, Espera… Desenvolver menos código em java?? Porque eu deixaria de programar em Java para programar em C# ou Ruby? Existe um bom motivo para eu fazer isso? Pessoal vamos à prática. Se eu resolver abandonar JAVA hoje aqui na empresa, qual linguagem iria mim dá o mesmo suporte em termos de documentação disponível, ferramentas (livres e open source) e grupos de discursão como o JAVA? Qual linguagem eu tenho tudo isso e posso programar para a web, desktop mobile?

Eu reconheço a necessidade de se aprender novas linguagens e tals… Mas não estamos falando disso.

Eu realmente gostaria de saber da opnião de vocês.

E então?[/quote]

Bom motivo? a necessidade do mercado somente.
Ou seja, sendo que este boletim é um indicativo para as lideranças das grandes empresas, e indica para ,não abandonar o java, mas não se limitar a ele
e considerar a possibilidade de adotar outras linguagens, e que isso é uma tendencia.

Se você, profissional que trabalha com desenvolvimento, vai se adptar a isso ou não ja é outra história.

Para um simples site, com formulários de cadastro, e coisas do tipo realmente não tem necessidade.
Agora para desenvolvimento de aplicações maiores, com grande quantidade de regras de negócio e workflow agregados a camada de visualização, eu recomendo 100% o uso destas ferramentas.

[quote=DiegoVenan][quote=JavaFXMan]Espera, Espera… Desenvolver menos código em java?? Porque eu deixaria de programar em Java para programar em C# ou Ruby? Existe um bom motivo para eu fazer isso? Pessoal vamos à prática. Se eu resolver abandonar JAVA hoje aqui na empresa, qual linguagem iria mim dá o mesmo suporte em termos de documentação disponível, ferramentas (livres e open source) e grupos de discursão como o JAVA? Qual linguagem eu tenho tudo isso e posso programar para a web, desktop mobile?

Eu reconheço a necessidade de se aprender novas linguagens e tals… Mas não estamos falando disso.

Eu realmente gostaria de saber da opnião de vocês.

E então?[/quote]

Bom motivo? a necessidade do mercado somente.
Ou seja, sendo que este boletim é um indicativo para as lideranças das grandes empresas, e indica para ,não abandonar o java, mas não se limitar a ele
e considerar a possibilidade de adotar outras linguagens, e que isso é uma tendencia.

Se você, profissional que trabalha com desenvolvimento, vai se adptar a isso ou não ja é outra história.

[/quote]

Se essa for mesmo a intenção dos caras da ThoughtWorks, queria parabenizá-los. Descobriram a pólvora.
As vezes as pessoas dão uma importância grande a palavras que não trazem nada de relevante só porque foram escritas/ditas por alguém que têm visibilidade no mercado.

Bom não há duvidas que outras linguagens rodando na JVM é uma tendência ja ha algum tempo.

Sobre abandonar java de vez, não precisa ser 8 ou 80, isto pode e deve ser gradativo, e para não perder o que o colega citou acima, toda a gama de ferramentas ja prontas em java, eu indicaria Scala, Groovy e ?Ruby?, bom não conheço muito de ruby e nao sei dizer o quanto ele se integra com java por isso as “???”, mas voce pode começar a desenvolver em Scala ou Groovy e continuar usufruindo de todos os seus frameworks e ferramentas escritos em java sem problemas. Esta é a grande vantagem que vejos nestas linguagens que rodam na JVM.
É indiscutivel a enorme quantidade de frameworks e ferraments desenvolvidos em java, não podemos simplesmente pegar tudo isto e jogar no lixo da noite pro dia.

[quote=JavaFXMan]Espera, Espera… Desenvolver menos código em java?? Porque eu deixaria de programar em Java para programar em C# ou Ruby? Existe um bom motivo para eu fazer isso? Pessoal vamos à prática. Se eu resolver abandonar JAVA hoje aqui na empresa, qual linguagem iria mim dá o mesmo suporte em termos de documentação disponível, ferramentas (livres e open source) e grupos de discursão como o JAVA? Qual linguagem eu tenho tudo isso e posso programar para a web, desktop mobile?

Eu reconheço a necessidade de se aprender novas linguagens e tals… Mas não estamos falando disso.

Eu realmente gostaria de saber da opnião de vocês.

E então?[/quote]

Esta dizendo que suporte, documentação, ferramentas, comunidade, é tudo exclusividade do Java e não existe em outras tecnologias??? Sério???

Apesar de achar que esse tipo de relatório tem quase nenhuma influência sobre diretores de TI e outras pessoas em cargo de decisão nas empresas, por outro lado é bom para programadores que andam confusos sobre mudanças que estão ocorrendo no mercado.

Parabéns ao “grupo de alto dirigentes técnicos” da thoughtworks!

Não se esqueçam que vocês estão lendo uma opinião de uma empresa influente no mercado, mas que não dita as regras (alias ninguém consegue isso).

Mostrem esse documento para qualquer instituição financeira que eles vão perguntar: “onde está o Cobol?” :slight_smile:

Eu senti um ar de “O que nós usamos é o futuro!”

++

Ué… voce acha que eles deveriam recomendar o que nunca usaram?

é… eu também tive a impressão de que foram um pouco tendenciosos, apesar disso assim mesmo indicaram tecnologias que me parecem ser interessantes… só discordo bastante quanto ao java

eu também senti um certo ar de “o que usamos é o futuro”, mas esse “futuro” ai vejo ja a muito tempo que estão dizendo que vai ser o futuro e esse futuro não chega… acho que ainda vai demorar um certo tanto pra chegar (alguns chegarão beeeem fracos no mercado)…

Eles tem filiais no mundo todo, milhares de funcionários, centenas de projetos em andamento e outro a serem iniciados, é óbvio que uma empresa desse porte precisa ter algum indicador de “por onde devemos seguir”.

Agora usar essa informação ao seu próprio favor, fica a critério de cada um, no relatório não fala que eles são os masters do universo e quem que todo mundo é obrigado a seguir o que eles falam, MAS, ignorar o estudo deles, é no mínimo uma má conduta para um desenvolvedor.

[]s

Interessante a notícia. É sempre bom saber para onde as grandes instituições estão caminhando, pois pode se tornar uma tendência de mercado.

Att.

Eu ja senti um ar mais de :
“Java é UM caminho, e não O caminho”