Skip to content


Barcamp Portugal 2008

Escrevo isto enquanto venho no comboio de volta para Lisboa. Segue-se um brevíssimo resumo do que vi no BarcampPT 2008. Como de costume, deu para conhecer pessoas espectaculares, novos projectos, novas ideias. A organização está de parabéns.

A conferência começou no Sábado com a apresentação “WTF is XMPP?” pelo Pedro Melo. Fez uma apresentação do protocolo XMPP, onde é usado (Sapo, GTalk, entre muitos outros), as vantagens de ser federado, entre outras coisas. Depois começou a falar de utilizações do protocolo não-relacionados com Mensagens Instantâneas, mas como interface para outros serviços. Para programadores que queiram criar bots para interligar serviços/pessoas deixou algumas dicas: 1) usar ejabberd ou OpenFire como servidor XMPP; 2) escolher uma biblioteca de XMPP (não vale a pena programar o protocolo do zero e existem boas biliotecas para várias linguagens de programação); 3) escolher se o bot se vai portar como um cliente ou um componente do servidor. Pelos comentários do almoço de Domingo, esta foi a apresentação mais técnica do Barcamp.

De seguida vi o Celso Pinto a apresentar lições tiradas de sistemas empresariais. Principais lembranças que tenho: preparar o sistema para escalar, mas não optimizar demasiado cedo; usar mensagens para lidar com cargas inesperadas (leia-se, em vez de processar imediatamente os pedidos, guardá-los e processá-los quando for possível); se um pedido (por exemplo, uma página web) depender de vários sistemas responderem, definir um intervalo de tempo e ignorar o serviço se não responder a tempo. Em relação a esta última sugeri uma alternativa: usando AJAX, fazer os pedidos em separado. Isso permitiria que se um serviço “acordasse”, a página pudesse ser completada perante o utilizador final.

José da Silva apresentou uma forma de encriptar e desencriptar mensagens no navegador web usando javascript. Fiquei a pensar noutras utilidades para este tipo de tecnologia… As funcionalidades descritas, adaptadas, permitiriam a gravação de dados encriptados transparentemente em serviços públicos.

Fiz a apresentação do Passwordless OpenID. Mais detalhes sobre isso noutro artigo. Gostei da discussão e do feedback.

O Luís Rei apresentou de seguida várias notas sobre optimização de MySQL. Primeira recomendação: nada de começar a optimizar sem saber o que se está a passar com a aplicação (um erro habitual, também na minha experiência). Para fazer profiling recomendou a utilização dos comandos top (Un*x) e mytop (MySQL), fazer avaliações de desempenho (benchmark) numa máquina diferente (a instrumentação da aplicação pode ser carga demais para o funcionamento normal da base de dados). Usar o Super Smack para gerar carga.

A segunda recomendação: cuidado no desenho de tabelas: usar os tipos apropriados, de preferência o mais pequenos possíveis/necessários. Normalizar toda a base de dados e desnormalizar apenas quando necessário. De seguida falou sobre os plugins de armazenamento do MySQL e como podem/devem ser utilizados. Em relação ao InnoDB recomendou que se use sempre o plugin do sítio http://www.innodb.com/ por ser melhor que o que vem com o MySQL. Recomendou a utilização do plugin de memória para tabelas temporárias.

A apresentação seguiu-se com a importância de utilizar índices. Para quem não saiba, um índice numa base de dados é uma resposta pré-calculada. Cada modificação (inserção, actualização) gera novo processamento para cada índice, mas torna as consultas à base de dados muito mais rápidas. Como em todas as coisas, é preciso achar o equilíbrio correcto. Recomendação: utilizar o EXPLAIN para ver o efeito que uma query vai provocar na base de dados.

De seguida fomos ao jantar (Pizza) e deu-se uma hackathon. Alguns resultados: melhor aspecto nas ligações do Passwordless OpenID, o Celso Pinto fez uma versão do CouchDB usando Tracemonkey, o André Ribeirinho acrescentou um mecanismo anti-spam nos comentários do Adegga e tenho a sensação de que me estou a esquecer de alguém. Quaisquer rumores de uma partida de Texas Hold’em são obviamente falsos.

Seguiu-se uma penosa noite a esvaziar copos. No Domingo, houve rumores de ressacas, almoço no Vira-brasas (penso que não me enganei no nome do restaurante) e as sessões começaram às 16h.

O Bruno Amaral quer lançar um espaço de discussão chamado Media Social Café à imagem do Orpheu no tempo de Fernando Pessoa. A primeira reunião espera-se para as próximas semanas em Lisboa.

Seguiu-se a apresentação do Pedro Custódio sobre a diferença entre o que os programadores desenham e o que os utilizadores esperam. Com chuva de aviões de papel incluída…

A Patrícia Furtado apresentou conceitos básicos de design para programadores, com algumas dicas práticas. Espero que a apresentação dela seja tornada pública rapidamente, há coisas ali que quero rever depois de dormir uma noite descansada.

O Bruno Pedro fez uma apresentação sobre como obter independência financeira chamada “Fuck-You Money”. Não, não é jogando na lotaria…

Por fim tive de apanhar o comboio. Este artigo foi escrito ainda antes de chegar a Lisboa…

Posted in Tecnologia, Web.

Tagged with , , , .


No Responses (yet)

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.



Some HTML is OK

or, reply to this post via trackback.