16 mayo, 2008

Simon Willison sobre Firebug:
Es posible establecer un punto de ruptura (breakpoint) al principio de una función con debug(fn) y registrar todas las llamadas a ella con monitor(fn).

Componente de selección de fechas con jQuery

Free Image Hosting at www.ImageShack.us
Filament Group, Inc.


Con atajos y selección de rangos de fechas.

15 mayo, 2008

NodeBox, visualizaciones para Mac con Python

NodeBox es una aplicación de Mac OS X que permite crear visualizaciones en 2D (estáticas, animadas o interactivas) usando código de programación Python y exportándolas como PDF o como una película QuickTime. NodeBox es gratis y está bien documentado.

Un ejemplo de gráfica de Tufte con 11 líneas de código | Galería de ejemplos

Sincronización entre YouTube y Google Maps

Este ejemplo muestra un vídeo de una carrera de bicicletas y, sincronizado, aparece la localización en Google Maps con el trayecto trazándose al mismo tiempo.

YouTube + Google maps location mashup!

Free Image Hosting at www.ImageShack.us

Facebook Chat con Comet

Via Simon Willison. El nuevo Chat en Facebook usa Comet (una petición larga al servidor desde un iframe oculto) contra un servidor web y de chat personalizado y escrito en Erlang. El servidor se diseñó para mantener a los 70 millones de usuarios a la vez, y se probó durante un periodo en el que las páginas reales simulaban peticiones al servidor sin que los usuarios lo detectasen.


Goog, nueva librería javascript

Nota: Quizás esté posteando demasiado sobre Google, pero es que últimamente están liberando muchas herramientas.

Via Simon Willison. Goog es una librería Javascript pura (como YUI o jQuery) de Google cuya código está muy bien documentado aunque la documentación sobre la librería está desperdigada en el nuevo Google Doctype.

Se puede obtener desde aquí: Goog.
Addendum: John Resig había escrito aquí un artículo muy completo tratando sobre este tema, pero por alguna razón (probablemente por petición de Google) lo ha eliminado. Los que estamos suscritos a su feed, lo hemos recibido igual, por lo que lo reproduzco tras este enlace.

JavaScript Information Visualization Toolkit

Javascript Information Visualization Toolkit by WebAppers
JavaScript Information Visualization Toolkit (JIT) es un toolkit de visualización de información que implementa características avanzadas como mapas de árbol (Treemaps), una visualización adaptada de árboles basada en el Spacetree, una técnica de foco+contexto para visualizar árboles hiperbólicos, y una visualización radial de árboles con animaciones avanzadas (RGraph). Bueno, mejor ver las imágenes:

Google Doctype

Google Doctype es una enciclopedia totalmente abierta y una biblioteca de referencia creada por desarrolladores y para desarrolladores. Incluye artículos sobre seguridad web, Javascript, manipulación del DOM, trucos CSS, etc. La sección de referencia incluye una biblioteca creciente de casos de prueba para comprobar la compatibilidad entre navegadores y entre plataformas.

Página principal.
Addendum: John Resig ha escrito aquí un artículo muy completo tratando sobre este tema. Ha estado inspeccionando la documentación y parece ser un buen fiasco. La información que aparece no está completa, ni actualizada, ni parece tampoco relevante. Mejor seguir acudiendo a la biblia de las referencias.

Google Friend Connect

Google Friend Connect es una nueva tecnología de Google que permite aumentar el tráfico fácilmente añadiendo características sociales a una página web. Con unas pocas líneas de código (copiar y pegar), se consigue que la gente se vincule más a la página y se obtienen nuevas características fácilmente sin necesidad de implementarlas explícitamente como:
  • autenticarse con una cuenta existente de Google, Yahoo, AIM, u OpenID
  • invitar y mostrar la actividad a amigos existentes de redes sociales como Facebook, Google Talk, hi5, orkut, Plaxo, y más
  • explorar perfiles de miembros entre redes sociales (soporta OAuth)
  • contactar con amigos desde la página

Google Dirson:
Por ejemplo, si tenemos una página web que no permite a los usuarios identificarse y no queremos perder el tiempo programando un sistema de registro, logueo, más un formulario de comentarios, mediante código ya predefinido por Google podemos implementarlo invitando a nuestros visitantes a utilizar, eso sí, su cuenta personal de Google (ver captura de ejemplo). Con ello, los usuarios de nuestro sitio web no serán realmente de nuestro sitio web, sino de Google, el cual nos ofrece las herramientas para facilitar relaciones entre ellos, y de ellos con nuestro sitio web.
Más información.

14 mayo, 2008

Las secuelas de Processing.js


John Resig reune los proyectos originados a partir de processing.js, las mejoras, las nuevas demos, los entornos de desarrollo y las reacciones en la blogosfera.

Suscribirse a modificaciones de datos con Persevere y Comet

Via Comet Daily:

Comet es una arquitectura web por la cual el servidor puede enviar información al cliente a través de una conexión persistente anterior sin que éste la haya solicitado previamente. Es necesaria para aplicaciones como chats en las que la página debe ser notificada de que otro usuario ha escrito algo. El mecanismo también puede aprovecharse para que una aplicación web ejecutada en el navegador cliente pueda ser notificada de cambios en datos.

Con el soporte de Comet por parte del servidor de aplicaciones Persevere, a parte de las peticiones REST tradicionales, también es posible suscribirse a los cambios del objeto que se está solicitando, de forma que es posible, por ejemplo, ver en tiempo real las modificaciones que hacen otros usuarios a la tabla que se esté visualizando.

Eso es justo lo que se puede ver en el siguiente ejemplo, aunque para ver el efecto es necesario abrirlo con ventanas distintas o, mejor aún, con equipos distintos.

Ejemplo

Test de conocimientos Javascript

Are you JavaScript literate?



Se trata de un test que Thomas Frank ha creado para evaluar los conocimientos en Javascript de varios aspirantes a un trabajo en su empresa. El test (PDF) y sus respuestas (PDF). Me parece que se ha pasado un poquito.