Dificuldade Técnicas para Performance de SEO

18/8/2011 23:00:00 - Fábio Ferreira de Souza
Entenda o porquê nem as melhores empresas de SEO conseguem otimizar 100% seus proprios sites, quanto mais os sites dos clientes.

O ditado, “casa de ferro, espeto de pau”, é sempre uma realidade em muitas empresas, e pelo que pude notar não é diferente nas empresas de SEO no Brasil, pois usando algumas ferramentas online comecei pesquisei a Performance nos Sites das Empresas SEO e obtive resultados assustadores por se tratar de empresas de consultoria de SEO, ou seja que deveriam saber otimizar sites a começar pelos seus próprios.

A intenção inicial era saber o quanto meus sites precisariam melhorar em relação aos sites dos especialistas, e não apontar erros ou criticar alguém,  mas com os resultados que obtive pude refletir sobre algumas coisas, e principalmente que fazer SEO não é fácil, mesmo para empresas especializadas, pois tudo que é colocado em um site interfere, fazer layout legais e modernos, com Flash, jQuery, e vários “plug-ins” facilitadores, podem deixar o site lento, por outro lado, não ter nada chamativo no site não irá “cativar” o cliente e converter a visita em uma solicitação de orçamento.

Tudo que o servidor faz, gera algum consumo de processamento, disco ou memoria, tem quem diga que se um site está lento é só usar um servidor melhor, isso é mais caro e geralmente resolve, eu já penso o contrario, se algo está lento, é porque precisa ser otimizado e repensado os conceitos usados.

De vagando em minhas ideias creio que os principais problemas de performance para os sites de SEO são:

Linguagem de programação ASP ou PHP versus ASP.Net ou Java

PHPvsAspNetA maioria dos sites são desenvolvidos em ASP e PHP, mas estas linguagens são interpretadas em tempo de execução, logico que existe em alguns casos alguns cache pré-compilados, mas não da para comprar com o .Net e Java, que geram ao final binários (DLL) em linguagem de máquina 32bit, 64bit, ou linguagem intermediaria da plataforma (IL)

E mesmo usando ASP.Net ou Java, falta profundidade no conhecimento da linguagem, e para piorar hoje exista a maia de interface Rica (“RIA”) que foi apelidado de Web2, com muito AJAX, e JQuery por todo lado, usam-se muitos componentes para fazer algo que da forma tradicional (antiga) seria muito simples e rápido de se fazer, mas muitas das vezes estas interfaces só complicam o projeto e engessam impedindo o crescimento natural do sistema.

Veja algumas comparações:

Plug-ins Ads-On para Servidores

Usar URL Rewriter, para criar URL amigáveis em vez de url parametrizadas ex: site.com.br?pagina.phpid=123, se transformar em algo do tipo site.com.br?categoria/meu-produto; fazer isso é apenas pode ser legar, ajuda a indexar melhor, e é mais fácil de digitar os links, mas também é mais um programa que está consumindo recursos do servidor, e na minha opinião é quase que uma “gambiarra”, pois em alguns casos as tabelas de remapeamento desses IDs não enormes, e também a gestão disso geralmente é manual.

Por falta de conhecimento profundo, as pessoas vão instalando de tudo no servidor, e logico, tudo vai gastando memória, disco, processamento, abrindo brechas de invasão etc!
Se é uma máquina Windows, use apenas ASP.Net e SQL, para que instalar um PHP e MySQL, ou até mesmo todos os recursos do IIS ?
Se é uma máquina Linux, use só o PHP e MySQL, para que instalar Mono, Perl, e outras tranqueiras ?

Se o servidor não tem impressora porque deixar o serviço de impressão ligado ? o mesmo para o DHCP, e vários outros serviços que vem ligados e portas que abertas por padrão! O servidor tem que rodar leve, se está tendo muito processamento que seja por causa de milhares de acessos por segundo!
É precisa customizar e otimizar o servidor do boot aos aplicativos e não sair instalando qualquer coisa só porque o cliente quer, afinal quem é o técnico responsável, seria o cliente ?

Montar uma CDN é bem complexo

Montar um site com CDN para scripts e imagens é difícil pois envolve 2 áreas técnicas muito profunda: Programação e Plataforma, e geralmente que programa não conhece a Plataforma (servidor) a fundo, e quem conhecer a Plataforma a fundo não conhece muito do código, e as dificuldades não param por ai, tem ainda outras questões, como a administração do ambiente de testes local para desenvolvimento, a gerencia final dos arquivos e a replicação disto, o monitoramento e a administração.

Falta bons programadores

Infelizmente hoje a maioria dos que se dizem programadores, eram Web Design, ou seja desenhista, artistas, que aprenderam a criar alguns scripts por necessidades e foram se aprofundando, nada contra ser auto-didata, eu mesmo aprendo muito sozinho, mas eu que estudei 6 anos de engenharia, 4 de eletrônica, fiz cursos para Certificação Microsoft, e participo sempre de eventos pagos e gratuitos sei bem o que é “Aprender com a experiência dos outros”, e com isso cometo menos erros, gero um código mais robusto, recusável, pois faço tudo bem modelado, usando tudo o que sei prevendo modificações futuras, etc, não fico apenas apagando incêndio para comprimir necessidades específicas e únicas.

Outra coisa que percebo que hoje em dia falta “especialistas”, e os poucos bons programadores por causa dos prazos impostos pelo cliente não tem tempo de pensar, analisar, e acabam optando por usar códigos prontos, grátis ou pagos com a intenção de agilizar o desenvolvimento, e ai o programador se transformam em montadores de código, e ai surgem sistemas que mais parecem com “Frankenstein”, sites remendados, com plug-ins de tudo, e onde um interfere no funcionamento do outros, e tudo vira uma gambiarra só! Esta é a maldição do Open-Source!

Quem segue as normas W3C, e segue as “boas praticas” ?

Hoje é possível fazer até tabelas em CSS3, e funciona bem já nos principais Browsers, mas ainda tem muita gente criando tudo com tabelas, não que as tabelas não devam ser usadas.
Quem está aproveitando os recursos do HTML5 e já criando layouts mais profissionais com CSS3 e SVG, em vez de criar inúmeras imagens de borda, fundo, efeitos ?
A maioria dos sites tem inúmeros erros W3C, e consequentemente cada Browser irá decidir como interpretar esse código errado, ai já viu, em cada Browser ò site aparece de um jeito

Analisar um site com ferramentas de analise não deve ser feito apenas no final do projeto para depois corrigir, e sim durante todo o projeto, para que os projetos nascer direitos, e ter uma vida longa!

Como estão meus sites ?

Fique muito feliz em conseguir ter ótimos resultados na analise de performance dos meus sites.
Mas uma vez o ficou comprovado que o meu CMS Produto Certo SEO está pronto com o que há de melhor em tecnologia necessária para SEO!
E por outro lado conclui que quanto mais conteudo, mais recursos, scripts, etc.. mais dificil é de otimizar 100%

Veja os resultados:

E ai quem faz melhor? eheheh!
Ou alguém vai querer discutir conceitos !
Sem hipocrisia, por favor!