jueves, 7 de julio de 2016

Lecciones sobre código abierto

Hace tres años, nadie hubiera imaginado que EMC ofrecería proyectos de código abierto para que todo el mundo tuviera libre acceso a ellos. Antes creíamos que si creábamos código fuente no debíamos compartirlo bajo ninguna circunstancia.

Hace casi tres años, nos dimos cuenta de que para ganar en el mundo nativo de la nube debíamos cambiar drásticamente nuestra postura respecto del código abierto. ¿Por qué? En primer lugar, porque tener éxito como proveedor en este espacio significa que la comunidad forme parte de lo que uno hace. En segundo lugar, el código abierto nos permitiría evolucionar más rápido gracias al desarrollo basado en la comunidad. Y, por último, queríamos eliminar las inquietudes respecto de la dependencia de un solo proveedor. Este cambio ha tardado unos años en manifestarse, pero nuestros motores de código abierto ya están en pleno funcionamiento. Nuestra primera contribución fue el controlador de almacenamiento definido por software CoprHD. Desde entonces, hemos creado RackHD, una capa de organización y administración de hardware completa, UniK para permitir el uso de unikerneles, y libStorage, un marco de trabajo de aprovisionamiento de almacenamiento para plataformas contenedoras.


Con estas contribuciones, hemos aprendido algunas cosas sobre la participación en el mundo del código abierto que vale la pena compartir.

Si sentimos que algo está casi listo, está listo
Tradicionalmente, cuando pensamos en el lanzamiento de un producto creemos que debe ser perfecto, y que debemos resolver todos los problemas antes de lanzarlo. Pero en el caso del código abierto que las cosas estén perfectas en un principio es mucho menos importante; es mucho más importante que el código pase a dominio público para que la comunidad comience a trabajar con él. Con el lanzamiento de CoprHD y RackHD aprendimos que se gana más credibilidad si compartimos el software y somos francos respecto de su condición en lugar de pretender que todo está perfecto y tratarlo como una versión de producto finalizada.

No es necesario tener una comunidad para empezar, pero es necesario comprometerse
Tal vez crean que si crean algo de código abierto, deben tener 50 partners. De hecho, no es necesario. Yo solía creer lo mismo. La clave para impulsar una iniciativa de código abierto es mostrar compromiso con el desarrollo de un proyecto de calidad superior. Si se ofrece algo de valor, la comunidad respaldará el proyecto.

La comunidad elije por sí sola
Uno no siempre elije quiénes son sus partners; la comunidad toma las decisiones. Intel es uno de nuestros mayores partners en CoprHD, lo que tiene sentido. Pero sinceramente no había anticipado la gran contribución de la Universidad Estatal de Oregón (OSU, por su sigla en inglés). Sin embargo, un año más tarde, OSU está usando el kit de desarrollo de software descendente de CoprHD para desarrollar un nuevo plug-in de EMC ScaleIO. ¿Qué motivó la participación de OSU? Participar en proyectos de código abierto es una excelente forma de dar a conocer a los estudiantes y sus capacidades.
 
No todas las licencias de código abierto son iguales
Existen varias licencias de código abierto con las cuales lanzar software. Es sumamente importante conocer las diferencias entre las licencias, ya que pueden afectar la contribución de la comunidad. Mientras que unas pueden garantizar que todo el código desarrollado como resultado del proyecto siga siendo de código abierto, otras pueden generar mayor interés en torno al proyecto. Para CoprHD inicialmente usamos la licencia pública de Mozilla, pero después cambiamos a Apache License 2.0, porque creíamos que sería mejor para la comunidad.

¿Cuáles son los pasos a seguir? Creo que gran parte del desarrollo de software y de nuestro desarrollo seguirá por el camino del código abierto. Conocer con precisión los resultados de ello es sencillo, ya que la mayoría del código abierto que creamos se publica en nuestra Comunidad de EMC{code}. Así que visítenla, dígannos su opinión o, mejor aún, contribuyan código. Sus comentarios nos ayudarán a ser un mejor miembro de la comunidad de código abierto y su código permitirá que todos accedan a un mejor software.

No hay comentarios:

Publicar un comentario

Participe y comente este artículo. Gracias

La tecnología para smart homes estará más cerca de los colombianos

Desde su llegada a Colombia, EZVIZ, se ha enfocado en desarrollar productos que permitan la creación de smart homes en el país. Es por esta ...