Author Archives


18
jun 11

Montando a base da mesa de Camila

Nessa quinta-feira Camila comprou na Tok&Stok uma nova base para sua mesa do escritório. Até aí tudo bem, os móveis da Tok&Stok veem desmontados e pensei em fazer como sempre fazemos, solicitar a ajuda de um amigo que temos que adora montar essas coisas, mas ela lançou o desafio de montarmos nós mesmos.

Eu sou péssimo em trabalhos manuais, não nasci para isso, mas depois de 2 dias Camila me convenceu a aceitar o desafio e partimos para a montagem da peça hoje a tarde.

De posse do manual de montagem espalhamos tudo no chão e depois de mais ou menos 1 hora não é que montamos tudo? Fiquei extremamente orgulhoso de mim mesmo, pode parecer uma coisa pequena para alguns mas para mim tem um significado importante. Tem uma frase de William James que uso na assinatura dos emails que envio que retrata bem isso: “A maioria das pessoas vive – física, intelectual e moralmente – um circulo muito restrito do seu potencial de existência. Todos nós temos reservatórios de vida dos quais podemos solver aquilo que nem ousamos sonhar.”

Abaixo segue algumas fotos que tiramos no decorrer da montagem.


Peças espalhadas pelo chão

Meio da montagem

Quase acabando

Finalizado

Share

7
mar 11

Via Certa: Fique sabendo como está o trânsito antes de sair

Um dia desses estava num engarrafamento quando saí do trabalho e imediatamente pensei: Se soubesse que estava engarrafado não teria vindo por aqui. Assim nasceu o Via Certa, um app para android que me mostra as câmeras de trânsito aqui de Salvador. Quando terminei o desenvolvimento procurei e achei outras cidades que disponibilizam as câmeras de trânsitos, assim foi adicionado ao app as cidades do Rio de Janeiro, Belo Horizonte e Recife.

Como sempre digo: Dúvidas, críticas e sugestões são sempre bem-vindos.




Share

6
nov 10

pyTelecine 0.2

Hoje atualizei o pyTelecine. Ele tinha parado de funcionar por que o site do Telecine mudou o layout aí quebrou meu parser.

É só baixar em Programas feitos por mim.

Share

11
out 10

Instalando scanner num servidor para funcionar em rede (Ubuntu Server 10.04)

Tenho uma impressora HP Deskjet F4480 que é multifuncional, ou seja é impressora, scanner e copiadora. Ela já está instalada aqui no meu “servidor” como impressora desde que comprei, só que a função scanner estava totalmente inutilizada pois não tinha conseguido instalar. Hoje, depois de diversos pedidos de Camila para eu instalar o scanner em rede eu pesquisei em trocentos lugares e consegui fazer uma junção de tudo e faze-la funcionar.

No servidor instale esses pacotes:

$sudo apt-get install sane inetutils-inetd

Edite o arquivo /etc/default/saned para que a variável RUN seja igual a yes

RUN=yes

Edite o arquivo /etc/sane.d/saned.conf e acrescente no fim sua rede

192.168.0.0/24

Edite o arquivo /etc/inetd.conf e acrescente no fim o seguinte:

sane-port stream tcp nowait saned.saned /usr/sbin/saned saned

E por último adicione o usuário saned no grupo do lp

$sudo adduser saned lp

Pronto, o servidor já estará pronto, só falta a configuração dos clientes.

No cliente instale esse pacote:

$sudo apt-get install xsane

Edite o arquivo /etc/sane.d/net.conf e acrescente no fim o IP do servidor

192.168.0.1

Pronto, é só abrir o xsane e começar a digitalizar seus documentos.

Share

8
out 10

Montando cubo mágico

No último domingo, naquele horário em que começa a bater saudade do fim de semana, mesmo sem ele ter terminado ainda, eu estava meio que sem nada para fazer em casa. Fiz um rápido escaneamento visual no HomeOffice em busca de alguma coisa que me entretece.

Olhei para a prateleira de livros em busca de um dentre tantos livros que tenho e ainda não li, mas o que me chamou a atenção foi meu bom e não tão velho cubo mágico que comprei na ThinkGeek jogado no canto, quase caindo. Já tinha um tempinho que não o montava. Então me lembrei que um dia havia pensado em fazer um vídeo ensinando como se monta o cubo mágico para passar o link sempre que me pedisse para ensinar a montar.

Peguei a câmera e tripé de Camila, posicionei tudo e comecei a gravar o vídeo. Rapidamente pude perceber que não é tarefa fácil fazer vídeos. A câmara é de excelente qualidade, é uma Sony DSC-W210 de 12 MP, só que eu ficava errando toda hora, tinha que ficar recomeçando a gravação, depois percebi que teria que em vez de fazer um vídeo inteiro, todo sequencial, teria que fazer em partes e depois ir juntando tudo, comecei a buscar um programa de edição de vídeo, vi que o áudio estava uma bosta, tinha muito som ambiente. Então meu objetivo inicial que era me entreter começou na verdade a me irritar.

Resolvi parar tudo e simplificar as coisas. Em vez de fazer um vídeo que ensinasse a montar o cubo mágico, fiz um vídeo somente montando o cubo mágico sem ensinar nada. O resultado está aí abaixo, mas prometo que um dia faço um vídeo ensinando a montar.

Share

11
set 10

Instalando placa wireless D-link DWA 125 no linux (Ubuntu Server 10.04)

Duas semana atrás me mudei de apartamento. Agora estou no meu apartamento próprio :D . Depois vou fazer um mega post sobre tudo o que envolveu a compra do apartamento.

Por causa da organização dos móveis que fizemos no novo escritório o modem da telemar e o Access Point ficaram longe do servidor, então a única solução foi por uma placa wireless usb no servidor. Fui no shopping e comprei a placa D-link DWA 125. Antes de comprar me garanti que se não funcionasse poderia devolver ou trocar por outro produto.

A primeira coisa que fiz foi espetar a placa no servidor e rezar para funcionar, mas, como era de se esperar, não funcionou. Fui no google e achei um monte de tutoriais para instalar essa placa. Nenhum dos tutoriais funcionou, no fim o que funcionou foi uma junção de uns três. Vou escrever aqui a sequência que eu segui e funcionou:

# wget ftp://dlink:dlink@www.dlinkla.com/pub/drivers/DWA-125/DRIVER_LINUX_DWA-125_STA_v2.1.2.0.tar.gz
# tar -zxvf DRIVER_LINUX_DWA-125_STA_v2.1.2.0.tar.gz
# cd 2009_1204_RT3070_Linux_STA_v2.1.2.0
# make
# make install
# echo "blacklist rt2800usb" >> /etc/modprobe.d/blacklist.conf
# reboot

Depois disso o drive da placa estará instalada. Agora falta a configuração do IP e WPA. Para fazer a configuração do WPA primeiro instale o wpasupplicant:

# apt-get install wpasupplicant

Então crie o arquivo /etc/wpa_supplicant.conf com o seguinte conteúdo:

network={
        ssid="SSID"
        proto=WPA
        key_mgmt=WPA-PSK
        pairwise=TKIP
        group=TKIP
        psk="CHAVE-WPA"
}

Por último para configurar o IP edite o arquivo /etc/network/interfaces acrescentando no final do arquivo:

auto ra0
iface ra0 inet static
        wireless-channel 11
        wpa-conf /etc/wpa_supplicant.conf
        address 10.10.10.10
        netmask 255.255.255.255
        gateway 10.10.10.1

Reinicie a máquina e se você tiver sorte tudo funcionará.

P.S. Não se esqueça de substituir nos arquivos de configurações listados aqui os dados da sua rede.

Share

17
jun 10

IV ENSOL – João Pessoa

No início do mês passado fomos ao IV ENSOL, em João Pessoa. O evento foi muito bom. Como estou com preguiça de escrever como ele foi, vou encaminha-los para o relato de Camila. http://camilaoliveira.net/?p=410

Share

30
mai 10

pyCalculadora 0.1

Estou preparando uma atualização para o pyContas (ainda sem previsão de data de lançamento) e nela eu vou precisar de uma calculadora. Eu sei que todos os Sistemas Operacionais ou Ambientes Gráficos tem uma calculadora, mas eu queria que estivesse dentro do próprio aplicativo. Então arregacei as mangas e desenvolvi o pyCalculadora (minha esposa adora minha criatividade para nomes de programas, hehehehehehehe).

Essa é a versão 0.1 ainda, mas faz tudo o que eu queria, na verdade quase tudo, eu queria que tivesse calculo de porcentagem, mas assumo que não entendi exatamente como uma calculadora faz esse calculo e também não tive paciência para pesquisar isso, se alguém souber por favor escreva no comentário que eu implemento.

Críticas e sugestões são SEMPRE bem vindas, se alguém quiser criar um logotipo melhor, esteja a vontade, assumo que meus conhecimento em inkscape e criatividade são bastantes limitados.

Para baixar é só clicar no link “Programas feitos por mim

Share

23
mai 10

Convertendo fotos para um tamanho menor e organizando em pastas

Sempre tenho um problema quando descarrego as fotos de uma câmera digital, como os arquivos são muito grandes tenho que converter para um tamanho menor no gimp para poder enviar por e-mail, ou postar aqui no site, fora ter que organizar em pastas com data e nome do evento.

Para automatizar esse processo fiz um shellscript usando zenity e o ImageMagic. A única coisa que você precisa alterar para usar é a pasta destino das fotos na variável destinoFotos logo no início do script.

O que o script faz é pedir a pasta de origem das fotos, descrição e data do evento. Com isso ele vai montar a seguinte estrutura na pasta de destino:

/pasta destino/ano/mes/dia/descricao do evento/originais
/thumbnails

O código segue abaixo, fique a vontade para modificar.

#!/bin/bash
#  Desenvolvido por Guilherme Jr. <http://www.guilhermejr.net/>

# Caminho da pasta destino das fotos
destinoFotos=/DADOS/fotos

# Função da mensagem de cancelamento
cancelamento() {
    zenity --info --text "Operação cancelada!";
    exit 0;
}

# Caminho da pasta onde estãs as fotos
caminho=$(zenity --file-selection --directory --title="FOTOS")

# Se cancelar operação
if [ -z $caminho ]; then
    cancelamento
fi

# Descrição do evento
descricao=$(zenity --entry --text "Descrição do evento:" --title="FOTOS")

# Se cancelar operação
if [ -z $descricao ]; then
    cancelamento
fi

# Data do evento
data=$(zenity --calendar --text "Selecione data do evento:" --date-format=%d-%m-%Y --title="FOTOS")

# Se cancelar operação
if [ -z $data ]; then
    cancelamento
fi

# Pega o dia mês e ano
dia=$(echo $data | cut -d'-' -f1)
mes=$(echo $data | cut -d'-' -f2)
ano=$(echo $data | cut -d'-' -f3)

sizeof() { du -s "$1" | cut -f1; }
running(){ ps $1 | grep $1 >/dev/null; }

# Total a copiar (em bytes)
TOTAL=$(sizeof "$(echo $caminho)")

# Checa se existe a pasta do ano do evento se não existir cria
if [ ! -d $destinoFotos/$ano ]; then
	mkdir $destinoFotos/$ano
fi
cd $destinoFotos/$ano

# Checa se existe a pasta do mês do evento se não existir cria
if [ ! -d $mes ]; then
	mkdir $mes
fi
cd $mes

# Checa se existe a pasta do dia do evento se não existir cria
if [ ! -d $dia ]; then
	mkdir $dia
fi
cd $dia

# Cria pasta com o nome do evento
mkdir "$descricao"
cd "$descricao"

# Cria pastas
mkdir originais
mkdir thumbnails

cd originais

cp -r "$(echo $caminho)/"* . &
CPPID=$!

pastaDestinoFotos=$(pwd)

(
	# enquanto o processo de cópia estiver rodando
	while running $CPPID; do

		# quanto já foi copiado?
		COPIADO=$(sizeof "$(echo $pastaDestinoFotos)")

		# qual a porcentagem do total?
		PORCENTAGEM=$((COPIADO*100/TOTAL))

		# envia a porcentagem para o dialog
		echo $PORCENTAGEM

		# aguarda até a próxima checagem
		sleep 1
	done	

	# cópia finalizada, mostra a porcentagem final
	echo 100

) | zenity --progress --percentage=0 --auto-close --text "Copiando fotos... "

TOTAL=$(ls | wc -l)
I=0

(
	for img in $(ls | egrep ".+\.[Jj][Pp][Ee]?[Gg]") ; do
		convert "$img" -thumbnail 512x384 ../thumbnails/"$img"
		I=$((I+1))
		PORCENTAGEM=$((I*100/TOTAL))
		echo $PORCENTAGEM
	done
	echo 100

) | zenity --progress --percentage=0 --auto-close --text "Gerando thumbnails... "

zenity --info --text "CONCLUÍDO"
Share

26
abr 10

Home Office

Esse é meu home office.

 

O lado esquerdo e o da minha esposa e o lado direito e meu. No centro tem uma impressora multifuncional e atrás dela tem nosso “servidor” de arquivos e impressão, o Multivac (esse nome é em alusão a um computador que existe no conto “A última pergunta” de Issac Asimov), que é um computadorzinho que vende na Login Computadores que vem com 160 GB de HD. No dia que esse espaço não der mais vamos comprar um HD externo de 1 TB para expandir a capacidade.

Essa semana eu comprei esse monitor de LCD de 19″ que fica do meu lado, antes usava um de 15″ que passou para o lado de Camila. Agora ela também ficou viciada em usa o laptop com outro monitor.

Share