WP Function – Colección de Snippets para crear Themes de WordPress

Me entero por un tweet de Smashing Magazine de esta excelente herramienta. Si eres diseñador de themes para WordPress, te la recomiendo.

Se trata de WP Function, una colección de fragmentos de código (snippets) para usarse en el archivo functions.php, eje central de todo theme de WordPress.

Como pueden ver, podemos elegir que elementos deseamos incluir, y al final presionar el botón “Get Your Code!” para obtener los snippets correspondientes, listos para ser insertados en functions.php.

Sin duda, WP Function se convertirá rápidamente en una herramienta indispensable para todo diseñador de themes para WordPress.

Enlace: wpfunction.me

CDNJS – Completo CDN para Librerías JavaScript

Al desarrollar algún proyecto web, es muy común usar el CDN (Content Delivery Network) de Google, e incluso el de Microsoft, con la desventaja de que sólo incluyen las librerías más populares (jQuery, MooTools, etc). ¿Y si necesito backbone.js, coffee-script, less.js, socket.io o alguna otra librería JavaScript no tan popular?

CDNJS es la solución, pues contiene un extenso catálogo de librerías JavaScript, listas para ser usadas en nuestros proyectos.

Por cierto, CDNJS usa los servidores de CloudFlare, con lo cual podemos estar seguros de un alto nivel de estabilidad y disponibilidad de las librerías.

Enlace: cdnjs.com

Actualiza automáticamente el navegador web al hacer cambios en archivos CSS

CSSrefresh es un pequeño archivo JavaScript que podemos usar en la etapa de desarrollo de nuestros proyectos web. Su función es monitorear los archivos CSS, de tal forma que al editarlos (y guardarlos) se aplicarán los cambios en el navegador web, sin tener que refrescar manualmente la página web respectiva.

[CSS Refresh]

Enlace: CSS Refresh.

Como pueden ver, pueden incluir el script directamente …

<head>
   <link rel="stylesheet" type="text/css" href="css/site.css" />
   <script type="text/javascript" src="js/cssrefresh.js"></script>
</head>

… o usar el bookmarklet disponible.

¿Sabes cuánto CSS3 soporta tu navegador web?

¡La siempre activa y creativa Lea Verou lo hace de nuevo! Acaba de presentar un interesante test para verificar el nivel de soporte de CSS3 en navegadores web.

[¿Exactamente sabes cuánto CSS3 soporta tu navegador web?]

Enlace: CSS3 Test.

Por cierto, los resultados del test en los navegadores actuales son:

  • Chrome Canary, WebKit nightlies, Firefox Nightly: 64%
  • Chrome: 63%
  • Firefox 10: 61%
  • Safari 5.1, iOS5 Safari: 60%
  • Opera 11.60: 56%
  • Firefox 9: 58%
  • Firefox 6-8: 57%
  • Firefox 5, Opera 11.1 – 11.5: 55%
  • Safari 5.0: 54%
  • Firefox 4: 49%
  • Safari 4: 47%
  • Opera 10: 45%
  • Firefox 3.6: 44%
  • IE9: 39%

¿Sólo IE9? Así es, el test no funciona en IE8 para abajo… pero como dice la propia Lea:

The test won’t work on dinosaur browsers like IE8, but who cares measuring their CSS3 support anyway?

:-)

HTML5 Please

¿Quieres empezar a usar HTML5 pero temes perder visitantes por falta de soporte en los diversos navegadores web? El interesante servicio HTML5 Please enlista todas las nuevas características de HTML5, y nos dice cuáles de ellas son seguras de usar, cuáles debemos usar con precauciones y cuáles mejor no usarlas.

Y lo mejor de todo, al dar clic en cada opción nos ofrece fallbacks y polyfills, para empezar a usar HTML5 hoy mismo.

Enlace: HTML5 Please.

jQuery 1.7 y los nuevos .on() y .off() para eventos

jQuery LogoLos chicos de jQuery liberaron hace un par de días jQuery 1.7, introduciendo una nueva forma de trabajar con eventos.

Para descargar jQuery 1.7, usen los siguientes enlaces directos:

Ya que los enlaces previos pertenecen al jQuery CDN, pueden usarlos directamente en sus proyectos. Obviamente, el recomendado en la edición minificada:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.min.js"></script>

Novedades en jQuery 1.7

La principal novedad de esta versión son los nuevos APIs .on() y .off() para eventos, cuya finalidad es unificar la funcionalidad de .delegate() y .bind(). La sintaxis de ambos es:

$(elements).on( events [, selector] [, data] , handler );
$(elements).off( [ events ] [, selector] [, handler] );

Cuando se establece un selector, .on() es similar a .delegate() ya que asigna un manejador de eventos delegado filtrado por dicho selector. Cuando el selector se omite, entonces su comportamiento es como .bind().

No te preocupes si en tus proyectos usas los métodos existentes para asignar eventos, todos ellos aún son válidos en jQuery 1.7

Algunos ejemplos:

$('a').bind('click', myHandler);
$('a').on('click', myHandler);
 
$('form').bind('submit', { val: 42 }, fn);
$('form').on('submit', { val: 42 }, fn);
 
$(window).unbind('scroll.myPlugin');
$(window).off('scroll.myPlugin');
 
$('.comment').delegate('a.add', 'click', addNew);
$('.comment').on('click', 'a.add', addNew);
 
$('.dialog').undelegate('a', 'click.myDlg');
$('.dialog').off('click.myDlg', 'a');
 
$('a').live('click', fn);
$(document).on('click', 'a', fn);
 
$('a').die('click');
$(document).off('click', 'a');

Otras novedades que valen la pena mencionar:

  • Desempeño mejorado en la delegación de eventos.
  • Mejor soporte para HTML5 en IE 6/7/8
  • Mejoras en las animaciones.
  • Soporte para el Asynchronous Module Definition (AMD).
  • El objeto jQuery.Deferred ha sido extendido con un nuevos manejadores de progreso y métodos de notificación.
  • ¡Y mucho más! Te invito a consultar la documentación sobre jQuery 1.7.

Fuente: jQuery Blog.

“Algoritmo” no es una palabra de cuatro letras

¡Tenía que compartir esta presentación a todos mis colegas desarrolladores! :-)

“Algorithm: is Not a Four Letter Word” es el título de una excelente presentación creada por Jamis Buck del equipo de 37Signals, donde habla acerca de los algoritmos y el porqué deben formar parte de nuestro entrenamiento de programación.

[Algorithm: is Not a Four Letter Word]

Enlace: “Algorithm: is Not a Four Letter Word”

Vía: NetTuts+.