sábado, 27 de junho de 2009

FISL 10: agora com Ginga-J... o novo, com Java DTV(?)

os participantes da oficina Ginga-J no FISL 10 receberam hoje à tarde em primeira mão a primeira versão distribuída ao público do Ginga-J já com a implementação de algumas classes definidas pela Sun, a API Java DTV.

ocorreram 3 oficinas ao longo de todo o dia: Ginga NCL, NCLua e Ginga-J. podemos considerar um imenso fracasso, pois não atingimos nenhum objetivo, já que a Arena de Programação do FISL era o lugar mais inapropriado do mundo para um curso hands-on, devido ao barulho que os participantes do FISL faziam. a culpa não é do pessoal do Ginga, mas sim da organização do FISL que não disponibilizou um local apropriado para o evento.

da Oficina NCL eu não participei, pois já havia participado ano passado.

NCLua não tivemos por falta de tempo e condições acústicas.

Ginga-J:
a oficina se resumiu a uma breve explicação da arquitetura do Ginga-J, efetuada pelo Raoni, que também mencionou que apenas as classes do Lwuit estavam disponíveis e o Ginga CC (Common Core). o resto do tempo foi focado na instalação de uma implementação de referência do middleware no Ubuntu. é pouco, mas é alguma coisa.

de API Java DTV mesmo, só recebemos algumas classes:


o resto é Lwuit (clique nas imagens para ampliar):






de qualquer forma, parabéns a todo o pessoal do Lavid, da UFPB, especialmente ao professor Guido e ao Raoni, que tiveram a iniciativa de disponibilizar esta primeira versão para nós, e claro.. todos os demais que estão envolvidos e não temos conhecimento.

o Ginga-J causou, e ainda causa, muita polêmica, pois a comunidade de desenvolvedores de aplicações não tem acesso ao projeto, surgem muitos boatos, notícias infundadas, atrapalhadas... mas pelo que eu vi neste FISL, o projeto está andando, mesmo com todas as dificuldades que foram expostas durante as palestras.

precisamos justamente disso: de informações, queremos conhecer o projeto, estar em contato com os responsáveis, pois estamos ansiosos para iniciar trabalhos nessa área, mesmo que não saibamos no que vai dar, como vai ser distribuído, como vai ser o modelo comercial, se um dia vamos ganhar dineiro com isso.

eu particularmente tenho muitas críticas em relação a condução do projeto Ginga-J, mas vou me recolher porque o trabalho no Lavid e na CDN (rede de desenvolvedores) merece reconhecimento.

então desenvolvedores de aplicações Java, calma: o Ginga-J existe. eu vi, eu tenho o primeiro "pedaço" dele aqui comigo.

mas, quem quiser realmente produzir algo hoje, não tenha resistência em abraçar NCL e LUA, porque até o Ginga-J ficar maduro vai demorar.



não entendi o que essas classes do GEM fazem no pacote que nos foi entregue:

esta versão do Ginga-J que foi distribuída no FISL estará disponível no site do Open Ginga


um obrigado especial ao pessoal da Dataprev, Marco e Edson, pela mobilização em viabilizar tudo da melhor forma possível

10 comentários:

  1. Sério que voce gostou desta oficina?? E você já chegou a olhar o código fonte do "JAVA DTV" ?

    É uma versão compilada do lwuit pra celular que todo mundo pode baixar no java.net!

    Eles "desenvolveram" umas quatro classes que só exibem componentes muito básicos (realmente básicos) e estas classes não tem absolutamente funcionalidade nenhuma!

    ResponderExcluir
  2. Leonardo,

    obrigado pelo alerta.

    Examinei hoje com mais calma o código e realmente é o que você disse.

    Pensei em colocar uma tarja "OWNED" no meu post, mas fiz algumas alterações e acho que ficou mais realista.

    Mas lembre que o Raoni falou estava entregando uma versão "capada", explicou a arquitetura, que o middleware faz a ponte entre o código Java e o sistema operacional, então o conjunto da obra tem o seu valor, já que recebemos o código do Common Core.

    ResponderExcluir
  3. Bem no inicio quando ainda pesquisavamos o modelo a ser implantado no brasil, lá pelos idos de 2005, ficou obvio que o modelo Europeu (DVB) tinha o modelo de interatividade mais robusto.

    É por isso que tem todas aquelas classes do GEM lá. Elas são a base do Ginga-J.

    Marcos, ao contrário de você, enquanto os executáveis e o código fonte não estiverem na internet, reforçarei minhas críticas. Poucos estão tendo acesso a informações valiosas demais para o mercado de software...

    Incluisive acho que isso é um princípio contrário ao pregado pelo FISL, não é? Não sei por que montaram um stand para isso lá.

    ResponderExcluir
  4. Caros,

    Depois da Oficina no FISL, detectamos alguns correções que estão sendo realizadas para deixar a instalação do OpenGinga mais fácil Até amanhã pretendemos colocar o código a disposição para todos no site.

    Em relação a comentários, neste momento, estamos realmente utilizando uma versão do lwuit para celular disponibilizado para a Sun, mas ao contrário do que o Leonardo citou, não implementamos QUATRO classes, mas sim DEZESSEIS classes do Java DTV, fora que disponibilizamos mais de uma CENTENA da nossa versão antiga baseada em GEM, que apesar de não serem mais da norma Ginga, acreditamos que sejam importantes para quem quer estudar código de middleware para TV Digital.

    Acreditamos que no próximo release já teremos um conjunto muito maior de classes JavaDTV, uma vez que toda a base (GingaCC) e plataforma Java já está preparada para isso. E com expliquei na oficina, isso sim que é o código mais importante e mais complexo de um middleware.

    Espero que depois da liberação oficial no site, ao invés de "pedras", esperamos que apareçam mãos para ajudar. Por que revisar e criticar código é fácil, difícil é construir.

    ResponderExcluir
  5. Segue a lista das DEZESSEIS classes disponibilizadas atualmente nesta primeira versao beta do OpenGinga:

    ScarceResource
    ScarceResourceListener

    KeyEvent
    RemoteControlEvent
    UserInputEvent
    UserInputEventListener
    UserInputEventManager
    Screen

    Button
    Component
    Display
    Form
    Image
    Label
    TextArea
    TextField


    "absolutamente funcionalidade nenhuma" pode ser encontrada no xlet disponibilizado junto com o OpenGinga (gingacc-beta/xlets/).

    ResponderExcluir
  6. Grande Raoni!

    Agradeço pela audiência no blog e pelas explicações.

    Conforme comentei na postagem, precisamos de informações... queremos ajudar, mas não conseguimos. Já preenchi o formulário na página do Open Ginga há muito tempo e nunca recebi resposta, e se você observar nos grupos de discussão, há muita gente que fala o mesmo.

    Eu pude perceber que um ótimo trabalho está sendo feito, mas isso precisa ser comunicado, se não ocorre o que você falou: atiram-se pedras.

    Acho que na verdade o pessoal está atirando pedrinhas na janela pra ver se alguém acorda e responde pra gente : )

    Que bom que você está fazendo isso, e esperamos que continue!

    Aguardo aquele emulador, hein?

    ResponderExcluir
  7. Marcos, também tentei me cadastrar para receber informações / ou ajudar sei lá mas nunca obtive resposta.

    Fiz o meu TCC semestre passado meio as escuras, pois faltava muita coisa a ser definida quando fiz meu tcc.

    Então usei as classes "base" do Java AWT (Color, Component, Container) pra criar alguns componentes pensados para o ambiente de tv digital interativa.

    ResponderExcluir
  8. Raoni,

    Muito obrigado por esclarecer certas coisas. É realmente bom quando a comunidade de desenvolvedores recebe uma resposta oficial de algo muito esperado.

    Achei os comentários do Marcos e do Filipi bem pertinentes. Estamos jogando pedras porque queremos ver o que está sendo feito. Isso é um assunto muito legal pra todos e somos informados de pouca coisa enquanto outros sabem de tudo. A TQTVD já tem o JAVA DTV pronto (segundo eles) e nós não tínhamos a nem a especificação 1.1 (conseguida no FISL).

    Enquanto isso não mudar, criticaremos sim!

    Não sei se você participa da parte JAVA DTV do projeto, mas quando falei das "quatro classes" me referi ao modo que elas foram implementadas. Exemplo da classe Screen:

    public class Screen {

    public Screen() {
    }

    public static Screen getCurrentScreen() {
    return new Screen();
    }

    }

    Hum.. eu não conheço o JAVA DTV 1.1 inteiro, porém me parece PARCIALMENTE implementada. Isso sem citar as classes da LWUIT.

    As dezesseis classes citadas por você estão cruas! São carcaças para executar um exemplo (referido por "sem funcionalidade nenhuma") que está longe de ser uma aplicação.

    Espero que continuem conversando com a comunidade, é importante! E já que vocês esperam ajuda, como podemos estender nossas mãos?

    ResponderExcluir
  9. Queria deixar relatar o que vi na oficiana,

    concordo com o leonardo, a instalacao ta mtu complicada, visto que so o "programador" (aspas pq pelo q entendi eh mais do q isso), do projeto conseguiu epois de algumas horas.

    Concordo novamente com o leonardo, pelo q vi no codigo, esta bem cru ainda, inclusive tenho algumas criticas (construtivas), por exemplo ta meio estranho todo aquele encapsulamento do pacote GUI.*.

    Concordo com o Rauni "esperamos que apareçam mãos para ajudar", ate onde sei é exatamente do que a comunidade reclama, falta de visibilidade, nao temos como ajudar em algo q n temos o codigo, esperamos que logo menos os responsaveis liberem um svn ou algo do tipo pra q possamos ver o q esta acontecendo, e em quanto isso acho q seria legal se as pessoas tivesem algum movimento para nao depender totalmente do grupo ginga.. qm sabe comecar o desenvolvimento de algum modulo sei la, pq ate onde entendi a implementacao do OpenGinga é so de referencia, ou seja nao tera performance ideal para comercialização.

    RESUMO: Acredito sim q a versao liberada esta longe de ser a esperada. e acredito q a comunidade tem q colocar a mao na massa pra comecar o desenvolvimento, mesmo que os responsaveis do projeto nao liberem o codigo, podemos fazer isso.

    ResponderExcluir
  10. Também não entendi muito o que fazem ali Api's do GEM como Havi e outras... elas são a base do Ginga?? e pra que serve a Lwuit?

    Sobre o Desenvolvimento de Middleware o Rafael Almeida está a frente de um projeto pro desenvolvimento de um middleware OpenSource e pelo o que eu sei na parte do Lwuit já tem mais coisas implementadas do que o pessoal do OpenGinga.

    Uma dúvida minha eh: Posso eu até novembro ter uma aplicação simples toda em cima do SBTVD (JavaDTV, Lwuit...)???

    o link do projeto é: http://code.google.com/p/middlewareopensource/

    ResponderExcluir