domingo, 23 de agosto de 2009

X podría aprender un montón de Vista y Windows 7

Traducción 97% perfecta de X Could Learn a Lot from Vista, Windows 7.

Durante los últimos 2 meses, y especialmente durante las últimas 2 semanas, he estado trabajando muy duro para escribir y completar mi tesis. He hecho todo el trabajo en Windows 7, pero ahora que la tesis está finalmente acabada, enviada, y aceptada, he instalado Ubuntu - e inmediatamente he recordado por qué no hago ningún trabajo serio en Linux: por el despropósito que es X.org.

Ayer, estaba usando tranquilamente mi instalación de Ubuntu 9.04. Tengo pocos problemas con GNOME como desktop environment, excepto quizás por le hecho de que Evolution y yo no nos entendemos - por alguna razón, Evolution peta (crashes) 5 veces al día. Lo ha hecho durante años, en diferentes máquinas, y todavía no sé por qué. Después de petar, tengo que matar todos los procesos relacionados con Evolution para poder tener el cliente de correo otra vez funcionando. Mi deseo: que Evolution sea reemplazado por un simple, y conciso cliente de correo, y dejar Evolution a los chicos mayores que realmente lo necesitan.

En cualquier caso, tenía un montón de aplicaciones abiertas, pero decidí distraerme un rato y mirar un episodio de 30 Rock. Navegué hasta el directorio, e hice doble clic en el episodio que quería ver. Totem se cargó, pero la reproducción era infumable. Mi Señor Quad-Core 4GB se quedó paralizado, y la reproducción iba a saltos, el audio con retraso - fue terrible.

De todas formas, como nunca me ha gustado mucho Totem, instalé VLC, e intenté ver el video con ese media player. VLC funcionó mejor, y el video era realmente visualizable, pero hizo que el resto de mi máquina fuese bastante lenta y no respondiera. Entonces, decidí redimensionar la ventana del VLC para hacerla un poco más grande.

Puf.

Y aquí vemos por qué el stack de X.org es un montón de mierda de perro humeante. VLC estaba usando la salida XVideo, que es la que usa por defecto. Aparentemente, la operación de redimensión hizo que petase XVideo. Que a su vez hizo que petase X.org. Y como todos vosotros educados Linux geeks sabéis pero algunos queréis olvidar: si X.org peta - petan todas las aplicaciones. Evolution. Chrome con unas cuantas pestañas abiertas. Pidgin con unas cuantas ventanas de conversación abiertas. Twitux. Evince con un estudio super-molón abierto (Modelado Matemático de un estallido de una Infección de Zombies). OpenOffice.org Writer mostrando la tesis de un amigo que estaba repasando.

Se fueron todos.

Ahora sé lo que va a pasar. Los fans de Linux saldrán de la carpintería, y comenzarán a hacer dos cosas. Una, comenzarán a decir que esto no es un problema, ya que la máquina seguía funcionando, y las X se reinician - y si no, puedo hacerle un ssh. Segundo, comenzarán a acusarme. Siempre acusando!

No me importa si las X se reinician, y no me importa si puedo hacerles ssh. Soy un usuario, y lo que me importa son mis aplicaciones, y los datos y los documentos que contienen. El reinicio de las X o la posibilidad de activar mi lado nerd y hacer ssh a mi ordenador no tiene sentido y no sirve para nada.

Y entonces tenemos las acusaciones. Estoy seguro de que los sospechosos habituales ya están ocupados escribiendo comentarios como churros sobre cómo todo esto es problema del driver, VLC, mío, el video de 30 Rock, el alineamiento planetario, los tactos rectales, lo que sea.

Vamos a echar un ojo a sistemas operativos con stacks gráficos modernos, avanzados y robustos: Windows Vista y Windows 7. Ambos tienen un stack que está tan lejos de X.org que es como comparar un Airbus A380 con el avión de los hermanos Wright. ¿Sabes lo que pasa cuando un driver gráfico peta en Windows Vista/7?

No pasa una mierda.

La pantalla parpadeará un poco, puede que seas enviado a Aero Basic durante unos segundos, y luego el driver gráfico será recargado, y todo volverá a ser normal. Podrá aparecer un diálogo pidiéndote enviar información de debug a Microsoft. Ninguna de tus aplicaciones petará, no se perderá ningún dato - de hecho, difícilmente te darás cuenta. El stack gráfico de Windows Vista y 7 es tan avanzado, que incluso actualizar los drivers gráficos no requiere reiniciar el sistema operativo ni el entorno gráfico - la pantalla parpadeará, Aero Basic durante unos segundos, y puf, nuevos drivers funcionando (nota, sin embargo, que los fabricantes de chips todavía no aprovechan esto, y seguirán forzándote a reiniciar. Usa Windows Update, y verás cómo deberían hacerlo).

El resultado final de todo esto es que simplemente no puedo confiar mi trabajo o mis documentos a una instalación de Linux. El stack gráfico está tan mal diseñado que redimensionar una ventana de video puede tirar el stack entero, llevándose con él todas las aplicaciones, trabajo y documentos. Es como si cambiar la radio del coche hiciera que el coche entero explotase.

Esto es simplemente mal diseño del principio al final, y ha estado en el escritorio de Linux desde hace mucho. In the X world's rush latch onto the "me-too" bandwagon of GPU acceleration, han olvidado completamente arreglar el coño de diseño y pasar de los años 90 al siglo 21. Mientras las X sigan siendo como son, nunca aconsejaré a ninguno de mis amigos o familiares que las usen, porque sé que X.org es incapaz de propulsar las máquinas multi-tarea y multi-media en que los ordenadores de hoy se han convertido.

Estoy seguro de que el juego de las culpas se trabajará a fondo en los comentarios, pero eso sólo despistará del problema real aquí. El desktop Linux necesita un stack gráfico moderno, robusto y avanzado, que garantice que los crashes y los bugs permanezcan aislados, sin que afecten al trabajo de los usuarios. Microsoft nos ha mostrado cómo se hace, ahora todo lo que necesita hacer el mundo de las X es seguir.

Enlace a los comentarios en OSNews.

1 comentario:

  1. El sistema de Xorg esta muy logrado, aunque esta totalmente diseñado para aplicaciones remotas, la utilización en local se ha adaptado muy bien a las necesidades.

    Ciertamente las distribuciones de Linux no tienen en cuenta la posibilidad de que las aplicaciones puedan reconcentrarse en perder la conexión con el servidor X, y no seria difícil de implementar, pero no ha habido nadie que pudiera (por tiempo o intereses) arreglar el tema. Ciertamente tampoco es que sea un fallo muy común y eso no ayuda a que alguien se ponga a arreglarlo.

    Por el momento se puede usar una herramienta: http://partiwm.org/wiki/xpra

    ResponderEliminar