Entre los comentarios de estos días en la red, uno de los más tensos gira en torno a los sistemas operativos de Google y Apple, Android e iOS. Parece que las dos compañías andan con la mosca detrás de la oreja y no dudan en intentar demostrar al usuario que su sistema es realmente válido pero, ¿es el sistema de Google fragmentado y el de Apple un modelo de integración? o por el contrario ¿es Android un sistema abierto y Apple cerrado?

La historia comenzó cuando el CEO de Apple dijo que Android «no es un sistema operativo abierto, es fragmentado ya que los programadores deben trabajar sobre capas de software, y esto genera problemas inesperados y un desastre para los desarrolladores«.

La respuesta de Google no se hizo esperar por parte del creador de Android, Andy Rubin. A través de su Twitter colgó una muestra del código de Android para probar la definición de abierto a la que hacía alusión Steve Jobs: "mkdir android ; cd android ; repo init -u git://android.git.kernel.org/platform/manifest.git ; repo sync ; make.

Estos comando escritos por Rubin vienen a decir que el código fuente de Android se encuentra disponible libre en la red para bajarlo y compilarlo. Hasta ahí todo real. Pero, aunque Steve Jobs no dice la verdad, más bien a medias, puesto que ni su sistema operativo es integral (es más bien integralmente de Apple y nadie más), ni Android es fragmentado del todo, algo de razón lleva en sus palabras.

Del iOS sí sabemos todo por una razón, es un sistema operativo cerrado en el que trabajan sólo los programadores de la compañía (Apple). De su mejora o deficiencias en el funcionamiento sólo se ocupan ellos y por lo tanto las críticas o alabanzas también se las llevarán los mismos, sin más. Es evidente que ningún programador que no trabaje en Cupertino estará en desacuerdo con esta forma de trabajar, pero así trabajan ellos y no les va mal. Obviamente, la definición de software libre ofrece avanzar en el desarrollo en todos los términos para la comunidad, pero la fragmentación produce una mayor inestabilidad, puesto que no todos los desarrolladores son capaces de darle algo mejor. El sistema de Apple es un modelo de negocio cerrado y desinteresado de cualquier avance pero gana en estabilidad.

Paso a Android. El código que muestra Rubin demuestra que se trata de un código fuente libre, pero si hablamos de los teléfonos Android ¿son tan libres como parecen? Yo creo que no. Android es, además de un sistema operativo, una plataforma móvil y desde esa perspectiva se aleja mucho de ser un sistema donde desarrollar aplicaciones con libertad. No se puede llevar a un acceso por terminal como Linux o a root, incompatibilidad con Java SE y ME, no soporta todas las herramientas GNU ni utiliza X.org.

Además, Android no ofrece a los desarrolladores la posibilidad de llevar un seguimiento de la versión actual del sistema operativo que está siendo desarrollado. Tienen que esperar a que el equipo de desarrolladores internos termine la versión y suelten el código libre a los desarrolladores, por lo tanto no es lo que se entiende por código abierto, si entendemos por abierto compartir el control con la comunidad.

Hoy quizá dista mucho de ser el software libre que todos pensamos, aunque no dudo que al final sea así. Google puede hacer lo que quiera con su software y SO, lo puede liberar del todo o lo puede cerrar como Apple. En estos momentos, aunque queda bien decir que Android es libre y abierto, la definición no es exacta. Comparado con Apple sí, eso está claro, pero ahora mismo sólo podríamos decir que el software de Android es libre, aunque la plataforma aún no y parte del código sigue siendo privado. Mientras tanto, no se diferencia tanto de Apple y su iOS.