Archive for the 'FLOSS' Category

FISL 8.0 – Primeira parte

11.04
Madrugada. Chegada em Porto Alegre. Táxi, casa da irmã, cama.
Manhã. Ajeitar modem adsl e access point (que ninguém é de ferro, oras). Depois, fazer a apresentação pro WSL.
Meio dia. Irmã em casa. Saímos para almoçar, micro-passeio pelo centro, mega-refeição, R$7,50 buffet livre, com sobremesa (sorvete). Barriga dói. Voltamos pro apartamento, passando antes na Toca do Disco (que está fechada). Apresentação ainda em branco.
Lá pelas 4 e pouco da tarde. Indo pro aeroporto. Ônibus passa na frente do apartamento e deixa na frente do aeroporto. Mordomia, exceto pelo fato de que o ônibus parece que vai desmontar cara vez que pára (ar condicionado, pelo jeito). Mais um tempinho esperando o avião chegar e lá vem as manchinhas vermelha e preta. Eram Pacu e GG, este último em sua primeira viagem de avião. Apresentação ainda em branco.
Noite. Conexão WiFi zoada (culpa do note do Pacu, que não suporta WPA). Access point resetado, sem criptografia. Gambiarra é o nome da nova rede. Pizza. Banho.
Apresentação ainda em branco. OpenOffice aberto, artigo aberto, a canvas ainda em branco. Rola certa emoção, pensando que aquela brancura toda significa um mundo sem limites para a minha criatividade.
Meia hora depois. Termino de ler os RSS atrasados. Apresentação ainda em branco. Hum. Hora de trabalhar.
Mais meia hora. Apresentação aparentemente pronta. Algumas pequenas melhorias na disposição do texto. Salvar em PDF, copiar pro 770, Cama.

12.04
Manhã. Algumas acordadas durante a noite, carros passando na rua pareciam chuva. Logo surge a preocupação de ter de tomar táxi até o evento. Preocupação infundada, dia nublado mas nem sinal de chuva. Saída cedo para ir ao local do evento, que fica longe.
Quinze para as nove. Palestra inicia às 10 horas da manhã, mas já estamos com crachá na mão. Algumas pequenas verificações no conteúdo do kit FISL, separar propagandas que não interessam, lixo.
Nove e meia. Entro no hall principal, e erro a sala da minha palestra. D’oh. Depois de achar a sala certa, primeiro a chegar. Aguardar.
Dez e quinze. Chegam mais dois palestrantes. Nada da coordenação do WSL. Mais alguns minutos e chega Marinho, coordenador do WSL, mas não da mesa. Aguardar. Aparentemente primeiro palestrante não veio, logo devo fazer a primeira. Copiar palestra do 770 pro note, abrir, aguardar início.
Dez e meia. Agora vai. Início da palestra. Algumas gaguejadinhas, coloco a mão no bolso antes de me dar conta que não é o recomendado. Palestra flui bem. Lucas aparece na entrada, cumprimenta e tira uma foto. Devolvo o cumprimento com um aceno de mão, o que deve ter parecido estranho pra quem está assistindo à palestra (pouca gente, basicamente Pacu e GG, Petro e seu irmão e os palestrantes). Enrolo-me um pouco no final, abro para perguntas. Nada. OK, acabou. Não foi tão difícil.
Meio dia. Almoço. Mesmo lugar do ano passado.
Meio da tarde. Descubro que Kurt Vonnegut morreu ontem, aos 84 anos. Luto oficial.
Fim da tarde. Vamos embora. Passamos no cinema e assisitimos As Férias de Mr. Bean. Seria tolo, se não fosse tão engraçado.
Noite. Torradas de janta. Um pouco de enrolação. Cama.

Algo não cheira bem…

“Novell is actually just a proxy for its customers, and it’s only for its customers. This does not apply to any forms of Linux other than Novell’s SUSE Linux. And if people want to have patent peace and interoperability, they’ll look at Novell’s SUSE Linux. If they make other choices, they have all of the compliance and intellectual property issues that are associated with that,” commented Steve Ballmer.

Fonte

Será que a Microsoft abraçou a Novell (abraço de urso, diga-se) por causa do anúncio da Oracle na semana passada?

Ubuntu Feisty Fawn

Você, como eu, sente aflição quando uma distribuição baseada em Debian é estabilizada e pára de atualizar a maior parte dos pacotes? Não se importa de possivelmente deixar sua máquina imprestável?

Desde ontem estão funcionando os repositórios do Feisty, a próxima versão do Ubuntu. Basta trocar o “edgy” do sources.list por “feisty”.

A melhor justificativa que eu achei é: Já que muitos reclamam que o upgrade de versões estáveis estraga algumas configurações, por que não fazer o upgrade agora, que os repositórios do Feisty são praticamente idênticos ao do Edgy, e ir fazendo o upgrade aos poucos? =D

BugBrother

BugBrother é o protótipo (ou melhor, versão de desenvolvimento) do programa que eu estou desenvolvendo na Embrapa, o SACAM, que significa Sistema de Análise Comportamental de Animais em Movimento. Sua função, agora que a sigla é conhecida, é um tanto óbvia: Consiste em capturar imagens de uma entrada de vídeo e aplicar algoritmos de detecção de movimento, a fim de guardar uma trilha do movimento realizado pelo animal. A partir dessa trilha e após definir áreas numa imagem de referência é possível reportar estatísticas úteis para estudos, realizados geralmente por entomólogos. O experimento básico feito por eles é realizado com o auxílio de um olfatômetro em forma de Y, onde o inseto é liberado no pé do Y e nas outras duas extremidades são liberados feromônios ou outras substâncias. As estatísticas geradas são úteis no estudo de novas armadilhas químicas para insetos, muito menos danosas do que agrotóxicos.O funcionamento básico do programa passa por essas etapas:
– Capturar a imagem de uma entrada de vídeo (atualmente qualquer dispositivo compatível com Video4Linux)
– Aplicar um algoritmo de detecção de movimento e guardar as coordenadas (X,Y) geradas pelo movimento detectado.
– A partir dessas coordenadas calcular parâmetros como tortuosidade, desvio angular e velocidade do inseto analisado.
– Gerar relatórios.
Atualmente os dois primeiros itens estão funcionais, o terceiro está próximo de ser terminado e o último começará a ser desenvolvido na próxima semana.

Um ponto que possa ter causado interesse: digo que é o protótipo pois no momento ele está sendo desenvolvido usando Python + PyGTK + GStreamer. Devido a problemas de desempenho (principalmente em relação ao algoritmo de detecção) ele será implementado novamente, em C + GTK+ + GStreamer, após a conclusão e avaliação do protótipo. O que é uma pena, pois do ponto de vista de clareza de código e reaproveitamento será um retrocesso. Mas a vida não é sempre o que a gente quer =D

GStreamer

No ano passado eu descobri um dos melhores livros que eu li na minha vida, O Guia do Mochileiro das Galáxias, de Douglas Adams. Pouco depois de terminar de ler (duas vezes) eu fiz uma busca por Douglas Adams no Google. E um dos links retornados foi uma sessão de perguntas e respostas do Ask Slashdot, onde ele fala sobre MAX, uma linguagem de programação musical de alto nível orientada a objetos, quando perguntaram sobre a obsessão do personagem Richard McDuff, do livro Dirk Gently’s Holistic Detective Agency, de mapear processos naturais em música. Eu comecei a procurar por MAX e acabei achando que seu criador, Miller Puckette, criou também o PureData, que faz o mesmo e é open source.
Depois de algum tempo eu entendi como ele funcionava, e eu fiz algumas coisinhas simples, mas eu não usei ele por muito tempo. E então eu fiquei sabendo da existência do GStreamer. Apesar de algumas diferenças, eu fiquei maravilhado com quão simples era fazer algumas coisas que eram bem difíceis no PureData.
De fato, eu não sei como as coisas funcionam dentro do PureData, mas eu realmente gostei de como o GStreamer foi feito: existem Elements, que tem uma função específica, como ler dados de um arquivo, decodificar dados ou mandar dados para uma placa de som; existem Bins, um container para uma coleção de elementos, e Pipelines, um tipo especial de Bin que permite a execução dos elementos contidos; e existem Pads, que são usadas para negociar ligações e fluxo de dados entre elementos. E é só isso. Com essas partes simples, todas juntas, coisas muito complexas podem ser feitas, como o Flumotion, um servidor de streaming, e o PITIVI, um editor não-linear de vídeo.E, claro, o grande BugBrother, o protótipo do programa que eu estou fazendo lá na Embrapa. Mais sobre esse em outro post.


Categorias