Linux es tan 2008: Introducción a las alternativas

Estándar

Un sistema operativo, ¿qué es? Millones de personas te lo definirán como “el Microsoft ese”, lo cual en cristiano geek podría denominarse “el escritorio Windows”. Algunos van un poco más allá y te diferencian entre Windows, Mac y Android. Los que más saben hasta te meten “Linux” en la lista. Pero pocos saben realmente qué es un sistema operativo, y por tanto qué te ofrece, cómo funciona y por qué es importante.

¿Qué es un sistema operativo? Pues son programas que te ofrecen lo “básico”. Eso es todo. Aunque, de sobra evidente, esta definición se observa bajo un criterio muy subjetivo. Si intentamos ser un poco más profesionales, podríamos decir que está formado por un gestor de arranque, un kernel, sus drivers, las librerías nativas, un conjunto de herramientas y una interfaz de usuario. Que en el fondo es decir lo mismo, pero más geek. De todas maneras, esta definición sigue estando abierta a una combinación tremenda de funciones, diseños y conceptos en general. Es por ello que no hay únicamente un sistema, que hay espacio para una combinación abismal de sistemas: el software, como dijo Keith Curtis, es infinitamente maleable. Puedes hacerlo de cualquier manera, usando unas herramientas u otras, con una distinta jerarquía en el código fuente, que use este u otro algoritmo, que se presente al usuario así o asá, que incorpore características o sea más simple… la tremenda libertad creativa permite que un ordenador pueda ser tanto como el ser humano sea capaz de aprovechar de él, y esto se ve claramente representado en el sistema operativo.

A todo esto, quiero decir que no tenemos que pensar que un sistema operativo es algo que está ahí, estático e inmutable. Windows, OS X, (GNU)Linux, iOS, Android… ahora están ahí y son así, pero los últimos 10 años demuestran claramente que siempre hay una tendencia al cambio y a la evolución. Al fin y al cabo, Windows era el rey hace nada, y hoy día el kernel más popular es Linux (no en el escritorio, pero vamos).

Pero a todo esto: sí, muchos hemos apostado todo este tiempo porque los sistemas tipo (GNU)Linux han de destronar a Windows, debido a su alta calidad en comparación (seguridad, estabilidad, personalización, variedad, calidad de código). Pero seamos sinceros. ¿De verdad Linux es ya la solución?

Linux se creó un poco con la idea de clonar Minix, siguiendo los estándares de UNIX. Teníamos las herramientas de GNU, la metáfora “todo es un archivo”, el clásico servidor X11… esto, claro, a principios de los 90, porque rápido empezó a engordar: Qt y GTK+, SELinux, herramientas tipo LLVM, LXD, zRAM, systemd, kPatch… como unos pocos ejemplos importantes. Junto con la cantidad masiva de drivers en el kernel, se evidencia así que Linux ha engordado demasiado. No tenía un rumbo fijo, y las bases de UNIX (ya de por sí bastante deterioradas debido al acomplejamiento que sufrió entre los 80 y los 90) se han perdido totalmente. No hay forma alguna de salvar el desastre: Linux se derrumba poco a poco. A medida que se van añadiendo ideas sin un concepto claro de cómo encajarlas, los sistemas operativos engordan, se vuelven más lentos y al final pierden practicidad. De esto no nos salva ni la ley de Moore (que, por cierto, parece ser falsa, como van demostrando los últimos Intel y los procesadores de Adapteva).

¿La solución? Hay que comenzar de nuevo. Otro sistema operativo ha de surgir. Que Linux se quede para los “geeks no-freaks”, si es que eso existe, y a lo mejor al usuario del hogar. Pero necesitamos algo diferente: más puro, eficiente, sencillo, potente y productivo. Vamos, mejor. Y como el software se puede hacer de infinitas maneras, es posible crear infinitos sistemas operativos. De hecho, es bastante probable que ya exista la alternativa, aunque no sea muy conocida ni entre los “enterados” de la informática.

Se me han venido tres alternativas tanto a Windows como a Mac/iOS y Linux en general, después de hacer mis (re)investigaciones.

La primera es ReactOS. Me diréis “eso es un clon de Windows NT, es feo, ¡feo!, ¡te odio!, ¡nuestra relación no tiene sentido!, ¡te hice los cuernos y me encantó!”. Vale, vale, entiendo vuestra furia. El Registro es feísimo. Pero después de todo, ReactOS tiene unas ideas que seguir estrictamente, y así pulir el sistema tanto como sea posible. El propio kernel no está mal diseñado, y de hecho es una de las pocas cosas que en Microsoft se dedicaron a trabajarlas. Y en realidad, ni es necesario mantener Win32: existe la posibilidad de mantener NT como el núcleo ligero y rápido que ya ha logrado ser (más estable, plis), y construir sobre él unas APIs más simplificadas, jerarquizadas y útiles. Vamos, algo como WinRT, pero que la gente se tome en serio. He estado experimentando con las últimas SVN de la 0.4, y todo parece ir bastante bien, así que confío en la posibilidad de que un día nazca un proyecto basado en ReactOS que cambie las reglas del juego (y no, no es WôÓS).

Luego tenemos ya una alternativa más seria. Haiku. Al igual que ReactOS clona a Windows, Haiku clona a BeOS. La diferencia entre Haiku y Windows, por tanto, es que en Haiku se copian buenas ideas. Esto es muy fácil de comprobar usando el sistema y creando un programa sencillo en C++. El cambio entre NT y Haiku es abismal, y el sistema poético gana por goleada. Es obvio que las tecnologías que este proyecto ha adoptado son dignas de que la propia Google les financie mediante las GSoC, y otras tantas donaciones como los Mac Mini de Mozilla. Es difícil describir lo bello que es este sistema operativo mediante palabras, es algo que hay que experimentar por uno mismo. La armonía en las bibliotecas, en las herramientas, en el kernel, el gestor de ventanas integrado, las interfaces gráficas de las aplicaciones, la configuración… es todo muy bonito y refinado, al igual que un haiku. Sé que el sistema no se llama así por ser metafórico, pero no podría tener nombre mejor.

Y por último, Plan 9 (que ejecuto, eso sí, como su fork 9front). Este sistema es ampliamente ignorado y minusvalorado, así que hay que tratarle con cuidado. Es demasiado inhabitual jugando en contra de los conceptos de WIMP y de diseño tradicional de sistemas. Digamos, que si Haiku es limpio, Plan 9 es impoluto, aunque su cara no sea muy de hacer amigos. O sea, tecnológicamente hablando es casi perfecto, aunque para el usuario pueda resultar caótico a simple vista. Esto se debe a que ha sido desarrollado por Bell Labs como un comienzo nuevo tras los desastres de UNIX. Muchos de sus conceptos fueron reutilizados y otros nuevos se añadieron, buscando siempre la máxima simplicidad en todo el sistema, desde el detalle más oscuro del código fuente hasta el gélidamente vacío escritorio. Implementa el concepto de “todo es un archivo” hasta el límite (puedes hacer capturas de pantalla copiando el archivo del display, y que un servidor FTP se use como una carpeta más dentro del sistema de archivos), utiliza un dialecto de C atípico pero práctico, su gestor de ventanas Rio es increíblemente flexible y simplista (que ni siquiera minimalista)… Todo esto se traduce en un software de calidad increíblemente excelente, pero por desgracia difícil de ser apreciado.

¿Cuál es mi propuesta para reemplazar Linux entonces? Bastante flexible, siguiendo tres conceptos para definir al usuario de ordenador (sí, no hablo de un único sistema que haga todo, eso sería muy estúpido, porque no existe una única solución para todos):

  • Playblock: En este grupo entra la informática “del hogar”, esto es, entretenimiento y ofimática básica. Debido a su simplicidad, limpieza y alto rendimiento, Haiku es la solución a nivel teclado/ratón (ya veremos qué hacer con interfaces táctiles).
  • Workblock: Aquí entra el que trabaja en ofimática avanzada, diseño gráfico, creación de multimedia o programación para trabajo. Tanto NT como Haiku pueden cumplir lo que el usuario busca, esto tendría que resolverse por cada caso individualmente.
  • Hackblock: Es el grupo de los hackers, de los que programan por diversión y se ponen a enredar cada cosa que se les ocurra. No tengo ninguna duda, Plan 9 es la solución ideal, es una especie de playground gigante donde hacer cualquier cosa que se te ocurra. Y además, es un buen desafío 😛

Y a todo esto, hace falta una conclusión. Linux ha envejecido ya, dejadle morir antes de que se ilusione demasiado con su fama. Ahora mismo necesita mucha optimización para ser un gran sistema, en unos años puede que no sea posible. Así que es mejor dejar paso a nuevas ideas. He propuesto las mías, cada cuál que decida qué es mejor. ¿Que MenuetOS es el mejor sistema porque tiene un rendimiento supremo y puede funcionar de sobra en sistemas embebidos y miniordenadores? ¿Que a lo mejor prefieres AmayaOS porque es más chulo? Bueno, son propuestas. En cualquier caso, sean mis ideas buenas o no, que se reemplacen las que se pensaban que eran mejores, porque han fallado.

Y yo ni me di cuenta hasta hace unos pocos días.

¡Feliz año nuevo 2015!

P. D.: Sí, se me ocurrió GNU HURD. Pero es que ni ellos están interesados en que surja algo útil. Poh vale.

Anuncios

Normandy, o cómo Nokia creó un caballo de Troya épico

Estándar

Antes de todo, disculpad mi repentina desaparición del blog, se me olvidó publicar algo que fuese interesante. Creo que finalmente tengo algo que hará explotar vuestros cerebros, y puedo afirmarlo sin (muy probablemente) equivocación alguna: Microsoft va a lanzar un dispositivo con Linux de serie.

Creo que los fans de Linux ya podemos hacer un Epic Breakdance Harlem Shake Gangnam Style In Your Face TEEHEE mientras sacamos el dedo medio a Microsoft. Sería divertido. Yo al menos no voy a hacerlo. Porque nunca saco el dedo medio a nadie.

Si esta afirmación te parece imposible (algo que entiendo totalmente, ya que los de Redmond son el antagonista por naturaleza del software libre), vamos a ir analizando por partes.

Septiembre de 2013. Microsoft anuncia que comprarán los departamentos de dispositivos y servicios de Nokia. Que la compra se realizaría era algo obvio, pero no se esperaba en aquél momento. ¿Se lo esperaban por entonces? No lo sé, porque ya estaban trabajando en Normandy, el Nokia de gama baja ejecutando Android bajo el capó. De hecho, hace ya más de un año, Elop no descartaba el usar el sistema del androide en sus móviles.

Diciembre de 2013, @evleaks va revelando datos del misterioso Nokia Normandy, aunque la primera foto salió en noviembre. Se difunde la noticia. Es Android. Es Nokia. Tiene el estilo de un Asha. Parecía real. Pero con Nokia en manos (creíamos) de Steve Ballmer, no había posibilidad de que el celular pasase de unos prototipos que jamás verían la luz… ¿verdad?

Enero de 2014. Lo adivináis, ¿no? Prototipos revelados. Estaban trabajando todavía en ello, nadie había dado la orden de detener el proyecto. Parecía que el día se acercaba, finalmente un Nokia sería el techo bajo el que viviría un androide.

Hoy, 10 de febrero de 2014. Rumores de que Normandy será desvelado en MWC 2014. Ya no hay más que decir. Nokia es de Microsoft. Presentan un móvil con Android. Recordemos que Android es Linux.

Microsoft ha estado siempre luchando contra Linux: poniendo barreras, blasfemándolo, insultando a sus programadores, tirando por la ventana todo tipo de colaboración, demandando por patentes… hasta que no pudieron más. Primero Hyper-V (porque usaba software licenciado con GPL y se intentó ocultar), luego Windows Azure (porque los sistemas Linux son los claros ganadores en el lado del servidor). Ahora llega el turno de que se traguen sus palabras y muestren al mundo un aparato con el kernel de Torvalds.

Ya iba siendo hora.