Visión radical de Shuttleworth sobre Ubuntu Linux

Mark Shuttleworth ha recibido mucha atención en el  Linuxcon. Un poco por la celebridad que es en el mundo Linux, y otro poco por su mensaje en si. Mi recomendación es que cualquier persona que se tome en serio dedicar su tiempo y talento para Linux, software libre, cualquiera que sea su capacidad (programador, diseñador, artista, documentador, traductor, abogado de la comunidad, lo que sea) vea por sí mismo lo que Mark tiene que decir. También puede descargar para streaming local. Desde la consola:

$wget http://techcast.com/events/linuxcon/shuttleworth/shuttleworth.flv

Cadencia, calidad y diseño
Los tres puntos de Shuttleworth son cadencia, calidad, diseño, y todos ellos son parte de una visión coordinada para el futuro del desarrollo de Linux. Mark ha discutido con la comunidad esta visión ampliamente a través de su blog. Es una visión muy diferente de cómo se hacen las cosas ahora. Según Mark, el estado actual esta muy orientado al desarrollador. Los desarrolladores de software inician y mantienen proyectos, y la calidad, capacidad de respuesta, y la dirección de los proyectos son controlados principalmente por los desarrolladores. La visión de Mark es más amplia y ambiciosa:

“La gente a menudo me preguntan sobre mi fascinación por el software libre, y porque puse mucho de mi tiempo, energía y dinero en Ubuntu. Realmente creo que el proceso del software libre es la forma correcta de construir software. No sólo eso, también es por el potencial, si elevamos nuestro nivel de juego. Que podríamos llegar a definir la experiencia que la persona promedio tiene cada vez que prenda su computadora”.

El concepto suena bien, pero, ¿cómo podemos llegar ahí?

Cadencia
La nueva palabra de moda, es sobre el valor de las liberaciones y lanzamientos periódicos del software:

“El lanzamiento en sí es sumamente energizante. La liberación del software es el comienzo del viaje para muchas otras áreas de la comunidad y para nuestros usuarios. Cuando se hace un lanzamiento se tiene todo tipo de otros beneficios. Se amplía la base de personas que pueden participar. Piensen en todas las demás personas de la comunidad que quieren ayudar al divulgar tu software al mundo: documentadores, traductores, artistas, abogados de la comunidad. Sus trabajos comienzan cuando te comprometes a realizar un lanzamiento.
También genera una enorme cantidad de pruebas. Por cada persona que está ejecutando una versión de desarrollo de Ubuntu, hubo diez personas que descargaron, probaron y trabajaron con la versión beta. Y luego habrá un centenar de personas que utilicen la versión final. Interacciones cortas, ciclos más cortos significan más pruebas. También significa una mejor asignación de prioridades y planificación. Si te das una menor cantidad de tiempo, que es lo que te preguntas: ¿Cuáles son las cosas más importantes que tenemos que hacer?
Una versión trae publicidad. Estamos haciendo cosas realmente extraordinarias. Un lanzamiento es una oportunidad para salir y hablar de eso. Trae más contribuciones, mas participantes, mas usuarios”.

Puso el ejemplo de un equipo de desarrollo Web que tiene un ciclo de lanzamiento mensual. El kernel de Linux tiene un ciclo de tres meses entre cada liberación lo cual “es mágico, es energizante”. Gnome y KDE están en ciclos de seis meses.
Cadencia también es la coordinación con los proyectos a lo largo de la cadena de software. Hay algunos avances en la coordinación de la próxima versión de Ubuntu LTS (soporte a lago plazo, Long Term Support) de modo que tendrá el mismo kernel base de otros paquetes como Debian. Aun no van tomados de la mano y cantando la misma melodía, pero es un buen comienzo. Mark piensa que coordinar las versiones principales entre proyectos hará la vida de los usuarios y los desarrolladores más fácil, porque no habrá tantas versiones diferentes en el aire, y reducirá el eterno conflicto de quien es responsable de un error (bug) en particular. Ya saben a los usuarios nos encanta informar de un  fallo sólo para que nos respondan: ‘No es nuestro problema’, ‘repórtelo mas arriba’, ‘mas abajo’, ‘hacia un lado’, ‘hacia el otro’, ‘a cualquiera pero no a nosotros’.
También ayudará a los desarrolladores a reducir el número de distros a las que tienen que dar soporte y permitir una mejor colaboración y planificación.

Calidad
Este es un tema potencialmente difícil de abordar porque el desarrollo de software libre es abierto y personal. El nombre del desarrollador y el código esta expuesto a los ojos de todos. Lo que, en teoría, debiera llevar a mejores desarrollos de software, ya que hay más responsabilidad, hay más motivos para sentirse orgulloso de su trabajo, y cualquiera, otra vez, en teoría, puede contribuir.
Mark piensa que los planes y pruebas automatizadas son buenas herramientas para el control de calidad, y dice que hay una clara diferencia entre los proyectos que las utilizan y los proyectos que no. Otro beneficio es abrir las puertas a nuevos desarrolladores:

“Un montón de proyectos toman forma con un par de tipos que se conocen muy bien. Es muy difícil cruzar el abismo de ser alguien que esté interesado, se aparece, quiere hablar del proyecto, y tal vez tenga algo de código para contribuir, y llegar al punto en que tú eres uno de esos tipos.
Tal vez para algunas personas es parte de la diversión, entender esto en sentido cabal. Pero creo que es enormemente perjudicial para nuestra capacidad de hacer crecer los proyectos. Sólo las personas que son increíblemente persistentes pueden cruzar ese abismo. Considerando que, si estuvieras más abierto al código que viene de gente que no conoces, entonces es realmente emocionante para ellos, llegar a contribuir con código, y te da la energía para hacer más”.

Las pruebas automatizadas reducen los conflictos porque “No se puede discutir con el robot”. Se encuentra problemas sin señalar responsables.
La revisión de código mejora la calidad del código y es otro mecanismo para integrar a los nuevos desarrolladores, y hay programas de colaboración remota de manera que no tiene que estar en la misma ubicación física.
Mark entra en poco detalle en la gestión de control de código fuente, procesos automatizados y, aspectos específicos de la gestión de proyectos de software. Pero la sugerencia es que lo veas: http://www.linuxpromagazine.com/linuxcon/shuttleworth.

Fuente: http://linux-market-share.com/mark-shuttleworths-radical-ubuntu-linux-visio?c=1.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s