sexta-feira, 23 de outubro de 2009

Novo mouse da Apple: O "Mouse Magico"

Magic Mouse. Assim foi batizado o novo mouse da Apple que apresenta um sistema multi-touch, isto significa que os comandos serão dados através de toques (ou vários toques ao mesmo tempo) no próprio mouse, e não através de cliques. Apesar de muito bonito, não acho que o novo conceito de mouse va se encaixar nos rigorosos padrões do consumidor. Através de vídeos, parece um pouco desconfortável para os acostumados com o velho mouse de três botões.

Os comandos podem ser dados em qualquer parte da superfície do mouse. O fato de não ter botões, ao meu ver, aumenta drásticamente a durabilidade do Magic Mouse, porém, perde o foco do próprio mouse em sí. O touch é um sistema utilizado normalmente para evitar o mouse, e mouse + touch não parece fazer muito sentido.

Será o Magic Mouse um conceito tão inovador a ponto de mudar um dos periféricos que menos mudaram desde a chegada dos desktops modernos que conhecemos? ou mais uma daquelas funcionalidades à la Windows Vista?

Veja você mesmo.

domingo, 18 de outubro de 2009

Utilizando Python no dia-a-dia

Bem, não vou repetir o que todo mundo já sabe sobre python. O que eu pretendo é passar pra vocês uma maneira de melhorar o dia-a-dia de um iniciante no mundo Linux como eu.

Todo mundo conhece o terminal do Linux e os intimidadores shell scripts. Muita gente ao ver um script no terminal ou qualquer outra coisa se intimida somente pelo fato de estar no mesmo. A verdade que todo iniciante conhece com o tempo, é que o terminal é a maioria das vezes um atalho pra qualquer coisa que você deseje fazer. Normalmente, quando você ganha prática, tarefas que necessitariam 6 cliques e alguma espera para que as janelas abram, e mais toda a poluição visual que o ambiente gráfico nos proporciona, se resumiriam em uma única linha de comando.

Unindo esta facilidade ao python, pode-se criar scripts que acabariam com aquelas tarefas repetitivas como: testar programas, criar usuários, ou seja la o que for. Utilizando os comandos do terminal dentro do seu script python, da seguinte forma:


import os
import sys
from sys import *

os.system('ls -l | grep argv[1]')


Na primeira linha, adicionamos o módulo os, que contém muitos submódulos, porém nós só vamos utilizar o system, para introduzir comandos ao terminal. Na segunda linha, adicionamos o módulo sys, e depois todos os submódulos, para utilizarmos o argv. Argv é um vetor de strings, que funciona assim: quando você executa um script em python, você vai escrever no terminal ./nome_do_script. Essa string nome_do_script vai ser a primeira posição do nosso vetor argv. Caso eu passe algum parâmetro ao executar o script ./nome_do_script argumento1 argumento2 argumento3, cada argumento vai estar numa posição subseqüente, ou seja:


print argv[0]
print argv[1]
print argv[2]
print argv[3]


iria me retornar:


nome_do_script
argumento1
argumento2
argumento3


Após criar o script, salve como teste.py por exemplo, e digite o comando


chmod +x teste.py


para torná-lo executável. fim!

Você pode utilizar qualquer comando e toda a estrutura da linguagem para auxiliar no seu dia-a-dia.

terça-feira, 13 de outubro de 2009

Finalmente!

Aha! Finalmente decidi abrir um blog!

Nesse blog, eu pretendo postar tudo o que eu aprender e tiver tempo de "documentar" pra cá. Nada mais justo do que repassar o que se aprende na Internet através de um blog.

Pra não começar com um post tão sem graça, vou contar como eu resolvi um daqueles probleminhas que surgem do nada. Seguinte:

Estou testando o Ubuntu 9.10, Karmic Koala, muito bom por sinal. Mas em uma das atualizações, um maldito beep, aquele mesmo que vem da placa-mãe, apareceu do nada. Não podia fazer nada no notebook que beep! beep! Pensei se não havia alguma configuração para desliga-lo ou algo do tipo, fui em Sistema>Preferências>Som e achei uma configuração bem simples, mas infelizmente não mudou nada. Logo lembrei de um site da Internet e fui pesquisar.

Cai no Yahoo respostas... tsc tsc tsc. O cara manda remover o Buzzer! Ah vai, o beep e chato mas não é pra tanto.

Pesquisando mais um pouco, axei um comando chamado modprobe que serve pra add and remove modules from Linux Kernel segundo o manual. Então, vamos a solução:

No terminal, digite:

sudo modprobe pcsprk

e tecle enter.

Pronto! Os malditos beep's devem ser sido desativados. Por Enquando.

Os beep's continuam após reiniciar/desligar o computador. Ao que me parece, ele carrega o módulo ao iniciar. Estaca zero. Pesquisando mais sobre o modprobe, achei posts de pessoas que resolveram apenas adicionando o módulo na blacklist. Vamos voltar ao terminal:

Como root digite

echo "blacklist pcspkr" >> /etc/modprobe.d/blacklist.conf

e tecle enter. Este comando vai inserir no final do arquivo a seguinte frase "blacklist pcspkr". Agora ele está na lista negra. Por enquanto deve parar. Mas o beep desgraçado além de irritante, ele é persistente.

Vamos ao que interessa, como eu resolvi. Sinceramente, eu estava ficando maluco com os beep's insuportáveis. Então, desesperado, criei um arquivo .bash_profile no diretório ~/, e adicionei a ele e a outros dois arquivos, .bashrc e .profile, as seguintes linhas:

xset b 0
setterm -blength 0
set bell-style none

os três comandos no final das contas fazem a mesma coisa. Reiniciei. Até agora nenhum beep ou fiquei surdo.

Então é isso. Sei que não foi grande coisa, mas pretendo postar coisas mais interessantes mais pra frente. Em andamento: um mini-tutorial da liguagem C para programadores OCaml, tópicos sobre SDL e Sockets, e outras coisas. Até breve.