No es nada fácil hacer un artículo sobre Miguel de Icaza y sus palabras, que no haga brotar los sentimientos. Lo que sí puedo hacer es mostrarles esto que pasó hace poco en una charla en google+.
Primero Sriram Ramkrishna postea en su perfil el enlace al post de Miguel de Icaza sobre «la muerte del escritorio». Antes de mencionar lo que viene después, hay un párrafo que señala Muktware:
«Linux, a pesar de ser un un tipo del kernel de bajo nivel, marcó el tono de la comunidad hace años cuando rechazó la compatibilidad binaria para controladores de dispositivos. La gente del Kernel tendrá algunas razones válidas para eso, y habrá forzado a la industria para que juegue con sus reglas, pero la gente de escritorio no tenía el poder que sí tenía la gente del kernel. Pero sí mantuvimos la actitud.»
La primera respuesta al post de Sriram es de Alan Cox:
«La segunda dimensión al problema es que no hay dos distribuciones de Linux que hayan acordado en que componentes core del sistema se deben usar.»
Eso me hizo reír. Hubo una vez KDE y Miguel luego vino y creo la confusión que está despotricando. También fue factor clave para hacer tragar CORBA por la fuerza a la gente que en aquel entonces tenían que ser extraídos lentamente del desastre resultante que arruinó Gnome 2.x y ocupó enormes tiempos de desarrollo.
El tiene razón con lo de que Gnome rompe con la compatibilidad no sólo con las aplicaciones sino con la IU, la configuración (que sigue siendo peor ahora que en Gnome 1.x !), etcétera.
Sin embargo no es una enfermedad del Open Source sino de ciertos proyectos como la enfermedad de Gnome – mi kernel 3.6rc sigue corriendo un binario Rogue compilado en 1992. X es compatible con aplicaciones que son más antiguas que Linux.
Sobre su bronca con el audio yo culpo a Lennart Poettering (creador de PulseAudio) 8) – el audio del kernel no ha roto la compatibilidad, incluso tiene capas de compatibilidad OSS de los principios del soporte de audio en Linux. De hecho culpar a Pulseaudio también es malo (pero es divertido culpar a Lennart y para eso existe) – tiene cosas de compatibilidad diseñadas para hacer andar aplicaciones antiguas 8)
Gnome de todos modos no es un escritorio – es un proyecto de investigación.
La segunda respuesta viene a cargo de Linus Torvalds:
La gente de Gnome diciendo que yo marqué la «actitud» que causó los problemas es hilarante.
Una de las reglas claves del kernel siempre fue que nunca hay que romper interfaces externas. Esa regla está desde el primer día, aunque se ha vuelto más explícita sólo en los últimos años. El hecho que rompamos interfaces internas que no son visibles al usuario es totalmente irrelevante, un arenque rojo.
Deseo que la gente de gnome haya entendido las reglas verdaderas dentro del kernel. Como «nunca rompas interfaces externas» – y el «necesitamos hacerlo para mejorar cosas» no es una excusa.
O el «usuarios diferentes tienen necesidades diferentes». El kernel fue – y está – feliz de dar soporte tanto a las maquinas de miles de CPUs estilo SGI como a los vendedores embebidos con celulares y routers. El hecho de que tienen diferentes necesidades es muy obvio.
Personalmente creo que una razón de por qué el kernel Linux ha sido tan exitoso es el hecho de que yo no tenía una visión grande de hacia donde yo quería forzar a la gente que fuera. Seguro, yo quería «unix», y hay varios conceptos de muy alto nivel que van con eso (fork,exec,files etc), pero no quería forzar un punto de vista particular fuera de ese patron muy genérico.
De hecho, Linux ha hecho lo que yo imaginé en 1991 cuando lo lancé por primera vez. Todo el desarrollo subsecuente fue conducido por ideas de afuera de lo que otra gente necesitaba o quería hacer. No por alguna visión interna de a donde «deben» ir las cosas.
Eso es exactamente lo opuesto a la mentalidad del «nosotros sabemos mejor», y del «Te haremos tragar Corba/.NET por la fuerza te guste o no, y si te quejas, vas contra el progreso, y no puedes cambiarlo» de gnome.
Algunos en gnome parecen estar negando totalmente cual es su problema. Ellos culparían a todos excepto a ellos. Este artículo parece ser un ejemplo perfecto de esto.
Y la tercera respuesta viene de Miguel de Icaza:
Linus, mi involucramiento con Gnome terminó hace 5 años, y meramente me quedé en la periferia porque usaba Gnome como usuario y construíamos programas en C# que usaban las librerías de Gnome. Así que es injusto para la gente de Gnome que añadan mi posición a su proyecto. No he hablado con ellos desde hace mucho, y no tengo idea se alguno está de acuerdo conmigo.
Aunque tengas una política estricta para las interfaces binarias del kernel, lo cual es elogiable, y elogio ese post tuyo donde pusiste ese caso en una lista de mails, mi opinión es que la actitud de los desarrolladores del kernel influenció la forma en que la comunidad FOSS construye software.
Han habido charlas enteras y debates agitados sobre la cuestión de los controladores binarios y de porque ustedes consideran juego limpio romper esas interfaces. El problema no es si ustedes tenían la razón o no, sino que el ánimo reinante era «no mantenemos la basura».
Tu tienes una personalidad fuerte, y lo mismo mucha gente que te rodea y tu personalidad fuerte, te guste o no, influenciaba las actitudes de la gente.
Un ejemplo de esto fue el humor en las listas del kernel (que yo recuerde es del 1999-2000). Mi parte es que tu eres brillante, inteligente y gracioso, y también puedes ser malo y severo. Muchos intentaron imitarte, pero no eran ni brillantes, inteligentes ni graciosos. Y se volvieron malos y severos y esa actitud se extendió en las listas de correo.
Así que el mensaje que la mayoría escuchó fue que hicimos lo correcto, incluso si rompimos software. Y lo hicieron.
Desde las APIs, a subsistemas de impresión, sistemas de audio, daemons de inicio, sistemas de buses, todos esos ligeros cambios a la pila causaron problemas para los vendedores independientes de software de terceros que quieren soportar el escritorio Linux.
Soportar el escritorio Linux para desarrolladores de software propietario es muy caro y el mercado es pequeño y profundamente fragmentado.
Sobre Gnome, personalmente, me gustaría que hicieran unos cambios, y estoy de acuerdo con algunas de tus quejas sobre Gnome Shell. Pero no me han molestado tanto como a ti.
Te estás yendo por las ramas, y quiero asegurarte que nadie va a hacer tragar nada a nadie por la fuerza.
Sobre CORBA, tanto la gente de KDE y nosotros, fuera de nuestra ingenuidad lo abrazamos para resolver una serie de problemas que pensamos que tendríamos, y que al final no tuvimos. Siéntete libre de arremeter contra mi por defender mis pobres elecciones en aquel momento. Los más inteligentes prevalecieron y CORBA se fue por la ventana. Que puedo decir, era joven, y los de KDE también. En ambos casos, se corrigió el error, y no hay CORBA para que sufras.
Tampoco te tienes que preocupar sobre .NET. Mono no es parte de Gnome, y ninguna aplicación en Gnome lo usa, así que estás a salvo.
Alan (Cox, respondiendo la primera respuesta), yo también te quiero.
Me sorprende que no recuerdes que estabas involucrado en el lanzamiento de Gnome, que nos animaste a desarrollar Gnome en LinuxNet, que tuviste un problema con la licencia Qt al igual que nosotros, que contribuiste a Gnome, y que hasta participaste en la primera reunión de Gnome en el pre-IPO Red Hat.
Y ya me cansé de traducir: les dejo el post para ver los comentarios originales y muchos más
https://plus.google.com/115250422803614415116/posts/hMT5kW8LKJk
Bonus track: Un momento entretenido para ustedes