terça-feira, 25 de setembro de 2012

Os números da Revolução Farroupilha

As minhas aulas de história no primário e no secundário sofriam de uma falta grave: a falta de números. Sem agregar dados aos acontecimentos históricos, as coisas ficam muito nebulosas.

Já que estamos num setembro mui chuvoso e a gauchada está mais faceira que sapo em banhado, resolvi apontar uns números da Revolução Farroupilha.

Em 1835, a população do estado era de apenas 170 mil. É menos de um paisano por quilômetro quadrado (0,6 para ser mais preciso). Porto Alegre tinha 12 mil habitantes. Imagino que muita gente não tenha tido notícia dos acontecimentos.

Morreram cerca de 3.400 combatentes nos quase 10 anos de luta (em média, menos de 1 por dia). A taxa de mortalidade era de cerca de 30 por mil. Logo, seriam esperadas 5.100 mortes por ano; a guerra, portanto, adicionou cerca de 6% à taxa de mortalidade.

Lutaram mais de 100.000 soldados (pelo menos 40 mil farrapos e pelo menos 60 mil imperiais). Portanto, a taxa de mortalidade da guerra era pouco mais que um décimo da taxa da população em geral. É provável que tenha sido mais seguro lutar que ficar em casa comendo churrasco.

Claro, a taxa de mortalidade era impulsionada muito mais por crianças e por idosos que por homens em idade para lutar, mas as proporções são curiosas e um pouco cômicas (os falecidos talvez não enxerguem humor neste dado).

A história do Rio Grande não me comove muito, então proponho diminuir um pouco o tom ufanista do hino trocando "sirvam nossas façanhas de modelo a toda terra" por algo mais proveitoso comercialmente. Por exemplo, "sirvam nossas picanhas de modelo a toda terra".

sexta-feira, 14 de setembro de 2012

iMarx

O novo iPhone esteve em todos os meios de comunicação na última semana. A primeira aparição foi num jornal da Globo. Logo imaginei que fosse uma notícia paga, mas no dia seguinte ele estava no jornal Metro. E, logo depois, também na BBC. É mais um telefone numa sequência evolutiva sem fim dos circuitos, então por que ele mereceu tanta cobertura?

Marx teve uma ideia interessante sobre as relações entre as pessoas e os objetos, o fetichismo da mercadoria: as relações entre objetos sobrepõem-se às relações entre as pessoas.

Só nesse contexto é que tem sentido os meios de comunicação fazerem propaganda gratuita (se não for, o problema é criminal) para um produto que, convenhamos, é só um pouco melhor que o anterior. Eu tenho umas revistas de computação da década de 1980 e nelas há umas propagandas engraçadas sobre micros novos com 64KB de RAM quando o anterior tinha apenas 32KB.

Lendo um pouco mais sobre o conceito, encontrei umas pérolas extras. As mercadorias adquirem vida própria e determinam as relações entre as pessoas de tal maneira que para quem o trabalhador vende sua mão-de-obra também passa a ser importante e determinante de sua colocação na escala social. Não é cômico agora a maneira como trabalhar para a Dell ou a Google é mais bacana que para uma empresa local?

Além disso, as pessoas assumem papéis (usam máscaras) conforme a função que exercem no mercado de trabalho. Vendedores usam terno e gravata, programadores JavaScript são engraçadinhos, funcionários de multinacionais são descolados, gerentes trabalham muitas horas, etc.

A Apple conseguiu até que ficar na fila esperando o novo produto se tornasse um evento social. A manipulação é óbvia, mas o júbilo dos participantes parece sincero. Logo, as outras empresas vão começar a copiar a Apple e sua deificação dos objetos. Eu imagino que vá ocorrer uma reação (eu já não acho graça nessa brincadeira) e as pessoas terão que encontrar maneiras genuínas de interação.

terça-feira, 4 de setembro de 2012

BrazilJS 2012

Porto Alegre hospedou a maior conferência de Javascript do Universo: a BrazilJS 2012. Realmente, eu duvido que outra civilização avançada criaria um monstrinho como o Javascript. Então, não acho que os organizadores tenham exagerado no título.

Estava presente Brendan Eich, criador da linguagem. Ele declarou-se fã do Scheme e revelou que fora coagido a criar algo parecido com Java. Aparentemente, há também quem pense que Java é uma boa idéia. Pelo menos, ele teve a clarividência de agregar funções de primeira classe.

Foi bom ver um evento deste porte em Porto Alegre, mesmo que as palestras não tenham sido tão interessantes (foram cansativas as tentativas reiteradas dos palestrantes de serem engraçadinhos). Ademais, foi uma boa oportunidade de conhecer o teatro do Bourbon Country; essa experiência eu repeti no domingo com o excelente espetáculo Música de Brinquedo do Patu Fu.

A segunda-feira trouxe de volta a realidade dura do mundo Web. Ao otimizar um script, percebi que o Firefox não implementa a propriedade innerText no DOM. Em seu lugar está a textContent. O meu problema era exibir textos obtidos via JSON que contêm sequências especiais de HTML, como "ação".

Uma maneira simples de resolver isso é inserir o texto numa div via o innerHTML e depois recuperá-lo com innerText (ou textContent).

Aproveitando as facilidades herdadas do Scheme, escrevi a seguinte solução que, usando o jQuery, cria um div e uma função para executar a inserção do HTML e a recuperação do texto:

var _unescape=function() {
  var scratch=document.createElement('div');
  return function(s) {
    return $(scratch).html(s).text();
  }
}();

alert(_unescape('Javascript não é tão ruim, afinal.'));

Graças ao jQuery, não preciso me preocupar com as diferenças entre os navegadores.