Arrogância, hubris e simples orgulho

December 16th, 2008 § 8 comments

Uma “modinha” entre desenvolvedores Rails atualmente é transformar arrogância em uma virtude a ser cultivada. É fácil entender a razão. A briga pelo campo de linguagens dinâmicas, a necessidade de se provar viável e sustentável deixou suas marcas. O problema é entender o tipo de arrogância necessária, algo que passa batido não só no campo Rails como em essencialmente todas outras auto-denominadas comunidades.

Larry Wall, criador do Perl, dizia com razão que hubris, ao lado de preguiça e impaciência, são virtudes de todos bons programadores. Hubris é um termo originalmente grego que denotava orgulho excessivo, uma auto-confiança que desafiava os deuses, e que, muitas vezes, terminava com resultados trágicos para o indivíduo que exibia o comportamento–como Prometeu, por exemplo.

Wall transformou essa idéia negativa na positiva do zelo que um programador deve ter ao criar programas limpos e claros que causam orgulho e que levam outros programadores a perceberem as qualidades do código. Um virtude, nesse sentido, interessante.

Arrogância pode ser uma arma. Voltando ao Rails, David Heinemeier Hansson a utilizou com eficiência para criticar problemas válidos no campo da computação–alguns dos quais estavam impedindo o desenvolvimento e adoção de novos conceitos que hoje são bem mais comuns do que quando o Rails foi lançado.

Como em vários comunidades, muita gente começou a emular esse comportamento como se o mesmo fosse uma justificação própria. O que, ironicamente, leva a um círculo completo terminando no mesmo ponto em que os detratores do Rails estavam originalmente. Nada mais comum hoje ver um desenvolvedor Rails defendendo seu amado framework com unhas e dentes como se o mesmo fosse a única opção válida. Java & .NET anyone?

Não há coisa pior do que o tipo de arrogância que se acha sempre correta. A hubris sabe dizer “não sei, mas vou remediar isso”–seja aprendendo algo novo ou admitindo que outra pessoa pode ajudar. O resto é simples, e completamente banal, meninice.

Bons programadores exibem o tipo de atitude que Larry Wall definiu. Arrogância, pura e simples, leva a alguém que não aprende, que vai se defasando pouco a pouco até que tenha que partir para a tecnologia do jour mais uma vez para se manter relevantes.

Confesso que me cansei dessa primeira variedade de arrogantes. São esses os que não aprendem a lição de Santayana e daqui a vinte anos estarão no mesmo ponto em que estão hoje. Pater, dimitte illis, non enim sciunt quid faciunt.

Tagged

§ 8 Responses to Arrogância, hubris e simples orgulho"

  • Samir says:

    Ronaldo,

    Concordo com você. Não sei se minha resposta tem a haver com seu artigo, mas meu sentimento é que infelizmente na comunidade Rails tem surgido seres assim, quando não é assim, são os oportunistas (noob) que mandam mensagem de 5 a 5 minutos na lista [rails-br] querendo ajuda com coisas banais e sem falar também que o conteúdo dessa lista é ridículo.

    Toda aquela empolgação que eu tinha com Rails vem sumindo aos poucos, claro que não vou abandonar, pois é meu ganha pão e continuo trabalhando com Rails firme e forte…mas sempre estou olhando outras alternativas e tem me chamado muita atenção a comunidade Python/Django. Com certeza é meu próximo investimento.

    Abs,
    Samir

  • TaQ says:

    Ih, bicho, a história se repetindo novamente, tendo sempre como elemento novo alguma linguagem/framework/modinha nova e como elemento repetidor o de sempre: as pessoas.

    Alguns bons anos atrás eu até que esquentava mais a cabeça com esse tipo de coisa. Mas larguei mão. Não adianta. Você tem que abstrair – tá, sei que é difícil – muitos desses indivíduos para não deixar de utilizar alguma tecnologia boa que esses marmotas estejam utilizando, poluindo e envenando com esse tipo de atitude.

    Se o saldo entre o que tem de bom na tecnologia e nas pessoas “não-surtadinhas” e o que tem de ruim nos pamonhas for negativo, talvez seja até uma boa pensar em pular do barco para alguma coisa menos, digamos, mainstream. Mas não adianta – se a coisa nova for boa, você corre o sério risco de ver o barco anterior afundando e os cocozinhos flutuando para o lado do seu barco novo em folha, grudando no casco e posteriormente detonando tudo lá dentro. Comportamento padrão dos vírus em um hospedeiro novo.

    O duro é que muita gente só é assim atrás de um computador. Ao vivo viram as pessoas mais simpáticas do mundo e podem te dar até azia de tanto que tentam ser legais. Em vários anos conheci vários assim. Hoje em dia relego e evito, até onde dá, que é um ponto bem mais distante do que era alguns anos atrás.

    Tem uma piadinha num disco velho do Barnabé que diz que chegou um sujeito valentão numa cidadezinha do interior e, esfregando uma mão na outra, falou para um sujeito sentado no banquinho da praça:

    _Aê, me falaram que aqui nessa cidade só tem gente valentona, como é que é esse negócio ???

    O sujeito do banquinho responde, bem calmo:

    _Tem não sô … quando aparece um valente aqui nóis mata.

    Se com tecnologia conseguissemos fazer a mesma coisa, seria uma maravilha.

  • Spiceee says:

    Eu acho que um pouco de arrogância é necessária pra sobrevivência da plataforma, num instante com tantas opções e tanto naysaying de todos os lados.

    O que me irrita mesmo são os programadores que não sacam que a plataforma te leva até um certo ponto e depois é você com o seu código. É muito fácil pular de um framework ou linguagem pra outra porque você simplesmente não doou tempo o bastante para analisar um problema. E é o que mais acontece nesse momento e as pessoas envolvidas obviamente se cansam disso, de dismistificar as coisas, de todo o mimimi, e as idéias deturpardas de tanto naysaying vai pros ouvidos menos intruídos de um CEO ou de um CFO. E daí você corre o risco de ter que trabalhar com uma plataforma que vem de cima pra baixo, engessada, defassada e as coisas voltam a ser do jeito que eram há alguns anos.

    Arrogância, talvez mais no sentido de ser petulante, de ter o nariz enpinado e de não se deixar impressionar facilmente pelo velho conto da nova linguagem que resolve todos os problemas é saudável, principalmente quando já se tem alguns anos de estrada. Agora, arrogância como escudo impermeável, no sentido de tentar parecer que você é um melhor programador do realmente é, isso sim é intragável. Aquele medo que corroe, de ser considerado mal programador, de não ter um interpretador imbutido na córnea é a pior coisa que tem.

    No entanto, confesso que queria um exemplo prático do que você está falando, porque do jeito que você escreveu, talvez brilhantemente de propósito, o arrogante do qual você fala iria ler o post e se simpatizar completamente com o texto, hehehe. Existe esse programador super arrogante e que muda de linguagem o tempo todo? Não seria justamente o contrário? Algo como PHP é muito bom para mim, nada mais me interresa?

    Espero que não tenha perdido a referência dessa vez!

    -Fabio.

  • Ronaldo says:

    Samir, eu concordo com o sentimento, mas acho que você não deve deixar se levar pela comunidade. Eu, por exemplo, quase não freqüento mais os “redutos” Rails porque não vale a pena. Mas meu trabalho diário ainda é bom Rails, embora aqui na WebCo já começamos–por necessidade, não hype ou qualquer outro motivo similar–a trabalhar com Erlang (e estamos indo para algumas coisas em Python e Lua).

    Em última instância, é como o TaQ disse em um comentário posterior. A comunidade tende a ficar ruim com o tempo por pura saturação. Há sempre gente interessada, gente que ajuda e uma massa enorme de gente que quer só fazer flame e aproveitar do tempo dos outros.

    No mais, o lance é procurar trabalhar com gente que compartilha sua visão de trabalho (sempre prezando diferenças, é claro). Gente que não considera uma linguagem só ou uma idéia só.

    Frameworks sempre passam. Eu não uso nenhum framework que usava há 5 anos atrás. Linguagens, algumas. Mas o fixo, com certeza não.

    TaQ, excelente ponto no terceiro parágrafo. É uma medida simples e compreensiva de quando usar ou não usar alguma coisa até pela questão de dependência que você vai ter no desenvolvimento e maturidade de uma linguagem/framework.

    Concordo que as comunidades tendem a ser deteriorar por mera agregação–o Cory Doctorow já disse antes que todo ecossistema tem seus parasitas e não é uma linguagem “cool” que vai se livrar disso. É muito difícil, como você disse, eliminar os valentões.

    No mais, eu vou ficando com o pragmatismo real de escolher o que realmente é necessário do momento sem olhar hype e escolher não trabalhar com que não compartilha a mesma visão. Não sei se há outra saída além dessa. :)

    Spiceee, concordo com a necessidade da arrogância como sobrevivência. É por isso que eu acho que o DHH tinha toda razão ao mandar o pessoal do Java e .NET para a merda quando o Rails estava começando. Sem isso, não estaríamos no momento. Daí o seu ponto sobre CEOs, etc. Chega um ponto que fica difícil escolher além do ambiente de trabalho que você quer ter.

    A arrogância dogmática, por outro lado, é a que me tira do sério. Por isso eu fiz a distinção entre a hubris que o Larry Wall defende (e sendo ele cristão, dificilmente ele defenderia o orgulho puro, barato) e a arrogância de falar e escrever como se visões distintas fossem inerentemente piores.

    Sobre exemplo prático fica difícil de dar porque aí eu estaria realmente arrumando uma confusão das bravas. :) Mas realmente não há programador que muda o tempo todo. Existem as duas variedades: o de uma linguagem só, que é geralmente uma das old-school languages (PHP, Java, .NET, C) e que não muda em hipótese nenhuma e se recusa a considerar qualquer alternativa; e o programador da crista da onda, que usa a linguagem da hora como trampolim e quando começa a ver que os ventos estão mudando parte em outra direção e sempre usa o mesmo tipo de argumento para justificar porque essa nova linguagem é a melhor de todas. São os *-man, onde * pode substituir a linguagem que você quiser. :)

    Mas, numa hora dessas, quando nos encontramos em um evento qualquer, vamos tomar uma cerveja/refrigerantes e eu posso ser bem mais expícito.

    Sobre a referência, conversas cruzadas. Inclusive, peço desculpas pela forma que me expressei. :)

  • Samir says:

    Ronaldo,

    Sobre sua resposta, com certeza eu nao abandonaria Rails pois tenho empresa e como foi uma meta conquistada, não posso me dar o luxo de ficar arriscando qualquer coisa por ai, mesmo pq estou mto satisfeito com Rails.

    Também não ligo pra comunidade e toda essa baboseira que rola hj em dia, mas fica esse sentimento que o Rails está indo pro mesmo caminho do ASP, igual um post anterior citado por você.

    Mta gente despreparada usando a plataforma e o que me da mais desgosto, é ver esse povo utilizando Windows hehehe!!!!

    A minha citação de Python é justamente a sua justificativa, cada solução com seu problema, se eu julgo que Django é mais adequado para projeto X, vou usa-lo e fim de papo, caso contrário uso Rails sem problema algum!

    Abs,
    Samir

  • Ronaldo says:

    Com certeza. :) Para mim, a essência é essa mesmo: ferramentas certas para problemas certos.

    Sobre o caminho do ASP, eu acho que já chegou. O tanto de código ruim que está brotando por aí não tem base. Quando ao Windows, graças a Deus não preciso programar nisso há quase um ano. :)

  • Belo post Ronaldo,
    Conseguiu descrever muito bem de certa forma um dos aspecto ruins que eu venho observando nos últimos tempos em algumas pessoas da comunidade rails-br, a de que muitas estão se considerando “rockstars”. Auto-promoção barata e rápida? Alterego inflamado e carência afetiva pela falta de elogio? Sinceramente não sei qual o motivo.
    Acredito que o dia-a-dia dessas pessoas que se consideram “rockstars” de alguma coisa seja bem mais difícil do que o meu pois manter as aparências 24h não deve ser tarefa muito fácil. O lado negro desse tipo de comportamento é que essas pessoas estão se prejudicando e muito a si mesmas, pois estão correndo o tempo inteiro o sério risco de se fecharem a novas possibilidades e conhecimentos que poderiam ajudar a elas em diversas situações pois não terão humildade suficiente para admitirem que não sabem.
    Posso estar enganado e adotando o comportamento errado, mas prefiro continuar seguindo no caminho dos aprendizes apesar do bom tempo de estrada já.
    Python, Haskell, Erlang, enfim, são tantas as possibilidades boas disponíveis que eu não consigo enxergar qual o sentido em se correr o risco de se prender em somente uma linguagem pelo simples fato de manter as aparências.

  • Ronaldo, conseguiu com exatidão expor algo que está claro e tem bastante gente fingindo não ver e/ou não esta enxergando.

    A lista de de rails mais famosinha em pt-br da até nojo.

    Mas to tranquilo, logo logo surge uma nova modinha e essa galerinha “arrogante” vai se debandar do rails.

    PS: esses dias em minhas orações pedi a Deus que me desse novos sonhos – fazia tempo que não sonhava – Sonhei que tinha ganho um livro sobre Erlang…..

Leave a Reply

Your email address will not be published. Required fields are marked *

What's this?

You are currently reading Arrogância, hubris e simples orgulho at Superfície Reflexiva.

meta