All work and no play makes Jack a dull boy

quarta-feira, 29 de julho de 2015

automatizando coisas no virtualenv

Trabalhando com virtualenvwrapper você possui alguns hooks auxiliares que podem ser úteis.
$ cat ~/.virtualenvs/postactivate 
#!/bin/bash
# This hook is run after every virtualenv is activated.
e
$ cat ~/.virtualenvs/postmkvirtualenv 
#!/bin/bash
# This hook is run after a new virtualenv is activated.
Os nomes são autoexplicativos, eu diria. Se bem que o comentário do postmkvirtualenv poderia dizer após o virtualenv ser criado.
O seu postmkvirtualenv poderia conter algo como:
$ cat ~/.virtualenvs/postmkvirtualenv 
#!/bin/bash
# This hook is run after a new virtualenv is activated.
pip install ipython
pip install nose
pip install coverage
E por ai vai.. pode colocar variáveis de ambiente, instalar mais pacotes e etc

=]

segunda-feira, 27 de julho de 2015

grep excluindo pasta

Como fazer um grep mas quer excluir alguma pasta da busca?

Simples, simples
$ grep "alguma coisa" -Rn ./ | grep -v essa_pasta_nao

=]

sexta-feira, 24 de julho de 2015

InfoQ downloader


InfoQ sempre tem vídeos bem interessantes de tecnologia, incluindo Luciano Ramalho, TDC e outros.

Felizmente existe uma forma bacana de baixar o vídeo e slides.
git clone https://github.com/joncasdam/infoq-downloader.git
cd infoq-downloader
pip install -r requirements.txt
E o uso é mais fácil ainda:
python infoq_downloader.py http://www.infoq.com/produtividade-e-qualidade-em-python

pega lá meu fork:
https://github.com/joncasdam/infoq-downloader

=]



terça-feira, 21 de julho de 2015

Instalando versões antigas de fórmulas no brew

 http://brew.sh/

Digamos que você está com um projeto legado em mãos e deseja, portanto, instalar as dependências e, dentre as tais, está uma versão antiga de uma fórmula.

Eis o que passei recentemente:

A versão corrente do PostgreSQL é 9.x, mas o projeto precisa da 8.x

Se você usar:
$ brew install postgres
Como é de se esperar, ele instala a versão mais nova.

Primeiro você precisa descobrir quais as versões disponíveis para instalação.

$ brew search postgres
check_postgres    homebrew/versions/postgresql9
homebrew/versions/postgresql92   postgres-xc
homebrew/versions/postgresql8    homebrew/versions/postgresql91
homebrew/versions/postgresql93  postgresql
Caskroom/cask/navicat-for-postgresql    Caskroom/cask/postgres

Tendo encontrado a versão que precisava, use:
$brew install homebrew/versions/postgresql8
Be happy.

terça-feira, 14 de julho de 2015

retornar JSON com Django

Antes de tudo, vamos deixar claro que a partir do Django 1.7, há uma classe responsável para isso.
Sim, isso mesmo: a classe JsonResponse:
from django.http import JsonResponse
return JsonResponse({'foo':'bar'})

Agora, se você ainda está em uma versão do Django anterior a 1.7, há uma forma bem simples:
from django.http import HttpResponse
return HttpResponse(json.dumps(dados), content_type="application/json")

=]