Apuntes de EventoSEO

Hoy he tenido la fortuna de asistir a EventoSEO en Barcelona. No era nada planeado (en realidad me he apuntado una hora antes que empezara el evento) pero ha merecido la pena.

A modo de recordatorio, dejo aquí mis anotaciones:

PERFORMANCE

  • Hoy en día Google está valorando muy positivamente el “performance” o rendimiento de las páginas web, es decir, la velocidad de carga.
  • Google tiene a disposición de los usuarios Google Page Speed para evaluar el performance.
  • La media de carga de las páginas en España según Google es de 1,5 segundos, sin imágenes. Lo cual quiere decir que deberíamos llegar a este valor, y nunca sobrepasar los 2,5 segundos.
  • Para mejorar el performance, se puede optar por usar CSS Sprites, así como por eliminar las imágenes e iconos irrelevantes.
  • Sabiendo que los navegadores pueden descargar hasta 3 imágenes en paralelo por dominio o sub-dominio, se puede mejorar el performance incluyendo las 3 primeras imágenes de la web en el sub-dominio 1, las siguientes 3 en el sub-dominio 2, y así sucesivamente.
  • Algo que puede mejorar mucho el performance, es eliminar los espacios, puntos y coma innecesarios, intros, etc. de nuestras hojas de estilo, así como eliminar todas las clases e identificadores no usados, además de usar GZIP para los CSS.
  • Finalmente, pero no menos importante, es la conectividad del servidor que aloja la web. El servidor tiene que tener suficientes recursos y una buena conexión para obtener un buen performance, en otro caso, puede impactar muy negativamente en el tiempo de carga, y por tanto, en la indexación.

PENALIZACIONES

  • El contenido duplicado causará una de las dos penalizaciones más importantes de Google. Se puede prevenir el contenido duplicado con “No index” o con “Canonical” (calculado por página, nunca de forma global) pero nunca usando ambos a la vez.

GEOLOCALIZACIÓN

  • Para webs en múltiples idiomas, se recomienda usar dominios geolocalizados. De esta manera, tendremos un dominio .es para España, otro .it para Italia, etcétera.
  • La redirección de la home al dominio geolocalizado deberá hacerse con la redirección pertinente. No es lo mismo usar una redirección 301, que una 302 o una 307. Con algo de polémica entre los ponentes, se recomienda usar esta última, para prevenir generar contenido duplicado con la 302.

NOTAS

  • Algunas utilidades para la monitorización web del performance, son YSlow y Page Speed de Google, aunque si no se dispone de una línea suficientemente buena (9 MegaBytes) solo nos quedará usar las herramientas para webmasters de Google como analizador del performance.
  • Otra utilidad para el código es Firebug.
  • Se recomienda que el 75% del código sea contenido, por un 25% de código utilizado para la navegación (el propio código fuente para la maquetación). Para reducir el tanto por ciento de código utilizado para navegación, se puede usar ajax, por ejemplo para incluir el menú en javascript (que no cuenta como código indexable).
  • Se aconseja, programar con CSS que lo primero que se muestre sean los H1, seguidos de H2, contenido y finalmente el código de navegación, por tema indexación.

Sin duda, habrá que estar atento a este tipo de eventos.

Cómo instalar Magento

MagentoÚltimamente me había interesado por cómo crear un carrito de la compra con Paypal, para vender productos a través de Internet. Sin embargo, después de mucho buscar, el servicio técnico de Paypal, muy amablemente me ha comentado que:

  1. Paypal no puede restringir las compras según la ubicación geográfica. Así pues, si vendes usando los botones de compra de Paypal, tienes que vender forzosamente a todo el mundo, y no únicamente a una región o país concreto.
  2. Paypal no puede calcular los costes de envío según la dirección de destino del cliente. Así pues, con Paypal tienes que definir los gastos de envío para un paquete que irá a tu misma ciudad, o a la otra punta del mundo.

Sin embargo, el servicio técnico de Paypal me ha recomendado mirar “carritos de terceros” que se integran con Paypal, para realizar este tipo de configuraciones. Desde Paypal, recomiendan los siguientes:

Carros de código fuente abierto

Carros alojados

Me he decidido a probar Magento, básicamente porqué era el que más me sonaba (por no decir que era el único que me sonaba, a parte de osCommerce).

¿Cómo instalar Magento?

  • Primero tenemos que registrarnos en la web de Magento y descargar la última versión.
  • Después, en mi caso, he modificado el archivo robots.txt de mi servidor para denegar el acceso a la carpeta que contendrá el e-commerce (no me interesa que Google y el resto de buscadores indexen este tipo de contenido), tal y como sigue:

User-agent: Googlebot
Disallow: /magento/

User-agent: *
Disallow: /magento/

  • Una vez subida la nueva versión del archivo robots.txt, he subido el directorio magento (que contiene los más de 9000 ficheros que componen la aplicación) a la raíz de mi servidor.
Siguiendo los pasos descritos aquí, he conseguido instalar y configurar Magento. Por si las moscas, describo los pasos a continuación, ya que algún paso extra he tenido que hacer:
  • En mi hosting, he creado una nueva base de datos MySQL que usará Magento. Esto dependerá del hosting, pero la mayoría de hostings ponen muchas facilidades para hacer este tipo de tareas.
  • Posteriormente, he cambiado los atributos de los siguientes archivos y directorios, a 777 (tranquilos, esto también lo comenta la documentación oficial de instalación de Magento). Esto se puede hacer con el comando “chmod” o haciendo click derecho sobre el arhivo o carpeta desde tu cliente FTP favorito:
    • Archivo magento/var/.htaccess
    • Directorios magento/app/etc y magento/var
    • Todos los directorios dentro de magento/media (no incluido)
  • Además de esto (y con tal de solucionar un “ERROR 500 – Internal Server Error”), he tenido que modificar el archivo .htaccess de la raíz de mi servidor (no el archivo .htaccess de magento), para permitir la escritura del directorio magento, añadiéndo la siguiente línea:

RewriteBase /magento/

  • Una vez cambiados los permisos y el archivo .htaccess de mi servidor, he entrado por navegador a la dirección http://miweb.com/magento/install.php, el cual ha mostrado un asistente para la configuración de Magento, que ha consistido en:
    • Aceptar las condiciones de uso
    • Seleccionar las opciones de ubicación, zona horaria, y moneda.
    • Indicar el nombre del host, base de datos y credenciales para la base de datos MySQL creada anteriormente para Magento. En este punto, además, se me han presentado diversas opciones para modificar el acceso web a Magento, así como para almacenar las opciones de sesión. NOTA: Al aceptar este punto, se ha pasado a crear la base de datos de Magento, lo cual en mi caso, ha tardado varios minutos.
    • Indicar los diversos datos del que será el administrador de Magento, así como los datos de inicio de sesión.
  • Con esto he conseguido tener Magento instalado en mi servidor.
En breve (espero) un nuevo post sobre los primeros pasos con la configuración de una tienda con Magento.

Planifica el apagado del PC

ShutdownRevisando los posts, me he encontrado con un porrón de entradas “borrador” que nunca he llegado a publicar, vete tú a saber por qué razón. Entre ellas, me he decidido a recuperar esta entrada que escribí a principios del 2009.

Ahí va:
Más de una vez he pensado en que sería una buena idea, planificar el antivirus en las máquinas de la oficina al finalizar la jornada laboral. De esta manera, nadie se podrá quejar de que su máquina le va lenta o que no puede trabajar cuando el antivirus está escaneando. El problema que tiene esto, es que no todos los antivirus vienen con la opción de apagar la máquina automáticamente al finalizar el escaneo, y la opción de dejar las máquinas encendidas las 24h del día ininterrumpidamente no es nada interesante si tenemos en cuenta cuestiones como el ahorro de energía.

Para ello, podemos hacer un script que apague la máquina, y otro script que se encargue de planificar la tarea a una determinada hora. Seguramente haya una mejor forma de hacerlo, pero la que explicaré a continuación funciona a la perfección.

/*Apagado.bat*/
REM Cerramos (-s) el PC con un retraso de 10 segundos (-t 10), forzando el cierre de aplicaciones sin previo aviso (-f) pero mostrando un comentario en pantalla (-c)

shutdown -s -t 10 -f -c “Apagado automático de equipo”

Este script apagado.bat, podríamos planificarlo manualmente desde:
{Inicio}->{Programas}->{Accesorios}->{Herramientas del sistema}->{Tareas programadas}
Agregar tarea programada
Seleccionamos el script anterior
Realizar esta tarea: diariamente
Seleccionamos la hora y si queremos lanzar la tarea únicamente los días laborables o todos los días de la semana
Finalmente, introducimos los credenciales con los que se ejecutará la tarea

Si tenemos muchos PCs, no nos interesará tener que ir PC a PC, manualmente, añadiendo esta planificación, así que para ello, tenemos este segundo script:

/* Planificador.bat */
C:\Windows\system32\schtasks.exe /create /RU DOMAIN\admin /RP AdminPass /SC daily /ST 21:30:00 /TN “Shutdown” /TR C:\apagado.bat

Este script se encargará de crear una tarea planificada llamada “Shutdown” que se ejecutará diariamente a las 21:30, con credenciales DOMAIN\admin, y que llamará al script anterior, apagado.bat.

Únicamente necesitaremos una herramienta de distribución de software para crear un paquete con los dos scripts, que se encargue de primero copiar apagado.bat a C:, y posteriormente ejecute planificador.bat.

Como nota final, dos apuntes: en planificador.bat, podemos añadir al principio una instrucción “copy apagado.bat C:\” para que sea este script el encargado de copiar el planificador.bat a C:\. Finalmente, decir que Windows Home no tiene la utilidad schtasks, así que no podremos usar el script planificador.bat en estos SO.

Fuentes:
http://support.microsoft.com/?kbid=814596
http://technet.microsoft.com/en-us/library/bb490996.aspx
http://wpkg.org/Schtasks_for_XP_Home

Flickr! Foto por cellanr

SEO: Títulos y descripciones

Siguiendo con todo el tema posicionamiento web en buscadores (SEO), me he encontrado con este manual en castellano, hecho por Google, que da consejos básicos pero importantes para un buen posicionamiento.

Particularmente, creo que lo que más determina el posicionamiento, es el Page Rank los enlaces a tu site, seguido del contenido de tu sitio web, y su frecuencia de actualización, y ya en última instancia y con una importancia mucho menor, la limpieza del código, el tipo de programación, los meta-tags, el nombre de las páginas web, y un largo etcétera.

De este último grupo de múltiples acciones a realizar para obtener poco beneficio a cambio, quizá haya dos puntos que puedan ser más importantes que el resto:

  • El tag “title” que contiene el título de la web.
  • El meta-tag “description” que contiene la descripción de la web (Google comenta que este parámetro NO interviene a la hora de posicionar la web, y que su único uso real es el de permitir al usuario conocer lo necesario como para decidir si tu web es o no lo que andaba buscando. Fuente aquí).

Google nos recomienda (y por tanto nos vemos casi obligados a obedecer) tener un título y una descripción diferentes para cada una de las páginas que conforman nuestro sitio web, y además, nos comenta la importancia de generar buenos títulos y descripciones.

Herramientas para webmasters de Google

Para ello, en las Herramientas para webmasters de Google, se nos ofrecen herramientas de diagnóstico que nos validan la conveniencia o no de nuestros títulos y descripciones.

Sin embargo, es muy posible que Google nos comente que no se pueden extraer datos de nuestro sitio web, para generar las sugerencias HTML de las Herramientas para webmasters. En este caso, posiblemente debamos añadir nuestro dominio tanto con el prefijo www. como sin él, en las Herramientas para webmasters, con tal de evaluar ambos sitios.

En mi caso, me he encontrado que el sitio indexado por Google era el dominio sin www. , cuando el que yo había añadido a las Herramientas para webmasters era precisamente, el dominio con www.

Una vez añadidos los dos dominios, he podido obtener las sugerencias de Google respecto a los títulos y descripciones de mi página web.

Títulos y descripciones: conclusión

Volviendo al tema de los títulos y las descripciones, Google nos recomienda:

  • Crear descripciones sin contenido duplicado, donde se presente la información de forma clara y separada. Las buenas descripciones han de ser completamente comprensibles para los usuarios, ya que es a éstos a quien van dirigidas, y sobre todo, descriptivas.
  • Crear títulos que también describan cada web. Por ejemplo, no es bueno incluir únicamente el nombre de un producto en el título, sino que se recomienda incluir qué hace ese producto, o cuales son las principales funcionalidades del mismo, del estilo “Nombre del producto: palabras clave“. Todo, en un máximo de unos 60 caracteres. Google lo comenta aquí, destacando que un buen título:
    • Aprovecha al máximo el espacio dado al título.
    • Describe de forma precisa la página y el producto tanto a los motores de búsqueda como a los usuarios.
    • Incluye palabras que los usuarios usarían para encontrar el producto.

Utiliza tu propio dominio con GMAIL

AwesomeEstos de Google son impresionantes.
Con su servicio GoogleApps puedes usar tu dominio en una cuenta de GMAIL, con tal de recibir y enviar emails usando GMAIL, pero mediante tu propia dirección de dominio. Es decir, puedes enviar y recibir mails desde mimail@midominio.com usando el interfaz de GMAIL y guardando y gestionando todos los correos desde ahí.

Únicamente necesitas adquirir un dominio, para poder gestionar el correo con GMAIL.

Lo que sí que es verdad, es que el proceso no me ha parecido muy trivial. En mi caso, yo ya tenía una dirección @gmail con actividad de varios meses, que me interesaba conservar en la nueva cuenta a crear. Los pasos que he seguido han sido:

  1. Desde Google Apps me he dado de alta en la prueba gratuita introducción de la edición estándar, añadiendo mi dominio .com.
  2. He creado un usuario con mi dirección de correo del estilo mail@midominio.com
  3. Desde el panel de control de Google Apps -> Configuración de correo electrónico, he seleccionado “Instrucciones de activación del correo electrónico” donde he podido seleccionar el proveedor de mi dominio (en este caso 1and1), desplegándose así las instrucciones para modificar el registro MX del dominio mediante el panel de control de mi dominio en la web de 1and1.es.
  4. Una vez modificado el registro MX, he comprobado con www.mxtoolbox.com la redirección. En teoría, pueden llegar a pasar entre 24 y 48 horas hasta que el cambio se propaga a los diversos servidores DNS de lo largo de la red. Por esta razón, he tenido que esperar prácticamente un día a que Google diese por buena la redirección MX.
  5. Una vez hecho, he podido ya entrar a la bandeja de entrada de mi dirección de correo con mi dominio (mimail@midominio.com).

Hasta aquí, lo necesario para configurar una cuenta de correo de un dominio propio, con Google, pero en mi caso he querido importar los mails de mi antiguo mail de gmail al nuevo.

  1. Para ello, únicamente he tenido que seleccionar, desde el panel del correo de la nueva cuenta (con una vista idéntica a GMAIL), en Configuración -> Cuentas -> Recibir mensajes de otras cuentas, para añadir la anterior cuenta de GMAIL.
  2. He recibido un correo en mi anterior cuenta de GMAIL para confirmar la sincronización, que he tenido que aceptar.

Con esto, cada cierto tiempo (no configurable), mi nueva cuenta se encarga de descargar el correo recibido en mi anterior cuenta. Esto además, asegura que en la primera comprobación se importen todos mis antiguos correos (tanto leídos como no leídos) a la nueva cuenta.

En definitiva, una forma muy barata (¿he dicho ya que es gratis?) y cómoda (una vez configurada) de contar con un correo, 100% de empresa, en la nube.

Por cierto, gracias por el chivatazo, K.

Flickr! Foto por Angel mat-eye