Librería PHP para OpenId

OpenId es un sistema de identificación descentralizado que últimamente está dando mucho de que hablar, algunas veces para bien, y otras no tanto. Aún así, si necesitamos utilizar OpenId en nuestra aplicación, necesitaremos la librería PHP OpenID Library, la cual tiene las siguientes características:

  • Funciona desde PHP 4.3 hasta PHP 5.2.4
  • Licencia Apache Software License
  • Bien documentada, con ejemplos y casos de test
  • Usa CURL pero no depende de esta extensión
  • Incluye módulos para Attribute Exchange, Simple Registration y PAPE
  • Soporta i-names
  • Soporta los protocolos OpenID de forma transparente

PHP OpenID Library

Monolith: consola DBA para MySQL

Monolith es una consola para DBAs de MySQL que programa y automatiza backups para MySQL y monitoriza un número ilimitado de servidores para medir y mejorar su rendimiento. Además genera gráficas para ser utilizadas para informes.
monolith.png
Entre las características que ofrece nos encontramos con la posibilidad de crear enviar informes locales de backups a la consola de monolith, múltiples gráficas, informes HTML, exportación de datos, integración con VisualMining, backups remotos, envío de informes por email.
Monolith – MySQL DBA Console 1.4 Released

Cargar contenido mediante el scroll usando jQuery

Un sencillo script realizado con jQuery que nos permite cargar contenido cuando llegamos al final del contenido mediante el scroll. Algo parecido os presenté hace ya tiempo, pero sin uso de librerías. En este caso, jQuery reduce el código para implementarlo.
Es importante recordar que el contenido importante no se debería cargar mediante Ajax, y si se hace así es necesario ofrecer una alternativa clásica.
Load Content While Scrolling With jQuery
Vía / Ajaxline

Benchmarks de PHP

The PHP Benchmark es un sitio que realiza tests de prueba para ver rendimientos de funciones y así programar de forma más eficiente. La página está bastante completa, ya que también ofrece el código de las funciones que ha ejecutado.

Gracias a las pruebas podemos darnos cuenta de:

  • Realizar un foreach es siempre más rápido, y si no recuperamos la clave del array mejor aún.
  • Un for es más rápido si no calculamos previamente en una variable el tamaño del array que recorremos, y que sizeof es más rapido que count.
  • Cuando vamos a asignar el valor de una posición de un array a una variable para tratar con ella, es conveniente hacerlo por referencia ($alias = &$aSingleDimArray[$i]).
  • No es más rápido crear un objeto como referencia ($obj =& new SomeClass();).
  • if es más rápido que switch/case, y ligeramente más rápido es usar == que ===.
  • Parece ser que el uso de comilla simple o doble en las últimas versiones se ha mejorado y no existe apenas diferencia.

The PHP Benchmark

Consejos para desarrollar cumpliendo estándares

Buenos consejos a tener en cuenta cuando se trata de desarrollar cumpliendo estándares web.

  • Menos es más, no uses mas código del necesario
  • No uses CSS o Javascript dentro del HTML, ya sea en las etiquetas como en el head.
  • Usa código semántico, las cabeceras mediante etiquetas h1, h2, …, resaltar mediante strong, …
  • No uses meta etiquetas redundantes
  • Usa microformatos para hacer tu sitio legible
  • Usa tablas solo para mostrar tablas
  • Usa rel=”external” para enlaces externos, no uses target=”_blank”, hazo mediante Javascript
  • No uses Javascript mediante enlaces
  • No muestres contenido importante mediante Flash o Ajax, siempre mediante HTML plano

10 Coding Guidelines for Perfect Findability and Web Standards

NitobiBug: debug para Javascript

NitobiBug es un script similar a Firebug que nos permite realizar debugs en nuestros scripts. Permite mostrar una ventana emergente con el contenido de objetos (diferenciando entre tipos), elementos DOM o simplemente mensajes.

nitobibug.png

Usarlo es tan sencillo como esto:

var myObject = {a:234523, something:'else', mylist:[32423,4556,'sdfs']}; nitobi.Debug.log(myObject);

Y para instalarlo solo hay que añadir el archivo js.

Una alternativa a Firebug, sobre todo para IE, pero me sigo quedando con Firebug.

NitobiBug