Licença Java: pomo da discórdia do padrão de interatividade da TV digital com o Ginga
O Circuito De Luca continua analisando o que está adiando a adoção do padrão brasileiro de interatividade em TV Digital, proposto para ser baseado em código aberto.
O texto é enorme, e os trechos que reproduzi abaixo não bastam para lhe fazer justiça. Siga o link para ver mais detalhes.
Via idgnow.uol.com.br:
Muito tem sido discutido nos fóruns especializados e nos grupos de trabalho do Fórum do Sistema Brasileiro de TV Digital sobre a cessão do Java DTV, sem cobrança de royalties para uso no Ginga e a cobrança pelo licenciamento dos módulos Java TV e Java Virtual Machine (JVM).
A polêmica em torno do licenciamento do Java no seio do Fórum SBTVD acabou por revelar uma questão preocupante: a completa ignorância de muitos desenvolvedores a respeito. Uma grande parte da comunidade não entende exatamente como é o modelo de licenciamento do Java.
Afinal de contas o Java é livre ou não? O Open JDK é GPL? (…)
(…) Mas esse não é o pomo da discórdia no Fórum SBTVD. Nas discussões a respeito da TV Digital, algumas vezes essa “crítica” de que Java não é completamente livre aparece pura e simplesmente com o intuito de causar desinformação.
Todos concordam que se o desenvolvedor usar o código da Oracle (o OpenJDK), ou aceita a licença gratuita ou paga pelo direito de usá-la.
A discórdia está relacionada a preocupações com valores de licenciamento, controle do padrão pela Oracle, exigência de
certificação e tratamento discriminatório contra empresas brasileiras. Explico.Segundo Bruno, a licença da especificação Java (JCP) garante acesso à propriedade intelectual de dezenas de empresa que contribuíram para ela, mediante a determinados critérios. A saber: que sua implementação do código seja (1) completa e (2) compatível (tenha passado no TCK, o teste de compatibilidade).
Portanto, no contexto do Ginga, todas as empresas interessadas em vender implementações comerciais do middleware, conforme a arquitetura padrão definida pelo Fórum SBTVD, referendada pela Associação Brasileira de Normas Técnica (ABNT), são obrigadas a passar por esse processo de certificação.
É aí que está a principal critica ao uso do Java. Mesmo que o desenvolvedor não use o código da Oracle, só tem direito à propriedade intelectual se passar no TCK. Se “pagar a certificação”. (…)
(…) Uma das discussões ainda em curso, hoje, no Fórum SBTVD (e que já se estende por mais de 12 meses) é garantir regras mais claras, que garantam mais transparência e agilidade no processo, assegurando de fato o atendimento não discriminatório para todas as empresas implementadoras do Ginga por parte da Oracle. (…)
Me corrijam se eu estiver errado: essa questão da homologação da Oracle só vale se vc chamar de Java ou disser que a sua implementação é “compatível com Java” ou com qualquer dos padrões relacionados.
Se vc. não fizer isso, não tem que homologar ou seguir norma nenhuma, certo? As API incluídas no Android não seriam a prova cabal desse fato?
Que engodo!
Java Trap.
O problema não é quem escreve código Java, essas pessoas estão tranquilas pois a Oracle não possui reclamar de nada. Já para quem implementa a JVM ou outra VM está meio enrolado.
Ou usa a OpenJDK do jeito que está ou reimplementa (ou usa Harmony por exemplo). Acontece que nesses casos a Oracle pode resolver tirar uma casquinha e exigir o pagamento de licensa para dizer que é uma JVM ou VM compatível com Java, considerando que é obrigatório que a VM passe no TCK.
Se você resolver não pagar e criar uma VM incompatível basta não usar o nome “Java” em nada que fica tudo resolvido. Porém nesse momento a Oracle pode atacar com as patentes que ela possui.
No Brasil isso não é tão problemático pois patentes de software não são válidas aqui (ainda bem), mas como muitas fabricantes de TV são multi-nacionais a coisa se complica.
Enquanto a Oracle não abrir mão das patentes que possui sobre a implementação da JVM, fica muito difícil confiar que ela nunca vai processar ninguém.
eles deviam ter escolhido mono.
*ducks*
O problema é que a política de governança do Java nunca foi aberta ou livre dos grilhões da dona.
Para poder ser Java precisa passar o TCK e esse vem com sérias restrições de uso. Isso foi um dos maiores pontos de discórdia da Apache com a Sun. Uma queria que sua implementação livre Harmony não ficasse restrita a desktop e servidores, enquanto a outra não queria liberar para uso embarcada – que era a maior fonte de renda do Java na época.
A Oracle não deu sinal algum sobre mudanças nessa política.
Quanto a ter adotado mono, bom, toda questão de licenciamento simplesmente não existiria.
Primeiro que não seria o mono, mas o padrão do ECMA para a máquina virtual. Esse exige o licenciamento e transparente de todas patentes essenciais para implementar o padrão pelas muitas empresas que trabalharam nele – MS, Intel, HP, Novell e tantas outras.
Fora isso, uma implementação da CLR (ECMA 335) não tem nenhuma restrição de uso ou exigência de royalties.
Sem falta, por fim, que a MS abriu mão de todas suas patentes sobre o padrão para as implementações compatíveis – que significa implementar o menor profile da especificação.
O GingaJ é um claro resultado do lobby financeiro atentando contra nossa soberania tecnológica. Em vez de adotar um padrão de verdade, escolheram essa mentira que é o JCP.
“Porém nesse momento a Oracle pode atacar com as patentes que ela possui”
Tem um cara muito legal chamado Alsup que nos fez o favor de gerar jurisprudência a respeito desse ponto.
@Porfírio
Sim, mas até aonde sei, nem todo juiz é obrigado à aceitar essa decisão do Alsup.
Além disso, a Oracle retirou muitas das acusações de patentes nesse caso (a mando do Juiz) e ficou com as questões de copyrigth apenas.
As patentes que não foram julgadas podem ser utilizidas em outros processos.
Obs.: Tudo isso é com base na informação que foram apresentadas nas notícisa referentes ao caso, estou longe de ser um jurista especializado em legislação americana. :)
“Sim, mas até aonde sei, nem todo juiz é obrigado à aceitar essa decisão do Alsup.”
Olha, não sou advogado. Mas pelo que sei jurisprudência é uma referência importante que permite interpretar a letra da lei, e geralmente é decisiva. Porque o caso não teve um resultado X ou Y porque o “Juiz mandou”. Quem julga é o Júri. E Vox Populi vox Dei est.
“a Oracle retirou muitas das acusações de patentes nesse caso (a mando do Juiz) e ficou com as questões de copyrigth apenas.”
Retirou porque elas foram consideradas fora de escopo ou improcedentes. Mais jurisprudência.
Olha, eu não gosto muito de cortinas de fumaça e é por isso que estou tomando as dores do Java nesse caso. Me parece que essa discussão toda a respeito do assunto não tem realmente nada a ver com licenciamento, essa parece apenas uma desculpa que apoia todo um jogo de interesses por trás disso.
Tem gente nesse foro, até mesmo por aqui, dizendo uma coisa e pensando outra…
É só o que faltava, advogar liberdade e independência recomendando produtos ou clones MS.
Depois do caso do Android, o Java virou essa bomba que muitos tem medo de tocar. E se o MONO já não cheirava bem, depois de todos os processos e acordos de patentes forçados que a Microsoft andou fazendo, você tem que ser muito louco para tocar nele.
Existem várias linguagens que podem substituir o Java e o MONO. Não é necessário ficar perdendo tempo com eles mais. Escolha uma alternativa e vá em frente sem olhar para trás.
Bem, o fato é que isso não deveria nem estar no padrão ISTB-t. O brasil tem que ter liberdade de alterar o que bem quiser no padrão.
Ora ora rodrigo kumpera,continua ainda desenvolvendo para a novell?
O que voce recomenda? Ah ,não diga MS .net por favor.Mono é todo incompleto .É implementação de segunda mão (não é ofensa,mas sim que não é referencia).
Se mono fosse a referencia quem sabe né,mas não é.A verdadeira referencia é uma certa corporação cheias de patentes no .NET.Python a sua implementação de referencia é livre.
O site do proprio idg explica bem legal a situaçao.E acho triste alguns reclamarem do java nos 45 minutos do segundo tempo.
Essa briga do tck é antiga, a Oracle bem que podia mudar essa licença e acabar com o mimimi.
Deveriam ter escolhido Lua, com a vantagem que também foi desenvolvida no Brasil :)
Oi João – ou seja lá qual for o nome que se esconde por traz do self_liar.
Eu não sugeri mono, caso não tenha notado. Sugeri usar ECMA 335, um padrão internacionalmente reconhecido e tão livre quanto outros como ODF.
O conceito de implementação de referência não pode ser aplicado a python pois não
existe um padrão que governa a linguagem/plataforma. O padrão é aquilo que a implementação da python.org faz.
Isso não é exatamente o mais adequado para um padrão nacional que querem produzir para a TV digital. Se seria uma escolha melhor ou pior que Java ou a CLR, isso cabe aos técnicos envolvidos no padrão.
Afirmar que X é livre e seguro contra patentes exige examinar todas as patentes registradas até um ano depois do lançamento de X para ver se alguma é violada.
Projetos como zlib, ogg e png fizeram sua diligência contra patentes e várias das limitações desses projetos é exatamente para evitar algumas.
Procurei online e não achei qualquer menção quanto a tal estudo existe para python ou sua implementação de referência.
Não é possível afirmar que python é uma linguagem segura ou livre de patentes e dizer tal é se prestar a desinformação.
O conceito de implementação de referência não pode ser aplicado a python pois não
existe um padrão que governa a linguagem/plataforma. O padrão é aquilo que a implementação da python.org faz.
A propria fundação que faz o python cria sua implementação de referência.Então é muito mais funcional do que um padrão limitado (o ecma para o .net cobre pouca coisa) que nem mesmo o seu criador (microsoft) oferece um implementação livre.
Até o python sairia melhor nessa.E até o java sai melhor.
Eu não sugeri mono, caso não tenha notado. Sugeri usar ECMA 335, um padrão internacionalmente reconhecido e tão livre quanto outros como ODF.
Oras oras,quem implementa normalmente esse padrão ? A microsoft e a xamarin.E ainda quem iria usar um padrão somente ? As pessoas iriam usar mais do que isso.
Enfim é conversa de 45 minutos do segundo tempo.E então fica parecendo gente criar um boicote num padrão que foi discutido já uns 3-4 anos.