Portando para o Python 3

Em 2008 foi lançada a versão 3 da linguagem Python com diversas funcionalidades novas, mas parcialmente incompatível com os programas feitos para Python 2. Nestes 5 anos, a adoção ainda não é grande exatamente por causa deste fator e porque normalmente as pessoas não querem ter que aprender os detalhes que são necessários para essa mudança.

Hoje em dia existem diversas ferramentas que permitem desenvolver software que seja compatível com as duas versões, mas para isso é preciso entender o que mudou e adaptar. Este é será um guia rápido com dicas para migrar para Python 3 e aproveitar as melhorias que essa nova versão traz.

Parte I – Quando migrar

Por causa da incompatibilidade que existe, muitos desenvolvedores não podem começar a migração pois dependem de diversas bibliotecas que ainda não fizeram sua parte. Hoje em dia, grande parte das bibliotecas mais importantes da linguagem já são compatíveis com Python 3, o que torna bem mais plausível converter seu código.

Para computação númerica NumPy, SciPy, Matplotlib, IPython e Pandas são as ferramentas mais importantes e todas já foram portadas. Em desenvolvimento web, os frameworks mais importantes – Pyramid e Django – também funcionam perfeitamente em Python 3. Para criar GUI’s, PyQT4 e Tkinter podem ser utilizados sem problemas.

– O que falta então?

Normalmente são as pequenas bibliotecas que fazem trabalhos específicos e que já não são atualizadas há anos. Inclusive, este é um bom momento para se livrar delas. Procure no PyPI por algo semelhante que resolva seu problema e que seja compatível com Python 3.

– E se eu não quiser migrar?

Aproximadamente em 2017, o suporte para Python 2 vai terminar e este já não recebe novas funcionalidades desde 2010, com o lançamento do Python 2.7. Atualmente, só atualizações de segurança e outros bugs sérios são lançadas. Além disso, em breve o Python 3 será instalado por padrão na maioria das distribuições Linux, como já o é no Arch Linux e será no Ubuntu 13.04 ou 13.10.

– Mas mexer em código antigo que já funciona há anos é difícil…

Sim, isso é um grande impedimento. O ideal é começar a aprender com código novo e, quando surgir a oportunidade (ou necessidade) modificar os códigos antigos. A dica é, comece pelas suas bibliotecas para depois partir para as aplicações.

– Por onde eu começo?

O meu texto preferido sobre o tema é Dive into Python 3 que traz todos os detalhes sobre a linguagem e mostra o caso de migração de um software real. Aqui só faço uma introdução sobre o tema.

Independente de querer migrar ou não o seu código, é interessante conhecer o Python 3 e passar suportá-lo em código novo. Mesmo que você esteja escrevendo código com bibliotecas obsoletas, existem boas práticas que deixam permitem desenvolver já pensando no futuro.

Continuar lendo Portando para o Python 3

Novo golpe – Software OEM para roubar dados de cartão

As pessoas que não topam pirataria, gastam um bom dinheiro comprando software e geralmente estão atrás de soluções alternativas gratuitas, open source ou mais baratas, para os softwares que precisam usar.

Há soluções open source e gratuitas que atendem bem, mas há outros programas que não têm alternativas nem baratas.

Outro dia me deparei com a propaganda de um site chamado OEM Buzz que dizia vender licenças originais de softwares das mais diversas empresas com um preço muito mais baixo. Resolvi dar uma olhada. O site é extremamente bem-feito e dizia que vendia mais barato porque não enviava mídia (CD ou DVD), caixa e manuais em papel. Só a licença do software e o link para baixá-lo. Além disso, exibiam os logos de “certificados” da Microsoft, Adobe, Autodesk e cia.

Dizem por aí que quando a esmola é demais o pobre desconfia. Por isso já cheguei no site com um pé atrás. No site, programas como Flash CS5 estavam custando a metade do preço ou menos.

Resolvi colocar um software baratinho no carrinho de compras e ir para a página de pagamento, para ver se aceitavam PayPal. Se aceitassem ia comprar para testar.

Ao entrar na página de compras, primeiro não aceitavam Pay Pal. Segundo, o mais grave, a página não era HTTPS.

Fui verificar o Whois do site e vi que ele estava hospedado na Ucrânia e o dono é um Russo de São Petersburgo. Além disso, ao contrário do que o site dizia, ele não estava no ar há mais de cinco anos. Havia sido criado em janeiro de 2011.

Parei por aí e fui pesquisar se havia alguém falando mal ou bem desse site e descobri que agora existe uma febre de sites de “Software OEM” que existem pura e simplesmente para roubar dados de cartão de crédito dos incautos.

Quase todos esses usam o mesmo sistema e curiosamente usam sempre o mesmo telefone de atendimento ao cliente e suporte: +1 800 705 7180, apesar de estarem registrados em nome de pessoas diferentes.

Deixo abaixo alguns exemplos desses sites safados que roubam dados de cartão:

http://oembuzz.com/
http://buyoemsoftwareonline.com/
http://oemsoftworld.net/
http://softbuycatalog.com/
http://softdealonline.com/
http://softsupreme.com/
http://softwarecomputer.org/
http://software-customers.com/

Na dúvida, na hora de comprar um software comercial, a dica é comprá-lo diretamente do fabricante ou numa loja de varejo conhecida. Não existe mágica de preço… A menos que o software esteja numa dessas compras coletivas, não há como ele estar mais barato que no site do fabricante.

Zeletron Cidadania – Lembre-se dos cabras que ganharam seu voto

Você lembra em quem você votou nas últimas eleições? Do presidente ao deputado estadual? Se você respondeu não provavelmente não tem muito direito de reclamar das roubalheiras e safadezas dos políticos.

Estamos divulgando o Zeletron Colinha

if ($voto ~= /^13.+/) { print "Brasil foi para o buraco dilma vez" }

Imprima, dê cópia para seus parentes e guarde na carteira. Em 2014 você poderá avaliar o que foi feito do seu voto.

Dicas para acompanhar as eleições:

Google lança suporte a scripts em planilhas

Uma funcionalidade interessante que o Google anunciou ontem foi a capacidade de ter scripts nas planilhas do Google Docs

Os scripts permitem várias coisas legais:

  • Criar funções para suas planilhas como a Microsoft faz com o VBA para Excel.
  • Unir funcionalidades de vários produtos Google, mandar e-mail de uma lista de endereços contida numa planilha de acordo com uma data do Google Calendar.
  • Customizar funções de outros produtos Google – adicionando botões, processando e-mails, etc.

Acho que ainda hoje o blog TopExcel (antigo Excelgredo) irá fazer um comparativo entre o que o Google oferece e o que se pode fazer na Plataforma Office da Microsoft. No entanto o anúncio do Google é bastante interessante porque abre portas para inúmeras aplicações.

Alguns exemplos você pode encontrar em: http://www.google.com/google-d-s/scripts/templates.html

Uma documentação completa em: http://www.google.com/google-d-s/scripts/scripts.html

Crosspost: BugSa