Porqué decidí usar FSFS y no Berkeley DB en Subversion

He tenido suficientes problemas con permisos y bases de datos corruptas en el repositorio Subversion que uso en uno de mis servidores de desarrollo. La mayoría de problemas estaban relacionados con Berkeley database, el método de almacenamiento predeterminado para Subversion, al menos hasta la versión 1.4.4, así que decidí que era tiempo de cambiar a FSFS.

Y aún si el excelente libro de Subversion contiene una sección que explica como configurar usuarios y permisos, además de crear scripts para usar el umask correcto, no me sentía muy seguro manteniendo mi repositorio con Berkeley DB, un método que incluso el equipo de desarrollo de Subversion considera muy sensible a interrupciones.

Algunas de las ventajas de FSFS sobre Berkeley database son:

  • Puede ser usado en directorios de solo lectura y no depende de umask
  • Es independiente de la plataforma
  • El tamaño del repositorio es ligeramente menor
  • Puede ser usado con network filesystems
  • Es prácticamente insensible a interrupciones

Así que sin pensarlo mucho cree un nuevo repositorio usando FSFS. Solo es necesario añadir el parámetro --fs-type fsfs de esta manera:

$ svnadmin create --fs-type fsfs /path/to/repos

Te recomiendo no perder tiemp con Berkeley database al configurar Subversion, usa FSFS y te ahorrarás muchos problemas.

Muy pronto escribiré más sobre Subversion y cómo lo uso en todos mis proyectos de desarrollo web.

El nuevo Ventanazul: ¿llegaremos antes del 2008?

Un nuevo VentanazulBueno, y si no llegamos el plan es tenerlo entre enero o febrero del 2008.

El nuevo diseño y relanzamiento del sitio de Ventanazul, en inglés y español, debería posicionarlo mejor como el webzine para los webmasters, con secciones muy definidas para los artículos, noticias y podcasts (sí, ya volvemos con eso) y con una comunidad mucho más activa.

Y hablando de comunidad. Aún cuando es más trabajo, he quitado la moderación para los nuevos usuarios en los foros, hay muchos spammers que bloquear pero he notado que más gente se está registrando y participando, y eso es bueno, hay mucho sobre lo que debemos hablar (negocios en la Red, ideas para código o diseño, marketing en Internet, música, libros, películas, y un largo etcétera) así que no olvides participar en los foros.

¡Venga!, se aceptan ideas locas, sugerencias, invitaciones para hablar (con todo pagado) en cualquier parte del mundo y café, mucho café.

Nos vamos a Guatemala: semana de las mejores prácticas en la Web

Gracias a una invitación de mi viejo amigo Christian van der Henst y Prensa Libre pasaré una semana en Guatemala y podré hablar sobre administradores de contenidos de código abierto, blogs y cómo vivir como desarrollador web en los Premios Exponet 2007.

Si estás en Guatemala entre el 1 y 3 de octubre de 2007 y aún no te has inscrito te invito a hacer tu reservación y pasar un buen momento con desarrolladores y geeks de todo latinoamérica. ¡Allí nos vemos!

Aplicaciones de código abierto para modelar bases de datos

¿Qué herramientas de código abierto existen para modelar bases de datos? Es la pregunta que muchos desarrolladores nos hacemos a menudo.

Existen varias alternativas comerciales, muy sólidas y completas, claro que sí, pero los precios son prohibitivos para la mayoría de desarrolladores solitarios que rodamos por el mundo. Basta un ejemplo: el reconocido CA Erwin Data Modeler cuesta US$ 3995 por licencia, con esa cantidad prefiero completar mi lista de gadgets que quiero para el 2007 y añadir otra laptop con Linux a mi arsenal.

Hace algún tiempo encontré a DBDesigner 4 y lo utilicé en varios proyectos para modelar mis bases de datos MySQL, el único RDBMS que maneja, y me alegré al saber que MySQL había adquirido el producto y lo relanzaría como MySQL Workbench, sin embargo MySQL ha enfocado sus esfuerzos en sus otras herramientas y el avance en MySQL Workbench no ha sido significativo, aunque hace poco leí en los foros de MySQL que pronto estaban retomando con fuerza el desarrollo de Workbench. DBDesigner 4 aún está disponible y es una buena opción si solo necesitas modelos para MySQL, aunque la instalación en Ubuntu es un poco complicada (en Fedora no tuve problemas).

¿Pero qué sucede si, como yo, también usas PostgreSQL? La única alternativa de código abierto que encontré hace algunos meses fue Mogwai ER-Designer, permite trabajar no solo con MySQL y PostgreSQL sino también con Oracle y otros RDBMS comerciales. Mogwai ER-Designer es una aplicación Java por lo que corre en cualquier sistema operativo. Desafortunadamente la interfaz aún necesita un poco más de trabajo y el proceso de creación de modelos, aún cuando teóricamente correcto (incluyendo el uso de dominios), no es muy amigable, ello sin contar que el desarrollo de la aplicación parece haberse detenido.

La opción que ahora estoy usando, y que recomiendo, es Power*Architect, al igual que Mogwai está escrito en Java, por lo que es multiplataforma, y funciona tanto con MySQL, PostgreSQL, Oracle y otros RDBMS.

PowerArchitect tiene una interfaz mejor diseñada, crear modelos es muy sencillo y generar SQL toma unos pocos clics. El equipo de desarrollo decidió abrir el código de PowerArchitect hace muy poco y aunque hay mucho por mejorar (como el uso de tipos nativos para auto_increment en MySQL y serial en PostgreSQL) creo que van por muy buen camino y la versión 1.0 promete.

Así que allí lo tienen, hay una luz en el horizonte de las aplicaciones de código abierto para modelar bases de datos. ¡Oh!, y si conoces más cuéntanos sobre ellas.

Actualización 19 setiembre: Sean me comentó que los tipos nativos auto_increment en MySQL y serial en PostgreSQL ya funcionan en las últimas versiones de Power*Architect.

Necesitamos estándares para el correo electrónico

Soy usuario de Campaign Monitor desde hace mucho y hace poco empecé a trabajar con ellos en mejorar el módulo para Drupal que escribí meses atrás.

Creo que David Greiner y todo el equipo en Campaign Monitor están haciendo un gran trabajo, en especial cuando se trata de promover el uso de estándares web para correo electrónico, y ese es el motivo de este artículo, generar conciencia entre los desarrolladores web y en las compañías que crean clientes de correo electrónico para que podamos utilizar HTML y CSS estándar sin importar que cliente se utilice.

Desde 456 Berea St. Roger Johansson apoya la idea y creo que todos los que estamos involucrados profesionalmente en el desarrollo de proyectos Internet debemos hacerlo.

No esperes más y participa de la iniciativa de Campaign Monitor ayudando a definir los requisitos para usar estándares web en correo electrónico.

Desarrollo en los tiempos de Facebook y Second Life

Llevo varios años participando en redes sociales y conozco el poder de conectarse con la gente correcta, me encanta ser parte de una muy activa sociedad en la Red, ¡diablos!, ¡tengo una buena vida gracias a ello!

Aún así, no le había dedicado tiempo a pensar en el gran impacto que está teniendo Facebook y en las muchas oportunidades que se abren para quienes desarrollamos en la Web hasta que empecé a trabajar con Facebook Platform.

Un muy entretenido proyecto en el que ya llevo algunos meses involucra conectar módulos de Drupal con Facebook y es una excelente forma de explorar nuevas formas de crear experiencias en Internet.

Como muchos de ustedes saben (imaginemos que eres un lector regular, si no lo eres ¿qué esperas para suscribirte?), soy un fanático de Second Life, así que encontrar un grupo de residentes en Facebook me pareció genial, acabo de unirme, y fue un claro indicio de lo que se viene.

No me queda duda que pronto veremos germinar muchos proyectos alrededor de metaversos como Second Life y plataformas de redes sociales como Facebook. Sí, plataformas, Facebook ha cambiado las reglas del juego por completo.

Definitivamente existen muchísimas opciones para quienes crean experiencias en la Red, y son buenos en ello, pero si creías que ya habían demasiadas especialidades en el cambo de desarrollo web piensa de nuevo pues pronto veremos expertos en aplicaciones de Facebook y diseñadores de Second Life trabajando con programadores de Drupal y arquitectos de información.

Epa, vivimos un período muy emocionante, ¿no lo crees?

Así que, ¿a dónde crees que te diriges como desarrollador web? Claro, si es que podemos seguir llamándonos así.

Oferta de lanzamiento: web hosting para desarrolladores web

Actualización al 21 de diciembre de 2007: La oferta ya no está vigente y Alpha ya no acepta nuevas cuentas.

Alpha, el primer servidor en la nueva etapa de servicios de web hosting de Ventanazul, está listo.

Y aún cuando no he terminado con los detalles oficiales ya puedo anunciar la oferta de lanzamiento.

Se trata de cuentas de reseller solo para desarrolladores web, justo lo que necesitas para hospedar tus proyectos y los sitios de tus clientes.

Esta es la oferta: Los primeros 25 clientes podrán adquirir su plan reseller (detalles abajo) a solo US$ 20 por dos meses, es decir US$ 10 por mes, el precio normal será de US$ 35 por mes.

Se trata de un plan único que incluye:

  • 10 Gb. de espacio en disco.
  • 100 Gb. de transferencia mensual.
  • Dominios y subdominios ilimitados, listas y cuentas de correo ilimitadas, bases de datos ilimitadas.
  • cPanel y WHM con la nueva versión 11.
  • MySQL 5.
  • PHP 5.2.
  • PostgreSQL 7.4.

El servicio está dirigido solo en desarrolladores web pues así podremos enfocarnos mejor en sus necesidades, no atenderemos a usuarios finales.

Alpha es un servidor AMD Dual Opteron 252 con 4Gb. de RAM y discos SCSI, está corriendo en LinkLINE Datacenter en Los Angeles, California y tiene conexiones redundantes a través de los principales ISP de Estados Unidos.

Todas las cuentas recibirán atención técnica a través de Ventanazul Helpdesk.

Para adquirir tu cuenta contáctame ya. Puedes pagar con tarjeta de crédito, Paypal, Pagum, depósito bancario si estás en Perú o Western Union.

En breve publicaré más detalles sobre los nuevos servicios de web hosting y ya estoy trabajando para pronto poder correr aplicaciones Ruby on Rails y Django.

Recuerda, US$ 20 por dos meses solo para las primeras 25 cuentas.