No, no está al revés en absoluto.
La "dirección" tiene mucho que ver con nuestra perspectiva. Un usuario satisfecho con la ruta actual hacia las interfaces simples, "una experiencia en todos los dispositivos" verá el CLI como un retroceso o una regresión con seguridad. No está en línea con sus expectativas generales.
Un programador, administrador o usuario avanzado puede verlo como la progresión lógica de las herramientas según su experiencia. Muchos de estos comienzan utilizando herramientas de GUI. Cuando quieren o necesitan escalar, rápidamente se dan cuenta de por qué existe el CLI y de que la progresión resuena con aquellos que crean más herramientas de CLI.
Hay algo de Paul Ferris: enlace
Para mí, personalmente, la idea de sintaxis diferencia las dos. Cuando la sintaxis está algo presente en una GUI, el resultado casi nunca es bueno y la sintaxis CLI tan flexible y bien pensada. Cuando esto se combina con tuberías y redireccionamiento, la GUI se desinfla debido a que no es muy útil fuera de los casos de uso planeados.
Mi preferencia personal en esto son las herramientas CLI que ofrecen una opción --gui o --verbose suficiente para permitir que un contenedor de GUI interactúe de una manera sólida, incluidas las barras de estado y otros elementos básicos que la gente busca en la GUI.
Por supuesto, el costo de esto es esencialmente dos programas con uno bastante inútil sin el otro, pero el mayor beneficio es poder incorporar una o más herramientas de CLI grandes en una GUI personalizada sin modificación a dichas herramientas de CLI. La mayoría de las veces, esto solo se hace para ofrecer una opción de GUI en una CLI particular, pero la idea de manejar múltiples herramientas con un "proceso" o una GUI orientada al "caso de uso" puede ofrecer resultados similares a la canalización, la redirección y la creación de scripts para ese caso de uso. ponerlo a disposición de las personas que no realizarían esas operaciones con la regularidad suficiente para alcanzar el dominio sin inhibir a los usuarios de la CLI.
Encontré este enfoque en SGI IRIX y realmente me gustó. Me encontré usando la GUI o la línea de comando según fuera necesario y lo bueno era saber exactamente lo que realmente hacían los botones de fantasía.
Donde hay muchos entornos operativos diferentes, las envolturas de GUI pueden diferir considerablemente sin afectar también a la herramienta CLI.
Veo esto en Linux hoy con cosas como las herramientas de disco / sistema de archivos, donde la GUI puede agregar mucho valor incluso a los usuarios conocidos de CLI.
En el caso de los sistemas de archivos / discos / dispositivos conocidos, eliminar la CLI no es difícil y, por supuesto, puede tener secuencias de comandos. Sin embargo, los errores pueden ser dolorosos.
Cuando no se conozcan, o tal vez no se realicen las operaciones con la regularidad necesaria para permanecer sólidas y sin errores, la ejecución de la GUI proporciona un entorno que puede verificarse fácilmente, las operaciones se pueden encadenar y luego ejecutar con confianza, no scripts requeridos.