« back to publications

O Paradoxo Python

November 25th, 2004

Category: Especial Paul Graham

[
Este texto é uma tradução autorizada do texto The Python Paradox, de autoria de Paul Graham, e foi executada para publicação no site SouNerd.com como parte de uma nova série de artigos.
Quem realmente se interessa por programação ou por assuntos nerds em geral deveria ler os textos desse cara.

Original: Agosto de 2004
Tradução: Novembro de 2004

Texto original: The Python Paradox, autoria de Paul Graham.
Tradução por Börje Karlsson (borje dot karlsson at tellarin dot com).
Eventuais comentários entre colchetes são adições pelo tradutor, não existindo na versão original.
]

–––

Numa palestra recente, eu [Paul] disse algo que perturbou muitas pessoas: que poderia-se conseguir programadores mais espertos para trabalhar num projeto com Python do que se conseguiria para trabalhar num projeto com Java.

Eu não quis dizer com isso que programadores Java são burros. O que eu quis dizer é que programadores Python são espertos. Dá muito trabalho aprender uma nova linguagem de programação. E as pessoas não aprendem Python porque ela vá lhes garantir um trabalho; elas a aprendem pois genuinamente gostam de porgramar e não estão satisfeitas com as linguagens de programação que elas já conhecem.

Isso faz dessas pessoas exatamente o tipo de programadores que as empresas deveriam estar interessadas em contratar. Daí que, por falta de um nome melhor, eu vou chamar de “O Paradoxo Python”: se uma empresa escolhe escrever seu software numa linguagem comparativamente esotérica, ela vai ter a possibilidade de contratar programadores melhores, pois ela vai atrair somente aqueles que se interessaram/preocuparam o suficiente para aprender anteriormente a linguagem. E no caso dos programadores o paradoxo é ainda mais pronunciado: a linguagem a se aprender, se você quer conseguir um emprego, é a linguagem que as pessoas não apredem somente para conseguir um emprego.

Apenas poucas companhias tem sido espertas o suficiente para perceber isso até agora. Mas existe um tipo de seleção acontecendo nesse caso também: essas são exatamente as empresas para as quais os programadores gostariam mais de trabalhar. O Google, por exemplo. Quando eles fazem chamadas para empregos para programção em Java, eles também querem e pedem experiência em Python.

Um amigo meu que sabe quase todas as linguagens de programação amplamente usadas usa Python para a maioria dos seus projetos. Ele diz que a razão principal é que ele gosta do jeito que o código fonte fica [quão bonito ele fica]. Essa pode parecer uma razão frívola para se escolher uma linguagem de programação em relação a outra. Mas não é tão frívola quanto parece: quando você programa, você passa bem mais tempo lendo código do que escrevendo. Você move pedaços de código de um lado para o outro como um escultor faz com pedaços de argila. Então uma linguagem de programação que faça com que o código fique feio é enlouquecedora para um programador exigente, assim como argila cheia de protuberâncias seria para um escultor.

A mera menção de código fonte “feio”, muitas pessoas vão logo obviamente pensar em Perl. Mas a feiura superficial de Perl não é o tipo de feiura ao qual me refiro. Feiura de verdade não é a sintaxe áspera ao olhar(harsh-looking), mas sim ter que construir programas a partir dos conceitos errados. Perl pode parecer com um personagem de desenho animado xingando, mas existem casos onde Perl é até mesmo melhor que Python conceitualmente.

Até agora, pelo menos. Ambas as linguagem obviamente são alvos móveis. Mas elas compartilham, assim como com Ruby (e Icon, e Joy, e J, e Lisp, e Smalltalk), o fato que elas foram criadas por, e usadas por, pessoas realmente interessadas em programação. E estas linguagem são as que tendem a fazer o serviço melhor.

— Börje Karlsson (tellarin)
https://tellarin.com/borje
https://www.twitter.com/tellarin