14/06/2018

O paradoxo do Python


(Obs.: Este texto é bem antigo, mas continua interessante; em relação ao Python ou a qualquer outra linguagem que focada no desenvolvedor.)


O paradoxo do Python (por Paul Graham)


http://www.paulgraham.com/pypar.html


Agosto de 2004

Em uma palestra recente, eu disse algo que aborreceu muitas pessoas:
Que você consegue programadores melhores para programar em um projeto em Python do que para trabalhar em um projeto em Java.

Eu não quis dizer com isso que os programadores de Java
não são bons. Eu quis dizer que os programadores de Python são bons. É muito trabalhoso aprender uma nova linguagem de programação. As pessoas não aprendem Python para conseguir um emprego, elas aprendem porque realmente gostam de programar e não estão satisfeitas com as linguagens que já conhecem.

Isso os torna exatamente o tipo de programadores que as empresas deveriam querer contratar. Daí, o que vou chamar, por falta de um nome melhor, de paradoxo do Python: Se uma empresa escolhe escrever seu software em uma linguagem relativamente esotérica, ela poderá contratar programadores melhores, porque atrairá apenas aqueles realmente interessados em dominar tal linguagem. Para os programadores o paradoxo é ainda mais claro: A linguagem que devem aprender, se quiserem conseguir um bom emprego, é a que as pessoas não aprendem apenas para conseguir um emprego.

Por enquanto, apenas algumas empresas foram inteligentes o suficiente para perceber isso, e isso acaba sendo, também, um tipo de seleção: Essas são exatamente as empresas nas quais os programadores mais gostariam de trabalhar. Google, por exemplo, que quando anuncia vagas para programação em Java, pede também experiência em Python.

Um amigo meu, que conhece quase todas as linguagens amplamente utilizadas, usa o Python para a maioria de seus projetos. Ele diz que o principal motivo é gosta
r da aparência do código-fonte. Isso pode parecer uma razão fútil para escolher uma linguagem em detrimento de outra, mas não é tão fútil quanto parece. Ao programar, você gasta mais tempo lendo código do que escrevendo. Você manipula e encaixa blocos de código-fonte, da mesma forma que um escultor lida com punhados de barro. Assim, uma linguagem que torna o código-fonte feio pode ser tão irritante para um programador exigente, quanto um barro cheio de grumos seria para um escultor.

Ao mencionar um código-fonte feio, algumas pessoas vão lembrar de Perl. Mas a feiura superficial do Perl não é o tipo a que me refiro. Feiura de verdade não é ter uma sintaxe de aparência desagradável, mas sim, levar a que construir programas com conceitos errados. Perl pode parecer um xingamento de desenho animado, mas há casos em que seus conceitos superam o Python.

Até agora, de qualquer
forma, é claro que ambas as linguagens são tiros no escuro, mas, compartilham com Ruby (e Icon, e Joy, e J, e Lisp, e Smalltalk) o fato de serem criadas e usadas por pessoas que realmente se importam com programação. E estes tendem a ser os que o fazem melhor.


Nenhum comentário:

Postar um comentário