27 de octubre de 2010

Fricciones Gnomeras

No es que las relaciones entre Canonical/Ubuntu y Gnome fueran tan perfectas como se cree, pero en una sola semana han surgido un par de asuntos que ha disparado y seguirá disparando la tensión entre ellos. El primero y más comentado es la adopción del shell Unity no ya como alternativa a Gnome Shell, sino al gnome-panel de toda la vida. Teniendo en cuenta que la novedad más importante de Gnome 3 es el cambio de shell -también lo fue en KDE4, no nos engañemos-, esto representa una divergencia de mentalidades de difícil solución.

Por lo que se puede leer por ahí, que muchos Gnomeros no están nada contentos con esta decisión. Como se trata de software libre y lo único que pueden hacer es fastidiarse, las críticas se han dirigido al lugar previsible: acusar a Canonical de no tener espíritu de comunidad. Pero, como ha explicado Shuttleworth, el problema se debe a divergencias técnicas. Ellos quieren una barra de menús global -al estilo OS X-, y la gente de Gnome no. Ellos consideran que Mutter (el gestor de ventanas de Gnome Shell) es lento y prefieren Compiz, Gnome no. Asi que Canonical ha desarrollado Unity, y despues de probar con Mutter se han pasado a Compiz, que por lo visto es más rápido.

Y yo me pregunto: ¿Por qué Canonical es aquí el malo? La barra de menús global es una idea aceptable, pero ante todo es una idea puesta en práctica y muy trillada. ¿Por qué debería Canonical renunciar a ello sólo porque a otras personas de Gnome no les guste? Este problema -dos requisitos que chocan entre sí- es una situación crítica que ha destruido no pocos proyectos de software libre, y que en el kernel Linux se ha resuelto tradicionalmente con pragmatismo: Permitir ambas opciones. Está claro que la solución óptima es que Gnome Shell pueda configurarse para utilizar menús globales o individuales, o que al menos pueda personalizarse fácilmente la UI para permitir una opción u otra. No conozco los detalles de los flames entre la gente de Canonical y Gnome/GTK, pero si Canonical no tenía otra salida, hizo bien creando Unity. Por otro lado, Unity tiene un lado muy negativo, y es que Canonical requiere asignación de copyright a las contribuciones de sus proyectos (mal, muy mal).

Además de esto, hay otro punto de fricción entre Gnome y Canonical. Le ha causado Matt Zimmerman, Chief Technological Officer de Canonical, o sea, el tipo que en última instancia toma decisiones tecnológicas y organiza a los desarrolladores. Este señor ha dicho en su blog que QT -si, la QT que usa KDE- es un gran toolkit, que es una gran plataforma para los desarrolladores y que Ubuntu la tendrá en cuenta como alternativa. Pero no sólo él piensa que QT es un buen toolkit, el propio Shuttleworth dice, mientras habla de un asunto de licencias, que Gtk "se ha estancado", mientras que QT no. Que los líderes de la principal distro Gnome digan algo así tiene su cosa...

13 comentarios:

  1. Anónimo10:37 p. m.

    Cierto!
    Soy programador de GTK+, y he de admitir que Shuttleworth tiene TODA la razón del mundo.

    No hay color entre Qt y GTK+.
    En GTK+ hace falta MUCHOS más widgets, muchas mejoras , como un gtkEntry CON MASCARA , por dios, que a estas alturas tengamos que interceptar las teclas para comprobar si lo único que queremos es introducir numéricos , me parece patético.
    Y no, no quiero poner GtkSpinner
    Y ojo, ADORO Gtk+, pero señores, avanzan muy despacio con respecto a otros toolkits.

    ResponderEliminar
  2. Mi postura al respecto es q los del shell están equivocados y eso ha desatado una reacción igual de equívoca de parte de Canonical. Si el ppal motivo de la creación de Unity ha sido la velocidad, estoy completamente de acuerdo que aquí, los del shell, han perdido el horizonte. Y no estoy hablando de una máquina mala, en mi laptop, con un core2duo@1.8ghz y 4gb de ram, el shell se arrastra. Y creo q gran parte del motivo debe ser q mi placa de video es una nVidia. El shell debe estar quedando atrapado en otro fuego cruzado, entre nVidia q no implementa buenos mecanismos en sus drivers para ser manejados de mejor manera y los desarrolladores del shell q deben estar usando las cosas 'como corresponde'. Todo esto basado en q la gran mayoría, q yo sepa, de los desarrolladores, prueban/usan el shell desde placas intel (con soporte 'lindo' bajo linux).
    La verdad una pena, seguro q a la larga va a salir algo bueno de todo esto. Pero como siempre, la necedad hace q linux progrese muy de a poquito.

    ResponderEliminar
  3. Anónimo1:12 a. m.

    ¿Cómo es eso de asignación de copyright con Unity? disculpad si es básica la pregunta. Y gracias por tus entradas, son muy informativas.

    ResponderEliminar
  4. Anónimo3:28 a. m.

    Excelente la desicion de Canonical. Ellos son los dueños de Ubuntu, y son los que decien que va y que no va en el.

    Sin embargo, eso no significa que tomen buenas desiciones. Dificilmente se puede apreciar innovacion, diseño o usabilidad en sus creaciones. Si, Ubuntu se ve bien, Unity se ve bien, pero no hay usabilidad. ¿Para que los botones en la parte izquierda? ¿Se colocaron ahi para que fuese mas facil de usar la interfaz o solo para que se paresca a OSX?

    Mas info aqui:
    http://piestar.net/2010/07/06/years-behind-and-slowing-fast/

    ResponderEliminar
  5. Anónimo9:33 a. m.

    Hola Diego,

    Hay un par de erratas en el último párrafo:

    ...el tipo que en última instancia toma decisiones tecnológicas y organiza[r] a los desarrolladores...

    ..es una gran plataforma para los desarrolladores y que [es una] Ubuntu la tendrá en cuenta...

    Borra el comentario después si quieres

    --
    Manuel

    ResponderEliminar
  6. Canonical apenas ha participado en el desarrollo de GNOME y mucho menos en gnome-shell. Además, tienen la costumbre de discutir sobre sus ideas de cambiar GNOME en sus propios foros, con lo que realmente no están debatiendo el tema con la comunidad.

    El primer problema fueron las notificaciones de aplicaciones. Los problemas principales fueron la problemas de asignación de copyright, el tipo de licencia y que algunos creían que era mejor integrarlo en GTK+ y no como dependencia externa.

    http://www.advogato.org/person/mbanck/diary/48.html

    Respecto a Unity, que yo sepa nunca han propuesto nada parecido en GNOME y no han participado en el diseño de GNOME shell para que GNOME shell aceptase sus ideas.

    Respecto a lo que significa la comunidad para ellos, ver

    http://www.advogato.org/person/mjg59/diary.html?start=269

    ResponderEliminar
  7. Los de Ubuntu quieren que cada día se parezca más a MacOS X y siento disentir, pero no me gusta nada. No quiero un OSX ni un Windows, quiero un Linux con su innovación en interfaces gráficas, por eso no quiero un menú global ni un Dock. Lo que quiero es usarlo si quiero y no usarlo si no quiero.

    Lo de Unity no está mal, pero habrá que acostumbrarse a una interfaz desarrollada para pantallas pequeñas donde todas las ventanas están maximizadas, cuando en el momento que tienes un monitor grande es totalmente contraproducente.

    En cuanto a Gnome Shell... sí, también me parece bien. Me parece bien que esto avance, lo que no puedo concebir ni tolerar es que desarrollen un software nuevo que vaya MUCHO más lento que el antiguo.

    Y sí, Qt es mucho mejor que Gtk+. No se a qué esperan para mejorar su BASE.

    ResponderEliminar
  8. Anónimo11:34 a. m.

    El problema realmente es que han desarrollado Unity, genial, pero no lo van a contribuir a la comunidad, se va a quedar en los repositorios de Ubuntu exclusivamente, como llevan haciendo con el 90% de los cambios que han hecho de código, no los contribuyen.

    ResponderEliminar
  9. Anónimo11:43 a. m.

    No si al final habrá una "buntu" para cada sabor.
    Gnubuntu, unbuntu, kubuntu, etc...

    Por cierto... QT rulez!!!!!

    ResponderEliminar
  10. Anónimo12:15 p. m.

    A mí me parece bien que Ubuntu cree Unitiy. La comunidad linuxera se queja mucho de que coge y no da, cosa que no es cierta porque aportan también a Gnome. Otra cosa es que acepten o no sus cambios.

    Sobre lo del copyright, supongo que lo que quieren es el reconocimiento que otorga la licencia BSD, pero si no es el caso, entonces me parece muy mal por parte de una compañía que vive del software libre. Sin embargo, siendo legal, me parece aceptable.

    ResponderEliminar
  11. Anónimo1:20 p. m.

    yo lo veo pero q muy bien en la variedad esta el desarollo

    ResponderEliminar
  12. @Anonimo:

    > La comunidad linuxera se queja mucho de que coge y no da, cosa que no es cierta porque aportan también a Gnome. Otra cosa es que acepten o no sus cambios.

    Hacen mucho por el marketing y seguro que otras cosas, pero respecto a código representan menos del 1% de las contribuciones [1], que es muy poco para una empresa que se supone que es lider en proporcionar un sistema de escritorio GNOME.

    En un comentario anterior explico que la que se supone que iba ser un mayor contribución se quedó en agua de borrajas, sobretodo, por el tema de asignación de copyrights.

    El problema es que colaborar con GNOME no está entre sus prioridades, o al menos GNOME y Canonical/Ubuntu no han encontrado la mejor manera para colaborar. Me gustaría que no fueses así, pero parece que no les importa demasiado.

    [1] http://www.neary-consulting.com/docs/GNOME_Census.pdf

    ResponderEliminar
  13. Anónimo5:26 p. m.

    El problema es que la comunidad cree que la GLP estipula que hay que compartir y dar asi como se recibe.

    Canonical sigue las reglas, ofrece las modificaciones del codigo libre que manipulan bajo la misma licencia, eso es todo lo que tiene que hacer. Todo lo demas es caridad, asi que no se quejen si Canonical no aporta algo a X proyecto.

    ResponderEliminar