Tableless.com.br


por Diego Eis 21 November 2005

Código novo, maneira velha

Você, camarada antenado, que está entrando ou que está já está algum tempo no mundo dos Web Standards. Que já se acostumou com código enxuto, limpo e legível, lembra-se ainda de como era seu código antigo? Lembra-se de quanto código você escrevia para fazer um simples parágrafo, ou um menu? Código desnecessário, atrapalhando a vida [...]

Você, camarada antenado, que está entrando ou que está já está algum tempo no mundo dos Web Standards. Que já se acostumou com código enxuto, limpo e legível, lembra-se ainda de como era seu código antigo? Lembra-se de quanto código você escrevia para fazer um simples parágrafo, ou um menu? Código desnecessário, atrapalhando a vida de quem tivesse o desprazer de trabalhar com ele.

Graças aos novos tempos, isso está mudando. Claro que não!
Padrões Web não é uma poção mágica que te dá poderes cósmicos e lhe permite num piscar de olhos digitar código legível e enxuto.
Esse o ponto. Seguir os Web Standards não quer dizer código limpo e legível. Separar a informação da formatação não é sinônimo de ter código perfeito e simples.

Vejo muitos trabalhos por aí, que quando abrimos o source, vem aquela avalanche de divs, spans e tudo que tem direito. Um código complicado, difícil de entender. Então, percebemos que o código mudou, mas a maneira de pensar ainda é a velha.

Uma das primeiras coisas que aprendi quando estava estudando os Padrões Web, é sobre uma regrinha muito falada entre os gringos, chama-se KISS. Kiss é o acrónimo de Keep It Simple Stupid.
É a regra de deixar o mais simples possível. Se está complicado, é sinal de que você deve estar fazendo algo errado.

Não estou dizendo que você não deve colocar um div a mais em seu código para resolver um certo problema. Todos os problemas que conheço até hoje no desenvolvimento costumeiro, se resolve com no máximo 2 divs aninhados em um mesmo objeto. Claro, a não ser que você queira fazer toda aquele malabarismo de cantos arredondados em um box que terá altura e largura variável. Aí não tem jeito mesmo.

Para aqueles desenvolvedores que pensavam que o diferencial iria acabar, porque todos iriam fazer códigos bonitos e perfeitos, e com isso a concorrência seria quase nula, estão perfeitamente enganados (isso dá outro artigo, sobre diferencial do desenvolvedor que segue os padrões).
Ainda, continuará existindo aqueles desenvolvedores que fazem código complicado, que são apenas simples desenvolvedores, nada mais.

Pensar novo, pense diferente. Não mude apenas para os Padrões, mude sua cabeça, sua maneira de desenvolver.
Pense simples, faça simples.

16 Opiniões Quero Opinar
  1. Muito bom. Concordo plenamente. É até normal no início, pra quem está começando a desenvolver, fazer código ainda complicado, mesmo webstandards. Foi assim comigo e até hoje vou tentando aprimorar os sites que construo. Agora depende de cada um fazer isso também. ;)

  2. Thalis Valle says:

    Firmeza Diego?
    Então, eu concordo o mais legal seria fazermos coisas simples. Mas nem sempre isso acontece, não por nossa única culpa, mas pela situação (profissionais, clientes, custos) etc. Penso eu: cada caso é um caso.
    E acho sim, que dependendo do caso, é possível fazer um layout mais "complicadinho" mas que dê aquela sensação "Oh… que legal"

    Grande Abraço

  3. Denis says:

    Realmente, Diego! Sou plenamente a favor do código ser o mais simples possível. O díficil, até agora, tem sido convencer clientes de que GIFs animados e botões em Flash com som são desnecessários… Muitos não gostam da simplicidade. É lamentávle…

    Abraço!

  4. Oi diego, eu comparo isso a transição, ou tentativa de transição, da programação procedural para a Orientada a Objetos. Percebo que: as pessoas que aprendem programar diretamente em OOP tem o raciocínio em OOP, e as que programaram eu estruturada tem o raciocínio da estruturada e, muito dificilmente, conseguem migrar ou entender facilmente um outro jeito. Faço esta analogia pois é meu caso!
    O importante é ter a consciência que tudo pode ser melhorado, otimizado, evoluído, pois como disse um cara muito mais antigo que qualquer linguagem de programação e/ou técnica: quando mais sei, mas sei, que nada sei. (ou mais ou menos isso).
    Abraços.

  5. Ciro says:

    Sou extremamente a favor da simplicidade. Você consegue comunicar mais facilmente, fazendo uma coisa mais direta, simples.
    Adorei o final: "Pense simples, faça simples."

  6. "Simple is everything that matters!"

  7. Rodrigo Lupatini says:

    Olá,
    Acho que deve ser a primeira vez que posto um comentário aqui. Mas leio sempre! ;)
    Bom, eu não conheço todos, mas já partindo de um "pré"-julgamento tenho a impressão de que a maioria aqui é de uma área mais técnica. E vou aqui expressar minha opinião e posso dizer também que opinião de alguns colegas de trabalho.

    Concordo que simplicidade no código é tudo. Mas o cliente quer vender! E quer vender pra ontem! Hoje ele quer estar com o estoque vazio e a lista de pedidos bombando na mesa! O que fazer?

    Abre-se um editor como o dreamweaver e deixa que ele se vire com o código. Trocentas linhas pra fazer uma janela pop-up abrir ao carregar a página. Não tem problema, leva menos de 1 minuto pra fazer a tal janelinha pop-up com a nova promoção do cliente. É isso que ele quer.

    Sei que existem casos e casos, mas só estou escrevendo este post pra além de colocar minha opinião, dizer que dentro de agências de publicidade as vezes o ritmo não nós permite ter um profissional pra "refinar" o código.

    E dizer também que sou um entusiasta do Web Standards, tendo ao máximo, sempre que posso, produzir os trabalhos nos padrões. Mas deixo aqui uma alfinetada, espero que compreendam e entendam como uma crítica construtiva. A alfinetada é que não só eu, mas várias pessoas que conheço se sentem um tanto quanto "intimidadas" por defensores da simplicidade. As vezes parece que nós somos os errados no mundo. Mas de boa, são meios diferentes e no final o que fale é a boa integração, assim como estou fazendo agora, me interagindo com vocês.

    Bom, acho que é isso. Espero com toda sinceridade não ter ofendido ninguém.

    Abraços e cotinuem assim.

  8. Thiago Melo says:

    Bom, primeiramente gostaria de parabenizar o Diego Eis pelo excelente artigo aqui postado e submeter a minha opinião:

    A simplicidade está na semântica! Não existem complicações no desenvolvimento de um código quando o mesmo está semânticamente correto. Uma listagem é uma listagem e não um parágrafo, por exemplo. O que parece óbvio muitas vezes é negligenciado. Sabemos ainda que é possível manipular quase todos os elementos de um código xHTML por CSS. Simples!

    Não basta tomar a pílula vermelha, é necessário realmente abrir a cabeça e estudar a finalidade de cada elemento do xHTML, assim quando começar a desenhar seu CSS saberá exatamente o que fazer com cada elemento.

    Um código simples é também um código com uma excelente identação, o que simplifica muito o trabalho na manutenção e visualização de um código-fonte.

  9. Caio Mancini says:

    Concordo com o Rodrigo!

    Esse mundo da informática é uma loucura… quem sabe fica humilhando quem não sabe direito. Não que o pessoal do site faça isto, mas conheço muito gente em fóruns que qdo veêm uma dúvida logo já postam uma chacota ou algo do tipo, "meu como tu é burro!". Isso não dá pra aturar mais. Os desenvolvedores também têm que ser semânticos. Ou só os sites que fazemos que devem conversar com tudo? Então paramos de nos relacionar e levaremos uma vida de Flash e uma pseudo RIA nos levará ao caos. Aí nem Google nem Orkut nem nada nos fará unidos novamente para a evoluação do conhecimento.

  10. Marco Catunda says:

    A minha única preocupação, em todos os sistemas que desenvolvi, é fazer tudo ser muito simples, para que sua manutenção seja barata.

    Existem varias soluções de engenharia de software para as camadas que ficam no servidor, mas para as camadas que do cliente não temos muitas soluções, a para piorar, as que existem, não são usadas.

    Eu não sou designer, mas sempre estive muito preocupado com a camada View (modelo MVC). Aatualmente, essa é a camada que me gera mais problemas.

    Pensei em adotar algumas práticas de engenharia de software nessa camada. A primeira coisa foi estudar a fundo os padrões e principalmente Javascript.

    Nesses estudos, me deparei com uma grande
    idéia de modular o CSS. http://www.contentwithstyle.co.uk/Articles/17/a-css-framework
    Acredito, que essa prática de modularização, ajuda muito a manutenção do sistema.

    Ao invés de ter um CSS para definir tudo, teremos um CSS para definir apenas o estilo das fontes. Outra para definir as cores, outro para definir o Layout, …

    Gostaria de saber o que vocês achão
    dessa idéia.

    Seria interessante termos um Pattern desse tipo de modularização. Apenas uma idéia.

  11. richard ghizzoni jr says:

    o rodrigo está 100% na minha opinião.
    assim como ele eu enfrento problema de manias e urgência de clientes, então como são eles que pagam minhas contas, eu sou obrigado a fazer gambiarras para que as firulas deles estejam presentes numa página ou sistema.
    as manias e urgências dos clientes tem influência direta na clareza e simplicidade dos meus códigos.
    mas sempre quando posso tento usar standars o máximo que eu posso.
    mas tem vezes que é inevitável.
    fica aí a opinião e relato de como são as coisas para mim.
    flws!

  12. Concordo em gênero,número e grau com as idéias aqui postadas, mais toda decisão deve possuir dois lados. Creio que se optamos por programar com base em webstandards então devemos ser o mais sucintos possível no desenvolvimento e aplicação das tags Xhtml e o mais semânticos possível ao aplicar o CSS, mesmo pq até nós mesmos podemos nos embananar em certa altura qdo de um código visualmente sujo.
    Gostei muito também do ponto de vista de nosso amigo Rodrigo Lupatini, que expos a questao do lado dos desenvolvedores que precisam de rendimento quase que instantaneo, mais creio tambem que isto nao é motivo para escrevermos "trash sources" com o auxilio cego de um editor WYSIWYG, tal como é o dreamweaver.Creio que temos que ter o controle do que criamos, e com certeza não teremos este controle deixando com que softwares escrevam e editem nosso source tal como eles mesmos desejem.

  13. Herbert Araujo says:

    olá a todos. Esse é meu primeiro post nesse site. Artigo excelente, porém ao terminar de ler senti que faltou alguma coisa! Todos aqui falaram de simplicidade mas afinal o que é simplicidade (retirando o óbvio é claro)? Por exemplo, como o Diego disse, ao abrir um fonte se depara com uma avalanche de div’s e span’s, então pergunto; simplicidade é escrever cada vez menos código para uma determinada tarefa? É identar o código? Tudo isso é válido, mas temos que discutir também o que deve ser feito para alcançar esse "pensar simples e fazer simples". As vezes eu olho para o meu código e me pergunto se ele está realmente simples, ou legível, ou simplesmente elegante a ponto de alguém ler e não dizer "que código tosco!". Isso mesmo o código estando nos padrões e funcionando bem! Gostaria que o autor do artigo falasse um pouco sobre isso. Mais uma vez, ótimo artigo!

  14. O Tabless é uma sintese dessa simplicidade, quando abro este link maravilhoso no meu Firefox sinto um prazer quase sexual :)
    "Tem até uma frase antiga que diz: Você sabia? que quando você abre uma torneira ela entra em um processo de orgasmo que só acaba quando você a fecha novamente?" Há e tem que ter a entonação de voz meio que… "humorista de FM".

  15. Muito bom o artigo, também sou defensor dessa teoria, faça as coisas simples e seja feliz :)

  16. Alex says:

    Pois é. Neurose é a chamada complicação das mentes cibernéticas. Não sejam neuróticos, sejam simples! Mais ilustrativo seria imaginarmos voltando à nossa forma primitiva de ser, com nossos longos e vividos 3 anos de vida. Como vc resolveria seu problema se tivesse 3 anos? Talvez este seja o ponto.

Deixe sua opinião

Mais populares

Categorias
Histórico
  • January 2009
  • December 2008
  • November 2008
  • October 2008
  • September 2008
  • August 2008
  • July 2008
  • June 2008
  • May 2008
  • April 2008
  • March 2008
  • February 2008
Recomendamos
Nossos serviços

Reviews de Extensions

Quem trabalha com Firefox sabe como as extensões podem mudar a vida de um desenvolvedor. Nós separamos algumas extensões e sugerimos para você. Confira.

Leia mais

Sobre Wordpress

O desenvolvimento com wordpress vem crescendo e sua plataforma está ficando mais robusta a cada dia. Por isso preparamos alguns artigos e tutoriais sobre desenvolvimento e implemetação de Wordpress em sites.

Leia mais

Sobre
SEO

Hoje não é sorte. Colocar um site em uma boa colocação no Google não é fácil e muitas vezes pode ser uma dor de cabeça sem tamanho. Por isso, manter um código organizado e simples é um bom começo. Separamos algumas dicas para que você consiga otimizar seu código e fazer algumas modificações nos seus sites para que eles não fiquem atrasados.

Leia mais

Tutoriais na Prática

Nós falamos muito sobre XHTML e CSS. Então, nada mais justo que ter um lugar onde você consiga aprender melhor as técnicas e metodologias de desenvolvimento com CSS e XHTML.

Leia mais

Tableless

2003 - 2009, tableless.com.br
Quase todos os direitos reservados.
Creative Commons License.