Artigo Java Magazine 31 - Sou + Java e Entrevista
Sou + Java
International Developers Conference
Competição e Simpósio Internacional trazem grandes especialistas mundiais ao Brasil
O SouJava realizou nos dias 19, 21 e 22 de novembro seu evento internacional, composto por uma competição entre equipes e um simpósio com palestrantes de renome mundial.
O Sou+Java Developers Conference trouxe ao Brasil representantes de grandes empresas que definem o futuro da tecnologia Java-Sun (Simon Phipps e Robert Brewin), NetBeans.org (Charlie Hunt e Tim Boudreau), Jboss/Hibernate (Norman Richards, Max Andersen e Clebert Succonic), Apache (Geir Magnusson), Red Hat (Tom Tromey), ObjectWeb (François Letellier), Oracle (Mike Keith) e IBM (Flavio Bergamaschi) – além de importantes desenvolvedores e formadores de opinião, como Floyd Marinescu (fundador do TheServerSide.com) e Ean Schuessler (desenvolvedor do ERP Java Open4Biz).
O evento foi aberto co uma competição mundial, a Maratona4Java, que aconteceu no dia 19 simultaneamente em nove cidades brasileiras e uma norte-americana (Austin, EUA). Durante a competição equipes de quatro desenvolvedores precisam solucionar em Java um problema cuja especificação é fornecida apenas meia hora antes do início. A equipe ganhadora foi de Brasília (cidade onde foi criada originalmente a Maratona), e foi composta por Bruno Melo, Elio Numazaki, Pablo Gandulfo e Mário Malagutti. Em segundo lugar veio uma equipe de São Paulo e o terceiro lugar ficou com o Rio de Janeiro.
O simpósio internacional, realizado nos dias 21 e 22, foi voltado ao desenvolvedor profissional, com palestras técnicas em inglês, com tradução simultânea, e um espaço para estandes de patrocinadores. No segundo dia, foi também realizado um debate envolvendo uma seleção dos palestrantes, explorando o futuro da tecnologia Java sob uma perspectiva multinacional.
Ferramentas, Open Source e a Visão da Sun
Simon Phipps, Robert Brewin, Tim Boudreau, Charlie Hunt,
Em uma longa conversa de mais de uma hora de duração, quatro importantes executivos e desenvolvedores falaram com exclusividade à Java Magazine, sobre temas que variavam de ferramentas de desenvolvimento e os planos da Sun para Java, até o efeito do movimento Open Source sobre o mercado de TI.
Na entrevista, que aconteceu a sala VIP do evento Sou+Java, estavam Simon Phipps, Chief Open Source Officer da Sun; Robert Brewin, Distinguished Engineer e Tools Architect da Sun; Tim Boudreau, Evangelista e Staff Engineer do NetBeans, e Charlie Hunt, evangelista Técnico do NetBeans.
Brewin, adepto do surf nas praias californianas e colega de sala de James Gosling, falou sobre ferramentas e iniciativas da Sun em geral; Phillips, que mantém um popular e engraçado blog em webmink.net, tratou longamente do movimento Open Source e do trabalho e planos da Sun nesta área. Hunt esteve presente durante toda a entrevista, mas preferiu deixar a palavra ao seu colega Boudreau, um dos fundadores do NetBeans que teve sua primeira empresa de tecnologia do PhotoShop com Java para demostrações do IDE.
Veja a seguir uma seleção dos tópicos dessa entrevista.
Como começou o projeto NetBeans?
Boudreau: O NetBeans foi iniciado em 1997, originalmente como um projeto de estudantes em Praga, na República Tcheca. Algum tempo depois, os desenvolvedores se graduaram, mas só conseguiram empregos fracos. Decidiram então se arriscar transformando o projeto em um negócio: conseguiram o apoio de investidores e fundaram uma empresa. E a ferramenta evolui ao ponto de interessar à Sun, que a comprou em 1999.
Quais são os desafios ao trabalhar no projeto?
Boudreau: Considero trabalhar no NetBeans um verdadeiro "batismo de fogo". Se tivesse que transformar um programador Java em um desenvolvedor topo-de-linha, eu o envolveria no NetBeans Core por alguns anos. Lá se enfrenta uma série de problemas difíceis e fascinantes, como a manutenção de compatibilidade retroativa e o projeto de APIs públicas.
Como é o trabalho no departamento de ferramentas da Sun?
Brewin: Trabalhamos com uma série de ferramentas, entre elas o Java Studio Creator e o NetBeans. Acompanhamos a definição de arquitetura e as APIs, e participamos da criação e evolução de padrões. Também apoiamos e coordenamos equipes de desenvolvedores para garantir uma integração entre ferramentas e as APIs fundamentais de java. E nos dois últimos anos, temos trabalhado para que todas as ferramentas de desenvolvimento da Sun sejam criadas sobre o NetBeans.
Dado o aumento da importância do NetBeans e a liberação recente do java Studio Creator para uso gratuito, nota-se uma tendência forte de abertura das ferramentas da Sun...
Phipps: Na Sun estamos trabalhando para que todas as ferramentas se tornem open source. Temos seguido um processo em que começamos tornando gratuitos os produtos binários, depois criamos uma comunidade em torno do código – e finalmente liberamos o produto com licença open source. A partir deste ponto, passamo a ganhar dinheiro vendendo serviços.
Com essa abertura, acontece o que vem ocorrendo com o NetBeans e o OpenSolaris [a versão open source do sistema operacional da Sun]: criamos uma comunidade muito maior do que seria possível apenas com o esforço da empresa e expandimos o mercado. Isso aumenta o apelo dos produtos e atrai novas pessoas de alto nível para trabalhar nos projetos. Antigamente, se afirmava que se um produto fosse tornado open source não haveria mais como ganhar dinheiro com ele. Hoje sabemos que os clientes pagam não pelos bits no disco, mas pelos serviços e a garantia.
Imaginando que uma pequena empresa se especialize num produto open source da Sun, por ser menor e mais dinâmica ele não poderia oferecer suporte mais ativamente e prejudicar os negócios da Sun?
Phipps: Um dos aspectos-chave do Open source é que ele não é livre quando se trata de contribuições. Somente pessoas com privilégios de committer podem contribuir código aos projetos. Sem esses privilégios não se pode garantir suporte "24" por "7". para isso, é necessário poder fazer correções no produto – e garantir que essas correções permaneçam, mesmo em novas versões. O grupo JBoss, por exemplo, ganha dinheiro controlando todos os seus committers. Nós somos mais abertos; vamos dividir esses privilégios também com contribuintes externos. (Para o OpenSolaris, já teremos o primeiro committer fora da Sun no início de 2006.)
voltando ao exemplo da pequena empresa, ela teria todo o direito de participar, e com o tempo ganhar os direitos de committer, passando a competir diretamente com a Sun. Mas não poderia simplesmente entrar de para-quedas, faturar e sair do negócio. Se uma empresa quer se estabelecer como fornecedora de serviços para um produto open source, terá que se dedicar a longo prazo e gradualmente obter privilégios de committer. Se fizer isso, será muito
bem-vinda, pois estará contribuindo para a comunidade - e beneficiando a todos. E se por causa dessa empresa não conseguirmos mais vender nossos serviços, bem, vamos ter que correr atrás!
Então a competição, no final, será benéfica
Brewin: É realmente através da competição que a inovação acontece. Veja o caso Eclipse/NetBeans. O NetBeans é hoje muito melhor por conta da competição do Eclipse. Atualmente o Eclipse tem que competir com o NetBeans - coisa que não acontecia antes.
Vocês verão neste e no próximo ano uma taxa muito maior de produtos da Sun se tornando gratuitos ou open source. Às vezes demoramos para liberar um produto como open source, apenas por razões legais. Um dos nossos cuidados é garantir que usuários do produto não
sejam processados porque não checamos o código quanto a direitos autorais, por exemplo.
Vocês podem dar exemplos desse processo de abertura?
Phipps: Precisamos de cinco anos para garantir que podíamos lançar o Solaris sob licença open source. O Solaris começou em 1981, e ao longo do tempo fomos adquirindo empresas e incorporando tecnologias ao produto. Só que nos anos 80 não se imaginava que seria necessário, um dia, possuir os direitos autorais sobre o código incorporado para liberá-lo como
open source. Verificamos, e realmente não podíamos liberar várias partes do Solaris. Assim, foi necessário pedir a várias empresas para que nos cedessem ou vendessem esses direitos. (Foram empresas de todos os tipos; você ficaria chocado com algumas que visitamos!). E para casos em que não conseguimos obter os direitos, tivemos de fazer a engenharia reversa do
código e reimplementá-lo.
Em 2003 final mente chegamos a um ponto em que se tinha todos os direitos sobre o código - o suficiente para criar um produto open source a partir do Solaris. Depois, ainda restava estabelecer a infra-estrutura para distribuir o software ... e só em 2004, após cinco anos de trabalho, lançamos o OpenSolaris.
Brewin: Essa estratégia open source vem funcionando muito bem. Por exemplo, provavelmente não conseguiríamos ter hoje um produto como o NetBeans sem contribuições externas.
Boudreau: É verdade. E é interessante notar que, com cada plug-in criado para o NetBeans, aprendemos sobre problemas de integração e limitações do projeto - e descobrimos novos recursos que desenvolvedores podem precisar. Sempre que alguém faz algo inovador sobre o NetBeans, além de se descobrirem bugs, são identificadas áreas para as quais são necessárias
novas APIs, por exemplo. Então, mesmo que não participem diretamente do desenvolvimento
do NetBeans Core, esses desenvolvedores contribuem para deixar o NetBeans melhor como um todo.
Quais os próximos passos na estratégia Open Source da Sun? A implementação de
Java será a próxima?
Phipps: Vimos com o OpenSolaris o quanto é difícil e caro tomar um produto open source. Dar esse último passo com Java seria também muito custoso. Para começar, precisaríamos criar um mecanismo pelo qual garantir a compatibilidade. Depois precisaríamos cuidar de todas questões de direitos autorais, antes de liberar o código sob licença open source.
Supondo que fosse decidido tornar o Java 5 open source, isso tomaria pelo menos um ano e meio. Agora, nesse período, valeria mesmo a pena investir os recursos da Sun fazendo isso – mesmo sabendo que está sendo criada uma implementação open source do Java 5 no projeto Apache Harmony? Não seria melhor usar esses recursos para concluir o Java 6?
O JCP foi modificado para permitir implementações open source, e o licenciamento do Java foi alterado especificamente para garantir que não haja "contaminação" dos desenvolvedores que já trabalharem com o código da Sun. Então, embora desenvolvedores não possam simplesmente colocar o código do Java 5 da Sun no repositório do Harmony, podem facilmente
examiná-lo para ver como determinada funcionalidade foi implementada, e usar esse know-how para reimplementá-la. Mudamos a licença especificamente para que se possa fazer isso sem problemas legais.
Atualmente, temos coisas com prioridade muito mais alta do que tomar o Java 5 open source. Hoje uma questão fundamental é como reduzir a desconfiança entre as comunidades open source e Java – por exemplo, para deixar os desenvolvedores da Apache e de outras comunidades mais a vontade em contribuir relatórios de bugs ao Mustang. Estamos muito interessados em encontrar lugares onde podemos trabalhar melhor como um membro da
comunidade Open Source.
Quando fundamos o departamento de Open Source na Sun há alguns meses, foi criado um endereço de e-mail, ombudsman@sun.com. Gostaria de saber onde estamos errando para podermos fazer correções. O endereço está disponível para todos os leitores da revista; podemos inclusive lidar com mensagens em português. Garanto confidencialidade e imparcialidade quanto as mensagens recebidas.
Brewin: Hoje estamos fazendo um grande esforço internamente na Sun, para que as informações usadas como base para nossas decisões, em processos e produtos, sejam colhidas cada vez mais de fontes externas em vez de internas. Ao longo dos últimos três ou quatro anos, mudamos a direção do microfone. Antes ele apontava para dentro da Sun; agora está direcionado aos clientes. O Open Source foi muito importante para essa mudança.
Debatendo Java: Normam Richards, Floyd Marinescu, Mike Keith, Max Andersen, François Letellier, Ean Schuessler, Bruno Souza e Tim Boudreau discutem o futuro e o presente da tecnologia Java
NetBeans em 3D: Charlie Hut demonstrando o projeto Looking Glass rodando dentro do IDE
Camisetas turbinadas: inspirando-se na tradcional competição do JavaOne, ao final do debate (e de várias palestras), os convidados internacionais usaram um mega-estilingue de James Gosling, trazido pela equipe da Sun, para lançar camisetas promocionais.