martes, 8 de enero de 2008

Mejora tu sitio utilizando sólo HTML (parte 1)


El HTML, aunque muchas veces no le tenemos demasiado afecto, es una herramienta poderosa, que cuando bien entendida nos permite obtener grandes mejoras en nuestro sitio con cambios sutiles. Desde mejorar nuestro posicionamiento hasta velocidad de carga del sitio, un pequeño cambio puede hacer una gran diferencia.

En esta primer entrega hablaré sobre posicionamiento, dejando la velocidad de carga para mañana.


Como ya he mencionado en otra oportunidad, HTML tiene varios problemas, que a todo aquel que haya hecho algún sitio web, alguna vez le habrá tocado sufrir, pero una vez que lo peor ha pasado, que nuestro sitio está visualmente bien y se renderiza correctamente en varios navegadores, es donde uno tiene la posibilidad de apreciar las sutilezas del mismo, de utilizar muy pequeños y simples cambios que pueden crear diferencias notorias.

Voy a hablar aquí sobre varias cosas que, aunque sencillas, muchísimos sitios no hacen, ya sea por ignorancia, o porque utilizan editores visuales que le restan importancia a los mismos.

En primer lugar quiero hablar sobre posicionamiento. En un sitio web, existen muchas cosas que un robot de un buscador no puede apreciar. Recordemos que estos robots no ven nuestros videos, ni nuestras fotos, ni nuestras aplicaciones Java, ni los juegos Flash. Ven sólo texto. Esto implica que no pueden ver ninguno de los elementos vistosos en los que solemos hacer hincapié para atraer a nuestros usuarios. Es así que podemos tener sitios muy interesantes para los usuarios, pero poco significativos para un robot, lo que conlleva que estemos mal posicionados y no podamos llegar a nuestros potenciales clientes.

El desarrollo de un sitio web no es, por tanto, sólo hacerlo atractivo y significativo para el usuario, sino también para el robot, y esto es algo que muchos parecen no recordar, en especial aquellos que utilizando herramientas gráficas han olvidado que el HTML no es otra cosa que texto.

Invito a todos los poseedores de un sitio web a abrir links o lynx (navegadores de consola para Linux, existen ports para Windows si los buscan) y visualizar su sitio en el mismo. Estos navegadores no saben nada de CSS, ni de JS, ni de imágenes, ni de Flash, ni de colores. Es simplemente texto. Esto es lo más parecido que he encontrado a como un robot ve su sitio. quisiera que lo mirasen críticamente y me digan si realmente ven en el mismo información relevante sobre aquello en lo que buscan posicionarse.

Ahora que pueden ver eso, entenderán que es necesario, de alguna forma, "contarle" al robot de que tratan esas cosas que él no puede ver, igual que a un no vidente, y HTML demuestra su versatilidad para esto.

El atributo ALT de las imágenes, muchas veces excluido, tiene la mera finalidad de ser un texto a msotrarse si la imágen por algún motivo no se puede visualizar. ¿Acaso lynx puede visualizar imágenes? ¿un robot? ¿un lector para personas no videntes? Todos estos utilizan este texto y les resulta de suma utilidad.

La inclusión de un ALT no sólo permite mejorar la usabilidad, sino que en forma totalmente gratuita, nos permite mejorar la densidad de keywords que poseemos en nuestro sitio, y así rankear mejor. Además, la imágen en cuestión, será tenida más en cuenta para las busquedas de imágenes, posicionandonos en ese tipo de busquedas.

Del mismo que se usa alt en imágenes, existe el atributo title, que permite definir un texto para mostrar al pasar el mouse por encima de un elemento HTML, pero con una salvedad, alt es sólo para imágenes, title puede ser utilziado en CUALQUIER elemento HTML. Una forma sencillísima y sumamente eficaz de mejorar la densidad de keywords.

A saber, no es bueno abusarse. Poner a cada tag el atributo title es tan malo como tener un párrafo con display: hidden repitiendo 5000 veces una palabra. Los robots no son idiotas. Como todo, es una herramienta muy buena que debe ser usada, pero en su justa medida. Recomiendo sólo utilizarlo en lugares donde aporte algo al usuario, imágenes, objects, etc. Aquellas cosas que no son texto, o en casos excepcionales, que realmente lo merecen (una tabla muy importante con datos).

Mañana continuaré hablando sobre como se puede modificar el HTML para, sin modificar la apariencia del sitio, hacerlo cargar más rápido y ser más dinámico para el usuario.