segunda-feira, 23 de abril de 2012

Oracle e Google penam para explicar APIs para júri

A Oracle e o Google continuaram sua batalha legal no tribunal federal de São Francisco (Estados Unidos) na quinta-feira (19/04). O dia foi iniciado com uma luta sobre a autenticidade do código Java, já que a Oracle alega ter baixado o script do site do Google em 12 de março.

A Oracle afirma que o arquivo mostra que o Google não removeu o código infrator do Android de seu site, como alegava ter feito. O Google, por sua vez, quer provas de que o arquivo foi realmente baixado de seu site.

“Você está afirmando que foi forjado?” pergunto o juiz William Alsup, com ceticismo.

“De forma alguma”, respondeu o advogado do Google, Daniel Purcell. O interesse da empresa em receber a verificação formal do arquivo é que somente teve informações dessa prova há alguns dias.

O juiz encerrou o assunto dizendo que posteriormente alguém atestaria a legitimidade do arquivo, depois repreendeu os dois lados por sua intransigência.

“Vocês deveriam ter resolvido isso durante a noite, me poupem”, ele afirmou, reforçando as impressões que o caracterizam como um juiz que não tolera irrelevâncias.

Mark Reinhold, arquiteto Oracle para a plataforma Java, retornou ao banco das testemunhas para continuar sua explicação da distinção entre a linguagem Java – disponível livremente para uso – e os APIs Java, que são as especificações detalhadas que descrevem o uso válido da linguagem Java.

A autora do processo busca danos pelo uso sem autorização de um subconjunto de suas APIs protegidas com direitos autorais, e por violação de patente.

A inquirição de Purcell descreditou o que Reinhold afirmou sobre a distinção da linguagem Java e dos APIs Java. Por duas vezes, o advogado do Google pediu que fosse reproduzido um vídeo de depoimentos de Reinhold no qual ele definia as fronteiras entre o Java e suas APIs, e que difere completamente da forma que ele as descreveu no tribunal.

Purcel também fez Reingold reconhecer que de 10% a 20% das APIs Java foram escritas por contribuintes de fora da Sun ou Oracle, e que eles não são pagos por nenhuma das duas empresas. A implicação dessa afirmação leva à conclusão de que talvez alguns dos direitos autorais das APIs Java não sejam válidos.

Foi o suficiente para o advogado da Oracle, Michael Jacobs, pedir ao tribunal para instruir o júri de que não há disputa de propriedade sobre os direitos autorais no caso. Mas é evidente que o Google quer levantar essa questão e o juiz não se mostrou pronto para ceder aos desejos da outra parte e tirar a questão de propriedade da discussão.

Em seu registro no processo, o Google afirma: “linguagens de programação de computador não são passíveis de direitos autorais e nem mesmo as APIs do Oracle”. Então, essa questão será com certeza levantada novamente.

Após Reinhold ser dispensado, a Oracle chamou Joshua Bloch, arquiteto diretor do Google, para questioná-lo sobre sua posição sobre a importância de um bom design API. Bloch afirmou que a programação é criativa, o que ajuda a sustentar a noção de que o código deve se qualificar na proteção dos direitos autorais.Durante o questionamento, o arquiteto diretor do Google reconheceu que o API Timsort. Java que ele criou pra o Android é virtualmente idêntico a uma série de API de verificação – Arrays.Java – que ele escreveu para o Java enquanto trabalhava para Sun.

Isso é violação de direitos autorais? É isso que a Oracle espera estabelecer, mas esse ponto ainda precisa ser estabelecido, em parte porque a fronteira onde a linguagem Java termina e a propriedade dos APIs Java começa, segue em desacordo.

Bruce Baber, advogado do Google, rebateu a ideia da cópia do APIs Java, perguntando a Bloch se ele tinha alguma liberdade criativa quando reimplementa uma API, como o Google fez com o Android.“Se você está reimplementando (uma API) então não há mais criatividade envolvida”, Bloch disse. Em outras palavras: qualquer similaridade do Android do Google e o API Java da Oracle aconteceu por necessidade e não por cópia. A alternativa seria um código que não funcionaria corretamente.

Baber retornou ao assunto do Timsort.Java e método rangeCheck dentro dele, levando Bloch a explicar que o Timsort.Java do Android é muito mais rápido do que o Arrays.Java e vem de uma rotina de classificação na linguagem open source Python. Isso complica ainda mais os direitos autorais do APIs Java.

A linha de questionamento de Baber turva a delineação entre a linguagem Java e os APIs Java que a Oracle tentou traçar para construir seu caso. Baber pediu a Bloch que explicasse o conceito de API.

“Quando você conhece um API é como conhecer uma pequena nova linguagem”, afirmou Bloch. Se a linguagem Java livre protege a sobreposição do APIs, isso limita as alegações de infração da Oracle? O Google espera que sim.

A seguir deu-se uma lição em terminologia de programação que focou na definição de APIs, classes, métodos, argumentos e outros termos.

“Agora você está me deixando confuso”, alegou o juiz Alsup a Bloch durante uma discussão das peculiaridades das declarações Java. E ele não era o único no tribunal que estava confuso.

O advogado da Oracle, David Boies, questionou o engenheiro de software do Google, Tim Lindholm, autor do e-mail que a autora do processo tem como destaque do caso. O e-mail de 2010 de Lindholm para o diretor do Android, Andy Rubin, argumenta a necessidade de obtenção de licença de uso Java da Sun.

Questionado sobre os documentos estratégicos do Android de 2005, que descrevem a necessidade de negociação de licença da Sun, Lindholm ficou combativo e esquecido. Boies procurou obter o reconhecimento das discussões de e-mail onde ele fala sobre a licença da Sun.

O engenheiro de software insistiu que falava sobre uma licença de forma abstrata: “Não era especificamente a licença de ninguém”. Boies pareceu cético.

O advogado do Google então passou a questionar Lindholm e o tom se tornou mais cordial. Após algumas questões sobre seu passado, o advogado do Google perguntou: “Baseado em sua experiência com o Java ao longo dos anos, você tem uma visão geral de que a organização de pacotes API é disponível gratuitamente para uso?”

Boies interveio dizendo que a questão estava fora do escopo permitido. Alsup negou a objeção. Então Boies fez objeção à falta de experiência legal de Lindholm para realizar determinações. Apesar disso, Alsup permitiu que o engenheiro de software do Google respondesse com base em sua experiência.

“Como engenheiro de software, sempre foi de meu entendimento que a organização de software de APIs eram livres para o uso de todos”.

Na conclusão do testemunho, o juiz disse que deseja que os dois lados sejam claros em sua posição sobre quais APIs podem ter patente. Ele também perguntou se o departamento de direitos autorais investigou a estrutura, sequência e organização dos softwares submetidos a direitos autorais. Ele disse acreditar que o Copyright Office (Departamento de direitos autorais) realizou esse trabalho e Baber confirmou sua suposição. Finalmente, ele pediu argumentos sobre os padrões de trabalhos derivados.

A posição do Google é que algumas das similaridades entre o Android e o Java são necessárias para ativar o código funcional.

“Seria levar a lei dos direitos autorais ao extremo dizer que qualquer programa que calcula a raiz quadrada é um violação”, afirmou Baber, comparando a alegação da Oracle com a tentativa de proteger com direitos autorais uma simples função matemática.

O juiz rebateu que a alegação da Oracle é mais do que isso, destacando que a estrutura, sequência e organização do Android em comparação com o Java não está em discussão.

Baber insistiu que não há direitos autorais “Depois de dar um nome a um API, essa é a estrutura”.

E mesmo que fosse, Baber argumentou que o Android vive em transformação e portanto, qualifica-se para o uso justo da lei de direitos autorais.

A Oracle discorda.

Fonte: ITWeb

Nenhum comentário:

Postar um comentário