Tag: dica


  • Às vezes a gente tem a tendência de complicar as coisas. Semana passada, um amigo me perguntou se há alguma forma de calcular a média de uma lista em Python. Assim como há funções para calcular a soma dos elementos ou o maior elemento, ele esperava que houvesse uma para calcular a média. Afinal, calcular…

  • Salvando diff em HTML

    Comece instalando as ferramentas: sudo apt-get install colordiff kbtin Agora você pode: diff arquivo1.txt arquivo2.txt | colordiff | ansi2html > diff.html Ou, com git: git diff | colordiff | ansi2html > gitdiff.html Você também pode salvar a saída de qualquer comando que retorne ANSI colorido: ls -lha –color | ansi2html > ls.html

  • Fiz para um amigo um script de conversão de charset simplezinho e, como pode ser útil para mais alguém, resolvi abrir o código: Era mais fácil fazer com shell script, é verdade, mas eu precisava que fosse multiplataforma.

  • Faça o Google falar por você

    Ah, a internet! Você, usuário de Linux, comece pela preparação: sudo apt-get install curl mpg123 Depois crie o script falador: #!/bin/bash l=pt-BR if [ “$1” == “-l” ];then shift l=$1 shift fi curl -A “Falador” translate\.google\.com/translate_tts -d “tl=$l&ie=UTF-8&q=$@” |mpg123 -; Dê permissão de execução: chmod +x falador E divirta-se: ./falador “Onde está o futuro que…

  • Um amigo me escreveu: Ola Elcio, vc tem algum tutorial de como reescrever a url para deixar mais amigável? no momento eu tenho isso http://www.meusite.com.br/index.php/category/produtos/produtos-especiais/ quero deixar assim: http://www.meusite.com.br/produtos-especiais/ Muito bem, vamos lá. O primeiro passo é, se você não quer que as categorias apareçam uma dentro da outra, não usá-las de forma hierárquica no…

  • É hoje à noite DURAÇÃO: 2h Aprenda os fundamentos do terminal do Linux, domine os comandos mais comuns mas, além disso, aprenda um novo jeito de pensar. Automatize tarefas e coloque seu computador para trabalhar por você. Por que estamos oferecendo esse curso? Durante os últimos anos eu tenho ensinado milhares de técnicos, programadores e…

  • Módulo Python: requests

    Esqueça urllib e httplib: Requests resolve do jeito certo. Você pode instalar via pip com: pip install requests Depois, veja como é fácil: >>> import requests >>> r=requests.get(‘http://visie.com.br’) >>> for k,v in r.headers.iteritems():print k,’=>’,v … content-length => 7669 content-encoding => gzip accept-ranges => bytes expires => Mon, 20 Jan 2014 13:18:30 GMT vary => Accept-Encoding,Cookie server…

  • Talvez você tenha um pouco de medo de usar o comando rm, porque ele exclui definitivamente os arquivos. Não há “lixeira”, e todos os métodos disponíveis para desfazer a deleção, como o ext2undel, não passam de boas tentativas com uma razoável chance de insucesso. Você sabia que pode enviar um arquivo para a lixeira a…

  • Há um tempo eu li “The Pragmatic Programmer“, uma espécie de livro de auto-ajuda para programadores. Não é um livro técnico, não vai te ensinar técnicas ou tecnologias, mas fala de um jeito de pensar e traz uma coleção de conselhos daquele tipo que parece óbvio mas ninguém nunca faz. Um desses conselhos era aprender…

  • Pare de usar FTP

    Há mais de dez anos que meus processos de deploy, isto é, colocar um site ou sistema em produção, não usam FTP. Qualquer bom provedor, nacional ou internacional, oferece ferramentas muito mais eficientes para o deploy de sites e sistemas. E isso inclui desde pequenos sites em WordPress ou HTML estático até portais com milhares…

  • Tabelas responsivas de um jeito fácil: “There are a lot of very clever responsive table solutions available now. There are solutions that flip the table on it’s side, convert it to a pie chart, gradually reduce the columns, allow users to determine columns, and even allow partial scrolling across the table. All of them are…

  • SQL Executioner

    Olha que útil: SQL Executioner, um plugin WordPress que te dá uma tela no painel para a execução de SQL, substituindo para muita coisa o phpMyAdmin ou ferramentas semelhantes: Acabou de salvar um cliente da Visie que hospeda o site num provedor que não nos dá facilidades como acesso SSH ou um bom painel de controle.…

  • O módulo webbrowser permite abrir uma URL no navegador do usuário. Só isso, simples assim. Por exemplo: import webbrowser webbrowser.open(“http://visie.com.br”) E o site da Visie será aberto no navegador do usuário. Muito útil se você está fazendo um programa para desktop ou mesmo um script para o terminal. No caso de scripts para terminal, se…

  • Teste aí: sudo apt-get install cowsay Depois rode: cowsay Funciona… O cowsay também pode receber texto na entrada padrão: date|cowsay Isso permite usos razoavelmente criativos: lynx –dump http://news.google.com.br | grep “^\[” | grep -v “»” \ | sed -e “s/.*\]//g” | sort -R | head -n 1|cowsay Você pode colocar seu Ubuntu para te dar…

  • https://github.com/elcio/visualdal Críticas, sugestões e, claro, pull requests são muito bem-vindos!

  • API gratuita de consulta de CEP

    Nosso presente de natal para os desenvolvedores do Brasil: API gratuita de consulta de CEP. A Visie é parceira de tecnologia da Aviso Brasil. Nós fornecemos tecnologia para o Correio Control, e como parte do negócio, precisamos ter a base de endereços sempre atualizada e sincronizada com o Diretório Nacional de Endereços. Vimos que muita gente oferece…

  • Veja: >>> class Class: … def um(self): … return 1 … >>> c=Class() >>> c.um() 1 >>> def dois(self): … return 2 … >>> Class.dois=dois >>> c.dois() 2 >>> Class.tres=lambda self:3 >>> c.tres() 3 >>> Class.um=lambda self:’Um modificado.’ >>> c.um() ‘Um modificado.’ As classes em Python são completamente dinâmicas. Você pode acrescentar métodos quando quiser…

  • Python é uma linguagem open-source, com uma extensa biblioteca. E os módulos da biblioteca são escritos em Python. Alguns módulos, como pickle e StringIO, tem versões em C mais rápidas (cPickle e cStringIO) mas as versões em Python são mantidas para que você possa ler os fontes. Veja como descobrir onde estão os fontes de…

  • Há muitas situações em que uma função faz cálculos e operações para obter valores e, ao final, deve montar uma string com esses valores. Nesta situação, muita gente monta um dicionário com os valores e usa string formatting para gerar a string a ser retornada. Por exemplo: # -*- encoding: utf-8 -*- import string,random template=”’Sugestões…

  • Pequena dica de Python: rot-13

    A dica de hoje não é muito útil. Pelo menos eu nunca usei para nada realmente sério. Mas é bem divertida: >>> t=’All your base are belong to us.’ >>> t.encode(‘rot-13’) ‘Nyy lbhe onfr ner orybat gb hf.’ Rot-13 é um encoding comum do Python. Você pode escrever código em rot-13 também, se indicar o…