Hoje, mais do que no passado, o AJAX (Asynchronous JavaScript and XML) parece estar em todo o lado, e os sites dinâmicos criados utilizando essa tecnologia são mais que muitos.
Há alguns dias, o Google disponibilizou o seu Google Web Toolkit, que permite criar aplicações Java, que são depois convertidas para aplicações HTML+Javascript.
O próprio Google utiliza AJAX em várias das suas ferramentas, como seja o Gmail, ou oGoogle Maps. Mas será que o AJAX é o resultado de todas as nossas preces?
E o Flash, que a macromédia tem desenvolvido ao longo de anos, e que hoje é uma ferramenta de desenvolvimento aplicacional completa, utilizada para fazer desde menus animados até jogos ou video players. É esta a solução para as nossas preces?
Bem, mesmo normalmente não utilizando Flash, e raramente recorrendo ao Javascript mais do que o estritamente necessário, concordo que são ferramentas uteis, e que permitem muitas coisas que seria bastante dificeis (ou mesmo impossiveis de conseguir) de outra forma.
Mas, peço desculpa, ainda não aderi à febre. Nem à do Flash, que com a novidade AJAX está a passar, nem à do AJAX. Por duas razões, e que se aplicam a ambas as situações:
- Não são correctamente indexados;
- Não são completamente compatíveis.
Não são completamente indexados
Hoje, ao contrário do que acontecia há algum tempo atrás, um flash cuidadosamente criado com esse objectivo em mente já é razoávelmente indexado. Mas apenas se for criado com esse objectivo em mente.
Mas não é isso que acontece normalmente. A maioria dos flahs que vi até hoje não contém directamente os conteúdos, ou quando os contém não estão em texto, mas em imagens, aparentemente para ficarem sempre com a aparência correcta.
Mas mesmo quando os texto estão dentro do flash e são indexáveis, não é possivel os motores de pesquisa enviarem os utilizadores directamente para a página onde se encontram os conteúdos que o utilizador procura.
Problemas idênticos se colocam quando se utiliza JavaScript para criar conteúdos, para os colocar nas páginas, independentemente de esses conteúdos fazerem inicialmente parte do JavaScript de alguma forma ou serem pedidos ao servidor pelo javascript (Sendo que neste caso nenhum motor de pesquisa irá aceder a esses conteúdos, uma vez que não executam o javascript).
Estas situações tornam-se mais graves quando o Javascript ou o Flash é utilizado para menus. Neste caso além de os conteúdos do Flash, ou criados pelo Javascript não serem indexados, também não o são as páginas que são pedidas quando os utilizadores clicam no menu.
Compatibilidade
Vários browsers não têm pluggin de flash, e alguns não executam javascript, pelo que sites que dependam muito dessas ferramentas não serão correctamente vistos nesses browsers.
Dos meus três browsers (Galeon, Mozilla Firefox e Internet Explorer), durante muito tempo apenas um tinha o pluggin de Flash instalado, e utilizadores invisuais, por exemplo, não têm forma de saber onde clicar num menu em flash para acederem a uma página que procuram.
Imagens, mesmo com MAP, isto é, com vários links na mesma imagem, podem ter titles por link, o que permite a qualquer utilizador saber antecipandamente alguma informação acerca do local para onde será enviado quando clicar no local onde tem o cursor. Mas o flash não.
Browsers apenas de texto (muitas vezes os browsers especiais são baseados nessas ferramentas) descrevem as imagens de forma alternativa (utilizando os campos alt e title), mas não têm forma de descrever um flash, e muitos deles também não executam javascript, pois uma grande parte da DOM não se lhes aplicaria de qualquer das formas.
Soluções
Claro que existem soluções de compromisso, como seja, ter um segundo menu, que será mostrado quando o utilizador não tiver flash, ou que esteja noutra parte da página, e que constituia uma alternativa ao menu em Flash ou Javascript, e que os motores de pesquisa também consigam utilizar.
Outra solução será ter uma versão alternativa do site para utilizadores que não têm flash ou javascript, mas isso significa também que os motores de pesquisa irão indexar essa versão e não a primeira, o que pode fazer com que a maioria dos utilizadores passe a utilizar a versão HTML, mesmo tendo flash e javascript.
Mas na verdade, eu utilizaria Flash e Javascript apenas no estritamente necessário. AJAX e outras formas de JavaScript que façam pedidos remotos de conteúdos, no entanto, utilizaria apenas em backoffices e partes de sites que não pretenda que sejam indexados.