Boas práticas não é xiitismo

Geeks as vezes costumam ser arrogantes. Uma das razões é a falta de paciência de sempre ter que explicar coisas que eles consideram ser básicas demais para justificar suas próprias ações. Geeks odeiam justificar suas próprias ações. Porque eles já sabem mais do que o suficiente o que deve ser feito e como algo deve ser feito. Não estou questionando essa atitude aqui, eu estou falando isso para poder considerar o que eu chamo de efeito colateral da comunicação geek.

Tenho lido em dezenas de lugares pessoas associarem normas de boas práticas de desenvolvimento com xiitismo ou radicalismo. Basta você observar se essa pessoa começa a opor idéias e conceitos completamente distintos, como por exemplo qualidade de conteúdo x código limpo. São coisas de natureza distintas que não podem ser comparadas quando tratadas tecnicamente. Um site com ótimo conteúdo não impede que o mesmo seja tecnicamente bem construído, certo? Estamos falando aqui de bosas práticas de desenvolvimento e não marketing ou web writing. As maiores críticas que ouço em relação a implementação de um código padronizado (web standards, padronização DOM e afins) e outros detalhes considerados como “boas práticas” estão relacionadas a tempo (ou a perda dele na verdade), alegam também ser algo desnecessário e as vezes até pouco prático, e ainda alegam ser mais diíficil de implementar, mais caro e trabalhoso. Parte dessa compreensão errada dos opositores está relacionada a má comunicação para essas pessoas do que trata-se ser uma boa prática (o efeito colateral da comunicação geek).

Um discurso exacerbado de um geek é suficiente para fazer alguém acreditar que uma dica de desenvolvimento, como evitar style e javascript inline, seja vista como apocaliptica ou puro partidarismo xiita. E geeks tem esse poder de parecer assim. Principalmente se as pessoas que estão te questionando ou te ouvindo não “manjam” muito. Pessoas que pensam assim, precisam saber que tem todo o direito de abusar de tags apresentacionais, estilos inline e javascript no meio da página e outros delírios obsoletos que ela quiser. É um direito dela. Você só não será visto como um profissional maduro pelo restante da comunidade e entre aqueles que “entendem” o que estão fazendo, se é que isto te interessa de alguma forma. Infelizmente este discurso não vai afetar aquele profissional cujo único interesse seja pegar a grana no final do mês. Este discurso é portanto ineficiente. Sorry.

Boas práticas de desenvolvimento só são conhecidas (e praticadas) somente pelos excelentes profissionais. Existem ainda aqueles que até são bons profissionais e até sabem do que se trata, mas o âmbito de interesse pessoal deles possui outro foco e está em outro lugar e não em boas práticas de desenvolvimento. Coisas da vida, cada um com seus interesses. Um profissional não vai ser mandado embora só porque não observa um dica ou outra. Boas práticas no nosso contexto são aqueles pequenos detalhes (ou não tão pequenos assim) já canonizados entre a comunidade de desenvolvedores e que são verdadeiras preciosidades. E temos boas razões para que sejam assim. São detalhes de organização do código, estruturação, como manter o código inteligível e fácil de dar manutenção, separação completa em camadas, javascript não obstrusivo e centenas de dicas que caracteriza o resultado final de um projeto como maduro. O profissional amador é aquele que desconhece ou não aplica normas de boas práticas em nada do que faz. Seu objetivo final é a grana do cliente somente. Qualidade não é seu foco, organização não é uma qualidade dele e ter um site mais leve e fácil de carregar não são seus objetivos. Neste contexto boas práticas é igual a empecilho e aumento do custo.

Boas práticas devem ser transmitidas aos outros como uma demonstração de benefícios, eficiência e ganho. Que é o que na verdade justifica o termo “boas práticas”, caso contrário não seriam. E não como uma religião geek. São aqueles cuidados que tomamos pensando em cada possíbilidade no futuro, em hábitos que vão manter as coisas em ordem, inteligíveis e fáceis de manter. É disso que trata-se os padrões web como um todo. Um padrão não existe e se estabelece à toa simplesmente por que alguns geeks quiseram (como muitos pensam que são).

No final, um excelente profisisonal é aquele que procura o bom senso em tudo. Não é ser xiita e não é ser amador. Demonstrar a eficiência de um método é mais convincente do que muitas palavras de ordem ácidas emitidas por um geek. Encare aquelas dicas de não utilizar estilos inline ou utilizar sempre um doctype strict como hábitos de boas práticas e não uma religião. Se você ainda não entende muito bem do que trata essas “boas práticas”, o tempo vai te mostrar. Se você quiser.

  • Gustavo Straube

    Sei que não é esse o foco do post, mas relembrei de uma dúvida quando você falou em JavaScript não obstrusivo.

    Não tive tempo, ainda, para me aprofundar no uso de JavaScript. Ultimamente tenho usado jQuery, que, por sinal, tem facilitado muito a minha vida. Mas a questão é: tem como eu fazer uma aplicação com XMLHttpRequest e outras facilidades do JavaScript que funcione *perfeitamente* em condições adversas, como um browser sem suporte a JS, por exemplo.

    Tomo como exemplo o GMail. Esse possui versões que dependem da configuração do browser do usuário (com chat, sem chat, html básico). Seria essa a solução?

    Entendo que coisas simples, como algum efeito visual, não afetam, dependendo da implementação, a usabilidade, mas a falta de uma resposta HTTP pode atrapalhar totalmente a navegação, e até torná-la impossível.

  • http://fatorw.com/ Walmar Andrade

    A lista Blogosfera é um lugar onde quase sempre se lêem argumentos desse tipo… fazer a coisa certa lá é xiitismo… tsc tsc tsc

  • Maicon Junches

    Eu queria ter um cartão de crédito para criar uma continha no paypal e as vezes dar uma humilde contribuição por esses textos. Quem sabe um dia isso dê certo.

  • http://www.eugeniogrigolon.com/ Eugenio Grigolon

    Bom senso é tudo!

  • http://www.pinceladasdaweb.com.br Pedro Rogério

    Com certeza, tome a pílula vermela e acorde do MATRIX.

  • Walter

    Realmente bom senso é tudo, principalmente quando tratamos de resultado, pois, é inquestionável a boa prática do desenvolvimento, desde que não comprometa o projeto com minúcias demasiadas.

    Não podemos confundir xiitismo com profissionalismo, aqueles caras malas que defendem uma causa apenas por defender, ou porque um amigo defende, e quase sempre não tem argumentos convincentes, são muito mau vistos pelo mercado, pois atrapalham os resultados e quase sempre levam à mediocridade dos projetos.

    É a diferença do “espírito crítico” do “espírito de crítica”

  • http://www.thalisvalle.com Thalis Valle

    Vai com fé! rs

  • Raphael

    Concordo, se tratando de tecnicas para o melhor desenvolvimento. Quando falamos de apresentação, ai a história é outra.

  • Igor Escobar

    O Bom senso éo guia do sucesso para qualquer profissional. Não importa o ramo.

  • http://project47.viscountbox.com Carlos Eduardo

    Gostei do texto. Trata de assuntos relacinados ao que passamos no dia-a-dia, não somente 'teoria'. É disso que estamos precisando.

    Bom, falando do conteúdo, concordo com tudo que foi dito. Passei muito por isso quando tentei implantar os Web Standards no local onde eu fazia estágio, onde tive que 'quebrar' muias 'cabeças-dura', mostrando por que eles valiam a pena.

    Mas não com o jeito 'geek' de conversar, mas de uma forma calma e transparecendo as vantagens realmente. Acho que consegui, pois agora o pessoal de lá só fica xingando o método 'antigo' de fazer sites (leia-se: layouts construídos com tabelas, scripts e estilos inline, etc.).

  • Adriano

    Concordo, parabéns pelo artigo, muito interessante. Ótimo para abrir os olhos de alguns profissionais de viseira.

  • http://www.pauloraponi.net Paulo

    O primeiro paragrafo do seu texto é fantástico!

  • Douglas d'Aquin

    eu chamo de xiita aquele cara que é extremamente extremo somente por ser. Digamos, o tipo de cara que se opõe a tudo que não é do jeito dele, ou o tipo de cara que programa em notepad ao invés do dreamweaver só porque "tem total controle do código" (isto é baseado em fatos reais), quando na verdade é só de teimoso…

    Tipo, cada um usa o programa que prefere, lógico, mas a principal característica do xiita é ser contra algo bom, apenas por ser, geralmente utilizando argumentos furados e defendendo sua idéia até a morte.

    Fora isso, o cara não querer explicar, ser arrogante, ou usar um programa simplesmente porque ele prefere e usa ele melhor e pronto, simples. Acho isso normal e até saudável.