domingo, 25 de julho de 2010

FISL 2010

Chegou ao fim mais um FISL. Foi o 11º da história do evento e o 2º da minha história pessoal. :)


Valeu pelas palestras, pelas oficinas em pé no meio dos expositores e tudo mais. Pessoal do Tchelinux de parabéns e do Ateliê Livre também, que deixaram com mais vontade ainda de comprar um Arduino.

Muito interessante o que foi demonstrado sobre o Firefox. Nos sentimos (eu e o Júlio Greff, que assistiu comigo) pequenos com a quantidade do que pode/poderá ser feito. Depois do que vi, passei a acreditar que realmente poderemos ter o navegador substituindo boa parte do desktop...

Muita coisa sobre Ruby on Rails. Muito mais sobre filosofia do que sobre código e programação. Mesmo as ditas "metodologias ágeis" hoje já esquecem os 4 princípios do manifesto ágil:

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
E antes que pensem mal, não vou abandonar o Python/Django... ;)

sábado, 19 de junho de 2010

Tchelinux 2010

Hoje foi minha primeira participação do Tchelinux na minha cidade. Já havia participado em Porto Alegre, mas nunca aqui. E foi a primeira vez como palestrante também.

Confesso que fiquei meio nervoso, sim, mas acredito que foi por ser minha primeira vez (e a primeira a gente nunca esquece) e acabei apresentando meio rápido. Ainda assim foi muito bom. E quem não foi, participe da próxima: a inscrição custa só a doação de alimentos (já arrecadaram quase 9t de 2009 pra cá).

Minha palestra foi sobre segurança (acredito que de baixo-nível), mostrando como proteger cookies contra "furto" via javascript e captura de pacotes. Deixo abaixo a palestra, já com uns ajustes pra ficar mais completa. Vou atualizando assim que for melhorando ela :)





Gostei bastante também depois de conversar com o pessoal sobre desenvolvimento seguro. E se alguém tiver comentários sobre o assunto, por favor use os comentários... :)

E ficam as referências da comunidade que organiza os eventos:
@tchelinux
http://tchelinux.org/

quarta-feira, 19 de maio de 2010

Ovi Store - primeira "compra"

O que um nerd faz na aula de Teoria da Computação? Fuça no celular, óbvio.

Hoje baixei minha primeira aplicação da ovi-store, da Nokia. Tenho um Nokia 5130 XpressMusic com uma conta vivo controle. Como tinham uns créditos acumulados do mês passado, resolvi arriscar: comecei a procurar uma app para o twitter.

Pelo celular, consegui gastar pouco mais de R$10 só procurando, sem sucesso. Navegar pela tela desse celular não é bom.

A forma mais simples de conseguir uma aplicação é via Ovi Store na Internet. Você se cadastra, precisa confirmar que o celular é seu (via SMS) e depois escolhe alguma aplicação. Ao clicar em "Enviar para cel", vc recebe um SMS com o link da aplicação.

Até aqui, ok. Só que, depois de vários SMSs com links apontando para "http://store*falta algum texto *", vc ainda precisa navegar, logar, etc, etc e, no fim, baixar... Funciona, mas foram mais R$10 de créditos pra conseguir baixar (o aplicativo é free, mas a conexão não)...


No fim, baixei o Twittle, mas como a loja levou todos os meus créditos, só vou poder twittar do celular mês que vem...

Depois de tudo, o complicado é ver que o arquivo baixado é "twittle_s40.nfl", um arquivo ZIP com um SWF dentro. Sim! NFL deve ser Nokia Flash Lite...

Conclusão: ainda é muito caro usar a Internet no celular para qualquer coisa por aqui... =/


EDIT: O complicado é, depois de googlar um pouco, encontrar sites como o http://www.mobicreed.com e o http://mobigun.com/ com um monte de games e aplicações FREE para o celular...

segunda-feira, 17 de maio de 2010

TI - revolução

A tecnologia da informação é uma enorme revolução que ainda está em andamento. Ela é muito maior que a Revolução Industrial e só é comparável à imprensa de Gutemberg. Essa revolução tem mudado até os paradigmas científicos vigentes.

Essa frase é de George Djorgovski, professor de astronomia do Instituto de Tecnologia da Califórnia (Caltech). Saiu no inovação tecnológica.

O que chama a atenção é a responsabilidade colocada em cima da Tecnologia da Informação. Como seres humanos não conseguem dar conta de tanta informação, cabe a nós darmos um jeito nisso...

Grandes poderes trazem grandes responsabilidades...

Fonte:http://www.inovacaotecnologica.com.br/noticias/noticia.php?artigo=ciencia-seculo-21-realidade-virtual-inteligencia-artificial&id=010150100514

sábado, 10 de abril de 2010

Skype em AMD64

Já escrevi sobre como instalar programas 32 bits em Linux 64 bits. Só que nem tudo são flores: tentei fazer o mesmo com o Skype e quem disse que funciona?!

A solução parece simples: criar um chroot completo 32 bits. E é bem simples mesmo, só é preciso ter cuidado com algumas coisas.

Primeiro, criar um diretório e usar o cdebootstrap pra baixar todos os pacotes básicos nele (se não estiver instalado, apt-get nele!)
mkdir /opt/i386-chroot
cdebootstrap --arch i386 sid /opt/i386-chroot http://ftp.br.debian.org/debian/

O "i386" é a arquitetura. O "br" eu coloquei para usar os servidores nacionais, que devem ser mais rápidos por estarem mais próximos.

Depois, o "pulo do gato": colocar os diretórios de sistema do linux e o seu home nos 2 lugares ao mesmo tempo. Para isso, só é necessário acrescentar no arquivo /etc/fstab:
#i386 chroot
/dev        /opt/i386-chroot/dev    none    bind    0    0
/tmp        /opt/i386-chroot/tmp    none    bind    0    0
/home        /opt/i386-chroot/home    none    bind    0    0
/proc        /opt/i386-chroot/proc    none    bind    0    0
/sys        /opt/i386-chroot/sys    none    bind    0    0
E executar o comando para montar tudo:
mount -a
Com essas confs, quando o micro for reiniciado, tudo já vai estar automaticamente nos lugares certos. Todos eles são importantes, principalmente o "/proc" e o "/sys" para funcionar a webcam e o áudio... O "/tmp" é necessário para a interface gráfica... ;)

ATENÇÃO: quando vc faz isso, seus arquivos estarão nos 2 lugares. Se vc apagar o diretório i386-chroot, todos os arquivos do "/home" também serão excuídos.

Alguns sites colocam outras configurações para o "/proc" ou deixam o "/sys" de fora. Fazendo de outras formas eu não consegui usar o som e a webcam. Fica a dica, então.

Feito isso, é só executar o comando chroot para usar o novo diretório como se fosse um novo linux
chroot /opt/i386-chroot
Adicionar a linha do repositório do Skype (lembre-se que depois de executar o chroot você estará num ambiente completamente novo) :
## Skype
deb http://download.skype.com/linux/repos/debian/ stable non-free
 E instalar usando o apt-get:
apt-get install skype
Para rodar ele sem precisar ser root (vc deve ter percebido que o comand "chroot" só funciona como super usuário), utiliza-se o schroot (de novo, se não estiver, apt-get nele!).

Depois de instalar, é preciso configurá-lo. Adicione no fim do arquivo /etc/schroot/schroot.conf :
[i386]
description=Debian i386 (sid/unstable)
directory=/opt/i386-chroot
priority=3
groups=rodolfo,root
root-groups=root
personality=linux32
Em negrito está o nome do grupo dos usuários que podem usar o schroot. Use o seu (eu usei o meu... hehe). Outras opções e explicação para elas vc encontra no seu próprio linux:
man schroot.conf
Para rodar:

schroot -p -c i386 -- skype
"i386" é o nome entre [ ] no arquivo de configuração.
"skype" é o comando a ser executado em 32 bits.

Vc pode criar um script em shell bem criativo para automatizar essa tarefa (e ainda não precisar lembrar de tudo isso cada vez que instalar alguma coisa). Eu coloquei o meu em /usr/local/bin/i386_chroot.sh. Com permissão de execução (chmod +x i386_chroot.sh), vc pode chamá-lo de qualquer lugar.

O conteúdo:
#!/bin/bash
exec /usr/bin/schroot -p -c i386 -- "`/usr/bin/basename $0`" "$@"
 Pra funcionar, ele vai chamar o nome do arquivo que vc colocar. Então, ainda no /usr/local/bin, faça:
ln -s i386_chroot.sh skype
 Assim, quando vc chamar "skype" na linha de comando, ele vai entrar no chroot e rodar. Para outros programas, é só instalar no chroot e criar o link (não precisa alterar o script, só criar o link simbólico através do ln ali de cima).

Ufa! Está pronto. Só que a webcam não funcionou no skype. O erro é o seguinte:
 X Error, request 132, minor 18, error code 8 BadMatch (invalid parameter attributes)
A solução é simples. Adicione, no script i386_chroot.sh, antes da linha do "exec":

# skype: http://akdwivedi.wordpress.com/2009/05/09/skype-on-64bit-fedora-10/
export XLIB_SKIP_ARGB_VISUALS=1
Deixei o link no comentário, para futuras referências.

É isso. Nem todas as aplicações estão prontas pra usar 64 bits, mas nós usamos mesmo assim (e aproveitamos melhor os 4GB de memória).

Fontes:
http://blog.diovani.com/2008/03/11/usando-um-chroot-para-rodar-aplicacoes-32bit-em-uma-instalacao-amd64/
http://akdwivedi.wordpress.com/2009/05/09/skype-on-64bit-fedora-10/

sábado, 3 de abril de 2010

mplayer e legenda com erro de codificação

Assistindo umas séries no mplayer, algumas legendas perdem os caracteres acentuados por causa da codificação. A solução, para os "brasileiros" , é até bem simples. É só chamar o mplayer com identificação de idioma:

mplayer -slang pt-BR #arquivo#
Acho que não é o ideal, e ainda não encontrei solução na interface gráfica, se alguém tiver a dica, agradeceria... :)

Fonte: http://lists.mplayerhq.hu/pipermail/mplayer-dvb/2004-January/001405.html

Novo hardware encontrado...

O ano finalmente começou e eu entrei num período de "atualização de hardware". Por motivos de força maior, troquei de celular (um Nokia 5130) e de notebook (um Vostro V13). Finalmente eles chegaram...

Uma coisa divertida é que ambos possuem bluetooth. Assim, dá pra fazer algumas brincadeiras. Por enquanto, só estou usando o DVD pra tocar as músicas do celular e do note... (isso me lembra o "because we can" do The Big Bang Theory).

Pra fazer o mplayer acessar o dispositivo de áudio, é preciso instalar o blueman e rodá-lo (com usuário normal, não root)
sudo apt-get install blueman
blueman-manager
O software é bem intuitivo. Clicando na lupa, ele vai procurar os dispositivos. Depois, ele vai fornecer o endereço MAC. Pela interface, faça a sincronização (no meu DVD - da Samsung -, mesmo que ele não coloque a senha de acesso, foi só usar o clássico "0000").

Para usar o áudio, crie o arquivo ~/.asoundrc com o conteúdo:

pcm.bluetooth {
   type bluetooth
   device 00:16:6C:00:00:00
}
Observe que em "device" vai o endereço MAC do seu dispositivo.

Assim, é só chamar o mplayer apontando a saída de áudio para o bluetooth:
mplayer -ao alsa:device=bluetooth -shuffle *.mp3
Logo testo com outros players, mas acho que não vai ser mto diferente... :)

Fonte: http://wiki.bluez.org/wiki/HOWTO/AudioDevices