ce:office" />

Detalhes sobre o anúncio que vai ficar para a história

Conheça as origens e os principais projetos do movimento de Java open source, e entenda as motivações e as conseqüências da liberação do Java como open source

Ainda é cedo para avaliar todo o impacto dos anúncios recentes feitos pela Sun Microsystems, mas já podemos dizer que segunda-feira, 13 de novembro, será um grande marco na história da tecnologia Java. Este será lembrado como o dia em que Java se tornou open source. É claro que isso é uma simplificação: não foi Java que se tornou open source, nem se trata de um trabalho de um só dia. Mas é uma característica dos dias históricos – eles concentram em num momento o esforço de anos, e são lembrados pelo que representam e pelos efeitos que causaram.

Mas qual é o resultado imediato do anúncio feito pela Sun e qual o possível impacto para desenvolvedores Java de todo o mundo? E o impacto no Brasil, país que investiu pesadamente em iniciativas Java e em software livre?

Um pouco de história – sem saber de onde viemos, como prever aonde vamos?

Quando a primeira versão da tecnologia Java foi anunciada em 1995, a Sun tomou uma atitude inédita e corajosa: disponibilizou o código-fonte completo da sua primeira máquina virtual e suas bibliotecas. Naquela época, era raro uma empresa sequer mostrar o código fonte! Precisamos lembrar que isso foi bem antes da liberação pela Netscape do código do Mozilla em 1998, que foi o acontecimento que deu visibilidade e impulsionou o movimento Open Source no mundo. Como comparação, o projeto Debian, hoje uma das principais distribuições Linux, estava naquela época ainda se organizando, em sua versão 0.93.

Quando a primeira versão do Java foi anunciada em 1995, a Sun tomou uma atitude inédita: disponibilizou o código-fonte completo da sua primeira máquina virtual e suas bibliotecas.

O código-fonte de Java estava disponível na internet antes de a comunidade Debian discutir e instituir a definição de Open Source (a OSD – Open Source Definition), e da criação da Open Source Initiative (OSI). Ambas só surgiram em 1998. Isso significa que a licença de Java naquela época não podia ser open source, pois o conceito de “open source” ainda não existia! Mesmo assim os criadores de Java estavam dispostos a disponibilizar o código-fonte para quem quisesse utilizá-lo.

Desde então, a Sun anunciou diversas mudanças no licenciamento do código da sua implementação de Java, cada vez buscando maior abertura. Começou pela formalização do Java Community Process (JCP) em 1998, seguida da disponibilização do código do Java 2 utilizando a licença SCSL (Sun Community Source License) em 1999. Pouco depois, em 2002, o JCP passou a reconhecer implementações open source dos padrões Java, e em 2003 a Sun anunciou a disponibilização da sua implementação de Java através da JRL (Java Research License).

Nesses anos, a Sun foi bastante criticada pela complexidade do licenciamento de Java. As mudanças todas mostravam que a empresa estava tentando equilibrar as pressões entre disponibilizar a tecnologia Java da forma mais aberta possível, e manter o controle do desenvolvimento da tecnologia para garantir sua compatibilidade.

Sempre é bom lembrar que enquanto tudo isso estava acontecendo, corria na justiça uma disputa entre a Sun e a Microsoft, exatamente relacionada ao mau uso do código fonte de Java. A Microsoft licenciou o código de Java em março de 1996, menos de um ano após a tecnologia ter sido lançada. E, meses depois, já tinha quebrado a compatibilidade da plataforma, levando a Sun a processar a empresa por quebra de contrato, em outubro de 1997. As disputas judiciais ao redor de Java entre as duas empresas só acabaram com um acordo no qual a Microsoft pagou 1.6 bilhões de dólares para a Sun no início de 2004.

Após a finalização do processo com a Microsoft, as discussões sobre abrir ainda mais a plataforma Java cresceram dentro da Sun. Danese Cooper (tesoureira da OSI e na época funcionária da Sun) e Simon Phipps (hoje Chief Open Source Officer da Sun) fizeram um grande trabalho de bastidores. Ajudaram a definir licenças, brigando por maior abertura de código, defendendo o Open Source como o caminho a ser seguido pela Sun – e em especial fazendo a ligação com a comunidade. Vistas de fora, as pressões internas parecem ter atingido um auge quando, através de uma iniciativa cujo codinome era Project Peabody, foi anunciada a disponibilização, em 2005, da implementação de Java através da licença JIUL (Java Internal User License).

De forma um pouco arrogante e sem participação ou consultas à comunidade, a combinação das licenças JIUL e JRL era considerada pelo time do Projeto Peabody como a solução de todos os problemas de licenciamento do Java. Mas isso claramente não era verdade. Em maio de 2006, mais uma forma de licenciamento foi anunciada, a Operating System Distributor's License for Java, também conhecida como DLJ (Distro License for Java), que permitia um re-empacotamento do Java 5, e uma distribuição simplificada em sistemas Linux e Open Solaris.

A força da Comunidade

Enquanto a Sun experimentava com diferentes esquemas de licenciamento, outro movimento estava acontecendo. Desenvolvedores de todo o mundo acreditavam que era importante existir uma implementação de Java que fosse disponível sob licença livre. A idéia era simples. Java é uma série de padrões definidos pelo Java Community Process, que podem ser implementados por diferentes empresas. Se todas as implementações dos padrões Java eram feitas sob licenças proprietárias, cabia então à comunidade Java trabalhar para criar outras implementações, sob licença livre, e que fossem compatíveis e capazes de concorrer com as implementações existentes.

...

Quer ler esse conteúdo completo? Tenha acesso completo