quinta-feira, 31 de julho de 2008

Informática como medicina

Antes de começar qualquer coisa, todos já sabem do meu gosto pelo software livre e que qualquer coisa que eu diga/apresente aqui será muito tendenciosa, mas vou postar mesmo assim (o blog é meu mesmo).

Eu estive lendo e lembrando de uns artigos e me veio a seguinte analogia que apresento a seguir.

Supondo que alguém esteja doente (apenas com sintomas, por exemplo) e vai a um médico, este pode fazer uma análise detalhada da pessoa, avaliar cada sintoma e formular uma solução específica para o problema daquela pessoa, prescrevendo remédios na "dose certa". Ou então, o médico pode fazer uma análise superficial e prescrever um remédio muito forte que poderá causar efeitos colaterais e dependência do paciente ou algo que nem seja o que realmente o paciente necessita.

Quanto a informática, vamos supor agora que alguém (pessoa ou empresa) tenha um determinado problema e procura outro alguém que possa resolver o problema (desenvolvedor), este poderá fazer uma análise detalhada do problema, levantar os aspectos mais relevantes e desenvolver uma solução específica para o problema em questão ou sugerir uma solução já existente que atenda as necessidades do seu cliente. Ou então, o desenvolvedor pode ter feito um aplicativo (não se sabe quando) que resolve o problema do cliente, tendo até recursos além dos solicitado, as vezes desnecessários (que vão ocupar espaço em memória, precisarão de PC's mais rápidos, etc...), e o cliente poderá ainda ficar dependente deste desenvolvedor, pois não terá outro para fornecer o software nem será viável migrar (em alguns casos), pode ainda acontecer da solução ser incompleta (afinal de contas, o desenvolvedor vendeu uma solução pronta).

Enfim, eu poderia ficar falando e citando várias características com esta analogia, mas acho que já consegui passar a mensagem.

quarta-feira, 30 de julho de 2008

TGF - princípio físico

Momento de descontração:

O Teorema do Gato Flutuante - TGF é baseado em 2 princípios.
  1. Um gato, em queda livre, sempre cai com as patas para baixo (de pé);
  2. Se a geléia é passada de um dos lados do pão, este lado (o da geléia) sempre cai para baixo.
Pelo TGF, se a geléia é passada nas costas do gato e este é posto em queda livre, o felino nunca chegará ao chão, pois pelo princípio 1 ele cai de pé e pelo 2 ele cai de costas então o gato ficará girando (e flutuando) eternamente.

terça-feira, 29 de julho de 2008

Robótica Open Source

Hoje vi um artigo sobre um kit de robótica (aqui) bem interessante.

O Bioloid Control é um projeto de sistema (hardware e software) destinado principalmente a fins educativos.



O software disponível é livre, se não fosse eu não estaria falando sobre este projeto aqui, e compatível com as plataformas GNU/Linux e M$ Ruindow$.

Algo que fiquei "insatisfeito" foi o fato do Bioloid comunicar o robô com o PC via RS 232 (quase extinta porta serial), porém existem conversores USB-serial que talvez resolvam o problema e como o é software livre em pouco tempo poderemos ter um Bioloid controlado pela USB ou alguma interface wireless, tipo bluetooth.

Não cheguei a ler todo o artigo, mas pelo que li fiquei bem motivado em saber como o sistema trabalha pois vi vários sensores e atuadores e seria interessante conhecer mais a fundo este projeto e se possível contribuir com o mesmo.

Aos curiosos de plantão, assim como eu, vi que o sistema dispõe de interfaces ZigBee o que abre milhares de opções de sensoriamento e controle.

Segue um vídeo do Bioloid (simulação no PC).



Mais em: http://www.revistas.unifacs.br/index.php/sepa/article/viewFile/306/254

Transformadas matemáticas

Antes de começar efetivamente o post, gostaria de informar aos que não foram ao Halleluya: vocês não imaginam o que perderam... mas já fica o convite para o ano que vem.

Gostaria também de solicitar aos leitores que votem na enquete, pois só tem 3 votos e já faz umas 2 semanas que coloquei a enquete.

Agora sobre transformadas matemáticas, não pretendo dar um curso de transformações matemáticas mas apenas "abrir um pouco os olhos".

A idéia da transformada matemática é ver a informação de outra forma, por exemplo a Transformada de Fourier serve para você ver uma informação temporal na frequência e/ou vice-versa.

As transformações aplicadas a informação podem ser lineares, não-lineares, inversíveis, não-inversíveis, biunívocas, etc....

São exemplos de transformações lineares: y = A x em que x é a informação original, A é a matriz de transformação e y é resultado da transformação. A Transformada Discreta de Fourier (DFT) pode ser escrita como uma equação do tipo: dft(x) = A x, em que cada elemento de A é uma exponencial complexa exp(w n). Se a matriz A for inversível, então a transformação é y = A x inversível.

Algumas transformadas são de natureza altamente não-linear, como a Transformada de Hough, aplicada a imagens, em que o resultado é um vetor que representa a reta suporte do eixo de maior representatividade na imagem. Como de esperar neste caso, a Transformada de Hough não é inversível pois várias imagens diferentes podem ter a mesma reta suporte para o eixo de maior representatividade.

Para fechar e resumir o post: as transformadas matemáticas são funções que mapeiam um espaço (conjunto) em outro.

quarta-feira, 23 de julho de 2008

Baixar vídeos da internet

Atendendo a pedidos, pretendo ensinar a baixar vídeos da internet (youtube, video.google, break, etc.....) neste post.

Em uma rápida pesquisa, encontrei este site: http://www.download-de-videos.com/ cuja tela inicial encontra-se abaixo.

Para baixar um vídeo, do YouTube por exemplo, basta copiar o link do vídeo (http://br.youtube.com/watch?v=bE3K7VGk5Ko), colar na caixa de texto e clicar em download.

A tela de download é a seguinte:

Por fim, basta clicar em "Baixar Vídeo" (botão vermelho).

E se você quiser distribuir o vídeo, o link (http://www.download-de-videos.com/index.php?action=get_movie&url=http%253A%252F%252Fbr.youtube.com%252Fwatch%253Fv%253DbE3K7VGk5Ko) acessa diretamente o vídeo desejado.

O arquivo baixado está no formato *.flv e pode ser assistido pelo VLC, para os usuários de GNU/Linux o VLC pode ser baixado pelos repositórios (Synaptic, apt-get, Adept, Yum, etc......) e para os que ainda não migraram, basta procurar na internet pelo VLC.

segunda-feira, 21 de julho de 2008

Mudança de planos

Eu decidi por fazer umas mudanças no MultiSign.

Agora irei tomar a enquete "O que você busca (ou gosta de ver) no MultiSign?" para direcionar as postagens, de modo que a quantidade e o assunto das postagens irá depender do resultado da enquete.

Aviso que cada computador só pode fazer 1 voto (normas do Blogger), então também aceitarei comentários nos post's para direcionar e me incentivar a fazer novas postagens.

Desde já agradeço a atenção.

PS.:
Outra mudança que decidi fazer foi com relação ao Gravity Racer: irei começar desenvolvê-lo após formatar meu notebook, o que deve ocorrer esta semana. Pretendo instalar o Fedora e/ou o Ubuntu.

Minha decisão em formatar o notebook se deu porque não consegui instalar o OpenCV no PCLOS e o Kubuntu tem problemas para conviver compartilhando o mesmo /home com outra distribuição.

Mega evento em Fortaleza-CE

Aos leitores do MultiSign de Fortaleza e região, segue a chamada do Halleluya.




Garanto que os que forem não arrepender-se-ão (faz tempo que você não vê uma mesóclise?).

Caso desejem, podemos organizar uma "caravana".

Para os que apreciam boa música e agitação, o evento tem a previsão de 500.000 pessoas e para os que, assim como eu, não gostam de aglomerações haverá espaços mais reservados (distantes do palco) que ainda assim permitirão a participação no evento.

quarta-feira, 16 de julho de 2008

Teste do macaco

Descubra se você é mais esperto que o macaco aqui.

Dezenas de milhares de pessoas já fizeram o teste, faça você também!

terça-feira, 15 de julho de 2008

MP3Tube

Hoje descobri o MP3Tube. É como o YouTube, mas para músicas.

Os recursos são equivalentes, em que o usuário pode fazer buscas pelas músicas, fazer upload de músicas, inserir as músicas em blogs, recados do orkut, etc....

Para inserir a música, basta copiar o conteúdo da caixa "Embed" e pronto, assim como fiz aqui:

Pe. Fábio de Melo

Planejamento para o Gravity Racer

Como estive tendo uns problemas com o Open CV no PCLOS, não irei fazer esta parte do Gravity Racer agora.

No momento estou meio parado com relação a este projeto, mas em alguns dias (ainda este mês) espero ter algo "paupável".

A ordem que pretendo seguir no desenvolvimento do jogo é a seguinte:
  1. Interface visual, em que irei desenvolver uma tela de abertura e aproveitar as figuras para o jogo propriamente dito. Neste ponto terei de aprender a manipular as figuras com SDL no C++, sendo um dos pontos mais importante a rotação das figuras.
  2. Controle dos elementos, basicamente controlar a nave e fazê-la interagir com o cenário.
  3. Sonoplastia, em que posso inventar algum som ou procurar algo na internet.
  4. Desenvolver a "inteligência" do jogo, implementar a interação gravitacional, inserir possíveis adversários para jogos single player (acho que seria bom usar lógica fuzzy na inteligência dos adversários, como no vídeo do controle fuzzy de foguete).
  5. Esta é uma estapa opcional: permitir jogos multi-player pela web, neste ponto terei sérios problemas pois não tenho experiência em aplicações desta natureza.
  6. Por fim, fazer o módulo de controle do foguete pela webcam, sendo esta a parte final do projeto.

Com isso, fecho o Gravity Racer1.0 e este estará pronto para o mercado.

segunda-feira, 14 de julho de 2008

PCLinuxOS Brasil

A distribuição PCLinuxOS (PCLOS), que é a distribuição que uso, tem agora uma versão brasileira, disponível neste site.

A filosofia desta distribuição é, acima de tudo, ser simples e intuitiva, porém pode ser configurada para ter recursos como o Compiz Fusion (desktop 3D).

Esta distribuição tem compatibilidade com a grande maioria dos hardwares em que testei, só não reconheceu a webcam integrada do laptop (essa não há nada que reconheça).

Segue um vídeo do PCLOS:

quarta-feira, 9 de julho de 2008

Starting Gravity Racer

Hoje dei o primeiro passo no Gravity Racer.
Lembrei-me de uma aplicação que fiz, a qual consistia de um foguete que movia-se automaticamente em meio a meteoros.



Assim, poderei aproveitar as figuras e algumas partes do código.
Irei fazer o programa em C++ com SDL. Mas estou aberto a sugestões.

Pensei em fazer um sistema de controle para o foguete baseado em visão, em que o jogador iria segurar um objeto (semelhante a um apagador de lousa) e o foguete teria sua direção determinada pela direção do objeto, mas ainda estou analisando esta possibilidade.

Reforço que estou aberto a ajuda externa.

terça-feira, 8 de julho de 2008

Gravity racer

Depois que acabam as atividades das aulas as idéias sempre fluem melhor...
Passei agora uns 4 dias em Guaramiranga, melhor cidade do CE que conheço, em um evento promovido pelo Movimento dos Focolares.
Neste evento (Mariápolis), pude relaxar bastante e quando voltei tive uma idéia de jogo que me pareceu bem interessante.

O Gravity racer (nome provisório) seria um jogo de corrida no espaço (com estrelas, planetas, meteoros, etc...) e as naves iriam percorrer este espaço como uma corrida convencional, porém seria levada em consideração a gravidade dos corpos celestes, o que poderia ajudar ou atrapalhar o competidor, visto que em operações espaciais de verdade a gravidade é usada para impulsionar as naves e foguetes para o espaço, então ficaria a critério do jogador usar a gravidade a seu favor ou evitar os corpos celestes.

Enfim, esta é apenas uma idéia e não tenho nada implementado. Caso alguém tenha interesse, pode entrar em contato que faremos uma boa parceria.

Ainda não sei que tecnologias abordar, mas poderia usar a internet (para jogos multiplayer), inteligência computacional para eventuais elementos autônomos (naves ET's, jogadores controlados pelo PC, etc....), visão computacional para prover a interatividade com o jogo, enfim, idéias não faltam.