WTF???

Agora pouco digitei um endereço errado e tive acesso à uma infeliz página:

WTF???

Outro teste:

OK, já passou da hora usar OpenDNS!

Vou-me embora para Pasárgada

Vou-me embora para Pasárgada
Lá sou amigo do Reis

Novidades:

1 - Estou formado em Ciência da Computação pela UFPR.

2 - Estou deixando Curitiba. Após 22 anos na saudosa Curitiba estou deixando-a, e indo para Recife-PE.

Só tenho o que agradecer a esta magnífica cidade, à minha família que fica por aqui, e aos meus colegas da Mandriva, com os quais pude aprender bastante.

E esperar que este novo desafio seja tão bom e gratificante quanto o antigo.

PiTracker - tracker de imagem em QT4.

Seguindo a linha do “Liberando trabalhos da UFPR“, estou liberando o código do PiTracker.

Projeto da matéria de Processamento de Imagens, o objetivo era fazer um tracker de pessoas em um determinado vídeo.

Na especificação havia:

  • O vídeo será uma sequência de imagens PPM nomeada da forma <nome>_<seq>.ppm. Ou seja, se a sequência se chamar tracker, o primeiro arquivo será o tracker_00.ppm.
  • O vídeo será testado em dois casos: No primeiro haverá uma pessoa, no segundo duas.
  • As pessoas devem ser marcadas com cores diferentes, e a mesma cor para cada uma das pessoas.
  • Em nenhum momento as pessoas se cruzam.

Assim fica fácil! =)

Segue algumas screen shots:

Primeira pessoa aparecendo na imagem

Segunda pessoa aparecendo na imagem

Duas pessoas marcadas lado-a-lado

Como de costume, o código está no SVN em:

http://danilocesar.com/svn/pitracker/

E as imagens podem ser encontradas no site da matéria.

Liberando trabalhos da UFPR

Estou prestes a me formar, e lembrando-me de um convite do Arthur Furlan, decidi que estava na hora de liberar alguns trabalinhos legais que escrevi na faculdade.

Servidor/Cliente FTP usando raw socket.

Acho que este é o que será mais útil, principalmente aos meus colegas de Universidade.
Trabalho de redes1, a missão era implementar um cliente/servidor FTP baseado no Kermit utilizando raw sockets. Algumas pessoas fizeram utilizando UDP, mas ae fica sem graça né?! =)

Para controle de fluxo, foi implementado o pára-e-espera. Toda mensagem deve retornar um ack/nack. Obviamente, não há TCP nem IP, a “conexão” é feita sem endereçamento pelo cabo de rede. Os cabos devem ser ponto-a-ponto (até pode ser utilizado um hub, mas provavelmente ele mate todos os pacotes por serem inválidos).

Para detectar erros utilizo paridade-par (sux), e caso o cabo de rede seja removido e colocado depois de pouco tempo, o sistema deve continuar de onde parou. O arquivo final precisa ser consistente. Isto é muito complicado usando apenas paridade par, logo nas mensagens de fim de arquivo envio como dado o MD5, para garantir consistência.

O tamanho de cada arquivo nos pacotes está incorreto. Esta informação está sendo ignorada.

O resto está descrito no arquivo: Mensagens de atá 255 bytes, etc etc.

Como estava aprendendo GTK+ na época, fiz umas modificações para incluir uma interface gráfica. Ficou meio estranho pois incluí isto depois que o trabalho já estava pronto. De qualquer forma, para compilar esta versão, utilize o comando “make gui

No Unix, o pacote deve ser puxado com o comando:

svn co http://danilocesar.com/svn/redes1

Outro dia publico outros códigos.
[]‘ s

Danilo Cesar

Aos colegas do planeta…

Receita de Bolo Brigadeiro

Ingredientes

  • 1 xícara (chá) de açúcar
  • 1 colher (sopa) de fermento em pó
  • Meia xícara (chá) de chocolate em pó solúvel
  • 2 xícaras (chá) de farinha de trigo
  • 1 xícara (chá) de leite
  • 5 ovos

Recheio

  • Meia xícara (chá) de chocolate granulado
  • Meia xícara (chá) de chocolate em pó solúvel
  • 2 colheres (sopa) de manteiga
  • 2 latas de leite condensado

Preparo:

Massa: Bata na batedeira, as claras em neve bem firme. Junte as gemas, uma a uma, e acrescente o açúcar. Despeje o leite aos poucos, sem parar de bater. Incorpore, por fim, delicadamente a farinha peneirada com o Chocolate em Pó e o fermento. Despeje em uma fôrma redonda (28 cm de diâmetro) untada e enfarinhada e leve para assar em forno quente (200º C) por aproximadamente 40 minutos. Deixe esfriar e corte-o ao meio.

Recheio e cobertura: Leve o Leite Moça, a manteiga e o Chocolate em Pó ao fogo, mexendo sempre. Quando ferver, abaixe o fogo e deixe cozinhar, sem parar de mexer, por cerca de 6 minutos ou até formar um creme consistente. Cubra uma metade do bolo com este creme, arrume a outra metade, espalhe o restante do brigadeiro com uma espátula ou faca e espalhe o chocolate granulado em toda a superfície. Leve para gelar e sirva.

E tenho dito!

Go Speed, Go away from here!

Duas horas a menos de vida e oito reais mais pobre, posso dizer que assistir Speed Racer acrescentou-me algo: Atualizei meu conceito de lixo.

E tenho dito!

É uma cilada Bino!

http://www.informationweek.com/news/software/linux/showArticle.jhtml?articleID=207…

Acho que vale a pena ler os comentários antes de ler o texto:

Yes, the fact that the writer thinks that MEPIS is based on Mandriva shows how little knowledge he has, and how poorly researched his paper is..

Bug closed…

Dá um real ae, dá um real ae!

O que não se faz por uns trocados?

April fools day

Mais uma vez chegamos naqule patético dia onde as pessoas, por algum motivo, acham engraçado contar mentiras.

Logo, foi dado o aviso. Ignorem blogs, sites de jornais, conversas de amigos e etc…

FAQ:

  1. Não, a Microsoft não liberou os fontes do Windows
  2. Não, não há um novo vírus multiplataforma
  3. Não, Elvis não morreu

Primeiro de Abril

Sugestões para outro fim de semana em Curitiba..

Relexões de um desocupado: Breve relato sobre peças de teatro:

PEQUENAS CAQUINHAS É MUITO BOM! MESMO!

Dentro de alguns minutos irei assistir a peça ‘Laranja Mecânica‘, adaptação do livro de mesmo nome. Atualizarei este post com a minha opinião quando voltar.

E que venha Tangos e Tragédias!

[Update 31/03/2008]: Laranja Mecânica é meio trash…

from week import weekend. weekend.start()

from week import weekend
weekend.start()

Não sou de ficar reclamando, mas esta semana foi punk!
Graças a Deus, e à CLT ( Tá, é estágio, mas não tem funcionários para abrir a empresa ) não trabalho no fim de semana.

Para este fim de semana, nada de coisas nerds! Vou seguir a recomendação do Felipe e assistir Cloverfield. Também estão no meu TODO as duas peças do João Luis Fiani:

Ouvi excelentes comentários sobre ambas!

Se você é de Curitiba e estará largado no fim de semana: Já dei algumas idéias!

Bom fim de semana a todos!
[]’s

Extra, extra… Nokia adquire TrollTech

A Nokia divulga suas intenções de adquirir a trolltech.

Com estas informações tenho duas perguntas:

Será a Nokia capaz de manter a qualidade da biblioteca QT?

Será que veremos uma licença LGPL para a libQT? Se isto acontecer, será o fim da libGTK?

GoogleMaps errado não é mais problema! Patch para maemo-mapper aqui!

Como descrevi aqui a alguns dias atrás, o GoogleStreeMaps tem problema em posicionar geograficamente as ruas de algumas cidades do Brasil ( principalmente do interior ). Para quem o utiliza apenas para ver rotas não tem problema algum, mas para quem utiliza-o como motor para GPS a coisa muda de figura. O que acontecia era mais ou menos isto:

Error on GoogleStreetMaps

(A linha vermelha indica o que o carro estava fazendo, a linha verde indica o que o GoogleStreetMaps indicava fazer)

Como não quero passar aperto em Sampa semana que vem, e sei que Sorocaba e Itu estão na lista das cidades que o GoogleMaps erra, resolvi escrever um pequeno patch para o Maemo-Mapper, que adiciona a seguinte feature: “Calibrar o Mapa”.

Funciona mais ou menos assim: Ao identificar um erro de deslocamento, o usuário vai no menu Mapas e depois em “Calibrar Mapa”. Logo após clica-se em algum lugar da tela onde ele crê que realmente está.

O ideal mesmo seria parar o carro em uma esquina, identificar a rua onde está e a rua que irá cruzar, e clicar bem em cima.

O algoritmo faz duas coisas muito simples: Calcula a diferença da Latitude e Longitude do clique e da posição real indicada pelo cursor. Em mãos desta diferença, ela será sempre adiciona à Latitude e Longitude na leitura do GPS.

Desta forma conseguiremos andar sempre em cima da rota. O resultado final será algo como:

GoogleMapsError Fixed by Maemo-Mapper Calibrate Feature

(Há! bem melhor agora!)

Bom, se o patch mostrar-se útil para mais alguém posso envia-lo à equipe do maemo-mapper… Para mim com certeza o será.

O patch pode ser encontrado aqui, e o pacote para instalar aqui.

É isso, bom fim de semana a todos!

[]’s

Danilo Cesar

[UPDATE: 15/02/2008] Quase um mês depois…

O mapeamento de Sorocaba é melhor do que eu pensava. Usei o calibrador apenas em um momento, quando entrei na cidade. Excelente trabalho do nosso co-piloto!

Depois, com o calibrador desligado, percebi que o erro era imperceptível em vários pontos, inclusive na chegada do kartódromo de Itu! Por falar em Kartódromo, o Schinchariol é uma exelente opção para os paulistas amantes da velocidade.

Notas de um viajante.

Adquiri um GPS Bluetooth Holux a alguns dias atrás para minha viagem por São Paulo com alguns amigos, e como viria para Londrina neste fim de semana com meu pai resolvi testa-lo na viagem.

Bom, o equipamento é o seguinte: GPS Holux com interface bluetooth, N800 com Maemo-Mapper com trajeto e mapas adquiridos antecipadamente através do Google-Maps.

A saída de Curitiba e boa parte do trajeto até chegar em Londrina foi excepcional! Se havia algum erro de GPS, este foi imperceptível. Eu ficava admirado em ver o ponto azul em uma curva exatamente quando o carro fazia a mesma. Tudo muito sincronizado.

Como nem tudo são flores, chegando em Londrina houve uma grande decepção, pois havia um erro de quase duas quadras ( uns duzentos metros ) em relação ao ponto mostrado no mapa e o ponto onde eu realmente estava.

De duas uma:

  1. O GPS está me passando uma informação errada.
  2. O Google Maps não mapeou direito às coordenadas de Londrina.

Pessoalmente, a primeira eu acho difícil de ser verdade, uma vez que ele estava funcionando muito bem em Curitiba em meus testes utilizando de 9 a 10 satélites ( onde estou agora, em Londrina, o GPS utiliza 8 ).

A segunda opção eu acho bem viável. Londrina não é uma cidade tão grande, e o mapeamento pode ter sido feito “às coxas”.

A questão é a segunte: Será que em minha passagem por Sorocaba e Itú terei o mesmo problema? Mesmo SP sendo o “coração do Brasil” (sem trolls aqui, por favor), ambas também são cidades de interior.

Por isto eu faço um apelo: Se você é morador de Londrina-PR, Itú-SP ou Sorocaba-SP, e possui GPS: Pegue suas coordenadas e coloque-as no GoogleMaps e verifique se a referência no mapa é realmente onde você está. Depois poste aqui os resultados.

Bom, vou aproveitar minha família agora =)

Abraços a todos e bom fim de semana!

[Update] Hoje com mais tempo vim tentar descobrir o problema, e é mais ou menos o que o Rafael falou. A verdade é que o mapeamento por satélite do GoogleMaps é uma beleza, mas o mapeamento de rua não!

Londrina - Erro do GoogleMaps
Descrevendo o problema: A rua marcada em vermelho deveria estar no traçado verde. O Google Satelite posiciona-se corretamente, mas o mapa é posicionado com um erro de cerca de 167 metros.

Bom, talvez o Google não seja tão bom assim =)

[Update2] O Google compra as informações sobre mapas da MapLink. Logo o problema está lá!