Monthly Archives: enero 2009

Proxy: Patrón de Diseño para Seguridad

Entre los patrones de diseño que ya comenté en otro post, quiero agregar uno que dejé pasar, y al que he retomado hace poco, tanto de forma teórica, como para implementación en algunos desarrollos. Es el patrón de diseño Proxy. Este patrón es usado para agregar una capa de seguridad sobre un sistema ya desarrollado y que es totalmente ajeno…

Desarrollo Web

Hace tiempo, comenté acerca del desarrollo web en plataformas como Java, PHP, Erlang, Python… en ese momento, veía la maraña en la que está tejida la red de redes, el abanico de posibilidades a la hora de desarrollar una aplicación web y comenzaban a sonar términos como CRUD, SOA, MVC, ActiveRecord, Scaffolding… Es una verdad que cada entorno, en cada…

Lenguajes esotéricos

Otro viernes… las oficinas a medio gas y toca trabajar… me da por buscar información, ahora que aprendo más sobre Ruby y Erlang y, topo con un lenguaje llamado COW. Un lenguaje esotérico. Ves cosas como la serie de fibonacci: MoO moO MoO mOo [[ main loop ]] MOO [[ print first number ]] OOM [[ temp copy of first…

Ruby… esa pequeña joya

El lenguaje de programación Ruby, creado por Yukihiro Matsumoto (a.k.a. Matz), fue ideado para ser un lenguaje que simplificara las actividades diarias y necesidades de programación de su creador, al igual que Perl (la otra joya) fuera creada por Larry Wall para cubrir sus necesidades como administrador de sistemas, Matz necesitaba un lenguaje que fuese igual o más potente que…

Sistemas de Control de Versiones: ¿centralizados o distribuidos?

Desde hace tiempo, la tendencia de uso de los sistemas de control de versiones, ha sido el uso centralizado mediante sistemas tan populares como CVS o Subversion. Ahora, desde que muchos grandes proyectos optaran por los sistemas de control de versiones distribuidos, cada vez hay más gente que se va cambiando a ellos y, sobre todo, proyectos grandes. ¿Será que…

Desarrollo Orientado a Pruebas (TDD)

El desarrollo orientado a pruebas (TDD, test driven development) es una forma de desarrollar basándose en que un cierto algoritmo responda de una forma específica a unos datos específicos. Para explicar mejor esto, voy a explicar primero el enfoque tradicional y luego expongo las mejoras que introduce esta forma. Enfoque Tradicional Cuando se pide el desarrollo de un proyecto, lo…

Base de Datos Relacionales: SQLite, MySQL y PostgreSQL

Sobre los SGBD, cabe destacar, entre los que son libres, estos tres motores, de los cuales, dos de ellos son sistemas servidores y gestores de base de datos relacionales (MySQL y PostgreSQL) y otro es tan solo un motor embebido para aplicaciones monousuario o de muy baja carga (SQLite). Los sistemas libres han hecho gala del uso de LAMP (Linux,…