Google nos ayudará a comprender cómo procesa nuestros sitios web a la hora de indexarlos

entendiendo una página web

Quienes disponemos de sitios web en Internet, uno de los aspectos en los que hemos prestado más atención es en el ofrecimiento de una estética visual atractiva y dinámica, algo que lo habremos logrado mediante el uso de JavaScript y CSS. Quizás no seamos lo suficientemente conscientes de las dificultades que tienen los rastreadores de contenidos a la hora de procesar nuestros sitios web debido al uso de JavaScript, de manera que no procesarán igualmente nuestros sitios web dichos rastreadores a cómo lo procesan los navegadores web modernos que usamos los usuarios.

En este sentido, desde el blog para Webmasters de Google nos dan una serie de pautas que deberemos tener en cuenta para que tanto Googlebot como para el resto de rastreadores de contenidos puedan indexar los contenidos de nuestros espacios web, indicándonos además de que en los últimos meses, el sistema de indexado de Google ha estado procesando un número sustancial de página web de la forma más parecida a cómo lo harí­a el navegador web de cualquier usuario que lo tenga con JavaScript activado.

Entre las pautas tenemos la recomendación de que permitamos a Googlebot obtener datos en JavaScript y CSS, facilitando mejor el indexado de nuestros contenidos. También tenemos la recomendación de revisar el servidor web de nuestro sitio para que pueda gestionar las solicitudes de rastreo de recursos. La degradación elegante es otro elemento que nos ponen en consideración para que los usuarios puedan disfrutar de nuestros contenidos, aunque sus navegadores no dispongan de implementaciones de JavaScript compatibles, o incluso si lo tienen inhabilitado o desactivado. También es ideal para los rastreadores de contenidos que no pueden ejecutar JavaScript.

También nos señalan que la ejecución de JavaScript puede ser un proceso opaco o complejo para los sistemas, en cuyo caso no podrán procesar nuestros sitios web por completo ni de la forma adecuada. Además, algunos recursos JavaScript eliminan contenido en los sitios web en lugar de añadirlo, imposibilitando su indexado.

En definitiva, que aunque nosotros veamos páginas web elegantes y dinámicas, a los ojos de los rastreadores de contenidos, como Googlebot, no lo serán, suponiendo dificultades para indexar todos sus contenidos. En este sentido, desde la propia publicación señalan que están trabajando en una herramienta que ayudará a los responsables de sitios web a comprender mejor como procesa Google sus propios sitios web, teniendo la intención de ponerla a disposición dentro de unos dí­as dentro de las Herramientas para webmasters.

Imagen de Shuttherstock

Los lenguajes de programación más populares según Github y Stackoverflow

En langpop.corger.nl podemos ver un gráfico bastante interesante obtenido a partir de los datos que genera la API de GitHub y el proyecto de preguntas y respuestas de Stackoverflow.

Cada vez que se detecta una nueva alteración en alguna de las lineas de los proyectos de Github, se almacena y se cuenta para que se sepa qué lenguaje de programación es el más alterado, el más popular dentro del gigante del código. Los resultados del eje Y (vertical) se basan en el número de veces que se aplica una etiqueta para un lenguaje determinado en Stackoverflow, siempre con datos que se actualizan cada cuatro horas con el fin de mantenerlo actualizado.

El porcentaje que se muestra al pulsar en un lenguaje del cuadro derecho es la media de la relación de GitHub y stackoverflow, las dos fuentes de información del proyecto.

Y aquí­ tenemos la información de Github ordenada según el número de lineas alteradas, con Javascript a la cabeza, gracias a un diagrama realizado con Wikibrains:

¿Esperabais datos diferentes?, ¿os sorprende ver a Java, C#, Javascript y PHP a la cabeza?.

Google mejora el rendimiento de Chrome mediante la compilación JavaScript en segundo plano

mandreel

Uno de los aspectos que más podemos apreciar de Google Chrome es su rapidez, y en este sentido, Google ha publicado a través del blog de Chromium una modificación introducida en la última versión beta de Chrome para aumentar su rendimiento. Esta modificación ha consistido en la activación de la compilación concurrente en segundo plano para las grandes piezas de código JavaScript que puedan afectar al rendimiento de la aplicación, liberando al hilo principal de su compilación.

Google indica que para que Chrome sea lo más rápido posible, su motor JavaScript, el V8, ayuda con este objetivo mediante la compilación de JavaScript a código máquina nativo para la ejecución de scripts de forma más rápida, compilando históricamente JavaScript en el hilo principal, donde podrí­a interferir con el rendimiento de la aplicación en JavaScript. Mediante la activación de las compilaciones concurrentes, descarga una gran parte de la fase de compilación optimizada a un hilo en segundo plano. De esta manera, las aplicaciones JavaScript siguen funcionando y su rendimiento es mejorado.

El anuncio sigue profundizando en el funcionamiento de esta modificación en el motor JavaScript V8, donde indica que para reducir el tiempo total de compilación, V8 aplaza la compilación de funciones hasta justo antes de se ejecuten por primera vez. Esta fase de compilación es rápida pero no se centra en la compilación, sólo en que se haga rápidamente. Aquellas piezas de código que se ejecutan muy a menudo son compiladas por una segunda vez por un compilador optimizado especializado, usando técnicas avanzadas de optimización, aunque lleve algo más de tiempo que la primera fase, ofreciendo así­ el código mucho más rápido.

Además ofrece gráficas donde muestran el rendimiento del motor V8 tanto sin las compilaciones concurrentes como con ellas en la ejecución de Mandreel, perteneciente al conjunto de herramientas de prueba de Octane, de Google. El anuncio finaliza en el que la compilación concurrente de código es un paso más hacia la reducción de latencia en Chrome y forma parte de los esfuerzos constantes para ofrecer aplicaciones web más fluidas y suaves.

layoutit, para crear webs adaptables arrastrando y soltando elementos

layoutit

Una página web con diseño responsivo (horrible traducción del inglés responsive design) es aquélla que se adapta a cualquier pantalla alterando su estructura en función del tamaño del dispositivo que la esté visualizando. En español se está usando mucho el término «web responsiva», aunque es más correcto hablar de diseño web adaptable o adaptativo.

Para crear una web con estas caracterí­sticas tenemos que tener bastantes conocimientos de las últimas tendencias en CSS, javascript y HTML, aunque proyectos como layoutit.com nos pueden ayudar a comenzar a crear este tipo de sitios sin necesidad de tener excesivos conocimientos de programación.

Se trata de una plataforma en la que podemos definir la estructura de nuestra página incluyendo áreas con diferentes columnas y elementos (menús, textos, paginación, etc.) obteniendo como resultado el código en HTML5 y CSS3 para que podamos editarlo posteriormente (añadiendo php en la parte del contenido para hacerlo dinámico, por ejemplo).

Es un constructor de plantillas creado para Bootstrap (colección de herramientas opensource para crear sitios y aplicaciones web), no es un constructor de sitios web y sí­ una herramienta que nos ayuda a no empezar desde cero, creada para ahorrar tiempo a los programadores, no para terminar con una web 100% lista para ser divulgada.

En hongkiat.com tenemos un ejemplo de como se ha usado esta plataforma para crear su propia página de inicio, ejemplo que demuestra lo realmente sencillo que es su uso.

Cursos gratis para aprender HTML5

Ya os hemos comentado en algunas ocasiones varios sitios en los que podéis realizar clases para aprender HTML5, os dejamos ahora con una recopilación de dichos enlaces, esperando que nos ayudéis a ampliar la lista en los comentarios.

Cursos de HTML5 en Udemy: 3 cursos que imparten en Udemy, sin necesidad de conocimientos previos, incluyendo uno en español para entender las bases.

curso html5

Curso en Codeavengers: Ideal para aprender tanto HTML5 como CSS3 y Javascript. Existen varios juegos que nos ayudan a mantenernos motivados, subiendo de nivel y ganando premios.

Curso de HTML5 de Microsoft: Un curso completo, en español, con 6 lecciones para aprender HTML5.

Programando.la: Con ví­deos en español sobre el tema.

Edutin: Lista de ví­deos en español para aprender las bases de HTML5.

mozilla.org: Documentación extensa en el sitio web de Mozilla.

Podéis ver algunas demostraciones de lo que se puede hacer usando HTML5 en chromeexperiments.com o en esta recopilación de experimentos que publicaron en spyrestudios.com

Si buscáis otros lenguajes de programación, recordad el artí­culo ¿Qué lenguaje de programación debo aprender y dónde puedo hacerlo gratis? que publicó Juan David hace unos meses.

BrowserSwarm, nueva herramienta de Microsoft para el análisis de librerí­as JavaScript

BrowserSwarm

Microsoft ha desarrollado, junto con appendTo y Sauce Labs, BrowserSwarm, la nueva herramienta de código abierto con la que ayudará a los desarrolladores a realizar pruebas sobre frameworks y otras librerí­as en JavaScript de manera sencilla, debiendo para ello disponer de sus propios proyectos alojados en el repositorio GitHub, a los cuales deberán apuntar. De esta manera, los resultados les ofrecerán el grado de compatibilidad de sus proyectos con diferentes dispositivos y navegadores web, con la idea de que, mediante las mejoras necesarias, los mismos puedan ser lo más interoperables posible.

Para ello, BrowserSwarm hace uso de la unidad de pruebas de frameworks QUnit a través de la nube usando la automatización de navegadores de SauceLabs, de manera que cuando se produzca algunos cambios en los códigos del proyecto, BrowserSwarm vuelva a realizar nuevas pruebas, ofreciendo nuevos resultados.

Además de ello, BrowserSwarm también permite visualizar las pruebas realizadas a muchas otras librerí­as conocidas, como jQuery, Dojo, Prototype o BackBone.js, entre otros, de manera que los desarrolladores podrán conocer que dichas librerí­as podrán corren sin problemas en una gran variedad de navegadores web.

AL ser un proyecto de código abierto, Microsoft pide a la comunidad ayuda para realizar mejoras en los resultados mediante la subida de sus propios proyectos. Además, también solicitan la colaboración para conectar con otros repositorios de códigos además de GitHub.

El uso de BrowserSwarm es completamente gratuito, y el registro de usuario, mediante procedimiento tradicional, apenas tarda unos segundos.

Enlace: BrowserSwarm | Ví­a: TechCrunch

La presentación de La Guerra de las Galaxias con HTML, JS y CSS

Star Wars

En timpietrusky.com podéis ver los detalles del trabajo de Tim Pietrusky, programador que ha dedicado buena parte de su tiempo en una aplicación que simula la presentación de la pelí­cula de 1977 de La Guerra de las Galaxias.

El resultado, que puede disfrutarse en codepen.io, puede ejecutarse pulsando en el texto inferior de dicha página, así­ como personalizarse alterando tanto el HTML de la columna izquierda, el CSS del medio o el javascript de la derecha.

Esta joya, descubierta en boingboing.net hace pocas horas, incluye la música de la pelí­cula, así­ como el texto original que apareció en el largometraje en su momento.

Un lugar ideal para fans de la pelí­cula, así­ como para profesores y alumnos de diseño web que estén aprendiendo HTML, JS y CSS y quieren verificar cómo cambiando algunas lineas pueden obtenerse resultados fantásticos.

Codepen.io, recurso que os presentamos en el libro Tendencias de Diseño web en 2013, es un editor de código online que nos ayuda a practicar mientras vemos el resultado de forma inmediata, siendo posible navegar por los ejemplos que otros usuarios han publicado en la plataforma.

Allí­ es posible ver otros trabajos del mismo desarrollador, como un homenaje a la serie Breaking Bad que no tiene ningún desperdicio.

Google anuncia el lanzamiento de Chrome Platform Analytics

A través del perfil de Google Chrome Developers en Google+, Google anuncia el lanzamiento de Chrome Analytics Platform, el cual lo presenta como una biblioteca JavaScript que permite recoger las interacciones realizadas por los usuarios a través de las aplicaciones empaquetadas y extensiones. La misma usa un modelo de «aplicación céntrica» adecuado para las aplicaciones empaquetadas.

Si nos vamos al enlace que nos ofrece en la escueta publicación, nos llevará al wiki de la plataforma, dentro de GitHub, donde nos ofrece más información sobre la misma, desde su visión global hasta ejemplos, incluyendo caracterí­sticas, pre-requisitos, y pequeños tutoriales.

La propia visión global añade algo más de información:

La plataforma de Google Analytics le permite medir las interacciones del usuario con su empresa a través de diferentes dispositivos y entornos. La plataforma proporciona recursos para recopilar, almacenar, procesar e informar sobre las interacciones del usuario. Chrome Platform Analytics (CPA) es una biblioteca cliente que le permite recoger las interacciones del usuario especí­ficamente en Chrome Platform App (también conocidos como aplicaciones empaquetadas) y extensiones, y los enví­a a la plataforma de Google Analytics.

Un detalle importante, incluido en el wiki, hace referencia al soporte de privacidad, llamado opt-out:

Para utilizar Google Analytics (y por lo tanto la biblioteca CPA), debe dar a los usuarios aviso acerca del seguimiento de análisis y darles la opción de salir del seguimiento. Un usuario puede optar por el no seguimiento utilizando el método setTrackingPermitted (booleano) en el objeto analytics.Config. Pasando a falso este método, desactiva el enví­o de información a Google Analytics. Este ajuste se conserva entre sesiones de aplicaciones.

Enlace: Wiki de Chrome Platform Analytics | Ví­a: Google Chrome Developers

Google está probando mostrar información de los canales en YouTube mediante tarjetas

Cards

Google tiene muy claro que no se puede quedar quieto para evitar que sus servicios queden desfasados en el tiempo, por lo que de vez en cuando realiza pruebas con algunas de sus posibles nuevas funciones con la idea de que si éstas son viables y mejoran la experiencia de usuario, aplicarlas en un futuro. En este sentido, Google Plus Daily publica, ví­a G.O.S., que Google podrí­a estar realizando pruebas con las tarjetas de información en YouTube, algo ya muy común en algunos de sus servicios, de manera que aquellos usuarios que se pongan encima del enlace de cualquier canal, se les aparezca su correspondiente tarjeta de información, mostrando la carátula, el tí­tulo, el botón de suscripción, e incluso el enlace del perfil de creador en Google+.

Por si hay alguien interesado en comprobarlo, hay un truco que consiste en poner el siguiente código dentro de la consola de desarrollador del navegador:

document.cookie = «VISITOR_INFO1_LIVE = 0xJL6SMMUyE; path = /;. domain = youtube.com»; window.location.reload ()

De esta manera, tan sólo se tiene que poner encima del enlace de cualquier canal dentro de la relación de ví­deos existentes, y verá como le aparece la tarjeta correspondiente, algo que no ocurre si no se introduce el código indicado.

Ya sólo queda que esta función pueda estar disponible oficialmente para todos los usuarios sin necesidad de incluir códigos, lo que ayudará a los creadores de contenidos a potenciar sus propios canales y recibir más suscriptores, e incluso a tener más seguidores en Google+.

Ví­a: Google Plus Daily

Apple anuncia su nueva versión de Safari, con importantes novedades y mejoras

SafariUna de las novedades que se acaba de presentar en la conferencia de desarrolladores WWDC de Apple, que se está celebrando en estos momentos, es la nueva versión de Safari, la cual será lanzada con la también nueva versión de OS X, de nombre Mavericks.

Según Apple, la nueva versión de Safari tendrá un rendimiento de JavaScript mejorado de manera significativa, superando incluso al rendimiento que ofrecen los navegadores web Chrome y Firefox, algo que habrá que comprobar en la práctica y en los análisis que se hagan de manera independiente. Aún así­, este pique puede hacer que el resto de navegadores puedan ponerse las pilas de llegar a ser cierto, para mejorar este aspecto.

Además, incluye una nueva función llamada Power Nap, lo que permitirá reducir el consumo de energí­a que necesita la ejecución del propio navegador. En lo que respecta a las funciones que ofrece a los usuarios, ahora incluye una nueva página de marcadores, que además viene acompañada de una nueva barra lateral, la cual da acceso a los marcadores y a las listas de lecturas, donde entre otras caracterí­sticas, está las listas compartidas.

iCloud Keychain también es llevado a Safari, su llavero en la nube por la que gestionará las contraseñas, así­ como tarjetas de crédito y otro tipo de datos. Viene a funcionar en linea similar a aplicaciones como Lastpass.

La posibilidad de añadir marcadores a un click de distancia, y el nuevo aspecto de Reader, conforman las novedades más importantes de la nueva versión de Safari.

Enlace: Sitio oficial de Safari