Para utilizar todas las funcionalidades que ofrece este sitio, es necesario tener JavaScript habilitado.

Regresemos al tema de métricas de software! Hace un par de entradas estuve hablando acerca de la complejidad ciclomática. Ahora quiero que nos metamos con NPath.

N-Path es una métrica de software, que por encima se parece un poco a la complejidad ciclomática y aunque ambos se relacionan un poco, en realidad nos sirven para medir cosas completamente distintas. Si te interesa el desarrollo guiado a pruebas, sigue leyendo!

Leer Entrada »

En esta entrada vamos a hablar acerca de uno de mis patrones de diseño favoritos, el Observador (Observer en Inglés). Este es un patrón flexible y sencillo, que nos sirve para notificar eventos a otros objetos.

Con ayuda de varios ejemplos concretos en PHP, vamos a dar un paseo por la tierra del código reutilizable.

Leer Entrada »

Aprovechemos esta oportunidad para hablar sobre calidad de software. En esta entrada voy a hablar sobre una métrica de software que nos ayuda a evaluar y analizar un poco, el camino que estamos tomando mientras programamos una rutina.

La complejidad ciclomática! Una herramienta que en vez de darnos respuestas, nos da la habilidad de hacernos preguntas sobre nuestras rutinas y nos ayuda a mejorar la calidad del software que estamos escribiendo.

Leer Entrada »

Continúo con la saga de entradas acerca de Patrones de diseño. En esta oportunidad abordaré el patrón de diseño llamado Decorator/Decorador. Un patrón muy popular que se ve con frecuencia.

Con la ayuda de PHP y varios ejemplos, nos embarcamos en un viaje por las aguas del Decorator. Este patrón nos permite modificar, retirar o agregar responsabilidades dinámicamente a un objeto. Es una forma flexible, que ayuda a implementar varios comportamientos, de forma separada y que adicionalmente se puedan ir agregando a medida que sea necesario.

Leer Entrada »

En esta entrada doy una pequeña introducción a los patrones de diseño y hablaré sobre Inyección de Dependencias (Dependency Injection) y la Inversión de control (inversion of control).

Este es el primero de una serie de entradas que pienso escribir sobre el tema de patrones de Diseño y desarrollo de software.

Decidí empezar con DI porque es un patrón muy fácil de entender y nos trae muchas ventajas.

Leer Entrada »

Lo ideal sería trabajar con servidores que tienen una versión de PHP reciente, pero esa no siempre es la realidad. Alguna vez tuve que trabajar en varios servidores, cada uno con una versión distinta de PHP y precisamente en esos casos, trazar la linea entre las funcionalidades que estan disponibles entre una version y otra se puede complicar.

Por este motivo, voy a destacar algunas funcionalidades de cada versión, para que sirva como recordatorio, la próxima vez que tenga que trabajar en entornos distintos.

Este listado no pretende hablar de los cambios internos que se hicieron (como por ejemplo en el manejo de memoría). El objetivo principal es mostrar algunas funcionalidades que yo uso y recordar apartir de que versión las puedo utilizar. A ver si me evito la búsqueda de información en el manual.

Leer Entrada »

Yo no soy un diseñador! - Si, puedo trabajar con HTML, CSS y Javascript, que son las tecnologías que generalmente se usan para mostrar información en un navegador, pero eso no me convierte en un astro del diseño.

No se dibujar, a duras penas se combinar los colores de la ropa que me pongo, no tengo mayor experiencia con photoshop/gimp. Lo mio son los algoritmos - Entonces como hice para rediseñar este lugar?

Leer Entrada »

Este Articulo lo publiqué en mi Blog por alla en el 2007 y aún sigo recibiendo visitias por él. Así que decidí dejarlo para la posteridad. Es una reseña de un viaje que tuve a San Agustín. Es extensa pero está llena de detalles y es una fiel bitácora de lo que fué nuestro viaje a esas lindas tierras Huilenses.

No es el tipo de entrada que acostumbro a tener en mi blog ahora, pues no tiene que ver con programación o cosas técnicas, pero de igual forma me parece que podría ser una lectura interesante... sobretodo si todavía no sabes para donde ir en las vacaciones que se avecinan.

Leer Entrada »

Todos los días se aprende algo nuevo, incluso de cosas tan sencillas y superficiales como un Meme. En esta edición vamos a ver como se le puede aumentar el tamaño a una imágen con GD y PHP.

Aquí encontrarás las herramientas necesarias para programar un generador de imágenes Tenso.

Leer Entrada »

Después del robo de contraseñas a páginas como LinkedIn y Yahoo, es importante aprender de esos errores y sacar lo positivo. Este articulo  habla sobre los mecanismos básicos para almacenar contraseñas en una base de datos.

Explico lo que es Hashing, MD5, SHA1, SHA512, Sales (salts) y Bcrypt

Leer Entrada »