Problema com PyEnv no OSX Sierra

Pyenv é um gerenciador de instalações do Python, permite a instalação de várias versões do interpretador em paralelo, incluindo pypy, jython stackless etc.

Após instalar o OSX Sierra tive um problema que me impedia de instalar o python 3.5.2:

zipimport.ZipImportError: can't decompress data; zlib not available

Por alguma razão, no Sierra a biblioteca zlib não vem instalado por padrão para uso no stack unix padrão, para resolver isso fiz o seguinte:

xcode-select --install

Com isso uma caixa de diálogo vai se oferecer para instalar o XCode inteiro ou apenas as ferramentas de console. Instalei as ferramentas de console e o problema foi resolvido 🙂

Como lidar com settings.py local vs produção no django

Não é legal colocar no github suas senhas ou configurações especificas da sua máquina de desenvolvimento, e no Django padrão ele praticamente te induz ao erro.

Mas não se preocupe, é bem simples adaptar seu projeto de tal forma que suas configurações locais não se misturem com o código que vai ser publicado. basta adicionar as seguintes linhas no fim do seu arquivo settings.py:

try:
   from local_settings import *
except ImportError, e:
   pass

Agora vc pode editar o local_settings.py de tal forma a ‘re-escrever’ variaveis, listas, tuplas do settings.py do seu projeto. Só não esqueça de manter o local_settings.py fora do seu repositório !

Como fazer o git ignorar as permissões dos arquivos ?

Quando se usa o git em diferentes sistemas operacionais, com diferentes sistemas de arquivo é bastante comum ao fazer git pull receber uma série de mudanças de permissões, principalmente entre máquinas Windows e Unix. Para fazer o git ignorar essas mudanças em um repositório use:

 git config core.filemode false 

Para ignorar em todos os seus projetos:

 git config --global core.filemode false 

Play : Framework Web em Java

Eu gosto muito de linguagens simples , python , ruby … mas perdi alguns jobs por não dominar java e suas tecnologias. Então pra não ficar pra trás estou estudando java como nunca antes… o mais legal na verdade não é a liguagem mas o universo em volta das JVMS, sim JVMS ! Existe vida além da SUN !

O legal é que da pra programar em python, ruby javascript tudo gerando código byte code pra diversas JVMs, isso expande e muito as possibilidades da plataforma, e me fez interessar e pesquisar mais sobre o assunto. Então pesquisei sobre frame works web em java e encontrei o Play.

O play é um framework java ridiculamente simples, eu sempre achei django e rails simples… play consegue ser mais ! Veja :


A web app in 10 minutes using Play! from zenexity on Vimeo.


Uma pena que no linode provavelmente não tenho memória suficiente pra hospedar webapps java, se não já estaria usando essa plataforma 🙂

N truques em python

python -m SimpleHTTPServer  # cria servidor http na porta 8000

python -m smtpd -n -c DebuggingServer localhost:1025 # cria servidor smtp na porta 1025
a, b = b, a  # troca os valores de a e b sem precisar de variavel auxiliar

x = "Alguma coisa"
y = x[::-1] #  Inverte a string
import antigravity # só no python 3

e por ai vai ...

Compilador e interpretador universal

Tá afim de testar aquela linguagem de programação obscura , mas tá sem saco de instalar 400 mb de dependências só para escrever um “Hello World” ?

Seus problemas acabaram, experimente o ideone . Ele oferece um terminal onde vc cola o código , após processado ele devolve o  resultado do código, bem legal !

Agora que você conhece o ideone, teste todos esses hello worlds por lá 🙂