Ir para o conteúdo
ou

Software livre Brasil

Tela cheia Sugerir um artigo
 Feed RSS

Blogosfera do PSL-Ba

16 de Junho de 2009, 0:00 , por Software Livre Brasil - | 2 pessoas seguindo este artigo.

O Projeto Software Livre Bahia (PSL-BA) é um movimento aberto que busca, através da força cooperativa, disseminar na esfera estadual os ideais de liberdade difundidos pela Fundação Software Livre (FSF), possibilitando assim a democratização do acesso a informação, através dos recursos oferecidos pelo Software Livre. Esta busca tem seus alicerces fundados na colaboração de todos, formando um movimento sinérgico que converge na efetivação dos ideais de Liberdade, Igualdade, Cooperação e Fraternidade.

O Projeto Software Live Bahia é formado pela articulação de indivíduos que atuam em instituições publicas e privadas, empresas, governos ou ONGs, e demais setores da sociedade. Além disso o projeto não é subordinado a qualquer entidade ou grupo social, e não estabelece nenhuma hierarquia formal na sua estrutura interna.


Antonio Terceiro: meu novo blog

16 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

Depois de bastante tempo usando o TWiki para o meu blog, estou de mudança para o Software Livre Brasil. Apesar do blog no TWiki ser muito legal e prático, eu preciso divulgar mais o Noosfero, projeto no qual eu venho trabalhando já há 2 anos, e também provar do meu próprio remédio usando o troço no dia-a-dia. Aqui também tem comentários, algo que eu e todo mundo mais que usava blog sentia falta

Você vai notar que todos meus posts antigos estão aqui também. Não, eu não copiei e colei todos eles. :--) Eu usei uma funcionalidade muito interessante do Noosfero, que é a de popular um blog através de um feed RSS ou Atom. Para isso, use a opção "configurar blog" no seu painel de controle, e marque a opção "Obter posts de um feed externo".

Noosfero-feed-externo

Coloque o endereço do feed no campo correpondente. Note que esse não é o endereço do blog, mas sim do seu feed RSS ou Atom! Quem estiver migrando pode deixar marcada a opção "Obter posts apenas uma vez", mas quem quiser que o Noosfero fique acompanhando o blog externo, é só marcar a opção "Obter posts periodicamente".

Pra quem está migrando, uma dica importante: certifique-se de usar um feed que traz todos os seus posts, senão apenas os posts que estão atualmente no seu feed serão importados (normalmente os últimos 10 ou 20, a depender da plataforma de blog que você usa).



Antonio Terceiro: novo blog

16 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

Depois de bastante tempo usando o TWiki para o meu blog, estou de mudança para o Software Livre Brasil. Apesar do blog no TWiki ser muito legal e prático, eu preciso divulgar mais o Noosfero, projeto no qual eu venho trabalhando já há 2 anos, e também provar do meu próprio remédio usando o troço no dia-a-dia. Lá também tem comentários, algo que eu e todo mundo mais que usava blog aqui sentia falta.



Amadeu Junior: Meu mestrado, parte 2: solução para empacotamento

16 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

Entendendo esse post

Esse também faz parte da série de posts sobre minhas investigações no mestrado na PUC-Rio. Esse trata em detalhe as alternativas que pesquisei como solução de empacotamento multi-plataforma e multi-linguagem para ajudar um sistema de componentes de software distribuídos a instalar pacotes de componentes com suporte à dependências externas e além ao modelo de componentes (também conhecidas na área de componentes como dependências estáticas). A decisão no mestrado foi reusar e modificar o LuaRocks para fornecer suporte multi-linguagem, foi uma ótima decisão, viabilizou toda a outra parte do trabalho que se referia à implantação de componentes propriamente dita e digamos mais academicamente importante (afinal academicamente sistema de pacotes é algo digamos POUQUíSSIMO COMENTADO!).

Falar como os sistemas de pacotes podem ajudar a sanear as instalações é trivial para um linux-user, mas não para um academic-guy que só quer saber de quantas referências há para "sistemas de pacotes" ! Nesses casos a comunidade das redes de software livre dão uma lição e tanta no academic way of life. wink Deixemos a política nas entrelinhas ... o foco aqui é mostrar com quantos paus se faz um mestrado!

Requisitos

  1. permitir instalação por usuário ou projetos (área compartilhada mas não global)
  2. possuir resolvedor de dependências externas
  3. permitir remoção mediante verificação de dependências = se remover X do qual Y,Z dependem então remove também Y,Z
  4. possibilitar reuso da instalação já existente = se a biblioteca X já está instalada a resolução de dependência de qualquer Y deve reconhecer que X já está instalada
  5. (idealmente) permitir sobrecarga e resolução de conflitos entre dependências que provém as mesmas interfaces/serviços
  6. possuir API de alto nível para automatizar a instalação (pré e pós install), remoção (pré e pós remove), resolução de dependências e reconfiguração (restart de serviços)
  7. permitir extensão da abstração de dependências para descrever dependências entre componentes SCS
  8. suportar multiplataforma, no sentido de ter compatibilidade com o gerenciamento em plataformas não-UNIX
  9. suportar multilinguagem, no sentido de gerenciar pacotes nas linguagens Lua, C++ e Java
  10. permitir uso de repositórios de pacotes

Levantamento de características

Projetos muito Interessantes

haskell

  1. Cabal ( http://www.haskell.org/cabal ): Cabal is a system for building and packaging Haskell libraries and programs It defines a common interface for package authors and distributors to easily build their applications in a portable way. Cabal is part of a larger infrastructure for distributing, organizing, and cataloging Haskell libraries and programs. Specifically, the Cabal describes what a Haskell package is, how these packages interact with the language, and what Haskell implementations must to do to support packages. The Cabal also specifies some infrastructure (code) that makes it easy for tool authors to build and distribute conforming packages. The Cabal is only one contribution to the larger goal. In particular, the Cabal says nothing about more global issues such as how authors decide where in the module name space their library should live; how users can find a package they want; how orphan packages find new owners; and so on.
  2. Discussão sobre sistemas de build e packaging: http://www.nabble.com/Version-control-systems-td18827479i80.html
    1. Geoffrey Clemm, Odin Build Tool : http://portal.acm.org/citation.cfm?id=77607&dl=GUIDE&dl=ACM
    2. Walter F. Tichy, Smart Recompilation : http://portal.acm.org/citation.cfm?id=5959&dl=ACM&coll=portal

debian

  1. question building: dpkg-buildpackage e outros utilitários obrigam (?!) o uso de crosscompiling uma vez que pode ser difícil ter o dpkg-dev instalado em vários tipos de hosts
  2. question install: depende de arquivos em diretórios globais, mas pode usar diretórios por usuário = isso causa conflito com a instalação global
  3. porte do dpkg para MS Windows : http://osdir.com/ml/linux.debian.ports.windows/2007-12/msg00001.html
    1. usar mingw mesmo para compilar o dpkg ou ao menos a libapt
  4. porte da infra-estrutura debian para Interix (SFU/SUA) - veja abaixo na seção sobre compatibilidade com Windows
    1. question em que ponto exatamente se encontra o resolvedor de dependências? É possível reusar o parser do control e o resolvedor de dependências?
  5. implementar um módulo Lua frontend para dpkg semelhante a dpkg-ruby + libdpkg-ruby1.8 (depende de dpkg instalado)
    1. question É possível tornar o parser do control e o resolvedor de dependências um módulo Lua?
  6. motivação cross-compiling: ter bibliotecas nativas para o windows usando o mingw para poder ser usadas junto com MSVC e ser redistribuídas com softwares windows nativos
    1. http://mingw-cross.sourceforge.net/
    2. http://gnuwin32.sourceforge.net/summary.html
  7. discussões sobre cross-compiling com mingw:
    1. http://lists.debian.org/debian-mentors/2006/03/msg00115.html
    2. http://lists.debian.org/debian-mentors/2006/03/msg00216.html
    3. http://wiki.njh.eu/Cross_Compiling_for_Win32
    4. https://dev.njh6.de/svn/njh/any2deb/
    5. CFLAGS="-mms-bitfields -march=i386" CC=i586-mingw32msvc-gcc LD=i586-mingw32msvc-ld
  8. discussao pessoal:
    1. dpkg-cross: renomeia nomes de pacotes no control, bem como os diretorios com nomes=nome_pacote. Exemplo: libtool.deb -- dpkg-cross --> libtool-w32-i586-cross.deb
    2. dpkg-buildpackage com modificação para mingw
      1. gera pacotes em nova arquitetura (w32-i586)
      2. gera pacotes prefixado em /usr/$(DEB_HOST_GNU_TYPE)
      3. dado que gera binários para w32-i586 então no porte do dpkg no windows precisa reconhecer esta arquitetura
      4. uma alternativa para não precisar fazer porte do dpkg no windows e ter um ambiente cygwin que instala e gerencia os pacotes nativos windows
      5. outra alternativa é fazer instalação remota (no filesystem windows) via compartilhamento samba e possivelmente precisando do schroot/chroot

nix

  1. suporte a MS Windows via Cygwin
  2. http://en.wikipedia.org/wiki/User:Gwern/Nix_Package_Manager , http://nixos.org/patchelf.html , http://nixos.org/nixpkgs.html
  3. hash de pacotes baseado nos arquivos fonte antes do building do pacote
  4. question usa repositórios?
    1. sim, faz download a partir do nome do pacote (parecido com apt-get install)
  5. question segurança no compartilhamento entre usuários?
  6. question interopera com pacotes já instalados (.deb, .rpm)?
  7. http://nixos.org/releases/nix/nix-0.11/manual

zeroinstall

  1. sem suporte a MS Windows porque usa python.os.fork() e não há implementação disso para windows!
    1. provavelmente SFU/SUA/Cygwin resolvem este problema.
    2. fazer um wrapper para spawn para portabilidade : http://effbot.org/librarybook/os.htm
    3. http://www.python.org/doc/faq/windows/
    4. refatorar o zeroinstall para remover a necessidade do fork
  2. detalhes do empacotamento : http://0install.net/injector-packagers.html
  3. hash de pacotes baseado na árvore de diretório gerada pelo building do pacote
  4. question usa repositórios?
    1. descentralizado e não depende de repositórios
    2. question impede uso de repositórios?
  5. question segurança no compartilhamento entre usuários?
    1. http://0install.net/sharing.html
  6. question interopera com pacotes já instalados (.deb, .rpm)?
    1. conversor de .deb para 0install : http://0install.net/deb2zero.html
    2. http://0install.net/injector-using.html
  7. question como remover um pacote?
    1. Currently, they can't. You (the admin) can delete directories from /var/cache/0install.net/implementations to save space (preferably not while they're being used ;-). Ideally, we should track which users have requested which programs and remove them automatically when no-one wants them anymore. (ver "questions" no link sharing)

ipkg

  1. TODO olhar o site e o código para ver possíveis problemas de portabilidade : http://handhelds.org/moin/moin.cgi/Ipkg

luarocks

  1. question só coisas Lua ou não, se não então qual o nível de building possível
    1. permite uso dos backends: make, cmake, comando_qualquer (scons,installshield) ou module (módulos Lua)
    2. embora não seja concebido para instalar outros binários é possível que instale uma vez que permite uso de Makefile
    3. DONE para ser compatível com autotools seria preciso definir um novo backend baseado no make atual
      1. Implementado um build.autotools e build.tecmake ainda preliminares, mas que são úteis para compilar pacotes como openssl, openldap, sasl
    4. question suportar a instalação de pacotes de várias linguagens
      1. Natural é atribuir nomes parametrizados pela linguagem (like debian-policy to liblangXYZ) de suporte: lua, java, cpp
        1. Útil para os pacotes dos Componentes SCS uma vez que eles é que dependem de estar numa mesma linguagem, no caso das suas dependências externas a exemplo do openssl:
          1. BusAccessControl_lua.all.rock dependsOn lualdap_lua.rock dependsOn openldap.rock
          2. BusOiLConnector_cpp.x86.rock dependsOn liboilall_cpp.rock dependsOn lua
          3. MyComponent_lua.all.rock dependsOn openldap AND sasl2 AND lua
          4. PingPong.rockspec, PingPong_lua.all.rock dependsOn oil_lua AND scs_lua.all.rock
      2. Outra opção é estender as informações de plataforma para incluir linguagem para que o tratamento do perplatform_overrides cuide de instalar archs={*lua.x86*,*java.all*,*cpp.solaris*}
    5. question suportar a carga em cada contêiner
      1. O instalador precisa informar qual a variável de ambiente apropriada para cada linguagem afim de montar o LUA_PATH, CLASSPATH ou LD_LIBRARY_PATH de forma que o método de loading da linguagem encontre o pacote com versão especificada, bem como suas dependências.
        1. LUA : luarocks no ato do require já busca do manifest.repository os contextos (formando package.path e package.cpath) e assim realiza a carga
        2. JAVA : ClassLoader precisa receber um classpath montado com os contextos da resolução de dependências,
        3. C/C++ : o contêiner para realizar a carga dinâmica (dlopen) precisa montar o contexto na variável LD_LIBRARY_PATH
        4. reuso do luarocks.deps pela comunicação contêiner <-> exnode:installer :
          self.ComponentLoader:setContext( installer:getContext(componentId,self.mylang) )
  2. question premake http://premake.sourceforge.net/writing_scripts

luadist

  1. http://luadist.sourceforge.net - LuaDist? is a cross-platform distribution of the Lua programming language that includes networked module management and deployment of source based or binary modules. Unlike projects like LuaRocks? the main focus of LuaDist? is full automatization and standalone deployment including the management of external libraries on the Linux(UNIX), Windows and Mac platforms. Uses the CMake approach to build and parse automatic dependencies.
  2. Muito interessante, mas:
    1. Permite instalação simultânea de múltiplas versões dos pacotes? Justificativa: precisamos manter instalado múltiplas versões dos pacotes Lua bem como das bibliotecas de sistema (podemos precisar da OpenLDAP? tanto na sua versão 2.1.x quanto 2.4.x).
    2. Permite outras formas de compilação além do CMake? Justificativa: muitas bibliotecas de sistemas podem precisar ser compiladas e provavelmente usa-se ferramentas de compilação diferentes (autotools, make personalizados, scripts personalizados, etc).
    3. Possui noção de árvores de instalação que permitem a gerência via arquivo de manifesto (como no LuaRocks? )? Justificativa: os arquivos de manifesto do luarocks permitem a adoção de várias árvores de instalação simultâneas (para várias plataformas, por exemplo), assim ao usar o comando do luarocks pode-se usar o parâmetro --to=/home/user/install-linux-x86_64/, por exemplo.
    4. É fácil manter um repositório ou mesmo usar a própria árvore de instalação como repositório? Justificativa: o LuaRocks? apresenta uma funcionalidade interessante que simplifica a gerência do repositório uma vez que basta ter na mesma árvore os pacotes src.rock ou .rock.

clickonce (MS Visual Studio)

  1. ClickOnce Deployment: projetos C++ - http://msdn.microsoft.com/en-us/library/ms235287(VS.80).aspx , projetos C#/J# - http://msdn.microsoft.com/en-us/library/t71a733d(VS.80).aspx

Alternativas para compilação

Hamster

  1. Can be used as a generic 'make replacement' for almost any project. It even contains a 'Try' method that has automake-like functionality (detecting whether some compilation would fail or succeed at build time). Support: gmake, scons, nmake. http://kotisivu.dnainternet.net/askok/hamster/
  2. ALERT! Interessante observação dos autores (parece-me que substitui/expande bem o Tecmake): For professional work I warmly recommend SCons, a Python-based build tool that knows how to rebuild when only build parameters have changed (makefiles don't do that). Even with makefiles, Hamster takes care of header dependencies automatically (no need to list your headers, or do 'make dep'). Hamster's API derives from that of SCons, and even the original name of the project was SCons/Lua.

Scons

  1. http://www.scons.org , http://www.qandr.org/quentin/writings/debscons.html

Compatibilidade MS Windows

  1. SFU --- evolução ---> SUA (SFU deve ser mantido até 2009!)
  2. question Diferenças entre Cygwin e ServicesForUnix (SFU)
    1. http://osnews.com/thread?16317
  3. question Impacto de desempenho do SFU (usar benchmarks do shootout.alioth.debian.org)
  4. Introduction to Microsoft Windows Services for UNIX 3.5 : http://technet.microsoft.com/en-us/library/bb463212.aspx
  5. Interopsystems open source tools : http://www.interopsystems.com/community/default.aspx
  6. Windows Services for UNIX : http://technet.microsoft.com/en-us/interopmigration/bb380242.aspx
  7. SFU Warehouse : http://www.interopsystems.com/community/warehouse.aspx
  8. SFU Installation : http://www.microsoft.com/DOWNLOADS/details.aspx?familyid=896C9688-601B-44F1-81A4-02878FF11778&displaylang=en
  9. Gerenciador de pacotes Interix (SFU) : http://www.interopsystems.com/community/pkg_install.htm
  10. UNIX Interoperability integrated on Windows Server >= 2003 : http://blogs.msdn.com/sfu/archive/2007/04/12/services-for-unix-vs-windows-server-2003-r2-unix-interoperability.aspx
  11. Blog do gerente de projeto do SUA/SFU : http://blogs.msdn.com/shan/default.aspx
  12. Projeto do porte de Debian para Interix (SFU/SUA) : http://www.debian-interix.net
    1. Bug para criação da lista oficial do porte do Debian para Interix : http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=441094
    2. Problemas com a conta root <-> Administrator : http://gridengine.info/articles/2007/02/06/notes-about-grid-engine-on-windows
  13. Outras opções:
    1. Usar mingw (site novo, versão nova - gcc4) por ser mais simples e menos dependente das tecnologias microsoft: http://www.mingw.org , http://gnuwin32.sourceforge.net/packages/libgw32c.htm

Outros links

Compilação openldap,openssl via mingw no MS Windows

  1. instala msys
  2. instala regex
  3. instala zlib
  4. instala perl5
  5. baixa openssl do cvs
    1. ln -s /mingw/include /usr/include
    2. ln -s /mingw/lib /usr/lib
    3. ./config --prefix=/mingw --openssl-dir=/mingw/openssl/ shared
    4. editar util/mklink.pl e definir symlinks_exists como FALSE para usar copia (pois symlink é dummy no MSYS)
    5. make
      1. faltando definicoes: CERT_SYSTEM_STORE_CURRENT_USER , CERT_STORE_READONLY_FLAG , CRYPT_KEY_PROV_INFO , CERT_STORE_PROV_SYSTEM_A (... a maioria deveria estar em wincrypt.h)
    6. versão 0.9.8h tem versão instalável: http://www.slproweb.com/products/Win32OpenSSL.html
  6. baixa openldap 2.4.11


Amadeu Junior: Meu mestrado, parte 1: pesquisa e temas

15 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

Entendendo esse Post

Essa blogada estava como rascunho há bastante tempo, digamos 1 ano de 2 meses para ser exato! Nesse post eu organizei minhas pesquisas e temas que definiram meu mestrado em computação pela PUC-Rio. Acho interessante compartilhar esse conteúdo porque na academia pouco de faz de concreto para divulgar amplamente "como as coisas funcionam". Muitos projetos de pesquisa se limitam a manter privados seus meios, percalços e detalhes no entorno da produção científica. Aqui eu tento listar todas as possibilidades que estiveram e ainda fazem parte do contexto do meu trabalho de mestrado.

Portanto, espero que esse conteúdo seja útil a outros que tenham interesses de pesquisa em áreas semelhantes à minha.

  • UPDATED A dissertação do mestrado está saindo.. assim que finalizá-la, colocarei aqui no Blog !

Deployment de Aplicações Distribuídas: Reuso das Soluções de Empacotamento e Construção de um Framework

Estudos realizados

Deployment de Software

Processo de deployment em open-source: Cross-compiling para Debian: Alternativas aos pacotes Debian:

Deployment em Sistemas Distribuídos

Artigos: Outros: Alto nível: Deployment: Outros links: Outras bibliografias:
  • [Emmerich,02] Emmerich, W., Distributed Component Technologies and their Software Engineering Implications, Proc. of the 24th International Conference on Software Engineering, Orlando, Florida, pp. 537-546, 2002.
  • [Jasminka,04] Jasminka Matevska-Meyer, Wilhelm Hasselbring, and Ralf H. Reussne. Software Architecture Description supporting Component Deployment and System Runtime Reconfiguration. Software Engineering Group, Department of Computing Science, University of Oldenburg, Germany.

<!-- <h4><a name="Roteiro_para_monografia"></a> Roteiro para monografia </h4> <ol> <li> contextualização (o problema) <ol> <li> deployment em sistemas distribuídos </li> <li> componentes de software </li></ol> </li> <li> relevância do problema e suas soluções <ol> <li> trabalhos relacionados <ol> <li> características </li> <li> quais partes atendem ou não </li></ol> </li></ol> </li> <li> como dizer que CCM não resolve? <ol> <li> existem implementacoes? <ol> <li> sim = openccm, completa = ??, atende = ?? </li></ol> </li> <li> elas resolvem? </li> <li> quais as características mais interessantes? </li></ol> </li> <li> como dizer que EJB (+ coisas Java) não resolve? <ol> <li> apenas java ! </li> <li> apesar de ser java, em que mais não atende? </li> <li> quais as características mais interessantes? </li></ol> </li> <li> outros modelos de componentes? <ol> <li> fractal <ol> <li> o que interessa para deployment? </li></ol> </li> <li> opencom <ol> <li> o que interessa para deployment? </li></ol> </li></ol> </li> <li> deployment de software <ol> <li> apt/dpkg </li> <li> zeroinstall </li> <li> nix packages </li> <li> como reusar? <ol> <li> language neutral ! </li> <li> como interoperar entre plataformas ? </li> <li> experiencia de plataformas embarcadas ajudam? <ol> <li> iPKG </li></ol> </li></ol> </li></ol> </li> <li> frameworks para deployment no contexto de grades <ol> <li> trabalhos relacionados <ol> <li> ADAGE, <span class="twikiNewLink">CoRDAGE<a href="http://planeta.psl-ba.softwarelivre.org/bin/edit/Blogs/CoRDAGE?topicparent=Blogs.BlogRssOneFeed" rel="nofollow" title="Create this topic">?</a></span> </li> <li> Gridkit </li> <li> Smartfrog </li></ol> </li> <li> grades oportunistas e uso de virtualização, faz sentido? </li> <li> como o deployment associado a um sistema de componentes pode ajudar? <ol> <li> caso do Integrade </li></ol> </li></ol> </li> <li> delineando um framework para deployment multi-plataforma e multi-linguagem ideal <ol> <li> faz sentido um novo framework? </li> <li> atender deployment de software </li> <li> modelo de componentes </li> <li> deployment distribuído <ol> <li> usar taktuk/kanif? </li></ol> </li> <li> abstrações para reconfiguração e adaptação </li> <li> aplicabilidade em grades computacionais </li></ol> </li></ol> -->

Paralelização de Componentes no SCS

Artigos:

Dicas de LaTeX

Coisas Win32



JavaBahia: JavaOne 2009 - Uma Visão Geral

15 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários aindaPassada mais de uma semana do término do JavaOne 2009 resolvi fazer mais um post, desta vez com uma visão geral e uma espécie de "repescagem" de coisas que eu não havia citado. O post diário é mais detalhado, mas não responde a pergunta de muitos quando voltamos pro Brasil: "como foi o evento"?

Como das outras duas vezes, o evento foi excelente. É no JavaOne que são feitos os maiores anúncios da tecnologia, e a gente vê em primeira mão protótipos/produtos em vias de lançamento. Ano passado, destaques para a caneta LiveScribe, o Amazon Kindle e o Sentilla Perk. Esse ano, gostei do JavaFX rodando em TV, Set-top box, Celular, Netbook, Desktop e até uma JukeBox (aquelas máquinas de música, que a gente vê em filme americano) turbinada (saiba mais e veja foto) criada por dois caras que dirigiram 35 horas de New Orleans até San Francisco para mostrar a invenção. No Toy-Show de James Gosling esqueci de citar o uso de Java em automóveis, tanto num Lincoln 1959 movido a eletricidade produzida por um gerador de gás natural (coisa de Gosling e Neil Young) , até a Volkswagen usando Java para testes de direção em altíssima velocidade (sem piloto!) num Audi TTS. Teve também um software de busca em imagens que pode ser utilizado, por exemplo, no auxílio a diagnóstico de Cancêr. No CommunityOne, me surpreendeu o destaque dado a Cloud Computing e as Plataformas Sociais e Colaborativas. Mais ligadas ao nosso dia a dia, no geral também não faltaram sessões relacionadas a desenvolvimento Web, SOA, Servidores de Aplicação, Mobile, RIA e Desktop.

O que tem de melhor fica para as General Sessions. Não consegui assitir todas, mas ainda pretendo ver os vídeos das que perdi, principalmente a Intelligent Design: The Java Pervasive Platform. Mais diversificadas e várias ocorrendo simultaneamente, as Technical Sessions também tem um fator sorte. Muitas vezes a gente vai pelo título ou tema, e assiste a algumas apresentações "meia boca". Optei por privilegiar as apresentações dos brasileiros (falei sobre todas elas em cada post), as ligadas as Grupos de Usuários Java e Java Champions e, por fim (mas não menos importantes), a tecnologias que tem a ver com meu trabalho no Serpro, principalmente ligadas ao Framework Demoiselle. Já recomendei, e repito: Todo esse material fica disponível on-line, "de grátis", e deve ser considerado como fonte de pesquisa.

Apesar de tanto "tecnologiquês" legal (quer mais? veja um resumo neste blog), a atmosfera desse JavaOne estava diferente. Efeitos da "crise", da gripe suína (vi pouquissima gente de máscara nos aeroportos) e da incerteza quanto ao futuro pós aquisição da Sun pela Oracle já tem impactos visíveis: Nada de "megafilas" para entrar nas General Sessions (foram cerca de 9.000 participantes, ano passado 15.000 e teve ano que chegou a 25.000), nada de "pirotecnia" nas sessões de abertura e encerramento, nada de jornalzinho diário (era algo tão bom nas outras edições...), nada de John Gage como mestre de cerimônias (ele e seu "Don't be shy, be like brazilians" - que provocava a maior algazarra na platéia - fizeram falta; soube que saiu da Sun), nada de sessões/jantares exclusivos da imprensa com executivos da Sun (para que? eles não sabem o que dizer...), nada de "competição" pela delegação (tinha bem menos brasileiros esse ano, e os que tinham ficaram bem mais dispersos que em 2008, quando andávamos em "comboio") mais barulhenta (Brasil e Holanda eram os rivais do ano passado, mas no maior clima de confraternização, viu?), nada de "See you next year!" ao final do evento, quando normalmente já se divulga o periodo exato do próximo JavaOne.


Em todos os JavaOne essa é tradicionalmente a "capa" de Bruno Souza, o "Brazil's Java Man"

Ainda buscando "desaques", gostei tanto de um "resumo" feito no Twitter do JavaTools, que decidi postar aqui uma "tradução não oficial":
  • Dispositivo do ano: Netbooks! Parecia que todos estavam carregando um Netbook para twittar e verificar e-mails durante as sessões.
  • Buzzword do ano: "The Cloud". Sun Cloud, ferramentas para a nuvem, codificação na nuvem, implantação (deploy) na nuvem, borrachas de nuvens como brindes.
  • Orador convidado do ano: Larry Ellison. O dono da Oracle supostamente iria responder algumas das questões que todos estavam perguntando, mas ele não o fez.
  • General Session inesperada do ano: Microsoft. Eles não só tinham um keynote, mas falaram de open source também.
  • Estandes faltando do ano: Oracle e Google. Duas das tradicionalmente mais populares estandes no pavilhão, não estavam presentes em 2009.
  • "Costume" faltando do ano: JavaOne Today. O jornal que costumavam distribuir pela manhã, resumindo o dia anterior, foi cortado fora.
  • Pergunta mais feita do ano: "Vai ter outro JavaOne? Todo mundo estava querendo saber. Ninguém respondeu.
  • A resposta mais dada do ano: "Nós não podemos falar sobre o assunto". Essa era a
  • resposta padrão dos empregados da Sun, quando questionados sobre a fusão com a Oracle.
Pra concluir, o melhor de tudo mesmo é o networking que a gente faz. A constatação que são todos "normais", com ansiedades, defeitos, problemas, virtudes. A mistura de culturas, países, sotaques. As novas amizades que se formam, as comunidades que se criam e/ou fortalecem. O Java, no centro, com seus 14 anos de vida sendo o elo principal que liga tantas pessoas. Essa força nos dá confiança que, aconteça o que acontecer, ainda vem muita coisa boa pela frente.




JavaBahia: JavaOne 2009 - 1o Dia

14 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

A General Session de abertura do JavaOne começou com as boas vindas de John Melissinos, Chief Evangelist and Chief Gaming Officer da Sun. Uma grande expectativa pairava no ar, pois todos estavam curiosos (principalmente, acredito, os empregados da Sun) sobre o futuro da tecnologia Java agora que a Oracle adquiriu a Sun. Johnatan Schwartz não ajudou muito a esclarecer essa dúvida, mas apresentou exemplos diversos de uso da tecnologia Java junto com executivos de outras empresas. A divisão de Blackberry da e-Bay afirmou tratar Java para dispositivos móveis com extrema seriedade; apresentou uma demonstração do Zobni, uma aplicação de busca de informações de contato em redes sociais, acoplada ao programa de e-mail. Enquanto o nome era digitado, apareciam as pessoas encontradas para permitir seleção (Informação sobre desenvolvimento para Blackberry (www.blackberry.com/developer). A Sony Pictures mostrou uso de Java em Blu-ray que nos levará a uma interatividade de alto nível, em qualidade visual e funcionalidades, permitindo por exemplo que pessoas assistindo um mesmo filme possam usar a TV para conversar. Verizon Wireless e Intel basicamente ressaltaram a importãncia de Java em suas organizações, a última enfatizando os altos ganhos de performance obtidos em seus processadores mais novos, resultado também da parceria constante com a Sun. Sobre TV Digital, foi mostrada uma demo de aplicação construída com JavaFX com belos efeitos gráficos. TV e internet se misturam, pois será possível assistir um filme e ao mesmo tempo jogar um Game, ver informações sobre outro assunto (ex: esportes, bolsa de valores ou meteorologia) ou efetuar uma compra on-line. JavaFX parece ser uma boa opção, devido aos seus recursos visuais e multimídia. O Clayton Chagas, brasileiro que apresentará junto com Magno Cavalcante (RioJUG) uma sessão técnica na 6a-feira sobre o Sistema Brasileiro de TV Digital, estava ao meu lado e disse que nosso sistema ainda não prevê suporte JavaFX. Vamos acompanhar a evolução disso.

Durante essas apresentações, foram feitos 3 anúncios importantes: A disponibilização do Java SE 7 SDK, do Java EE 6 e do Java FX 1.2. Sobre essa última, a diretora de engenharia da plataforma JavaFX demonstrou um Player de Vídeo feito com JavaFX construido praticamente sem a necessidade de escrita de código "na unha", apenas arrastando e soltando componentes e estabelecendo ligações entre eles, tudo de forma visual.

É claro que não podia faltar o "pai do Java" James Gosling. Ele falou sobre o novo Java Store, uma espécie de catálogo de aplicações Java construído em JavaFX, que permitirá descobrir, comprar (caso não seja gratuita) e instalar aplicações Java de um jeito bem simples: arrastando e soltando no Desktop. Foi exibido um jogo de paciência feito por Gosling; o chefe brincou perguntando: "Você não fez isso em horário de trabalho né?". A resposta: "Você não deveria fazer esse tipo de pergunta aqui!". Em algum momento Gosling ainda lançou um "desafio", dizendo que gostaria de ver o JavaStore rodando numa TV Digital; Alguém se habilita!?. Em seguida ele e Scwhartzs convidaram o Mark Gerhard, CEO da Jagex (de Java Game EXperts!) para receber seu Duke's Award pelo jogo Rune Scape, um caso de sucesso mundial de game escrito em Java.

Em seguida, o fundador da Sun Scott McNealy foi convidado ao palco; Os 3 assistiram juntos a um divertido filme que resumiu os 14 anos de Java. McNealy estava visivelmente emocionado e fez uma espécie de homenagem a Gosling; Disse que ao ser perguntado pelo pessoal de RH (eles estavam elaboranco um programa de capacitação) sobre como definiria um líder na Sun, pensou e respondeu com uma palavra: CORAGEM. E que isso James tinha e tem de sobra, principalmente quando inventou o Java há 14 anos. Depois do tradicional "arremesso de camisetas", que deixou Gosling bastante ofegante, foi entregue outro Duke's Award para o CEO do Alice, uma solução para ensinar crianças a programarem que começa de forma gráfica e aos poucos vai introduzindo os comandos escritos. Fiquei curioso para saber mais.

Chegava, então, o esperado momento. Finalmente aparecia o Larry Ellison, CEO da Oracle, para dividir o palco com Scott McNeally (estranhamente Gosling e Johnathan se retiraram do palco rapidinho!) e falar sobre a aquisição da Sun. O " Clóvis Bornay americano" (irresistível essa comparação... olha a cara dele!) ressaltou a importância de Java ("100% das soluções Oracle são baseadas em Java ... porque Java é aberto"), JavaFX e OpenOffice (que, segundo ele, vai passar a usar JavaFX em algumas partes visuais). Sobre o que vem mais por aí ele apenas disse "se você quer saber sobre o futuro precisa olhar para o passado", pelo menos deixando a entender que não pretende dar passos para trás "fechar as portas" para essa importante comunidade criada em torno das principais tecnologias da Sun. Ele também falou que gostaria de ver dispositivos produzidos pela Sun, citando especificamente o Google Android. Vamos ver se ele se aventura nessa área. McNeally ainda deu um presente e um recado: bandeirinhas que correspondiam a 5 letras: J A V A. Scott agradeceu imensamente a tudo o que a comunidade de desenvolvedores tem feito e saiu aplaudido de pé.

O restante do dia reservei para assistir sessões, circular pelo pavilhão e conheces pessoas. Gostei muito da Castle in The Clouds: SaaS Enabling JavaServer Faces Application. Boas dicas de como criar Aplicações como Serviço usando JSF, mostrando como embutir características de customização, personalização, gerenciamento de níveis de serviço, métricas de monitoração, dentre outros. A apresentação está disponível on-line no blog do autor.

No Community Corner assisti o Juggy entrevistando a brasileira Fabiane Nardon e o alemão Tonni Epple sobre o JavaTools, espécie de catálogo de ferramentas Java hospedado no java.net que tem em seu portfólio por exemplo desde o popular Hudson, software de integração contínua, até o SuperCrud, projeto quase que individual (ainda...) do Vinicius Senger (Globalcode). Numa dessas situações inusitadas, lembrei que o Tonni Epple foi a única pessoa que eu vi na internet que escreveu um Tutorial de uso de um plugin NetBeans escrito por mim chamado DTDtoBean, para geração de código JavaBean a partir de arquivos DTD, útil para serialização/deserialização de objetos para XML e vice-versa usando frameworks como XStream, Simple (do qual Toni, assim como eu, também é fã) e Java Objects in XML (JOX). É claro que não perdi a oportunidade de conversar um pouco com ele sobre o assunto e demonstrar minha felicidade de ver que pelo menos 1 pessoa gostou do projeto. Já vale a pena!

Entre Sven Reimers (Duke's Award Winner 2009) e Toni Epple 

Ao final do dia, fui à festa do Java Community Process, JCP, onde estão várias pessoas importantes que estão no topo da cadeia que define os rumos da tecnologia. Boas conversas, dentre elas um ótimo papo com o Aaron Houson (coordenador dos JUGs na Sun), eu e Magno Oliveira. Convidei o Aaron para vir ao Brasil participar de um evento no final do ano, provavelmente em Natal - RN, que está sendo organizado pelos vários grupos de usuários Java do Nordeste. Ele ficou animado. Eu também.

Existem mais brasileiros blogando sobre o JavaOne. Vale a pena ver a visão deles sobre o que tem acontecido por aqui. Duas dicas:
Blog do Felipe Gaúcho (CEJUG)

Blog do Magno Cavalcante (RioJUG)


Algumas fotos do 1o dia




Rafael Gomes: Quer incrementar sua palestra? PDFCube!

14 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

O PDFCube utiliza as APIs Poppler e OpenGL APIs para proporcionar  uma interação de um cubo 3D na transição das páginas de um documento PDF.

Sendo assim temos esse resultado:

Quer uma notícia melhor? Você usa Fedora 11? Se a resposta for sim é apenas instalar o PDFCube que está ...



Rafael Gomes: AI-5 Digital

14 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

Para quem ainda não sabe o que é a AI-5 Digital, aconselho a link abaixo:

http://softwarelivre.org/portal/carta-capital-um-novo-ai-5

Diga você também um MEGA NÃO!!!



Rafael Gomes: Blog atualizado!

13 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

Acabei de atualizar meu blog, com ajuda no meu próprio post. Se alguém notar algum problema, por favor, me reporte! Obrigado!



Rafael Gomes: Primeira impressão do Fedora 11 (Leonidas)

13 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

Sim! Esse é o Leonidas! O Codinome do Fedora 11!

Assim, primeiro que achei que perderia muito tempo pra fazer isso, pois infelizmente o upgrade direto do Fedora 10 para o 11 não está estável ainda. Sendo assim iria precisar usar o CD.

Como ultimamente estou com o tempo reduzido por conta ...



Wille Marcel: Apresentação do GCompris no III ENSL / IV FSL-BA

12 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

GCompris é um conjunto de aplicativos educacionais para crianças de todas as idades. Gravei o vídeo da palestra do III ENSL / IV FSL-BA em que o Frederico Guimarães apresentou o GCompris. O áudio tá bem ruim, mas acho que dá pra entender…

O vídeo também pode ser baixado no formato OGG Theora, neste link.

Site oficial do GCompris em português: http://gcompris.net/-pt-br-



JavaBahia: JavaOne 2009 - 4o Dia

11 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

A General Session de encerramento do JavaOne (video acima) é praticamente tão esperada quanto a de abertura. O James Gosling's Toy Show tradicionalmente mostra coisas interessantíssimas feitas com a tecnlologia Java, enquanto vai entregando os Duke's Awards para cada um dos ganhadores deste ano, que vão desde ferramentas de cobertura de testes/integração contínua (Clover, da Atlassian) até ferramenta completa de monitoração de satélites (ND Sat Com) construída em cima da Plataforma NetBeans. Gostei de 3 exemplos envolvendo a niversidade: a) Uma competição de robótica baseada em Java e NetBeans (quem disse que só dá para usar C++ ? Com Java + NetBeans pode-se até fazer debug direto no robô!), estimulando o interesse de jovens para o mundo da engenharia (saiba mais em usfirst.org); b) Uma impressora/leitora/tabuladora de questionários com software Java feita por estudantes de uma universidade da Hungria, apresentada pelos vencedores de uma competição estudantil. Serviria, por exemplo, para tabular com muita rapidez os resultados de uma prova de múltipla escolha: primeiro deve-se "informar" a impressora quais as respostas corretas (através de um papel que é escaneado); depois cada folha de respostas seria escaneada em alta velocidade (até 2600 páginas por hora) e os resultados tabulados. c) BlueJ, ferramenta open source útil para ensino de orientação a objetos.

Gostei também de duas demos: 1) Uma exibição mais detalhada do JavaFX Authoring Tool, que já havia aparecido em outras sessions. Veja nesse link informações e video para perceber o quanto o desenvolvimento de aplicaçòes multimidia com GUIs de qualidade podem ser simplificados. 2) Angela Caicedo (ele já esteve em Salvador, no TechDays JUGs Edition 2006), que se inspirou no filme Minority Report e em sua filha pequena para criar uma espécie de tela virtual que permite usar uma luva para desenhar na parede usando uma interface bem legal feita com JavaFX. Ao final da GS, os funcionários da Sun presentes subiram ao palco (sem nenhum clima de festa...) para tirar fotos.



À tarde fui prestigiar os brasileiros Clayton Chagas e Magno Cavalcante na sessão sobre o sistema brasilieiro de TV Digital. Uma boa esplanação técnica com destaque para a aplicação de exemplo "escolha a mulher mais bonita do carnaval" (foto), que arrancou algumas risadas da platéia. Minha última sessão foi com Tonni Epple e Geertjan Wilienga, sobre como portar aplicações existentea para a NetBeans Platform. Leitor assíduo do blog de Geerjan, dei uma de fã e fui conversar com ele (que fim do mês estará no Brasil, participando do FISL) e tirar uma foto.



O JavaOne reune uma quantidade absurda de conhecimento sobre diversas áreas de interesse relacionadas a tecnologia Java. Todos os videos das General Sessions, assim como os slides (em breve, também os áudios) das sessões técnicas, estão disponiveis gratuitamente. Recomendo fortemente considerar CommunityOne e JavaOne como uma excelente fonte de busca. Nesse link é possível procurar sessões do CommunityOne 2009 por palavras chave, trilha, tipo de sessão, dia ou nome do autor (observe que o PDF pode ser acessado usando usuário e senha contentbuilder e doc789 respectivamente); Para ter uma idéia, a busca por javafx retorna 57 registros, boa parte já com PDF disponíveis. As sessões do JavaOne 2009 podem ser acessadas neste endereço (requer registro gratuito no Sun Developer Network - SDN).



Bom pessoal, com um certo ar de melancolia (não sabemos se, nem quando, haverá um próximo), assim terminou mais um JavaOne. Conheci gente legal, aprendi bastante, andei um bocado, me diverti. Tenho orgulho de mais uma vez representar o JavaBahia, o Serpro e nosso país nesse evento indescritivelmente único. Obrigado a todos que acompanharam o blog e o twitter. Sejam felizes e, homenageando meu amigo Daniel deOliveira (que esse ano não pôde estar presente), BONS CÓDIGOS!!!

Veja relação completa de Java Champions e JUG Leaders em
java-champions.dev.java.net




Rafael Gomes: Vídeo do meu casamento

11 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

Como eu já havia publicado as fotos do casamento, segue agora o vídeo, claro que não é o definitivo, é apenas o que Anne (minha esposa) chamou de "aperitivo" :D

Segue abaixo:

Eita felicidade! :D



Nelson Pretto: Conservadores avançam na Europa e Irecê retrocede

10 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

Fiquei muito assutado com os resultados das eleições para o Parlamento Europeu que aconteceram no último dia 4 de junho de 2009, aqui na Europa. Um avanço monumental dos conservadores, da direita mesmo. Como esperado, já estão todos começando a botar as manguinhas de fora contra homossexuais e os imigrantes.
O The Guardian de hoje,  no caderno de cultura (G2), faz uma bela análise a partir do depoimento de diversos intelectuais historiadores sobre a temática.   A matéria "Is fascism on the march again?", apresenta logo no primeiro artigo a interessante análise de Michael Burleigh, autor do livro O Terceiro Reich,  que logo no primeiro parágrafo afirma: "Hitler didn´t Twitter". Para ele, são muitas as mudanças no mundo, entre as quais as da TIC, e, como Hittler não tuitava, nada hoje deverá ser o mesmo que na primeira metade do século passado.
Mas que tudo isso preocupa, preocupa!
Também o jornal El Pais, da Espanha, abriu essa semana manchete afirmando que o fracasso socialista abre outra etapa na constituição Européia.
É do mesmo El Pais que trago o tema do super-direita Silvio Berlusconi, Primeiro Ministro italiano, sempre metido em escandalos, de todos os tipos. O fotografo italiano Antonello Zappadu, publicou fotos proibidas na Itália de umas festinhas promovidas pelo Il Cavalierre, como é conhecido Berlusconi. As fotos bateram todos os recordes de acesso ao jornal.
"Tenho mais medo do Il Cavaliere do que das Farc Colombianas", afirmou Zappadu, que mora hoje na Colômbia.
Por falar em políticos, dou um salto daqui da Europa para Irecê, a 500 km de Salvador, onde a Faculdade de Educação tem um belo projeto (Projeto Irecê) integrado de formação de professores, de implantação de ponto de cultura, com o Ciberparque Anísio Teixeira, onde temos uma rádio web, dos Tabuleiros Digitais, de um projeto de telemedicina, em parceria com a Faculdade de Medicina da UFBA (aliás, como será que está esse projeto?).
Enfim, uma serie de ações que tem gerado bons furtos. O fundamental aqui, é que o princípio básico que todas essas intervenções e adoração de softwares e tecnologias livres na região. Recentemente o prefeito Zé das Virgens reuniu-se com o Secretário de Ciência e Tecnologia Ildes Ferreirra, para tratar do projeto Irecê Digital (e livre!), pelo que me conta Ariston Eduão, professor da rede municipal de Irecê e um dos nosso aliados em todos esses projetos.
Como resultado dessas intervenções da FACED/UFBA, foi criada alguns anos atrás uma pequena empresa de consultoria e suporte em software livre da região, a Orca Linux. Pois essa pequena empresa de jovens empreendedores formados e estimulados pelo projeto do Ponto de Cultura Ciberparque Anisio Teixieira convenceu a Camara dos Vereadores a lá também por uma Rádio Web e, com isso, transmitir e deixar os podcasts disponíveis todas as sessões para que a população pudesse acompanhar o trabalho dos vereadores.
Maravilhosa ação, em software livre, de transparência para o legislativo municipal.
Mas nada disso fica bom assim. Pois eis que, com a renovação de quase 70% dos vereadores, a nova presidência do vereador Tetinho - Tertuliano Libório, suspendeu a rádio web e as sessões não são mais transmitidas nem as anteriores estão mais por lá. Na verdade, nem encontrei mais o site da camara.
Lamentavelmente, um retrocesso impressionante e esperamos que isso seja revertido com a maior brevidade pois Irecê estava dando um exemplo para a Bahia e o Brasil de transparência e de democracia.
 
Essa foi a base do comentário de hoje, dia 10.06.2009, no programa Multicultura, da Rádio Educadora da Bahia. Para ouvir, clique aqui.



Vicente Aguiar: Noosfero foi atualizado para versão 0.18.1!

9 de Junho de 2009, 0:00, por Software Livre Brasil - 0sem comentários ainda

Neste último final de semana (07/06/09), na calada da noite,  o  Noosfero foi atualizado para a sua versão 0.18.1.

http://www.colivre.coop.br/Noosfero/NoosferoVersion00x18x01

Como vocês podem observar na lista de action itens acima, diferentes de todas os outros releases do Noosfero, esta versão foi voltada exclusivamente para correção de erros e pequenas falhas ("bugs") que surgiram após o lançamento oficial de quatro rede sociais que usam este software livre:

Com tatnto lançamento, a temporada de caça aos "bugs" do Noosfero não deve parar por aí. A próxima versão também será do tipo "nascidos para matar"...  Por isto, sintam-se então mais do que livre para colabar e contribuir com o Noosfero, reportando bugs, enviando patchs ou fazendo documentação! :-)

 



Tags deste artigo: nordeste psl bahia