Archive for Diciembre, 2009

Popularidad de los navegadores web (2002-2009)

Hoy descubro una gráfica interactiva en flash que muestra las popularidad de los distintos navegadores a lo largo de los últimos años (Enero 2002 – Agosto 2009) basado en las estadísticas de w3.org.
estadisticas-browsers
Firefox lidera la lista hoy por hoy con algo más del 47% aunque aún queda lejos del récord histórico que marco IE6 en septiembre del 2005 con un 69.80%.

Ver gráfica

Fuente: microsiervos
Vía: anieto2k

Entrevista con Mariano Sáenz de pindonga.tv

Ayer le dedicaron un post a Mariano Saenz en maestrosdelweb. El post incluía la siguiente entrevista en vídeo y me gusto mucho (como casi todo lo que hace este argentino):

Además de mejorandolaweb y pindonga, sites de los que ya hemos hablado por aquí alguna vez, descubro que Mariano es autor/colaborador de al menos cuatro proyectos más muy orientados al publico argentino.

Destaca Tusecreto, site que no conocía y con el que me he echado unas risas esta tarde. Este proyecto creado en 2005 fue Diseñado, programado y lanzado en menos de 5 horas y obtuvo cientos de menciones y notas en televisión, radio, revistas, diarios y webs. Llegaron incluso a publicar un libro recopilatorio de TuSecreto que se agotó inmediatamente.

El artículo cuenta con varias citas entre las que destaco la siguiente:

No se necesitan grandes recursos para comunicar una idea, lo único que debemos entender es que internet no es televisión y que una idea muy sencilla puede ser muy efectiva si está bien implementada

Recomiendo la lectura de el post completo en maestrosdelweb: Entrevista a Marinao Sáenz

Perfiles de usuario

Inspirado por un artículo de illasaron donde muestra las estadísticas de la web me he animado a hacer la versión de proyecto-f.

Sistemas operativos

Windows es el ganador indiscutible con XP a la cabeza. Llama la atención que NT represente más del 14% de las visitas realizadas desde el SO de los de redmon. Los usuarios de linux suponen el 11,17%, superando a OSX, y se coloca como el segundo SO más usado por lo visitantes.

  • 80,90% => Windows

    1. 57,81% => XP
    2. 16,65% => Vista
    3. 14,58% => NT
    4. 10,71% => 7
    5. 0,26% => Server 2003
  • 11,17% => Linux
  • 7,83% => Macintosh

    1. 64,00% => Intel 10.6 Snow leopard
    2. 17,33% => Intel 10.5 Leopard
    3. 17,33% => Intel 10.4 Tiger
    4. 1,33% => PPC
  • 0.1% => Iphone

Navegadores

Entre los browsers Firefox es el rey y representa casi el 75% de las visitas.

Read more

Parsear HTML con PHP

PHP Simple HTML DOM Parser es una librería pensada para manipular código HTML de forma sencilla con PHP. Siguiendo una sintaxis que recuerda a jQuery, permite acceder a tags, modificar elementos HTML o extraer contenido en poquísimas lineas de código.

Veamos un par de ejemplos:

  • Acceder a elementos HTML

    // Create DOM from URL or file
    $html = file_get_html(‘http://www.google.com/’);

    // Find all images
    foreach($html->find(‘img’) as $element)
    echo $element->src . ‘<br>’;

    // Find all links
    foreach($html->find(‘a’) as $element)
    echo $element->href . ‘<br>’;

  • Modificar elementos HTML

    // Create DOM from string
    $html = str_get_html(‘<div id=”hello”>Hello</div><div id=”world”>World</div>’);

    $html->find(‘div’, 1)->class = ‘bar’;

    $html->find(‘div[id=hello]‘, 0)->innertext = ‘foo’;

    echo $html; // Output: <div id=”hello”>foo</div><div id=”world” class=”bar”>World</div>

  • Extraer contenido

    // Dump contents (without tags) from HTML
    echo file_get_html(‘http://www.google.com/’)->plaintext;

Simple HTML DOM Parser requiere PHP 5 o superior para su correcto funcionamiento y es capaz de trabajar con HTML no valido.

Web oficial de Simple HTML DOM Parser
Descargar desde sourceforge

Vía sentidoweb

jQuery Google feed API

La popularización del concepto web 2.0 trajo consigo millones de páginas que hacían uso de Feeds, ajax y diseños simples y limpios. Por motivos de seguridad las llamadas ajax están limitadas a nuestro propio dominio siendo imposible, por ejemplo, realizar la lectura de un feed rss externo a nuestro site mediante javascript.

Este tipo de limitaciones se suelen solventar con un proxy del lado del servidor que realiza la lectura del feed y nos la devuelve aunque existen soluciones más sencillas como el plugin que vemos hoy. Básicamente se trata de un plugin para jquery que crea una capa de abstracción sobre la Google Feeds API permitiendo la lectura de cualquier rss bajo cualquier dominio. Además el contenido es convertido a JSON automáticamente dejándolo listo para trabajar con el cómodamente con javascript.

Su uso es muy sencillo, por ejemplo:

<script src="jquery.js">
<script src="jquery.jgfeed.js">
<script>
$.jGFeed('http://feeds.feedburner.com/jQueryHowto',
function(feeds){
  // Check for errors
  if(!feeds){
    // there was an error
    return false;
  }
  // do whatever you want with feeds here
  for (var i=0; i < feeds.entries.length; i++) {
    var entry = feeds.entries[i];
    // Entry title
    entry.title;
  }
}, 10);
</script>

El script acepta los siguientes parámetros:

  • URL – Dirección del feed a cargar
  • Callback - Función a ejecutar cuando la lectura haya sido completada
  • Num – Número de entradas a cargar
  • Key – Google API key a usar mientras se cargan los RSS

Una vez terminada la lectura y conversión a JSON, el contenido sigue la siguiente estructura:

{
  "title":"Blog Title",
  "link":"http://www.example.com",
  "author":"Author Name",
  "description":"Blog description.",
  "type":"RSS type (atom10, etc.)",
  "entries":[
    {
      "title":"Blog entry title 1",
      "link":"http://www.example.com/entry-1.html",
      "author":"Post Author Name",
      "publishedDate":"Mon, 25 May 2009 07:07:00 -0700",
      "contentSnippet":"Short blog post snippet ...",
      "content":"Longer snippet of the blog post",
      "categories":[
        "category 1",
        "category 2",
        "category 3"
      ]
    },
    {
      "title":"Blog entry title 2",
      "link":"http://www.example.com/entry-2.html",
      "author":"Post Author Name",
      "publishedDate":"Mon, 25 May 2009 07:07:00 -0700",
      "contentSnippet":"Short blog post snippet ...",
      "content":"Longer snippet of the blog post",
      "categories":[
        "category 3",
        "category 2",
        "category 1"
      ]
    },
    ...
}

Enlaces:
descargar jQuery Google feed API
Artículo original del autor del plugin

Cuenta atrás javascript

Aprovechando que las vacaciones de navidad están a la vuelta de la esquina, he grabado un vídeo donde muestro cómo funciona el objeto Date de javascript y cómo crear una sencilla cuenta atrás del 25 de diciembre.

Descargar vídeo (12 min – 21mb – 1440×900)
Descargar código

pindonga HD

Ya ha salido el último capitulo de pindonga, uno de los mejores vídeo blogs de habla hispana liderado por el argentino Mariano Saenz. El capitulo dura 21 minutos y es recomendable escucharlo con auriculares y en HD.


El final es buenísimo :)

Más vídeos de pindonga

Beta oficial de Chrome para OSX y Linux

Casi con un año de retraso y con algunas funcionalidades pendientes pero ya esta aquí la esperada beta pública de Google Chrome para Mac OS X y Linux.

En su versión linux, chrome soporta oficialmente las distribuciones ubuntu, debian, fedore y openSuse tanto en 32 como en 64 bits.
chrome_linux

descargar google chrome

FoxTab, pestañas en Firefox estilo mac

Foxtab es una extensión para firefox que muestra un preview de las pestañas abiertas decoradas con efectos muy inspirados en mac cuando pulsamos ctrl+tab para movernos entre ellas. He grabado un breve vídeo para que os hagáis una idea:

La extensión nos permite configurar distintos tipos de preview entre los que se encuentran las vistas carrousel, row, grid,wall, page flow y stack. Es completamente compatible con windows XP/vista/7, Mac OS X Tiger/leopard y Linux (Ubuntu/Fedora/Mandriva/OpenSuse/Otras).

Google Goggles, DNS y Dictionary

El ritmo de anuncios y lanzamientos de los de Mountain View ha tomado un ritmo frenético y es rara la semana en la que no se lee algo de Google. Algunos de los lanzamientos, lease Google DNS, resultan sorprendentes y no alcanzo a entender que razón comercial siguen, pero vamos por partes:

Google Goggles

Se trata de una aplicación para dispositivos Android que permite realizar búsquedas online usando la cámara de vídeo/fotos de los terminales. Permite, entre otras cosas, sacar una foto de la portada de un libro y dejar que la aplicación detecte su titulo y lance una búsqueda sobre el mismo.

Para probarlo entra al Android Markertplace y busca “Google Goggles”

Google Dictionary

El nuevo servicio de google permite consultar definiciones en más de 20 idiomas, realizar traducciones al ingles o escuchar su pronunciación fonética en una interface sumamente limpia.
dictionary

Poco más que decir sobre Dictionary: una aplicación sencilla, en la que todo esta muy a mano y resulta agradable de usar.
dictionary2

Google Public DNS

Google ya ofrece servicios de DNS (bajo las direcciones 8.8.8.8 y 8.8.4.4) y entra a competir con OpenDNS, actual líder del segmento. Google quiere con este servicio aportar más seguridad y mayor velocidad de navegación a los usuarios que opten por hacer uso del mismo. En cuanto a la privacidad: guardan la IP 48 horas, no enlazan la información con el perfil de Google y sólo aprovecharán la información agregada, con un nivel de detalle máximo “por ciudad”.

¿Merece la pena? Depende, lo mejor es que ejecutes un par de tests en tu equipo para hacerte una idea de lo que puedes esperar. En mi caso, con un cable modem de 12mb de euskaltel, los resultados han sido peores con Google Public DNS que con OpenDNS.
dnsBenchmark

Yo he probado los siguientes programas gratuitos:

  • Namebench. Este es mi preferido, hace uso del historial de tu browser y la salida txpdump para dar con el servidor DNS que más te conviene. Disponible para Windows, Mac y linux (solo consola)
  • Domain Name Speed Benchmark. Funciona en windows y en Linux con wine

Si al final optáis por usar las dns de google, o cualquier otra, aquí tenéis una guía para configurar los servidores dns en ubuntu

Enlaces:
Más información sobre benchmarks dns

jQuery 1.4 alpha 1

El desarrollo de jQuery sigue imparable, fiel a su línea de pequeñas pero continuas mejoras y optimizaciones. Anunciado en el blog oficial de jQuery por John Resig, esta versión cuenta con un par de mejoras destacables:

  • La función live ha sido drásticamente revisada y ya acepta los eventos submit, change, mouseenter, mouseleave, focus y blur en todos los navegadores soportados.
  • append, prepend, find, empty, remove, addClass, removeClass, hasClass, attr, and css han sido ampliamente optimizadas

jquery
El código ya ha sido testado en todos los navegadores compatibles y ya se considera estable, si bien quedan algunos bugs pendientes de corregir (ver lista completa de bugs).

Para terminar os dejo con una presentación en la que se hace un repaso a los últimos cambios internos de este framework javascript:

View more documents from jeresig.

VirtualBox 3.1

El 30 de noviembre vio la luz la versión final de Virtualbox 3.1, uno de los mejores programas de virtualización, que con esta versión nos trae las siguientes novedades:

virtualbox

  • Permite migrar las sesiones de una VM entre distintas maquinas en vivo
  • Permite cambiar el tipo de conexión de la tarjeta de red virtual (NAT, adaptador puente, red interna, no conectado y adaptador sólo-anfitrión) mientras la máquina virtual está corriendo
  • Los estados de la VM pueden ser repuestos desde cualquier snapshot, en lugar de solamente la última. Las nuevas snapshots también pueden ser tomadas creadas desde cualquier snapshot previa
  • aceleración de vídeo 2D para maquinas virtuales windows
  • Soporte experimental USB para maquinas virtuales opensolaris
  • Significativas mejoras de rendimiento para PAE y maquinas AMD64 (solo para VT-x y AMD-V con paging normal (sin nested))
  • Soporte experimental para EFI (Extended Firmware Interface)
  • Compatibilidad con dispositivos de red VirtIO

descargar virtualbox