Los X fracasos de Linux (de verdad)
Algunos me habéis dado un pequeño tirón de orejas por el titular amarillista que hace unas semanas utilicé para ilustrar -precisamente- lo fácil que es crear titulares que hagan a la gente hacer clic, así que hoy me he querido redimirme creando un artículo en el que hablo de lo que no hablé en aquella ocasión: de los grandes fracasos de Linux en el escritorio.


Para los que no me conozcan tanto, tengo que avisar: tengo un respeto y una admiración casi religiosos a Linux y al Open Source. Creo que este proyecto ha cambiado el mundo para mejor. No tanto como para que el común de los mortales lo conozca, pero sí para que ese mismo común de los mortales lo utilice a diario sin darse cuenta de que lo están usando. Eso, en sí, ya es un logro. Uno enorme.
Pero como decía, para el usuario común Linux no existe. O si lo hace, es con un halo de misterio y con algo peor: con el sambenito de que Linux es solo para
usuarios avanzadosfrikis. De eso no tienen demasiada culpa todos los que han contribuido a GNU/Linux (Linux para acortar, no os pongáis tontorrones con esto), pero el caso es que algo de esa fama se la ha ganado a pulso. Ese ha sido uno de los muchos fracasos que en mi opinión han
condenadorelegadosituado de forma involuntaria (o voluntaria) a Linux y al Open Source a la situación en la que está. Que es una en la que su papel para el usuario final es precisamente mucho menos relevante de lo que debería ser.
Antes de nada, aclarar que este artículo está totalmente circunscrito al escritorio. Por supuesto que Linux y el Open Source han cambiado el mundo el segmentos como la supercomputación, la alta disponibilidad, los grandes servicios de internet, la investigación académica y científica o la movilidad y los dispositivos embebidos. Pero el sueño de Linux en el escritorio jamás llegó a hacerse realidad, y eso se debe a unas cuantas razones. A unos cuantos fracasos.
¿Cuáles han sido esos fracasos? A ver si los recuerdo todos.
Apoyo de los fabricantes
El soporte de todo tipo de periféricos en Linux ha tenido siempre su cara y su cruz. Por un lado se ha convertido en el sistema operativo perfecto para dar soporte a nuevas tecnologías y estándares. Por otro, ha sido el gran olvidado de los fabricantes de todo tipo de componentes y periféricos.

El dilema de los controladores: o aceptabas instalar drivers propietarios (binary blobs) y traicionabas el espíritu del software libre, o tratabas de tirar con controladores abiertos que a menudo no permitían sacar todo el partido a esos componentes y periféricos.
It just doesn’t work
Al contrario de lo que ocurre con el ‘it just works de Apple‘ -que yo califiqué como un mito-, en Linux esa falta de soporte hardware hace que la solución cuando algo no nos funciona sea más bien incómoda.

Las posibilidades son infinitas: un teclado con un mapa de teclado incorrecto, una pantalla que no coge bien la resolución, una cámara de fotos a cuyas fotos no podemos acceder o un mando de videojuegos que no podemos configurar… o que podemos configurar demasiado. Linux no es para los que no quieren pasarse horas aprendiendo y dejándolo todo a su gusto. Y eso incluye al 99% de la población.
Demasiadas opciones…
Hablé hace más de cinco años de Linux y los tarros de mermelada, y repetía tema poco tiempo después al hablar de la paradoja de la elección. También he repetido en numerosas ocasiones que creo que la principal ventaja de Linux es también su mayor desventaja: hay demasiadas opciones. No me refiero solo a las 272 distribuciones activas en la base de datos de Distrowatch, sino a todas las opciones que hay para cada cosa una vez uno elige esa distribución que tanto promete.

Entornos de escritorio, gestores de ventanas, editores de texto, navegadores, clientes de correo, etc, etc. Linux es tan personalizable, tan configurable, que asusta. Los desarrolladores se olvidan de que el usuario final no suele querer tantas opciones cuando utiliza un producto: quieren algo con lo que puedan ir a tiro hecho. Con lo que no tengan que pensar (demasiado). Por eso otras triunfan donde Linux ha fracasado, en el escritorio. Porque el usuario objetivo allí no tiene esas necesidades o no quiere tenerlas. Qué pereza. Algunos lo hacéis, claro, pero sois pocos. Iba a decir somos, pero ya no soy un usuario frecuente de Linux.
… y demasiadas formas de aprovecharlas
Todas esas alternativas plantean curvas de aprendizaje más o menos pronunciadas, y una de ellas es la que afecta a la forma de aprovechar estas distribuciones y sobre todo a la hora de instalar nuevas aplicaciones.

Que sí. Que APT es una maravilla. Que otros sistemas de paquetes también son la pera limonera. Pero tratad de explicárselo a vuestra madre, a vuestro amigo el dentista, o a vuestra compi de contabilidad. Lo que ellos quieren es una App Store rollo Apple. Que permita hacer búsquedas, que esté bien catalogada, que ofrezca opiniones de usuarios y que ya en plan utopía permita vender aplicaciones. Porque amigos míos, que uno use Open Source no significa que todo sea gratis, como explico más adelante. No hay una forma unificada de instalar software en Linux, y eso hace que para cada distribución (bueno, digamos que “grupo de distribuciones”) las cosas sean distintas. Que nos digan eso de “Oye, esta aplicación no está disponible” y tengamos que responder “Pero alma de cántaro, ¿cómo va a estar? Tienes que añadir el repo PPA y rezar para que la clave GPG no falle, luego actualizar la lista de paquetes y listo. Pareces nuevo“.
Exacto. Soy nuevo. Y si me respondes eso, salgo corriendo. Pero súper rápido, además.
Talibanes
No puedo con los talibanes. No puedo con los extremos y los extremismos. Por eso mismo creo que Stallman es gilipollas, y por eso tengo esa actitud por aquí cuando me salta algún usuario en el que la prepotencia y esa visión tan sesgada que hace que los árboles nos impidan ver el bosque. Los seres humanos somos muy amigos de tomar partido, de elegir bando, de ser del Madrid o del Barça.

Eso no sería del todo malo si no implicase que uno acaba defendiendo lo indefendible por el mero hecho de ser de X o de Y. El problema afecta a otras muchas plataformas tecnológicas, pero en Linux es especialmente deplorable. Esas guerras internas tan absurdas que enfrentan a GNOME contra KDE y el resto, o a Ubuntu contra el resto del mundo -que alguien odie tanto a Ubuntu con todo lo que han hecho por Linux y el Open Source es de juzgado de guardia-, o a emacs contra vi tienen su puntito interesante o simpático si se quedan en debates argumentados que pueden tener su lado gracioso, pero por lo general acaban sacando lo peor de cada usuario. Esas flame wars han logrado algo curioso: que los rivales de Linux no tengan que preocuparse demasiado por él, porque ya se ocupaban los linuxeros de perder el tiempo con esas estúpidas repúblicas independientes. El esperado “año del escritorio Linux” jamás se produjo y jamás tendrá lugar, y la culpa la tienen los estúpidos usuarios que en otros aspectos son absolutamente brillantes. Pero en eso al menos son estúpidos. Aquí podéis intentar rebatírmelo. De verdad. Intentadlo.
La soledad del programador Open Source
A este tema le dediqué un post específico en el que reflexionaba sobre lo que había vivido durante todos esos años en los que me dediqué a escribir sobre Linux en MuyLinux y Osphérica -curioso, siguen llegando 15 o 20 visitas al día allí a pesar de haberlo abandonado totalmente-. En cómo había visto cómo esa libertad y esa anarquía solían dar sorpresas geniales, pero también ciclos de desarrollo insostenible.
Hay proyectos en los que efectivamente la magnitud del desarrollo hace que muchos colaboradores se apunten a todo tipo de tareas. El kernel Linux es el mejor ejemplo de ello, pero hay otros como GIMP en los que también hay nutridos grupos de desarrolladores colaborando. Esas suelen excepciones a la regla, porque a menudo el desarrollador Open Source es alguien que trabaja solo y que tendrá muy complicado hacer que su proyecto llegue a buen puerto porque la mayoría de la gente que vea su código en GitHub se limitará a aprovecharlo sin contribuir o, como mucho, hará un fork y pasará de la versión original. Hay de todo, por supuesto, pero la norma cuando uno echa un vistazo a quién está detrás de algún proyecto es la de encontrarse con un desarrollador independiente que trata de sacar la cosa adelante con el sudor de su frente, sin más recompensa que la de su propio orgullo.
El Open Source necesita diseñadores, no programadores
Vamos con más reflexiones que ya había hecho en el pasado, y en este caso por partida doble (1 y 2). Mira que hay cosas chulas a nivel de interfaz en Linux y en el mundo Open Source. Los modernos entornos de escritorio son un buen ejemplo de ese cuidado por el detalle, y además está esa capacidad de personalización que es prodigiosa para quien sepa y pueda usarla.

Pero por cada uno de esos proyectos que sí aciertan en ese apartado hay cientos que no lo hacen. Desarrollos que internamente son un prodigio pero que de cara al usuario son un error. Aplicaciones y servicios que tenemos que usar con línea de comandos -eso nos mola a algunos, pero de nuevo, somos los menos- cuando lo que el usuario de toda la vida querría es una buena interfaz de usuario. No un GUI hecho con Python en dos patadas en plan cutre, con miles de botones y pestañas. No. Algo usable.
Falsas expectativas
Me encanta que existan proyectos como OpenOffice o LibreOffice, de verdad. Durante unos meses este año traté de lidiar con LibreOffice aprovechando que salía la versión 5 y que parecía que como siempre iba a haber mejoras apreciables en el flujo de trabajo.

Pero no. Seguro que LibreOffice se defiende bien con documentos propios, pero trabajar con cosas que provienen de Word es un tostón. No es culpa de LibreOffice, pero es que por todos lados aparecen inconsistencias y molestias que hacen que el trabajo con documentos nativos sea un pequeño infierno. Os lo digo porque lo he vivido estos meses: no mola. Me encantaría que Microsoft sacase una versión de Office para Linux, y sé que en realidad la virtualización o desarrollos como CrossOver y Wine permiten utilizar software de Windows bajo Linux, pero eso supone un molesto paso intermedio más. Uno que me resta comodidad y que se suma a otras pequeñas molestias.
Y lo que es cierto con Office lo es también con otras aplicaciones como por ejemplo las que permiten hacer edición de vídeo, o las que permiten editar imágenes. GIMP es el infierno de los infiernos en este ámbito. De verdad, admiro el proyecto, pero jamás he logrado acostumbrarme a GIMP. Lo que tenían que haber hecho desde hace tiempo es copiar todo de Photoshop, pero en formato Open Source. Atajos, estructura de los menús, formato de trabajo, y a partir de ahí aplicar las ideas que lo hicieran superior. Pero no: tenían que cambiarlo todo. Infierno. La curva de aprendizaje es para mí demasiado elevada. Son algunos ejemplos de esas falsas expectativas que crea el Open Source: uno se cree que todo irá como lo viejo conocido, por malo que sea, pero no. Puede ser mejor, pero lo que seguro que es es distinto, y eso hace que uno tenga que adaptarse. Y eso implica un tiempo precioso que muchos ya no tenemos.
Ganar dinero también mola
Ganar pasta con Linux está mal visto. Red Hat es una de las pocas excepciones conocidas y reconocidas. Una empresa que hace mucho que se olvidó del usuario final y de la utopía del escritorio Linux -los chicos de Fedora no se han rendido- y que se dio cuenta de que si quería ganar dinero con el Open Source tendría que dirigirse a las empresas.

Pero eso de concebir que en Linux algo cueste dinero es como raro. Como que no puede ser. Eso hace que las tiendas de aplicaciones tengan una selección de aplicaciones comerciales bastante deprimente -al menos lo eran la última vez que lo comprobé-, y que lógicamente los pobres desarrolladores ni siquiera osen en pensar en que el usuario final pagará por sus programas. Si todo el mundo regala su tiempo, yo no voy a ser menos, parece ser el lema.
Que está muy bien, ojo, pero hay cosas que hay que pagar cuando están bien hechas y/o cuando les sacamos partido. Os sonará un poco el discurso, pero luego pasa lo que pasa, que esos botones de donación que aparecen en las páginas de algunos de estos proyectos están ahí los pobres solitarios sin que apenas nadie les haga caso. Si quieres ganar pasta con el Open Source, haz lo que Red Hat. Primero desarrolla una aplicación o servicio Open Source brutal e intenta que además tenga una buena interfaz. Libera el código, que cualquiera pueda contribuir aunque en realidad pocos (o nadie) vayan a hacerlo. Luego oriéntala a las empresas y ofrece servicios de valor añadido sobre esa aplicación o servicio brutal (formación, soporte). Y por último, cruza los dedos. Con un poquito de suerte, habrás logrado un modelo sostenible que te permita vivir de tu aplicación sin traicionar los valores del Software Libre y del Open Source.
Aquí no solo hablo de los desarrolladores de aplicaciones. ¿Por qué los de servicios o de juegos nunca han apostado demasiado por Linux? ¿Por qué no tenemos un Netflix para Linux, o por qué no ha salido Fallout 4 para las Steam Machine? En el primer caso, porque lo de que haya algo parecido a una plataforma DRM en Linux es inasumible para los defensores de la filosofía FLOSS. En el segundo, porque solo un 1% de los usuarios de PCs y portátiles en todo el mundo utilizan Linux, y mejor olvídate de los que usan drivers Open Source para sus gráficas de NVIDIA o AMD, porque el rendimiento sale perjudicado. Eso reduce las posibilidades de ganar dinero, y los desarrolladores de juegos solo quieren eso.
Hacer que el mundo sea un poquito mejor.Ganar dinero.
Otras opiniones relevantes
Las opiniones sobre las claves que llevaron a Linux y al Open Source a la situación en la que está en el escritorio -insisto, hablo de este apartado únicamente- son diversas y variadas, pero hay algunas que sí que quería dejar como postre tras el post.

La primera, la de Miguel de Icaza, que en su blog, Tirania (siempre me encantó) hablaba ya en 2012 sobre las cosas que para él habían fallado en Linux. En ese post dejaba su potencial solución a todos los problemas:
The only way to fix Linux is to take one distro, one set of components as a baseline, abadone everything else and everyone should just contribute to this single Linux. Whether this is Canonical’s Ubuntu, or Red Hat’s Fedora or Debian’s system or a new joint effort is something that intelligent people will disagree until the end of the days.
Coincido al 100%, y de hecho Icaza acabaría hablando de su salto al Mac y a OS X tras su travesía con Linux. Creo que alguien que ha creado GNOME de la nada tiene bien ganado el derecho a tomar esa decisión. Bien por las opciones, pero la única forma de lograr que Linux tuviese una oportunidad en el escritorio es llegar a una solución unificada y universal. Algo que precisamente va contra la naturaleza del Open Source, que parece gritar no solo “¡Libertad!”, sino también “¡Opciones!”. Pero como decía hace tiempo, probablemente la libertad es también uno de los mayores problemas de Linux.
En esas reflexiones sobre las causas del fracaso del escritorio Linux también me gustó el artículo que publicaron en Pingdom hace la friolera de cinco años y que ya entonces apuntaba a lo que debería hacer Linux para crecer, algo que he venido repitiendo en este y otros artículos. Unificación de distribuciones y GUIs, pulir el producto, “ser fanáticos en materia de consistencia y usabilidad” (me encanta eso) y tener como objetivo a las abuelas (bueno, más o menos), no a los frikis.
El año pasado citaba el genial post de un usuario en los foros de Linux Mint, y la súplica era la misma al final de su mensaje:
Por favor, por favor, por favor, pido a la comunidad Linux como un todo y a la comunidad Mint en particular lo siguiente: actuad juntos. De verdad, esto es vergonzoso.
Me da un poco de pena hablar así de crudamente sobre Linux cuando hace cinco años era capaz de intentar desmontar los argumentos de quien decía lo mismo que estoy diciendo hoy, pero leyendo mis argumentaciones me quedo un poco frío. Buen intento por mi parte, pero el tiempo ha acabado dando la razón al autor en el artículo original.
Linux está condenado en el escritorio por una crítica falta de contenido.
Bueno, esa en realidad era tan solo una de las razones. Las demás ya las he dejado claras en el resto del post. ¿La solución? La que apuntaba Icaza, me temo. De verdad, mi respeto y admiración absoluta por todos los que usáis Linux a diario y por los que seguís contribuyendo a que esa distribución o proyecto Open Source crezca y mejore en el escritorio, pero así están las cosas en mi opinión.
Qué penita. Con lo que he sido yo.
Actualización (05/01/2016): Por aquí hay otro recopilatorio de problemas más detallado y con muchos enlaces, básicamente confirma lo que he ido comentando aquí aunque no trata algunos aspectos importantes para mí como por ejemplo el tema de la necesidad de diseñadores Open Source. Muy comentado en Hacker News, por cierto. Lectura para rato si queréis asistir al debate.
Si os ha gustado el artículo, quizás queráis aportar. Significa mucho más de lo que imagináis. ¡Gracias!
