jueves, 10 de febrero de 2011

Screengrab

Este es un interesante plugin para Mozilla Firefox que permite hacer 'fotos' de la web que estemos viendo plasmándolo en un fichero gráfico.

Más Info:
Screengrab

lunes, 7 de febrero de 2011

Reparando MySQL

No hay nada peor para la integridad de tu trabajo que tener una regleta con interruptor y unos pies inquietos. Como ya se pueden imaginar he apagado el ordenador sin ninguna finura mientras trabajaba con el paquete elgg y una de las tablas se ha averiado dando por mensaje de error la siguiente lángida y terrible frase:

"Table is marked as crashed and should be repaired"

Después de buscar un ratito por internet se ha solucionado el problema ejecutando esta instrucción:

mysqlcheck --auto-repair nombre_de_base_de_datos

¡Tendré más cuidado con las regletas traicioneras a partir de ahora!

domingo, 6 de febrero de 2011

Nueva características mysql 5.5

Con el lanzamiento de la versión 5.5 de mysql se han añadido nuevas características, una de las más llamativas es que las tablas por defecto se crearán con el storage engine InnoDB en vez de la MyISAM.

Para ver una lista y explicación de las nuevas características sigue este enlace.

miércoles, 2 de febrero de 2011

TDD y refactorización.

Hay una práctica de programación que consisten en aplicar conjuntamente un 'Test Driven Development' (TDD) y luego la refactorización (revisión y corrección) del código generado para superar las pruebas.
Para crear los test debemos tener claro primero los requisitos del código que se va a realizar para generar código de test que controle que el resultado del trabajo realizado es correcto.
Luego haremos la refactorización que consiste en examinar todo el código generado buscando posibles repeticiones, trozos poco claros de manera que podamos unificar y simplificar con el objeto de dejarlo lo más sencillo posible para su mantenimiento. Otra de las tareas posibles es las búsqueda de posibles patrones a aplicar en el código.
Un listado de tareas a realizar en la refactorización sería:
  • Indentificar el código que necesita ser refactorizado.
  • Desarrollar los test necesarios para garantizar el funcionamiento en el caso de que no lo tengamos ya.
  • Trabajar en pequeñas cosas cada vez.
  • Ejecutar el test con cada pequeño cambio, todo depende de la dificultad que tengamos en ejecutarlo.
Para saber más:
Desarrollo guiado por pruebas