Fork me on GitHub

Github theme para o Vim

December 30, 2008 at 14:47

Depois de uma busca insana por um editor de texto acabei escolhendo o Vim, estou usando ele direto faz uma semana e estou me adaptando bem, apesar de algumas coisas me deixarem meio perdido (teclas de atalho principalmente).

Eu estava usando o Vim no console, com um tema com fundo escuro, e como estou usando o computador em um lugar muito claro, o reflexo que a minha tela emite fazia com que eu forçasse muito a visão para enxergar o código. Foi então que eu achei isto, um tema usando as cores do Github, instalei e ficou muito bom!

Um detalhe apenas é que a cor do fundo não é a mesma, nos comentários o Felipe Contreras dá a cor certa. Como não achei nenhum fork com a correção, eu mesmo o fiz.

Se você achar que alguma outra cor não está correta, você sabe, fork e pull request :)

Usando Python e Google App Engine

December 29, 2008 at 08:50

No começo do mês recebi a liberação para usar o Google App Engine, foi o que faltava para eu dar uma brincada com Python.

Onde trabalho, toda a tarde rola de alguém ir no mercado comprar uns refrigerantes, mas todo dia era uma "briga" para ver quem ia. Para resolver isso, criamos página simples em PHP que sorteava quem naquele dia ia fazer as compras.

Depois que a minha conta foi liberada, fiquei um bom tempo pensando o que eu poderia fazer para usá-la, e então o Joel deu a idéia, fazer aquela "págininha" em Python e disponibilizar no Google App Engine.

http://eoescolhidofoi.appspot.com/

É simplesmente fantástica a facilidade de se criar uma aplicação e fazer o deploy dela no Google App Engine, o fato de não ter que se preocupar com banco de dados influencia bastante, basta definir modelos no próprio código, pensar apenas em objetos.

Depois dessa primeira eu já criei mais duas, uma está pronta, mas estou testando ainda, a outra está a caminho, mas será para a empresa que trabalho.

Nome do Jogo: Edge Rails: Evitando feeds duplicados

December 01, 2008 at 21:20

Seguindo a dica do Carlos sobre como evitar que os posts apareçam várias vezes como não lidos em alguns leitores de feeds, eu mudei o feed aqui do blog, então provavelmente para algumas pessoas vários posts já lidos voltarão a aparecer como não lido, pelo menos até este post. Desculpem pelo inconveniente.

Até o Rails 2.1, que era o que eu estava usando aqui, não era possível definir o id do post no feed, então atualizei para o Rails 2.2 para ter esta funcionalidade.

nginx: Redirecionando de um domínio para outro

November 28, 2008 at 19:30

Semana passada eu resolvi mudar o domínio do blog, usar algo mais pessoal, e acabei escolhendo http://rafaelss.com, mais simples, mais curto, tem meu nome, enfim, muito melhor :)

Mas com isso veio a necessidade de redirecionar do domínio antigo, http://www.joeh.com.br, para o novo.

Isso é muito fácil.

    server {
        listen 80;
        server_name joeh.com.br  *.joeh.com.br;
        rewrite ^/(.*) http://rafaelss.com/$1 permanent;
    }
    

Com isso todos os links que apontam para o domínio velho são redirecionados para o novo, com o permanent ali as buscas se entendem, a indexação não é afetada, e tudo continua funcionando normalmente como era antes.

Rails Summit, eu fui!

November 28, 2008 at 13:16

Eu sei, eu sei, Rails Summit já foi faz tempo, mas só agora consegui postar alguma coisa aqui no blog.

O evento estava muito bom, muito motivador, palestras como a do Obie Fernandez, do Vinícius Teles e do Chad Fowler me fizeram mudar alguns aspectos na minha vida profissional (motivo pelo qual esse blog ficou um pouco abandonado), estou focando mais em desenvolver alguma coisa do que simplesmente assistir a tudo de braços cruzados. Gmail só o essencial e Google Reader e Twitter são raramente abertos em casa.

No momento networking do evento, reencontrei o Jony e o Tailor, que tinha conhecido no FISL, e conheci mais uma galera legal lá, citando alguns: Júlio Monteiro, Henry Hamon, Evandro Dutra, Rafael Lima, Henrique Bastos, Thiago Pradi, Davis Cabral e mais alguns outros que não me lembro o nome.

Enfim, espero que o ano que vem tenhamos outro evento neste mesmo nível (ou até melhor), que com certeza eu estarei lá.

Solução simples para um problema simples

October 31, 2008 at 11:32

É impressionante como alguns desenvolvedores muitas vezes não procuram uma forma mais simples de fazer certas tarefas do dia-a-dia, um exemplo clássico: Deixar apenas números em uma string, nesse caso, o número de uma agência bancária.

Primeiro a forma que vejo normalmente (em C#)

    string agency = plan.Agency.Replace("-", "");
    agency = agency.Replace(".", "");
    agency = agency.Replace("/", "");
    agency = agency.Replace("\", "");
    

Forma simplificada (C# também)

    Regex.Replace(plan.Agency, "[^0-9]+", "")
    

Não é muito mais simples? Basta procurar! ;)

Desabilitando validadores do .NET com Javascript

October 27, 2008 at 14:08

Mexendo com .NET hoje (eu sei, mas faz parte) tive que descobrir como desabilitar uns validadores com Javascript, e a resposta é bem simples:

    var myVal = document.getElementById('<%= myValidator.ClientID %>');
    ValidatorEnable(myVal, false);
    

Tirado daqui: http://geekswithblogs.net/jonasb/archive/2006/08/11/87708.aspx

Fonte para Linux

October 08, 2008 at 00:17

Para quem está procura de uma boa fonte para Linux pode dar uma experimentada na Liberation, é uma fonte que fica muito bem com um tamanho pequeno.

Para instalar no Arch Linux

    pacman -S ttf-liberation
    

Adicionando e removendo um usuário de um grupo no Linux

October 07, 2008 at 13:33

Hoje precisei definir uns grupos para um usuário e achei os comandos abaixo

Para adicionar um usuário em um grupo:

    useradd -G nome_do_grupo nome_do_usuario
    

Você pode passar vários grupos também, basta separar a lista por vírgula:

    usermod -G nome_do_grupo,nome_de_outro_grupo nome_do_usuario
    

Para remover um usuário de um grupo:

    usermod -G nome_do_grupo nome_do_usuario
    

Note que a sintaxe para remover é a mesma para adicionar, porém a lista de grupos terá apenas os grupos em que você deseja manter o usuário.

Outra forma de remover todos os grupos secundários (adicionados com os comandos acima) é usando '' (vazio)

    usermod -G '' nome_do_usuario
    

Mais detalhes aqui e aqui

Apache ouvindo em duas (ou mais) portas diferentes

September 23, 2008 at 19:43

É muito simples, basta colocar quantas diretivas Listen você precisar

    Listen 80
    Listen 81
    Listen 82
    

Retirado daqui

Eu estou usando isso para poder diferenciar quando estou rodando a aplicação via Selenium ou não.