Certamente!

Paulo Querido. Na Internet desde 1989

11 de agosto de 2008

Heatmap do noticiário sobre os Jogos Olímpicos de Pequim (making of)

Foi quase uma brincadeira, produzir o heatmap do noticiário sobre os Jogos Olímpicos de Pequim que durante o decurso da competição abrirá a primeira página de Certamente!. A estética de mais este mashup de jornalismo assistido por computador não é famosa, bem sei, mas continuo a produzir estas coisas nos tempos livres, que não abundam, e não me posso dar ao luxo de os gastar no embelezamento — além de que eu odeio stylesheets! Eis o making of em 5 brevíssimos pontos:

  1. Contexto e newsmap original
  2. Código livre e adaptações
  3. A escolha dos órgãos a seguir e os problemas do News Google
  4. Como fazer isto com os conteúdos da RTP
  5. Mais projectos de cobertura dos JO

Contexto e newsmap original

Desde que sou jornalista que me lembro de os Jogos Olímpicos representarem um incentivo para a criatividade dos jornalistas. Na altura não havia jornalismo multimedia na Internet, claro :) Na Gazeta dos Desportos inovámos com cabeçalhos a cores, rúbricas especiais e acima de tudo tratamento fotográfico de luxo para a época. Isto nos 3 grandes eventos internacionais que ali passei, incluindo os Jogos de Carlos Lopes, perdão, de 1984.

A mesma equipa, mais ou menos, fez depois no Expresso o caderno de Desporto — e aí a inovação em Jogos foi mais acentuada, até porque queríamos muito brilhar (e brilhámos!). Já usámos infografia — também meti a colher nisso, fui dos primeiros jornalistas do mundo a trabalhar infográficos em computador (CorelDraw! 1 e 2.0, até escrevi um livro sobre o programa).

Quanto ao meu heatmap, que podem ver na 1ª página do webzine (link para efeitos de arquivo e para os leitores de feed), é inspirado no fabuloso newsmap de Marcus Weskamp, um clássico que não só resiste à idade como tem sido muito bem vendido para alguns órgãos de comunicação social que preferiram olhar para a frente em vez de se barricarem para resistir ao assalto da Internet.

Código livre e adaptações

No entanto, usei tecnologia radicalmente diferente: como o Flash não é a minha praia, não descansei enquanto não encontrei código ao meu jeito para martelar, retorcer e converter.

Encontrei em Javascript (demasiado puxado para mim e não fazia o que eu queria), em Perl (demasiado básico, numa versão primata que nem experimentei) e aquela em que me fixei, em PHP.

O código original é este treemap PHP de Geoff Gaudreault. É código livre, é relativamente antigo (Abril de 2006). Mas seria para fazer o que eu pretendia, e numa linguagem que me é familiar.

A adaptação não foi difícil — embora tenha sido profunda. Simples e até básico, o código de Gaudreault é compreensível para mim, que em programação sou o ajudante do aprendiz. O suficiente para isolar o que o código tem de melhor (a rotina que “escolhe” os tamanhos e os “encaixa” numa grelha). O resto foi retorcer, retorcer, martelar e pontapear até caber (é por escrever estas coisas que alguns geeks me odeiam visceralmente).

Pronto, ok: resolvi o problema que o código original não tinha, que era dar maleabilidade às escalas, e introduzi a novidade das notícias a abrirem em janela com o em mouse-over. Isto não foi fácil para mim: tive de modificar de alto abaixo o mecanismo de “desenho” dos rectângulos. Ainda há problemas com os títulos pequenos (no Flash o controlo tipográfico é total, em HTML+CSS, nem pensar nisso).

A escolha dos órgãos a seguir e os problemas do News Google

A escolha das fontes de informação não apresentou problemas. É sacar o feed olímpico do News Google. Comecei por fazer alguma filtragem para “equilibrar” (enfim, o que se pode) os órgãos brasileiros e portugueses — uma tarefa que o News Google faz muito mal. Se andar sempre em cima do script, posso ir afinando. Mas não estou para isso.

Pergunta: Porque escolhi o Google News em vez de fazer um feed com os órgãos pretendidos?

Resposta: Simples. Para desenhar um heatmap são necessários dois vectores para cruzar.

Temos a frescura, simbolizada no código de cores: azul mais escuro significa notícias mais recentes, actuais, e o azul mais claro representa as notícias mais antigas, sendo a cambiante produzida entre a mais fresca e a menos fresca.

E temos a importância, percebida no tamanho de cada título.

Ora, o News Google dá-me instantâneamente os dois vectores — sendo que a importância é retirada do número de notícias relacionadas, que nos dá uma ideia muito fiável da importância de cada assunto ou título. Isto se não nos importarmos por aí além com os órgãos originais… Talvez eu, por ser jornalista, dê a isso mais importância que os leitores “normais”, para quem as notícias são tudo e quem as dá é quase nada.

Isto porque os algoritmos do News Google umas vezes destacam um determinado título de um determinado órgão para, passados minutos ou horas, destacarem outro.

Usando o vulgar MagPie o feed é actualizado de 5 em 5 minutos e parsado para extrair a informação relevante. Se for um sucesso, talvez me abalance a melhorar a coisa com imagens diferentes das fornecidas pelo News Google. Talvez.

Como fazer isto com os conteúdos da RTP

Ainda pensei produzir o mapa com conteúdos da RTP, que é a televisão oficial por cá e tem uma boa cobertura, que inclui blogues — isto é, opinião de quem está lá, opinião valiosa. O problema é que não conseguia automatizar a definição do segundo vector: só se estivesse manualmente, 24 horas por dia, em regime de permanência, a ler quais as notícias mais lidas (também funcionaria com as mais ligadas, comentadas, etc).

Mais projectos de cobertura dos JO

E pronto, eis o making of e apresentação de mais um mashup Certamente!. Po contribuição de um seguidor no Twitter, deverei testar — assim tenha tempo — isto com uma tag cloud para além do heatmap. Dêem-me pretextos!

Enquanto não publico aqui mais um projecto que já está em produção, aliás, em co-produção com mais dois bloggers, relembro a apresentação interactiva Os Cartazes dos Jogos Olímpicos contam uma história.