¿Deberían GTK y GNOME desaparecer?

En los últimos tiempos tengo una pregunta que no se me quita de la cabeza, ¿deberían GTK y GNOME desaparecer?, la cuestión es que la famosa biblioteca para interfaces gráficas y su correspondiente entorno dan muy mala imagen al Open Source en general, ¿por qué?, vamos a explicarlo.



GTK y GNOME fueron creados como respuesta a Qt y las dudas sobre su encaje en el Software Libre, ya que nació como software privativo, aunque el entorno que se creó con él, KDE, siempre fue libre. GTK y GNOME, con el aval y el amparo de la Free Software Foundation (de hecho oficialmente son proyectos suyos), se erigieron como el garante del Software Libre para crear GUI.

A raíz de ahí, empezó una guerra que no se aplacó hasta la llegada de GNOME 3, cuando los dos grandes entornos de escritorio ya empezaron a tener grandes diferencias de concepto. Algunos defendían Qt y KDE, otros GTK y GNOME. Estos últimos tuvieron más suerte y contaron con el apoyo de muchos pesos pesados de la informática, como Debian, Ubuntu, Red Hat y Sun Microsystems, mientras Qt tenía el apoyo SuSE y Mandriva, que para su desgracia se torcieron un poco. SuSE decidió apostar por GNOME como entorno de escritorio principal cuando fue adquirida por Novell, aunque sin descuidar KDE, y los problemas económicos de Mandriva hicieron que esta distribución perdiese mucha popularidad, más tras la salida de Ubuntu.

GNOME 3 y SystemD, el principio del cambio

GTK+2 y GNOME 2 dominaron el Linux desktop con claridad. También el hecho de que GTK fuese portado a Windows mucho antes que Qt le ayudó a posicionarse en el mercado. Cuando el proyecto KDE empezó a ser portado a Windows los usuarios de dicho sistema ya contaban con una versión totalmente usable y funcional de GIMP, que no tenía nada que envidiar a la versión para GNU/Linux. Sin embargo, todo empezó a cambiar con la salida de GNOME 3 y los oscuros planes de Red Hat en torno a GNOME, con la Free Software Foundation mirando para otro lado.

Para empezar, el nuevo diseño de GNOME no gustó a muchos, lo que hizo que tanto Canonical como la comunidad de Linux Mint bifurcaran la interfaz, la shell, creando Unity y Cinnamon respectivamente. Luego apareció ahí un oscuro plan para atar GNOME a SystemD, lo que está provocando una difícil portabilidad de GNOME 3 a otros sistemas operativos que no sean Linux con SystemD. Aparte, puede que GNOME deje de funcionar fuera de todo entorno que no use ese framework de sistema en un futuro no muy lejano. Esto ha provocado la ira de muchos, y hasta han surgido proyectos que han anunciado su migración a Qt debido a que a GNOME y a GTK lo único que les va a quedar de Software Libre es la licencia.

Inadaptado a los nuevos tiempos

Otra cosa que hace que GTK sea un lasrte y da muy mala imagen al Open Source, siendo una tecnología reacia a adaptarse a los nuevos tiempos y lo que es peor, la Free Software Foundation se niega totalmente a aceptar la realidad.

GTK, por si no lo sabéis, está hecho con C, una tecnología prehistórica que a día de hoy solo se usa en la programación a bajo nivel, o sea, para la creación de kernels y drivers. Sin embargo la institución de Richard Stallman cree que C hoy en día es el estándar para todo, hasta para la creación de papel higiénico, y se niegan a pasarlo a C++ porque según ellos no es estándar. Madre de Dios, ¿cómo pueden estar estos tíos tan trasnochados y decir semejantes tonterías?, gracias a esta estupidez GTK no se adapta a las nuevas metodologías de programación.

Hoy en día para la creación de aplicaciones se utiliza siempre lenguajes de programación orientadas a objetos, aunque para muchos C++ es una aberración en este sentido por su capacidad de mezclar punteros con objetos, al menos soporta esta característica tan básica en la programación moderna a alto nivel y que la Free Software Foundation prefiere darle una patada en el culo con tal de mantener su anticuado concepto del software.

Pero la cosa no acaba aquí, en 2014, en pleno Siglo XXI, GTK sigue sin tener un IDE oficial, una herramienta que ayude a la programación, algo que es totalmente inaceptable, estúpido y en definitiva, cosa más bien digna un puñado de burros en estos tiempos. Señores fanáticos del Software Libre, en la programación del Siglo XXI la gente no programa en base a la consola, ¿cómo pretendéis atraer a desarrolladores con semejante filosofía? Mientras tanto, Qt, que es tan libre como GTK, tiene un IDE oficial que ayuda a la creación de aplicaciones.

La combinación de los factores descritos anteriormente hacen Qt mucho más atractivo que GTK, ya que es infinitamente más productivo y en proyectos que muchas veces se sustentan del tiempo libre de los programadores es fundamental contar con una tecnología que agilice y acelere el desarrollo.

En resumidas cuentas, GTK y GNOME son tecnologías hechas por fanboys y para fanboys, unas tecnologías obsoletas que lo único que hacen es darle muy mala imagen al código abierto, haciendo creer que la mayoría de los usuarios de GNU/Linux usamos hasta el Firefox desde la consola, una mala imagen provocada por la Free Software Foundation debido a que esta aun defiende una visión del software de principios de los 90.

Señores de la Free Software Foundation, ¡¡¡ PÓNGANSE LAS PILAS !!!, que no estamos en 1990, sino en 2014.

Comentarios

  1. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  2. Puede que un indicio de cambio sea que GCC ya se ha portado a C++?
    Estoy de acuerdo con muchas cosas de las que dices. Antes C++ se ve que era una penalización de rendimiento (por las optimizaciones que podía hacer g++ vs gcc) pero según tengo entendido ahora ya no.

    Me gustaría que hubiera un cambio de C a C++? No especialmente. Me gustaría mucho más que hicieran una buena librería con base GTK planteada con objetos (Si quieren internamente pasar GTK a C++, ahí ya no me meto) pero no al mismo nivel que GTK, si no a un nivel más abstracto. Algo así como SFML es a SDL, las 2 son librerías para hacer juegos, pero SDL es a un nivel más bajo.

    De todas formas, veo que FSF tiene a mí parecer la vista lejos de la realidad, o al menos, de lo efectivo. Si quieres que la gente se te una, al menos, vístete bien. Y no es un comentario personal (admiro a Stallman), si no me refiero a la espartanidad de sus proyectos en general.

    De todas formas, aunque se vuelvan locos, con todo lo que han hecho por nosotros, como si hacen arder el mundo, la media les sale positiva.

    ResponderEliminar
    Respuestas
    1. No voy a negar que la FSF tiene muchos méritos, que los tiene y muchos, aparte que le debemos muchísimo a esa fundación, eso no lo pongo en duda.

      Lo que pasa es que estamos en 2014 y la FSF parece perdida en mucho sentidos, dentro del Open Source tiene a muchos detractores y hasta el mismo Richard Stallman es considerado enemigo por muchos.

      El mayor enemigo de la FSF es si misma, con esa visión del software tan poco práctica, esa censura irracional hacia todo lo privativo cuando no podemos dejar de usar software privativo como muchos codecs, Flash y muchos de los drivers privativos que usa el propio Linux, en especial en torno a las wifis, que si no los hubiese aceptado Torvalds a día de hoy Linux no se podría usar como desktop ni loco.

      Aparte, todo lo expuesto a nivel técnico en el artículo, ya que tienes unas librerías gráficas, que menos que tener un IDE para ayudar a la difusión de este, pues no, nos encontramos a un puñado de frikis que solo dicen tonterías para defender unos argumentos estúpidos y una visión del software totalmente desfasada, y es que así no me extraña que cuando un windowlero o un macquero ve lo que se cocina ahí lo primero que decida sea irse corriendo, y es que algunos de los postulados de la FSF en estos tiempos son ridículos hasta la extenuación.

      La estupidez de la FSF es tan grande que hasta desarrolladores de Software Libre han decidido darle de lado a la fundación.
      http://www.theinquirer.es/2012/12/24/criticas-a-richard-stallman-en-el-mundo-open-source.html

      Si quieres C solo tienes dos opciones hoy en día, o eres estudiante (porque es un buen lenguaje para empezar a entender los fundamentos de la programación) o eres programador a bajo nivel, pero para interfaces gráficas (y muchas otras cosas) hace ya más de una década que se ha quedado como un lenguaje más que obsoleto. De hecho tenemos ya hasta servidores que funcionan con tecnologías a alto nivel, como por ejemplo Tomcat.

      Aparte, la mayoría de las aplicaciones gráficas más potentes realizadas para los sistemas Unix-like abiertos están hechas con Qt, siendo su contrapartida en GTK en muchas ocasiones muy inferior, porque no podemos comparar K3B con Brasero, SoundConverter con SoundKonverter, Krita poco a poco se está comiendo a Gimp que solo uso ahora para retoques muy rápidos y puntuales, estando este último estancado por milenios, tanto Clementine, como Amarok se comen a Exaile y Rhytmbox, aunque Audacious si es muy bueno, pero limitado en funciones. VirtualBox también está hecho en Qt y Chrome/Chromium tiene partes hechas con Qt, aunque su frontend es GTK.

      Miguel de Icaza quiso eliminar estas carencias a través de Mono, pero le dieron una patada en el culo a él y su invento y prefirieron seguir con sus herramientas anticuadas.

      Este autismo de la FSF me resulta deprimente y no solo eso, sino que encima se lleva por delante a otros proyectos como LibreOffice, que tras varias proposiciones de modernización de la interfaz, han preferido seguir con su disposición tipo Windows 97 que si, que es muy funcional, pero da la sensación de que estás usando una aplicación del siglo pasado.

      Eliminar
    2. "El mayor enemigo de la FSF es si misma, con esa visión del software tan poco práctica, esa censura irracional hacia todo lo privativo cuando no podemos dejar de usar software privativo como muchos codecs, Flash y muchos de los drivers privativos que usa el propio Linux, en especial en torno a las wifis, que si no los hubiese aceptado Torvalds a día de hoy Linux no se podría usar como desktop ni loco."

      En mi opinión, la FSF se fundó para lo que se fundó. Y es para proteger ciertas libertades. Entiendo que principalmente es: Todo el código tiene que poder ser visible para su usuario y con posibilidad de modificarlo para sus necesidades.

      Más que por la libertades o por el hecho de que así el soporte ya no depende de una empresa que puede dejar descontinuado un producto, me parece que la FSF tiene un ideal de conocimiento libre, donde todos podamos acceder a todos los conocimientos. El código es un conocimiento dentro del esquema de la FSF y por tanto la FSF nunca aceptará nada que no sea abierto o que no promueva el ser abierto (osea, GPL). No me meto en la LGPL, que ya la propia FSF dice cuando usarla.

      En resumen, la FSF tiene un ideal genial, utópico, y ser fiel a él, le costará dolor y el rechazo de mucha gente. Aun así me parece admirable que no den a torcer el brazo después de tantos años. (No me meto en lo acertado o no de mantenerse firme). Lo que parece seguro es que el contexto social cambiará, pero la FSF seguirá defendiendo las mismas libertades con el mismo ímpetu.

      "nos encontramos a un puñado de frikis que solo dicen tonterías para defender unos argumentos estúpidos y una visión del software totalmente desfasada" Intenta no insultar. No son tontos. Han construido softwares impresionantes y la gente que hay dentro tiene una habilidad brutal (diría que hay gente que es lo mejor de lo mejor). Simplemente son gente que sigue su ideal, y por mucho que la gente diga a o b, ellos siguen con el ideal. A mí me parece respetable, y si no gusta, pues a lo privativo o MIT/BSD. Y sin rencores.

      C es lo que es, y requiere una mente sublimemente entrenada para poder hacer grandes proyectos con él. Es difícil, pero oye, funciona. Para interfaces y para lo que sea. Y si GTK se hace para C++, que librería quedará para C?. Es su librería, y sabes? si alguien quiere seguir con GTK en C++, pues que haga una fundación, recabe apoyos y haga un fork. Es lo guay. Sí, que como usuarios nos jode, pues bueno, seguimos teniendo Qt. Pero dado que las herramientas que nos dan son totalmente gratis, y no solo eso, si no que libres, y con la seguridad de que no tendremos que pagar por ellas nunca, que siempre podremos tener "soporte" de su código al no ser privado, etc.

      Como ya he dicho, a la FSF le faltan publicistas. Gente que sepa captar a otra gente y tener una buena imagen. Pero su ideal, no me molesta en absoluto. Quiero decir, no tienen una responsabilidad hacia nosotros, sino más bien hacen lo que hacen porque quieren un mundo de X forma. Pero ellos ocupan su espacio, hacen sus cosas gratis y te dan el conocimiento de cómo lo hacen. Es lo más transparente que te puedes echar a la cara. Que no nos gusta su filosofía, pues ale, no te involucres con ellos.

      Pero vamos, eso de exigir y faltar al respeto, no gracias. Son unos señores muy grandes. Con su filosofía personal, pero yo compilo con GCC y estoy contentísimo de no tener que pagar a Intel por ello. (Que si no hubiera competencia gratis a los compiladores de pago, esto no sería tan guay ni de coña).

      Con GTK y con otras cosas que no son GCC, pues lo mismo. Si me gusta, lo uso. Si no, pues siempre tengo alternativas. Que FSF no compite con nadie, FSF tiene sus objetivos y se la suda el resto. Y de paso, mientras andan su camino, nos regalan cositas. Yo no les puedo pedir más.

      Eliminar
    3. Está muy bien defender las libertades del software, pero es que la Free Software Foundation cae en su propia trampa y más de una vez.

      Primero, rechazaron Mono como tecnología principal de GNOME por ser una implementación libre (y bajo GPL) de una tecnología de Microsoft. Luego encontramos la campaña contra KDE cuando la QPL que no se si siguen usando Qt es considerada por la misma FSF como "Software Libre no compatible con la GPL" y por último nos encontramos que mira hacia otro lado cuando Red Hat quiere hacer GNOME inseparable de SystemD, haciendo su producto difícil de implementar en otros sistemas como los BSD e incluso Ubuntu, aparte que corre el riesgo de volver difícil implementar otros entornos sobre GNU/Linux si no se tragan algunos componentes de GNOME.

      Debajo de ese manto de libertad se esconde una institución que quiere imponer sus productos a cualquier precio.

      Eliminar
    4. Desde la versión 4, QT se publica bajo GPL

      Eliminar
    5. Bueno, dejando a un lado lo de QPL en Qt (por lo que ha comentado Da Chusko), según wikipedia tampoco sigue las recomendaciones de Debian http://en.wikipedia.org/wiki/Q_Public_License

      Primero, que lo de SystemD, sin saber mucho del tema (lo que se dice por aquí y por phoronix) me parece una guarrada. Segundo que lo de systemD es un movimiento de red hat. Me da (aunque a saber) que la FSF no ha respondido a eso por torpeza.

      No niego que la FSF tenga sus mierdas, que las tiene, pero si que me parece que se le juzga muy duramente cuando ella va a lo suyo y encima nos regala software libre.

      Por eso que no me gusta criticarla. Ahora, si entramos en el tema de que tendría que hacer o que opinamos de lo que hace, pues ahí te diré que yo haría estas cosas.

      Me pondría super duro con organizar la FSF bien, y con eso me refiero a hacer una imagen corporativa como la de mozilla y tener una estrutura similar a esta. Seguiría esa politica de no ceder a nada que vaya contra sus principios. Enviaría a la mierda a Red Hat y Canonical hasta que no dejen de hacer el gilipollas, quieren competir, ok, pero que no nos jodan a los demás; esto se trata de beneficiar al cliente, no de joderle, si quieren joder que se vayan a microsoft.

      Limpiaría el 90% de proyectos abandonados que tienen y me centraría en los grandes. Abriría agunos nuevos y me abriría (en casos muy concretos) a usar tecnologías más agiles. Entiendo que el núcleo de FSF es gente de C y, en menor grado, C++, pero el tiempo pasa y hay que buscar cierto grado de efectividad. GCC se queda como está, que va por buen camino. Pero IDEs y cosas así, pasando de C o incluso C++, casitodo lo que ha tenido interfaz de la FSF está abandonado y eso no puede seguir así, asi que es hora de pensar que no hace falta que un ide se ejecute en un MIPS2000.

      Y bueno, ahora mismo no se me ocurre nada más, ha sio así rápido, pero creo que se puede pillar un poco la idea que quiero transmitir.

      Eliminar
    6. Se me ha olvidado decir, que con respecto a GTK, no me parece del todo mal como va a nive tencológico. Se puede usar hasta con javascript, go, etc. Pero si que no me gusta la politica de versiones que tienen. Una versión lanzada de GTK tarda meses en estar disponible para windows.

      Además, parece que estan jodiendo la modularidad, y eso, para una librería gráfica es la muerte.

      Es decir, obligaría a que la librería sea modular y independiente. Y luego, si hay tiempo, haría una librería superior con funciones más simples y ordenadas (mi ejemplo preferido es la librería de SFML, que no parece que estés haciendo C++, es super cómoda).

      Eliminar
  3. en cuanto a gnome discrepo. gnome desde 3.10 es espectacular. con lo de GTK3. creo que tienes razón. qt debería de ser el estandarte digo con qt puedes hacer todo lo que haces en GTK y crear widgets es mas fácil según se

    ResponderEliminar
    Respuestas
    1. Aunque puede sonar contradictorio, a mi también me gusta GNOME Shell 3.10, cómo está diseñado, cómo se usa, aunque por motivos de pragmatismo he decidido volver a Ubuntu con Unity, no me puedo quejar del desempeño de las últimas versiones de GNOME Shell.

      Mis críticas van sobre todo a la filosofía de la FSF y aunque GNOME Shell ha mejorado, sigue la estela de la filosofía de esa fundación porque está arrastrado, por narices, por GTK, ya que por algo GNOME es el proyecto estrella de GTK, igual que KDE lo es para Qt, ya que son las mayores demostraciones de lo que pueden hacer ambas librerías.

      Portar GNOME a Qt sería un trabajo muy laborioso, así que no se si sobreviviría a un port.

      Eliminar
  4. No le veo problema a que GTK este hecho en C ya que se puede programar en C++ con GTK usando GTKMM http://www.gtkmm.org/es/index.html (la mayoría del código de Inkscape, por ejemplo, esta hecho en C++), se puede usar python con pyGTK, de hecho GTK esta en proceso de hacer uso de lenguajes de programación tan modernos como por ejemplo el Go de Google http://mattn.github.io/go-gtk/, el IDE que más se usa para GTK es Anjuta y con Glade se pueden hacer maravillas sin programar mucho https://glade.gnome.org/, Qt también es software por lo tanto también tiene bugs, vamos a muchos nos gusta GTK y creo que es un toolkit que merece respeto y yo veo que ha progresado mucho, se que tiene errores y también se que muchos de los errores los corrigen con el tiempo, si a alguien no le gusta pues usa KDE, Qt y todo lo que lleve K y Q y todos somos felices, así que en conclusión para mi GNOME y GTK deben seguir existiendo como pilares del Software Libre en paralelo con KDE y Qt pero por supuesto que deben de mejorar mucho y estoy seguro que lo harán. Saludos.

    ResponderEliminar
  5. Garante, de garantía, no galante.
    Felicitaciones por la página. La sigo hace mucho.

    ResponderEliminar
  6. A mi parecer GTK debe desaparecer en favor de QT para dar paso a un desarrollo de software más estandarizado en ambientes GNU/Linux, además Gnome debe de convertirse a QT unificando librerías con KDE, de igual forma para estandarizar el entorno gráfico en GNU/Linux donde a su vez facilitaría el desarrollo de software, que es un

    ResponderEliminar
  7. A ver si alguien me puede resolver la duda. Si yo quiero vender un programa privativo gtk es gratuito y qt es de pago no?

    Por otro lado, siempre he sido fan de Gtk, aunque reconozco que qt, ha avanzado mucho, sin embargo no hay cosa que más me heche para atrás que C++, prefiero mil veces usar Vala o Genie que traducen un codigo parecido a C#/Python a lenguaje c.


    ResponderEliminar
    Respuestas
    1. No soy ningún experto en licencias, así que no puedo resolverte la duda en ese aspecto, pero Qt no es solo de pago, tiene una versión gratuita que puedes descargar sin ningún problema, ni compromiso.

      http://qt-project.org/downloads

      El soporte de pago está sobre todo orientado a empresas que necesitan una garantía y soporte oficial, por ejemplo la empresa tras Autodesk Maya si paga a Digia para tener dicho soporte, pero tu puedes usar Qt gratuitamente, eso si, sin garantías y solo con el soporte de la comunidad.

      Eliminar
  8. muchas gracias a todos. muy instructivo

    ResponderEliminar

Publicar un comentario

Entradas populares