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
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
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
Quando a primeira versão do Java foi anunciada em
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
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
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.
...