VidaGeek.net

Linux, Open-source, Programação e Produtividade

Archive for the ‘OpenSource’ Category

A Associação Software Livre Santa Catarina – SoLiSC – informa a abertura da chamada de trabalhos para o 5º SoLiSC – Congresso Catarinense de Software Livre.

O evento será realizado em Florianópolis, SC, em local a ser definido, nos dias 22 e 23 de oububro de 2010.

A submissão das palestras deve ser feita até o dia 01/09/2010 (primeiro de setembro de 2010), através do sistema papers, no seguinte endereço: http://papers.solisc.org.br/2010/speaker/. Para quem já postou palestra no ano passado, pode utilizar o mesmo cadastro.

Graças à excelente avaliação do público para as palestras que vieram da chamada de trabalhos no último ano, o espaço para estas será ampliado na grade de 2010.

O comitê organizador do evento definiu os seguintes macro-temas ou trilhas para este ano:

  • Administração de Sistemas e Desenvolvimento de Software
  • Software Livre em Desktop  (Distribuições, Ferramentas de Produtividade, Multimídia, …)
  • Negócios e Casos de Uso
  • Telecomunicações
  • Hardware e Sistemas Embarcados
  • Software Livre em Geral (demais assuntos relacionados aos temas de software livre e conhecimento livre)

As palestras devem ser preparadas para a duração de 50 minutos, incluindo o tempo para perguntas.

Os trabalhos serão avaliados pelo comitê de programa do SoLiSC.

A organização do evento informa que todos os palestrantes aprovados terão isenção da inscrição do evento, mas que não irá dispor de ajuda de custo para quem tiver a palestra aprovada.

Datas Importantes:

  • 01/07/2010 – Abertura da Chamada de Trabalhos
  • 01/09/2010 – Encerramento da Chamada de Trabalhos
  • 15/09/2010 – Divulgação das palestras aprovadas
  • 22 e 23/10/2010 – 5º SoLiSC

Posts Relacionados:

  • Textos Clássicos
  • FISL 8.0
  • Cuba Libre
  • Economizando com Software Livre
  • FISL8.0: DRM como ameaça para o software livre: música, filmes e TV digital
  • Show Us The Code, Mr. Ballmer!!!
  • FLISOL terá sede no IME/USP
  • Acompanhe-nos por RSS, por Email ou via Twitter.
    Veja como ter um desconto no Dreamhost: um excelente servidor web.

  • 0 Comments
  • Filed under: Eventos, OpenSource
  • Um dos grandes problemas que enfrentamos no meu atual projeto na AdaptWorks foi descobrir qual o real encoding de páginas html arbitrárias.

    Existem diversas causas para esse problema:

    1. Muitas pessoas não fazem idéia de como trabalhar com encodings de arquivos
    2. Nem sempre o encoding na resposta do servidor é o encoding do arquivo
    3. A tag meta com o charset também pode não bater com o encoding do arquivo
    4. Não existe uma forma simples de detectar qual o encoding do arquivo

    Depois de muito procurar, encontramos um projeto que usa diversas heurísticas para detectar o encoding correto do arquivo.

    O ICU (International Components for Unicode) faz todo o trabalho pesado para a detecção do encoding, com mais confiabilidade do que os dados enviados pelo servidor ou especificados pelo criador da página.

    Entre os vários usuários do ICU, estão Google, IBM e Apple.

    Ele é meio chato de usar, mas vale a pena.

    Posts Relacionados:

  • Encoding hell
  • Proteção de Tela como Papel de Parede no Linux
  • Deixando seu Ubuntu mais rápido
  • Como migrar de SVN para GIT
  • Gerando memória swap on-the-fly
  • UTF-8 no Latex
  • YACP - Aprendendo a usar suas ferramentas
  • Acompanhe-nos por RSS, por Email ou via Twitter.
    Veja como ter um desconto no Dreamhost: um excelente servidor web.

    Hibernate Search

    Semanas atrás eu apanhei bastante do Hibernate Search. Na verdade, não foi dele que eu apanhei, mas de não entender algo fundamental sobre ele.

    Pra quem não sabe, o hibernate search é uma ferramenta muito legal para busca textual construída em cima do Lucene e do Hibernate. É realmente muito simples de configurar e usar. Mas tem um ponto que eu sabia mas não entendia as implicações.

    O cenário era o seguinte. Eu tinha uma aplicação que usava lucene para fazer busca textual. Tudo era feito na mão e tinhámos uma boa suite de testes cobrindo a busca textual. Como a utilização do lucene foi em um momento experimental (fazer e depois melhorar), resolvemos migrar para hibernate search. Tirando o tempo que demorei para notar que a versão atual do hibernate search exige Lucene 2 e não o 3 que usávamos, dois testes insistiam em não passar por nada no mundo.

    Todo o resto funcionava (o que praticamente garantia que a configuração estava certa). Depois de muito quebrar a cabeça, me lembrei de como o hibernate search funciona.

    O hibernate possui uma estrutura de interceptadores para muita coisa interna dele, inclusive operações básicas com o banco, como inserir, atualizar, remover, etc.

    O hibernate search entra exatamente nesse ponto. Cadastrando interceptadores para todas essas funções, ele é capaz de pegar os dados e serializar no índice do lucene também (notem que existe replicação de informação, uma vez que você terá os dados no banco e no índice do lucene). E esse é exatamente o ponto.

    O teste que não passava era um teste que simulava o comportamento do usuário, usando WebDriver. Na funcionalidade em questão, não eram enviados todos os dados do objeto, apenas a chave primária dele. Com isso, o hibernate search indexava apenas a chave, pois todo o resto do objeto estava vazio. Quando me lembrei disso, foi necessário apenas fazer uma busca antes de mandar gravar o objeto.

    Posts Relacionados:

  • Google Books Search ganha apoio alemão
  • Notícias Fresquinhas
  • O Mal da Google
  • YubNub
  • Wikipedia na linha de comando
  • Yahoo Hack Day 2008
  • Scripts para o Greasemoney do Firefox
  • Acompanhe-nos por RSS, por Email ou via Twitter.
    Veja como ter um desconto no Dreamhost: um excelente servidor web.

    I18n para Java

    Quando eu comecei a trabalhar na Adaptworks em setembro do ano passado, estou em um projeto onde temos muito espaço para experimentação e criação de melhorias.

    Uma dessas melhorias é uma forma diferente de se trabalhar com internacionalização em Java.

    Em geral, usamos uma taglib para fazer isso (como a JSTL/fmt). Mas eu realmente não gosto muito de sintaxes como:

    
    <input type="submit" value="<fmt:message key="project.submit.button" />">
    

    Fica bem ruim de ler. Eu lembrava de ter ouvido que era possível estender a Expression Language do JSP, mas nunca tinha dado muita bola pra isso.

    Enfim, depois de apanhar um pouco chegamos a uma solução interessante para o mesmo código:

    
    <input type="submit" value="${i18n.project.submit.button}">
    

    Não sei quanto a vocês, mas acho bem mais legível.

    O projeto está em http://projetos.vidageek.net/i18n

    Feedback é sempre bem vindo.

    Posts Relacionados:

  • Java 1.6 no Mac
  • JSF - Container
  • INC - Isso Não Compila!!!
  • INC - Labelled Loops
  • JSF - SOAPConnection
  • Em busca dos 64 bits
  • Falando em Java: Overview
  • Acompanhe-nos por RSS, por Email ou via Twitter.
    Veja como ter um desconto no Dreamhost: um excelente servidor web.