viernes, enero 08, 2010

Forks

El año pasado Sun compró MySQL y Oracle compró a Sun, dejando en un futuro incierto a MySQL: nadie sabe bien qué es lo que Oracle quiere hacer con MySQL.

Lo que a mi me preocupa no es lo que Oracle haga con MySQL, sino lo que está ocurriendo ahora: ya hay varios forks (ramificaciones) del proyecto. Un fork consiste en tomar el código GPL de un proyecto y marcarle un nuevo rumbo, dividiendo esfuerzos.

Eso nunca es bueno.

Como dice Jeff Atwood en: Oh yeah? Fork you!:

Los forks se diferencian en la intención. En un fork las personas creando un fork intentan que el fork reemplace o compita con el proyecto original.

[...]

Es muy difícil lograr que un fork triunfe. Es una dolorosa pero necesaria parte de la evolución del software de código abierto. Tal como en la evolución normal de la vida, sospecho que la mayoría de los forks mueren en grandes e innumerables cantidades antes de convertirse en suficientemente fuertes como para engendrar un nuevo proyecto por si mismos.

Un fork es la piedra fundamental de cualquier proyecto de software open source, pero es un camino que no hay que tomar a la ligera.

Hace unos años hice mi propio fork de un proyecto open source. Fracasó miserablemente ya que el poco apoyo que tuve con el proyecto murió por diferencias creativas. Hizo falta mucho esfuerzo, más del que le pude dedicar.

La idea de un proyecto de software --cualquier proyecto de software-- es que todos se muevan para el mismo lado y entre todos lleven adelante el proyecto. Dividir esfuerzos va a hacer que el o los proyectos mueran.

No hay comentarios.: