[Recife-pm] Digest Recife-pm, volume 12, assunto 1

breno breno em rio.pm.org
Terça Junho 8 16:20:09 PDT 2010


2010/6/8 Andre Carneiro <andregarciacarneiro em gmail.com>:
>
>
> Em 8 de junho de 2010 17:05, Cleber Morais <cmorais em gmail.com> escreveu:
>>
>> Hmmm
>>
>> Bem, uma das coisas que eu gosto em Perl é que existe inúmeras
>> maneiras de programar.
>> De certa forma, isso diz que cada programador de Perl segue uma forma
>> diferente de escrever
>> E literalmente pensar. Eu por exemplo, oriento meu códigos a sujeira
>> que funciona até
>> limpeza artística. Má prática de programação? Poderia ser, se os
>> códigos não funcionassem.
>> Para facilitar a manutenção, organizo depois que o sistema funciona.
>
> Que medo!
> Desde que você aplique isso para scripts descartáveis eu até posso
> concordar.

> <snip>

Acho que, com algumas ressalvas, os dois pontos de vista tem razão.

O André é um desenvolvedor profissional, e está certíssimo em exigir
qualidade de software. Recentemente as pessoas gostam de complementar
TIMTOWTDI com BCINABT (There Is More Than One Way To Do It, But
Consistency Is Not A Bad Thing - existe mais de uma maneira de fazer
as coisas, mas consistência não é algo ruim).

Dito isso, é importante lembrar que Perl não é apenas usado por
profissionais, ou em programas profissionais. É uma linguagem com
tanta pluralidade e flexibilidade que é fácil compará-la a um idioma
de fato, como português ou inglês. É uma linguagem muito agradável -
pra não dizer divertida - de aprender, e há muitos hobbyistas usando
Perl diariamente para resolver pequenos problemas ou engatinhar em
programação.

O problema é quando um "pet project" ou um código caseiro feito por
*diversão* é tratado como algo sério, usado em produção ou divulgado
para pessoas que não conhecem essa característica da linguagem. É como
escrever em português errado, cheio de gírias, rasuras, ou setinhas
que nem aquelas em prova de escola quando acaba o espaço da pergunta.
Pega muito mal pro (pseudo)desenvolvedor, para profissionais sérios e
pra própria linguagem.

Um caso típico é o do JAPH (http://en.wikipedia.org/wiki/JAPH),
pequenos códigos Perl na assinatura de emails e posts, imprimindo a
frase "Just another Perl hacker," de alguma forma "inteligente",
obscura ou alternativa. O Randal Schwartz, criador do JAPH, já se
disse arrependido. Afinal, embora seja *muito* divertido para quem
conhece a linguagem, talvez tenha sido o principal motivo pelo qual
Perl ganhou a má fama de linguagem feia, confusa e ilegível: "Perl é
isso? Que horror!!". Quando a resposta esperada era mais na linha "que
legal, não sabia que dava pra brincar com Perl desse jeito, achava q
era só pra código profissional. Vou aprender!".

Assim, é importante saber quais os objetivos do Bruno em aprender
Perl: desenvolvimento de software de verdade, com melhores práticas e
código elegante e moderno, ou brincar com pequenos programas que
*nunca* serão mais do que isso (ou, se forem, serão reescritos da
forma correta, facilitando legibilidade e escalabilidade), dobrando a
linguagem, brincando com possibilidades e sem medo de dar tiros no pé.
O importante é ser honesto consigo mesmo, pq fazer algo rapidinho ou
de qualquer jeito (funciona? tá bom!) e ter que manter depois é um
pesadelo. Na hora de fazer software, uma boa máxima é "programe como
se a próxima pessoa que for manter seu código seja um psicopata
homicida que saiba onde vc mora".

São caminhos totalmente diferentes. Mas vai de cada um :-)


[]s

-b


Mais detalhes sobre a lista de discussão Recife-pm