Home  ·  Search
JavaMan
 
 Transformar Java em OpenSource?


JavaMan
SouJava
java.sun.com



Links


Java
-
Produtos
-
JUGs no Brasil
-
Projetos
-
Artigos

Sobre o JavaMan
-
Curriculo
-
JavaBaby
-
o Site
                   

 
Recentemente Steve Anglin, Editor do ONJava, escreveu um artigo mostrando  que a tecnologia Java esta sendo "Open Sourced" aos poucos (Open Source Java Prediction).

Sempre se ouve criticas de pessoas da comunidade Open Source a respeito do "controle" que a Sun Microsystems mantem sobre a tecnologia Java, e o quão lenta a Sun tem sido em atender as expectativas da comunidade Open Source. Não é raro encontrar desenvolvedores que repudiam Java por não ser "realmente livre".

Sem querer entrar no mérito a respeito de  quão aberto é o processo de evolução da tecnologia Java (o JCP), do qual qualquer um de nós pode e deve participar, e correndo o risco de gerar um monte de reclamações, eu gostaria de deixar pelo menos um pensamento a respeito de Open Source.

A noção de que Java deveria ter sido transformada em Open Source não leva em conta que Java é uma tecnologia básica, de infraestrutura. Para ser útil, Java precisa ser compatível. Todas as JVMs precisam ser compatíveis e garantir a interoperabilidade. Sem isso, Java teria desaparecido no primeiro ano.

Infelizmente, garantir a compatibilidade de tecnologias básicas de infraestrutura não é uma caracterisitica fácil de se conseguir em um ambiente Open Source.

Alguns já estão gritando: como não, e o Linux? Bem, além do fato de existirem diversas incompatibilidades entre sistemas Linux (no flames please), o Linux é um caso especial nesse ambiente. Antes do Linux, existiu o Unix, que gerou uma enorme base instalada, grandes quantidades de software, compiladores, etc. Não só isso, gerou também um ambiente de troca de informações e código que inclusive permitiu o nascimento do próprio movimento Open Source. Em cima dessa base, quem quisesse desenvolver o Linux (ou qualquer outro Unix) precisava ser compatível, e isso foi o que tornou possivel a existência do Linux (um software básico de infraestrutura) como projeto Open Source. Ainda assim, para garantir a compatibilidade do ambiente, existem hoje apenas 3 ou 4 programadores no mundo inteiro que podem efetivamente fazer "commit" no código do Kernel do Linux.

E como fazer a mesma coisa com Java? A Sun precisava que existisse uma base instalada, e um conjunto de aplicações Java, que obrigassem a necessidade de compatibilidade. Por isso, a Sun tomou as rédeas e foi (como ela se intitulou) a "guardiã" da tecnologia desde seu nascimento. Esse controle foi extremamente importante em várias situações, em particular nas nas tentativas da Microsft e da HP de quebrarem o padrão. Com a adoção da tecnologia por milhões de desenvolvedores, a Sun vem ja a bastante tempo dando importantes passos para a liberação cada vez maior da tecnologia Java. O JCP é um excelente exemplo, e o artigo de Steve Anglin acima mostra outros passos mais recentes.

Ainda assim, isso não significa que é hora de correr. Esses passos tem que ser cuidadosos, e tomados apenas com as tecnologias efetivamente maduras e adotadas largamente pela indústria. Afinal, de nada nos serviria um padrão fracionado e cheio de incompatibilidades. Seria como cortar os cabelos de Sansão.
 

Home  ·  Search

[ Envie seus comentarios para o JavaMan ]