Com a chegada do Covid-19, muitas coisas estão mudadas em nossas vidas.
Até que seja encontrada uma vacina, muitas coisas poderão mudar para sempre.
O ponto central dessa mudança é o fato que que ainda não foi comprovado que quem já teve a doença desenvolve imunidade. Se não há imunidade, todos os ambientes em que há aglomeração de pessoas serão evitados. Amplos ambientes com ar condicionado e multidões dentro ficarão abandonados, ou terão que sofrer reformas para adequar não somente o uso, como a engenharia de circulação de ar.
Nossa vida será cada vez mais virtual, e com menos oportunidade de encontros pessoais. As máscaras podem se tornar um novo normal. Festas terão que ser reinventadas: são pequenos encontros.
domingo, maio 03, 2020
sábado, agosto 05, 2017
A pergunta do dia
Quem será o vice de Lula e quais partidos farão parte da coligação de esquerda em 2018?
quarta-feira, julho 12, 2017
Quem sou eu?
Quem sou eu?
Eu sou em essência,
um sobrevivente nômade.
Sobrevivente em
primeiro lugar,
porque se for preciso eu fico,
se eu puder eu vou,
se
eu gostar e tiver tempo e oportunidade,
provavelmente eu volto.
Nasci em um lugar
chamado Belo Horizonte, e após 44 anos, ainda estou por aqui.
Mas já morei em
Ji-Paraná por alguns anos, e Guarapari, por alguns meses.
Apesar disso e da
humanidade já ter explorado o planeta,
Me considero um
explorador.
Existe o mapa que a
humanidade conhece,
E existe o que eu
conheço pessoalmente,
E o que minha mente
conhece.
Minha mente é mais
livre que o meu corpo,
Portanto, pelos
livros e filmes e pela minha imaginação,
Não só explorei e
exploro uma boa parte do mundo,
Quanto uma fatia do
universo,
Pelo passado,
presente e futuro.
Não é o que faço
que me define.
Já fiz muitas
atividades,
que a burocracia
definiria como profissões.
De catador de rua a
agricultor,
de vaqueiro a
vendedor,
de balconista a
policial,
de estudante a
funcionário público,
de técnico a diretor,
de superintendente a coordenador,
em paralelo programador e empreendedor.
de técnico a diretor,
de superintendente a coordenador,
em paralelo programador e empreendedor.
Mas minha história
mal começou.
Por quê deixar o
que faço agora
definir o que sou?
Sou filho, já fui
neto, bisneto.
Sou pai, já fui
marido,
Quero ser de novo.
Quero chegar a ser
avô,
bisavô, e por aí
vai.
Já vou avisando
que tenho péssimos
hábitos:
Não julgo as
pessoas pelas roupas,
e nem pelo que possuem.
e nem pelo que possuem.
Julgo como a mim
mesmo,
Pelas suas paixões,
Iguais a mim em
todos os direitos e possibilidades
Não enxergo classes
sociais
porque já fui
pobre, estou remediado e talvez um dia seja rico
desde que não tenha
que fazer alguém minguar por isso.
Meu compromisso com
os outros é ser leal,
Para que possa ser
fiel a mim mesmo.
A vida para mim é
muito curta,
minha meta no final
da adolescência
já era viver 140
anos.
Se eu puder, viverei
mais,
O limite é a
eternidade,
Mas nada é
garantido,
Talvez nem o próprio
universo seja eterno,
Nos cabe aproveitar
o que puder.
Um outro defeito,
é que planejo,
mas não alcanço
metas
a qualquer custo.
Às vezes é preciso
dar tempo,
outras reduzir
escopo,
e como último
recurso,
pode ser necessário
abandonar a meta,
pois é preciso
saber priorizar.
A saúde vem em
primeiro lugar,
Conhecimento vem a
seguir,
É preciso
trabalhar,
Para se adaptar e
não enferrujar.
Dinheiro só é
importante,
para manter a vida
girando,
e não para virar
bytes
no computador de um
banco.
O que eu espero para
o futuro?
Conhecer mais
pessoas e lugares,
E se possível fazer
vidas melhores.
Quero prolongar a
vida,
Explorar o universo,
Ignorar o tempo,
E especialmente,
Saborear a vida.
quarta-feira, junho 07, 2017
Plano de Governo Brasil 2019-2022
Este post é um exercício. Está sujeito a ajustes no período.
a) Contexto
O Brasil tem mais de 200 milhões de habitantes, IDH 0,754 (79 no ranking), R$ 6,266 trilhões em 2016, PIB per capita ficou em R$ 30.407 – uma redução de 4,4%. O indice de Gini — chegou a 0,5229 no ano passado, alta de 1,6% em relação ao ano anterior. A taxa de desemprego chegou a 13,7% no primeiro trimestre de 2017.
b) Propostas
Ajuste das finanças públicas:
1) Eliminação da remuneração do depósito compulsório que os bancos fazem ao Banco Central
ver http://www.valor.com.br/financas/2525808/remuneracao-sobre-compulsorio-de-deposito-prazo-caira-mais-devagar
A eliminação dessa remuneração deve destravar mais de 300 bilhões de reais anuais ao orçamento público federal, a serem alocadas nas prioridades abaixo:
2) Desenvolvimento local
A fim de reduzir o desemprego e a desigualdade, devem ser identificados os 'bolsões de miséria', bairros e regiões com alto desemprego e baixa renda, e fornecidos empréstimos e serviços públicos para que em um raio de 2 km cada cidadão tenha escola, posto de saúde, comércio, lazer, serviços e trabalho.
a) Contexto
O Brasil tem mais de 200 milhões de habitantes, IDH 0,754 (79 no ranking), R$ 6,266 trilhões em 2016, PIB per capita ficou em R$ 30.407 – uma redução de 4,4%. O indice de Gini — chegou a 0,5229 no ano passado, alta de 1,6% em relação ao ano anterior. A taxa de desemprego chegou a 13,7% no primeiro trimestre de 2017.
b) Propostas
Ajuste das finanças públicas:
1) Eliminação da remuneração do depósito compulsório que os bancos fazem ao Banco Central
ver http://www.valor.com.br/financas/2525808/remuneracao-sobre-compulsorio-de-deposito-prazo-caira-mais-devagar
A eliminação dessa remuneração deve destravar mais de 300 bilhões de reais anuais ao orçamento público federal, a serem alocadas nas prioridades abaixo:
2) Desenvolvimento local
A fim de reduzir o desemprego e a desigualdade, devem ser identificados os 'bolsões de miséria', bairros e regiões com alto desemprego e baixa renda, e fornecidos empréstimos e serviços públicos para que em um raio de 2 km cada cidadão tenha escola, posto de saúde, comércio, lazer, serviços e trabalho.
quarta-feira, maio 17, 2017
Reconhecendo texto em um pdf scaneado com python e tesseract
Como converter um arquivo pdf scaneado em um arquivo pdf que permita a busca pelo texto?
As orientações são para o ubuntu 16.04
1) Instale o pypdfocr
sudo pip install pypdfocr
2) instale o tesseract e o language pack
sudo apt install tesseract-ocr tesseract-por
3) para converter um arquivo
pypdfocr -l por scaneado.pdf
irá gerar um arquivo scaneado_ocr.pdf.
Para mais opções, consulte a documentação em
http://virantha.github.io/pypdfocr/html/
---------------------------------------------------------------------------------------
Para instalação no Centos 7, siga as orientações de
http://www.keienberg.com/install-tesseract-3-04-centos-7/
Se reclamar 'leptonic not found' no passo 3, use:
$ setenv LIBLEPT_HEADERSDIR /usr/local/include/leptonica ; setenv LDFLAGS -L/usr/lib ; ./configure --prefix=/usr
make install e ldconfig devem ser executados como
sudo make install
sudo ldconfig
no passo 5, faça
export TESSDATA_PREFIX=/usr/share/tessdata
----------------------------------------------------------------------------------
Versão corrigida
Tesseract installation is supported beautifully with Ubuntu, but with Centos it requires effort to build. Below is a description of how to install Tesseract on CentOs.
Used versions:
Tesseract: 3.04.01 tesseract-3.04.01.tar.gz
Leptonica: 1.73 leptonica-1.73.tar.gz
Tesseract-ocr 3.02 tesseract-ocr-3.02.deu.tar.gz, tesseract-ocr-3.02.eng.tar.gz, tesseract-ocr-3.02.nld.tar.gz, tesseract-ocr-3.02.por.tar.gz
GhostScript: Install Tesseract 3.04 on CentOs 7
I executed all commands as root, but if you prefer, you can use another account and ‘sudo‘ the commands
1) First update your system:
yum update
Because Tesseract-ocr is not available using yum, we need to download source and build both Tesseract-ocr and leptonica.
This requires development tools to be installed.
yum groupinstall “Development Tools”
Se der erro use:.
yum groupinstall "Ferramentas de desenvolvimento"
yum -y install automake autoconf libtool zlib-devel libjpeg-devel giflib libtiff-devel libwebp libwebp-devel libicu-devel openjpeg-devel cairo-devel
2) Now download and install Leptonica :
wget http://www.leptonica.com/source/leptonica-1.73.tar.gz
tar xzvf leptonica-1.73.tar.gz
cd leptonica-1.73
./configure
make
make install
3) Download and install Tesseract:
wget https://github.com/tesseract-ocr/tesseract/archive/3.04.01.tar.gz
mv 3.04.01.tar.gz tesseract-3.04.01.tar.gz
tar xzvf tesseract-3.04.01.tar.gz
cd tesseract-3.04.01/
./autogen.sh
setenv LIBLEPT_HEADERSDIR /usr/local/include/leptonica ; setenv LDFLAGS -L/usr/lib ; ./configure --prefix=/usr
./configure
make
make install
ldconfig
make training
make training-install
4) Download and install Tesseract trainer files:
wget https://sourceforge.net/projects/tesseract-ocr-alt/files/tesseract-ocr-3.02.eng.tar.gz
wget https://sourceforge.net/projects/tesseract-ocr-alt/files/tesseract-ocr-3.02.nld.tar.gz
wget https://sourceforge.net/projects/tesseract-ocr-alt/files/tesseract-ocr-3.02.deu.tar.gz
wget https://sourceforge.net/projects/tesseract-ocr-alt/files/tesseract-ocr-3.02.por.tar.gz
tar xzvf tesseract-ocr-3.02.eng.tar.gz
tar xzvf tesseract-ocr-3.02.nld.tar.gz
tar xzvf tesseract-ocr-3.02.deu.tar.gz
tar xzvf tesseract-ocr-3.02.por.tar.gz
cp -r tesseract-ocr/tessdata/ /usr/share/
5) Export TESSDATA_PREFIX:
export TESSDATA_PREFIX=/usr/share/tessdata
6) Last, install Ghostscript for processing png:
wget https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs920/ghostscript-9.20.tar.gz
tar xzvf ghostscript-9.20.tar.gz
cd ghostscript-9.20/
./autogen.sh
./configure
make
make install
if tesseract complains about not find liblept.so.5 , do:
ln -s /usr/local/lib/liblept.so.5 /usr/lib64/
quinta-feira, abril 06, 2017
Iniciando com NLTK
Para instalar:
pip3 install nltk
Para instalar os pacotes adicionais, o NLTK tem uma lógica expecial, é preciso usar o prompt do python:
python3
import nltk
nltk.download()
Se tem espaço bastante, simplemente configure o diretório padrão para /usr/share/nltk (ou o seu venv) e download 'all'
Páginas interessantes:
https://www.ibm.com/developerworks/br/library/os-pythonnltk/
NLTK Book
sexta-feira, março 31, 2017
Melhores Sites de ciclismo
Internacionais
- http://www.steephill.tv/ - A melhor cobertura da elite do ciclismo mundial
- http://www.cycling.tv/ - Pena que só nos EUA (snif, snif) - videos de corrida ao vivo e on demand
- http://www.cyclingnews.com/ - Site com boas matérias sobre ciclismo
- http://www.cyclingweekly.com/ - Site inglês
- http://tiz-cycling.racing/live-stream/ transmissão ao vivo
- www.bikemagazine.com.br/
- www.pedal.com.br
- www.fmc.org.br - Federação Mineira
Se discordar ou tiver uma contribuição, deixe seu comentário abaixo!
quinta-feira, março 30, 2017
Vivaldi - Navegador
o Vivaldi (vivaldi.com) é um navegador desenvolvido por uma equipe dissidente do Ópera.
O que acho legal nele é mostrar número e o tamanho dos arquivos da página que está baixando.
Sempre fico surpreso com o tamanho das páginas!
Como imprimir uma página direto do browser
No Firefox você pode fazer algumas modificações que permitem imprimir um documento sem o prompt de confirmação da seguinte forma:
- Digite
about:configpara entrar na aba de configurações (clique em "serei cuidadoso, prometo") e prossiga. - Crie uma nova preferência do tipo booleano. Dê o nome de
print.always_print_silente marque-a comotrue.
window.print() iniciará a impressão automaticamente. Assim, até mesmo um link como o abaixo funcionará:<a href='javascript:window.print()'>Imprimir essa página</a>
Mas como pode ver de qualquer maneira é necessária a permissão por parte do usuário.ps: Caso tenha feito o teste acima, não esqueça de entrar novamente na aba de preferências do Firefox e alterar a chave
print.always_print_silent para false (ou então clicar em "restaurar o padrão"). Referência:
http://pt.stackoverflow.com/questions/54858/como-imprimir-uma-p%C3%A1gina-diretamente-sem-caixa-de-di%C3%A1logo-do-navegador-usando
Web2py ERROR', 'relation "auth_user" already exists
É comum ocorrerem errors de migração no DAL do web2py. Seja porque foi feito um restore diretamente via banco de dados, alguma alteração direta no banco, ou outro motivo.
Se a instalação é nova, e o banco foi criado/restaurado a partir de um backup, normalmente basta alterar as linhas no arquivo db.py de :
db = DAL(myconf.get('db.uri'),
pool_size=myconf.get('db.pool_size'),
migrate=True,
check_reserved=['all'])
para:
db = DAL(myconf.get('db.uri'),
pool_size=myconf.get('db.pool_size'),
fake_migrate_all=True,
#migrate=True,
check_reserved=['all'])
Faça essa alteração, rode uma vez, e volte para o padrão.
Ao deixar o fake_migrate ativado, ao se criar um novo campo ou tabela no web2py, ela não é criada no banco, levando o banco de dados informar o erro que o campo ou tabela não existe.
Nesse caso, é preciso fazer a alteração diretamente no banco de dados. O arquivo databases/sql.log pode ajudar com o sql que 'deveria' ter sido aplicado no banco, mas foi 'fake'. Em alguns casos mais complexos, os erros tem que ser corrigidos à mão.
Portanto, via de regra, não deixe o fake_migrate_all ativo por padrão.
Se a instalação é nova, e o banco foi criado/restaurado a partir de um backup, normalmente basta alterar as linhas no arquivo db.py de :
db = DAL(myconf.get('db.uri'),
pool_size=myconf.get('db.pool_size'),
migrate=True,
check_reserved=['all'])
para:
db = DAL(myconf.get('db.uri'),
pool_size=myconf.get('db.pool_size'),
fake_migrate_all=True,
#migrate=True,
check_reserved=['all'])
Faça essa alteração, rode uma vez, e volte para o padrão.
Ao deixar o fake_migrate ativado, ao se criar um novo campo ou tabela no web2py, ela não é criada no banco, levando o banco de dados informar o erro que o campo ou tabela não existe.
Nesse caso, é preciso fazer a alteração diretamente no banco de dados. O arquivo databases/sql.log pode ajudar com o sql que 'deveria' ter sido aplicado no banco, mas foi 'fake'. Em alguns casos mais complexos, os erros tem que ser corrigidos à mão.
Portanto, via de regra, não deixe o fake_migrate_all ativo por padrão.
Como alterar a senha de um usuario no Postgresql
Quando se instala o Postgresql, normalmente é necessário alterar a senha do usuário no banco por segurança.
Para isso, siga 3 passos:
1. Assuma o usuário root
su
2. Assuma o usuário postgres
su postgres
3. Entre no psql e digite o comando a seguir:
psql
Para isso, siga 3 passos:
1. Assuma o usuário root
su
2. Assuma o usuário postgres
su postgres
3. Entre no psql e digite o comando a seguir:
psql
ALTER USER postgres WITH PASSWORD '';
Como instalar o desktop MATE no Ubuntu
Para instalar/atualizar o desktop MATE no Ubuntu 16.04:
sudo apt-add-repository ppa:ubuntu-mate-dev/xenial-mate sudo apt-get update sudo apt-get install mate
Usando ssh key para autenticar em seu servidor
Esse post mostra como criar uma chave no seu computador (linux) e exportá-la para seu servidor para para autenticar sem usar senha
1. Crie a chave. Aceite os padrões ou altere, se preferir
2. Exporte a chave. Será preciso entrar com a senha do usuário do servidor desta vez:
3. Se precisar colar a chave em algum site (Digital Ocean, Bitbucket, e outros) , use o comando abaixo para exibir a chave. Copie o resultado e cole no campo apropriado:
1. Crie a chave. Aceite os padrões ou altere, se preferir
ssh-keygen
2. Exporte a chave. Será preciso entrar com a senha do usuário do servidor desta vez:
ssh-copy-id username@remote_host
3. Se precisar colar a chave em algum site (Digital Ocean, Bitbucket, e outros) , use o comando abaixo para exibir a chave. Copie o resultado e cole no campo apropriado:
cat ~/.ssh/id_rsa.pub
ou
cat ~/.ssh/id_rsa.pub | xclip -sel clip
(se tiver o xclip instalado)
Instalar desktop Pantheon no Ubuntu 16.04
O Pantheon é o Desktop do ElementaryOS.
Para instalá-lo no Ubuntu, use os seguintes comandos:
Para instalá-lo no Ubuntu, use os seguintes comandos:
sudo add-apt-repository ppa:elementary-os/stable sudo apt-get update sudo apt-get install elementary-desktop
Experimentei um pouco e confesso que não gostei, ainda prefiro o MATE
quarta-feira, abril 01, 2015
Big data com python
Hangout com slides e material. Posteriormente posso comentar o que achei.
http://pycursos.com/big-data-python/
http://pycursos.com/big-data-python/
domingo, setembro 14, 2014
Dicas para sua vida profissional
1-Pense
em algo que é importante para as pessoas e que você se veria capaz
de fazer.
2-Procure
saber um pouco mais das tarefas da profissão e imagine se você
gostaria de realizá-las.
3-Procure
saber se a remuneração média dessa profissão atende a qualidade
de vida que você pretende ter.
4-Entenda
que a escolha de uma profissão não é definitiva e que você pode
mudar ao longo da vida.
5-Como
dica de carreira, sempre procure deixar uma boa impressão em seus
empregos, pois eles poderão servir de referência para novas
oportunidades.
6-Procure
fazer seu trabalho pensando como se você fosse o dono do negócio,
isso lhe abrirá muitas portas para o crescimento profissional.
7-Você
deve estar sempre se atualizando sobre sua profissão.
8-Pense
sempre que você tem que conciliar a sua dedicação ao trabalho com
seu lazer; sua família e amigos.
quinta-feira, setembro 26, 2013
a teoria do criacionismo ou a tradução da palavra nada
Até data recente, havia em mim a dúvida se Deus existe ou não. Em outros termos, um agnóstico.
Colocando na balança que mesmo a melhor teoria científica chega a conclusão de que houve um momento que toda a matéria esteve concentrada em um ponto e 'explodiu', a partir daí, e que este ponto deveria ter toda a matéria existente, e que numa fração de segundo anterior este ponto sequer existisse, só pode-se chegar a conclusão de que o nada criou o primeiro ponto e a partir daí houve um crescimento do universo.
Humberto Gessinger, em uma das suas músicas, afirma que 'nada é uma palavra esperando tradução'.
Pois para mim, 'nada = Deus".
Quando ninguém pode ajudar, do nada pode surgir ajuda, se sua fé e força de vontade forem fortes o bastante.
Pois o nada criou o ponto, e a partir daí, foi possível criar todas as outras coisas.
Colocando na balança que mesmo a melhor teoria científica chega a conclusão de que houve um momento que toda a matéria esteve concentrada em um ponto e 'explodiu', a partir daí, e que este ponto deveria ter toda a matéria existente, e que numa fração de segundo anterior este ponto sequer existisse, só pode-se chegar a conclusão de que o nada criou o primeiro ponto e a partir daí houve um crescimento do universo.
Humberto Gessinger, em uma das suas músicas, afirma que 'nada é uma palavra esperando tradução'.
Pois para mim, 'nada = Deus".
Quando ninguém pode ajudar, do nada pode surgir ajuda, se sua fé e força de vontade forem fortes o bastante.
Pois o nada criou o ponto, e a partir daí, foi possível criar todas as outras coisas.
terça-feira, maio 21, 2013
cursos de programação gratuitos (em inglês)
Procurando no udemy, que tem muitos cursos gratuitos e pagos, encontrei um curso de c gratuito, que parece de boa qualidade..
No curso, descobri que o professor mantinha um site com vários cursos gratuitos:
http://itube.igneustech.com/list-courses.igneustech/9
terça-feira, março 19, 2013
IS_CEP validator para web2py
Inclua o código abaixo em um model, no início do arquivo db.py em um arquivo que em ordem alfabética seja anterior a db.py. Eu uso 0_validators.py
Para usar, use como um validator comum, na definição da tabela
...
Field('cep', requires=IS_CEP()),
...
ou após a definição:
db.mytable.cep.requires = IS_CEP()
class IS_CEP(object):
def __init__(self, format=True, error_message='Digite apenas os números!'):
self.format = format
self.error_message = error_message
def __call__(self, value):
try:
#return (value, 'cpf incorreto'+str(value))
#return (value, 'cpf incorreto'+str(cl))
c = []
for d in value:
if d.isdigit():
c.append(d)
cl = str(''.join(c))
#return (value, 'cpf incorreto'+str(cl))
if len(cl) == 8:
cep = cl
return(str(cep),None)
else:
return (value, 'Número de dígitos incorreto para CEP')
except:
return (value, 'algum erro'+str(value))
def formatter(self, value):
formatado = value[0:2]+'.'+value[2:5]+'-'+value[5:8]
return formatado
Para usar, use como um validator comum, na definição da tabela
...
Field('cep', requires=IS_CEP()),
...
ou após a definição:
db.mytable.cep.requires = IS_CEP()
class IS_CEP(object):
def __init__(self, format=True, error_message='Digite apenas os números!'):
self.format = format
self.error_message = error_message
def __call__(self, value):
try:
#return (value, 'cpf incorreto'+str(value))
#return (value, 'cpf incorreto'+str(cl))
c = []
for d in value:
if d.isdigit():
c.append(d)
cl = str(''.join(c))
#return (value, 'cpf incorreto'+str(cl))
if len(cl) == 8:
cep = cl
return(str(cep),None)
else:
return (value, 'Número de dígitos incorreto para CEP')
except:
return (value, 'algum erro'+str(value))
def formatter(self, value):
formatado = value[0:2]+'.'+value[2:5]+'-'+value[5:8]
return formatado
Melhor IDE ou Editor para Python
Essa é uma pergunta que a maior parte dos programadores python não gosta de responder.
Dizem que você deve experimentar e escolher o que é melhor para você.
Eu fiz isso.
Dos pagos, gostei do WingIDE (versão trial). Rápido, confiável, multiplataforma.
O Komodo ficaria em segundo lugar, porque é mais lento.
Dos gratuitos, a maioria são instáveis ou lentos, ou tem usabilidade ruim. Tão ruim que às vezes preferia um editor de texto como o Notepad++ no windows ou o Gedit no linux.
Mas existe uma luz no fim do túnel. O Aptana 3 apresenta muitas qualidades sem o defeito de ser pago.
Portanto, minha resposta para a pergunta acima é: Aptana Studio 3.
Ele é baseado no pydev, só que é fácil de instalar.
Para baixá-lo, vá a http://www.aptana.com/products/studio3
Atualização em março de 2017:
Hoje, fico longe dos editores acima. A melhor IDE seria a PyCharm, mesmo a Comunity Edition já tem muitas qualidades. Mas por ser em java, é pesada.
Na prática, adotei o Sublime Text 3. É leve e supre todas necessidades de um programador. Não tem todas as funcionalidades de uma IDE, mas se vocẽ conhece bem as bibliotecas/frameworks que trabalha e o seu código, é mais que suficiente. Se não, talvez seja melhor gastar um tempo estudando a documentação do framework ou biblioteca do que contar com a ajuda da IDE.
Dizem que você deve experimentar e escolher o que é melhor para você.
Eu fiz isso.
Dos pagos, gostei do WingIDE (versão trial). Rápido, confiável, multiplataforma.
O Komodo ficaria em segundo lugar, porque é mais lento.
Dos gratuitos, a maioria são instáveis ou lentos, ou tem usabilidade ruim. Tão ruim que às vezes preferia um editor de texto como o Notepad++ no windows ou o Gedit no linux.
Mas existe uma luz no fim do túnel. O Aptana 3 apresenta muitas qualidades sem o defeito de ser pago.
Portanto, minha resposta para a pergunta acima é: Aptana Studio 3.
Ele é baseado no pydev, só que é fácil de instalar.
Para baixá-lo, vá a http://www.aptana.com/products/studio3
Atualização em março de 2017:
Hoje, fico longe dos editores acima. A melhor IDE seria a PyCharm, mesmo a Comunity Edition já tem muitas qualidades. Mas por ser em java, é pesada.
Na prática, adotei o Sublime Text 3. É leve e supre todas necessidades de um programador. Não tem todas as funcionalidades de uma IDE, mas se vocẽ conhece bem as bibliotecas/frameworks que trabalha e o seu código, é mais que suficiente. Se não, talvez seja melhor gastar um tempo estudando a documentação do framework ou biblioteca do que contar com a ajuda da IDE.
Assinar:
Postagens (Atom)