IBM e Oracle mudam o jogo: Uma aliança surpreendente no OpenJDK

O que acontece quando duas superpotências... não colidem

A aliança Oracle-IBM® no OpenJDK teve o seu efeito propagado em todo o segmento de mercado Java™ , com alguns comentaristas divididos sobre o que isso significa para o funcionamento do ecossistema Java. Com esta visão geral e estes comentários, o ex-editor da JavaWorld , Atenas O'Shea, chega ao núcleo da questão: o que isso significa para o Project Harmony, o JCP e o futuro do desenvolvimento baseado em software livre e padrões abertos na plataforma Java.

Athen O'Shea, Technology editor and writer, Freelance

Photo of Athen O'SheaAthen O'Shea escreve e edita textos sobre alta tecnologia e já foi editor do JavaWorld.com. Como freelancer, ele já colabora com o developerWorks desde 2001.



21/Dez/2010

A IBM e a Oracle surpreenderam muita gente ao anunciarem, em 11 de outubro, que iriam unir forças para promover o projeto OpenJDK. Muitos comentaristas concordaram que essa ação, que redefine o ecossistema Java ao unir duas das maiores concorrentes, é uma boa notícia para o futuro da tecnologia Java.

Mais de 60% dos participantes da pesquisa realizada pela Javalobby (entre 600 pessoas no total na última contagem) disseram que acreditam que a decisão da IBM em copatrocinar o projeto OpenJDK é benéfica para a tecnologia Java. Ao decidirem concentrar os esforços de desenvolvimento conjunto no OpenJDK, as empresas efetivamente acabaram com as especulações sobre uma ramificação do Java liderada pela IBMe sobre o que isso significaria para o segmento de mercado de bilhões de dólares do Java. Sem essa preocupação, "podemos nos voltar para a inovação", disse Mike Milinkovich da Eclipse Foundation.

No centro do comunicado da Oracle-IBM estão escolhas difíceis feitas por um segmento de mercado em constante mudança, de empresas multinacionais com investimentos de tecnologia a longo prazo a pequenas empresas e indivíduos que têm que decidir sobre a continuação do desenvolvimento de softwares na plataforma Java. Este artigo apresenta uma visão geral dos principais fatores e participantes envolvidos, ou afetados, pela decisão da Oracle e da IBM. No final de cada sessão haverá links para recursos da Web que abordam os aspectos da aliança.

OpenJDK como um projeto da Oracle-IBM

OpenJDK é a implementação de referência de software livre da plataforma Java; ele abrange o Java SE, a linguagem Java, o JDK e o JRE. As requisições de especificação do OpenJDK estão sujeitas a votação pelo Java Community Process. Uma votação futura irá determinar se o novo roteiro proposto do OpenJDK será aceito pelo comitê executivo do JCP.

Mark Reinhold, o arquiteto chefe do Java Platform Group na Oracle, afirmou que os engenheiros da IBM que estão trabalhando no OpenJDK irão provavelmente "contribuir primeiramente com as bibliotecas de classes, trabalhando em conjunto com o restante do grupo para a criação de uma base de origem comum para uso nas diversas Java virtual machines." As duas empresas provavelmente vão continuar a trabalhar de forma independente nas suas respectivas JVMs, "nas quais a maioria das diferenciações de recursos corporativos" é encontrada, ele afirmou.

Controle do OpenJDK?

O projeto OpenJDK possui um comitê de controle temporário com a tarefa de criar uma constituição para a comunidade do OpenJDK. Conforme Simon Phipps mencionou, o status do comitê parece incerto na data que este artigo foi escrito.

Ganhar um pouco, perder um pouco

A decisão de aceitar a IBM como uma parceira no OpenJDK foi certamente uma decisão estratégica da Oracle. O vice-presidente de software da Oracle, Adam Messinger, disse que a ação refletiu a pressão que ambas as empresas sofrem para se moverem rapidamente e atenderem aos desafios impostos pelo hardware multinúcleo que está surgindo. "O acordo é um reflexo da realidade estratégica enfrentada pelas duas empresas", ele afirmou.

A aliança do OpenJDK remove a Oracle do isolamento, disse RedMonk's Stephen O'Grady, efetivamente afirmando e centralizando a sua função no ecossistema Java:

Se a Oracle tivesse que escolher um fornecedor para ficar ao seu lado nos seus esforços de Java, a IBM seria a escolha mais fácil. Além da confiança cega que as empresas depositam na IBM — "você não será demitido por comprar na IBM," etc. — a gigante azul possui uma reputação invejável com os desenvolvedores. Agora com a IBM publicamente na mesma página que a Oracle, a última tarefa de preservação do ecossistema se tornou muito mais fácil.

Foi também uma ação benéfica para a IBM, mesmo considerando o sacrifício óbvio do Harmony. Ao deslocar os seus recursos de engenharia do Project Harmony para o OpenJDK, a IBM solidificou sua influência no futuro da tecnologia Java, embora claramente sob a supervisão da Oracle. Ambas as empresas disseram que vão trabalhar em conjunto para garantir a fortificação do JCP e o seu aprimoramento como o principal órgão de normas, impulsionando o crescimento da plataforma Java.

Ainda não foi definido o que acontecerá agora com o Project Harmony, qual o significado da aliança Oracle-IBM para o Google (e para o proxy Android), qual o significado da aliança do OpenJDK (e da resposta do Google) para os outros fornecedores no espaço da tecnologia Java e como, e até que ponto, o JCP será reformado.

  • A maioria dos committers do OpenJDK já está empregada na Oracle (antiga Sun) e na IBM, acompanhada pelos desenvolvedores do Google e da Red Hat. (O Tópico do Dalibor Oracle Java/FOSS Ambassador fornece mais informações sobre esse assunto.)
  • Bob Sutor, vice-presidente da IBM de sistemas abertos e Linux, fornece detalhes sobre as razões da decisão da IBM. Ele menciona o ponto positivo, que é o aproveitamento aprimorado para garantir o futuro de código aberto do Java e do JCP, e o ponto negativo, que é o impacto da decisão no Project Harmony para a IBM.
  • Stephen O'Grady fornece a visão de um analista para o efeito propagador da decisão da Oracle-IBM em todo o ecossistema Java, incluindo especulações sobre os motivos pelos quais a parceria com a IBM no OpenJDK foi uma ação benéfica para a Oracle.
  • Mark Reinhold explica o pensamento por trás do novo roteiro do OpenJDK e os seus JSRs divididos.

E o Project Harmony?

A IBM tem apoiado há muito tempo o Project Harmony, o Java Runtime de software livre desenvolvido e licenciado pela Apache Software Foundation. Para algumas pessoas na comunidade Java, o Harmony pareceu uma alternativa viável para a implementação oficial da plataforma Java, em caso de necessidade. O Harmony também é visto como uma etapa de teste da posição da Oracle em comparação com as implementações e os licenciamentos independentes do Java.

Bob Sutor, o vice-presidente da IBM de software livre e Linux®, resumiu a decisão da IBM em redirecionar os seus engenheiros do Project Harmony para o OpenJDK, chamando-a de pragmática:

Ficou claro para nós que a Sun, e depois a Oracle, nunca planejou disponibilizar os testes importantes e os testes de certificação do Java, o Java SE TCK, para o Apache. Discordamos dessa opção, mas não cabia a nós tomar essa decisão. Então, ao invés de continuarmos conduzindo o Harmony como um esforço Java não oficial e não certificado, decidimos mudar a direção e concentrar os nossos esforços no OpenJDK.

Enquanto essa ação torna o futuro do Harmony incerto, a forma e a certeza da evolução do projeto estão nas mãos dos desenvolvedores. A decisão da IBM "não é benéfica para o Harmony", disse Geir Magnusson, criador do Harmony e membro do comitê do Apache. "Mas, mantenha a perspectiva: para a Apache Foundation, cabe à comunidade decidir o que será feito. Nós fazemos o que a comunidade solicita."

A reação inicial à decisão variou de "fim do jogo (e não somente para o Harmony)" à sugestões para que partes do Project Harmony fossem utilizadas no OpenJDK. Alguns também especularam que a plataforma poderia continuar a evoluir com o apoio de outro patrocinador corporativo: em outras palavras, o Google.

Leitura complementar: Project Harmony, passado e futuro


Google, Android e a teoria da nova guerra fria

Embora o Google não seja o único fornecedor de tecnologia Java interessado na decisão da Oracle-IBM, talvez seja o fornecedor que mais tem a perder, ou a ganhar, com o desenrolar dessa história. O processo movido pela Oracle contra o Google em agosto (alegando diversas violações de direitos autorais e patentes relacionadas ao Android) foi um duro golpe para a essência do software livre através da qual o ecossistema Java prosperava. As solicitações para ramificação do Java aumentaram após o anúncio e algumas pessoas ficaram com receio de que os desenvolvedores que estavam anteriormente indecisos sobre a tecnologia Java fossem debandar.

O fato de o Project Harmony estar sem um patrocinador corporativo forte pode ser ruim para o Google (visto que o Android foi desenvolvido com base em um subconjunto do Harmony) ou pode ser muito bom, caso o Google opte por patrocinar o Project Harmony.

Seja qual for a decisão do Google, ela afetará não só o Android, mas a forma como os fornecedores veem e aproveitam a tecnologia Java em suas próprias implementações. Além disso, como muitos têm comentado, podemos estar entrando em uma nova era de guerra fria— com o Google, e não a Oracle, como elemento externo.

Leitura complementar: O que virá a seguir para o Google


Reformando o JCP

A Oracle e a IBM declararam que irão trabalhar em conjunto para reformar e aprimorar o JCP, garantindo a sua continuidade como o órgão responsável pelas normas que define as especificações da plataforma e da linguagem Java. Os representantes da Oracle afirmaram que a aprovação do JCP é essencial para o desenvolvimento do Java SE, iniciando com a futura votação sobre o roteiro revisado do OpenJDK anunciado no JavaOne.

Bob Sutor disse que a IBM espera ver "longas reformas necessárias no JCP [...] para torná-lo mais democrático, transparente e aberto". Alguns representantes da Oracle também deram a entender que não somente a reforma do JCP está sendo discutida no comitê executivo, como eles acreditam que a comunidade ficará muito satisfeita com a proposta resultante.

O tempo dirá como o comitê executivo, e a comunidade em geral, irá reagir aos aprimoramentos propostos no JCP. De acordo com Stephen Colebourne, membro da Apache Software Foundation, a futura votação do JCP será uma etapa de teste inicial, não somente para o roteiro revisado do OpenJDK/Java 7, mas também para a forma como os fornecedores como Red Hat, VMWare, SAP e Google irão reagir à aliança Oracle-IBM. Colebourne também propôs uma divisão no JCP que deixaria a Oracle com o poder único e explícito de voto sobre a especificação da essência do Java (Java SE, ME e JVM, de acordo com Colebourne), declarando as bibliotecas auxiliares como um domínio separado sob a direção do JCP independente do fornecedor.

Leitura complementar: Reforma do JCP e Java de software livre


Um ecossistema Java mais saudável?

A aliança Oracle-IBM é amplamente vista como uma vitória para a tecnologia Java: ela acelera o projeto OpenJDK e permite a colaboração e o compartilhamento de recursos entre um conjunto muito maior de engenheiros. A ação consolida as energias de duas das forças mais influentes do segmento de mercado (no que diz respeito aos investimentos de tecnologia e receitas) em um projeto fundamental, o OpenJDK. E ela efetivamente acabou com as especulações sobre uma ramificação do Java liderada pela IBM, que traria mais prejuízos do que benefícios para o segmento de mercado Java como um todo.

Ao comentar sobre a aliança, o vice-presidente de tecnologias emergentes da IBM, Rod Smith, reforçou o efeito estabilizador da aliança para o ecossistema Java e para os desenvolvedores, fornecedores e para os negócios. "Isso pode remover algumas das incertezas sobre o futuro do Java", disse ele. Danny Coward (ex-funcionário da Sun) descreveu a aliança como o começo de uma "nova era de cooperação e concorrência" que, segundo Adam Messinger da Oracle, irá acelerar a inovação na plataforma Java.

A estabilidade é uma coisa boa, assim como a inovação: ambas são essenciais para o bom funcionamento do ecossistema Java. E enquanto a estabilidade depende das grandes empresas, a inovação no segmento de mercado Java tem sido, historicamente, uma força disruptiva: uma arena onde os fornecedores pequenos e os desenvolvedores de rede individuais às vezes contam mais do que as empresas multinacionais. É a interação entre esses dois poderosos interesses que mantém o segmento de mercado Java honesto e em funcionamento, e esperançosamente próspero.

Conforme mencionado por Fabrizio Giudici (e Gianugo Rabellino), existe uma questão final, que é a questão da liberdade; liberdade conforme definido pela Free Software Foundation e codificado pelas licenças de software livre. Essa questão poderá determinar se o futuro do Java está baseado em uma ou duas plataformas centrais, ou mais.

Leitura complementar: O que contribui para o bom funcionamento do ecossistema Java?

  • Fabrizio Giudici avalia a questão de diferentes ângulos na sua discussão sobre as definições de liberdade — Rabellino avalia o software livre versus padrões abertos— e as vantagens e desvantagens da ramificação do OpenJDK.
  • Escrito 10 dias antes do anúncio da Oracle-IBM, James Governor considerou a inovação disruptiva (e o controle do software livre) a regra para o futuro da tecnologia Java, e não mais a exceção.

Recursos

Aprender

Discutir

  • Participe da comunidade do My developerWorks. Entre em contato com outros usuários do developerWorks e explore os blogs, fóruns, grupos e wikis voltados para desenvolvedores.

Comentários

developerWorks: Conecte-se

Los campos obligatorios están marcados con un asterisco (*).


Precisa de um ID IBM?
Esqueceu seu ID IBM?


Esqueceu sua senha?
Alterar sua senha

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

 


A primeira vez que você entrar no developerWorks, um perfil é criado para você. Informações no seu perfil (seu nome, país / região, e nome da empresa) é apresentado ao público e vai acompanhar qualquer conteúdo que você postar, a menos que você opte por esconder o nome da empresa. Você pode atualizar sua conta IBM a qualquer momento.

Todas as informações enviadas são seguras.

Elija su nombre para mostrar



Ao se conectar ao developerWorks pela primeira vez, é criado um perfil para você e é necessário selecionar um nome de exibição. O nome de exibição acompanhará o conteúdo que você postar no developerWorks.

Escolha um nome de exibição de 3 - 31 caracteres. Seu nome de exibição deve ser exclusivo na comunidade do developerWorks e não deve ser o seu endereço de email por motivo de privacidade.

Los campos obligatorios están marcados con un asterisco (*).

(Escolha um nome de exibição de 3 - 31 caracteres.)

Ao clicar em Enviar, você concorda com os termos e condições do developerWorks.

 


Todas as informações enviadas são seguras.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=80
Zone=Tecnologia Java
ArticleID=604411
ArticleTitle=IBM e Oracle mudam o jogo: Uma aliança surpreendente no OpenJDK
publish-date=12212010