1 puntos por GN⁺ 20 시간 전 | 1 comentarios | Compartir por WhatsApp
  • Spaces de macOS permitía en la era de Leopard usar una cuadrícula 3x3 personalizada para tratar los escritorios virtuales como si fueran pantallas reales, y moverse entre navegador, editor, Xcode y simulador mediante memoria espacial
  • Mission Control limitó los escritorios virtuales a una sola fila horizontal en macOS Lion, obligando a deslizarse con el teclado hasta una pantalla concreta o a recordar el número del atajo, rompiendo esa memoria espacial
  • Total Spaces introducía lentitud y más tarde dependió de modificar el Dock del sistema y de esquivar SIP, mientras que gestores de ventanas como Yabai o Aerospace no encajaban con las apps en pantalla completa ni con la preferencia por espacios dedicados a cada tarea
  • GridLion surgió como solución después de ver que InstantSpaceSwitcher cambiaba de space sin animación, y en lugar de usar la API bloqueada de Mission Control, modela los spaces nativos de una sola fila para mostrarlos como una cuadrícula
  • Los LLM ayudaron a crear un prototipo funcional en un solo día, pero la sensación de la UI siguió necesitando un ciclo de retroalimentación humana, y por las limitaciones de API que aún tiene GridLion, los Spaces basados en cuadrícula deberían volver a ser una función del sistema operativo

La memoria espacial que creó Leopard Spaces

  • Spaces en macOS 10.5 Leopard llevó los escritorios virtuales a macOS y permitió que el usuario organizara los espacios en la cuadrícula que quisiera
  • Una cuadrícula 3x3 funcionaba como 9 pantallas, donde se podían fijar apps y tareas: el navegador web en el centro, el editor web arriba, Xcode arriba a la izquierda y el simulador de iOS debajo
  • Ir a una ubicación concreta con una sola pulsación generaba memoria muscular y espacial, como si se miraran monitores físicos separados
  • La cuadrícula de 16 pantallas de secuenciación de EasyBeats Drum Machine también fue influida directamente por la disposición de Spaces de Apple

La cuadrícula que desapareció después de Lion

  • macOS Lion introdujo Mission Control y limitó los escritorios virtuales a una sola fila horizontal
  • En una sola fila horizontal, para llegar con el teclado a una pantalla concreta había que seguir desplazándose lateralmente y, aun usando atajos directos, había que recordar si el navegador estaba en la pantalla 7 o en la 8
  • Este cambio hizo mucho más difícil mantener la costumbre de recordar los escritorios por su ubicación espacial
  • Hubo alternativas como Total Spaces, pero generaban lentitud, dependían de modificar el Dock del sistema y más adelante requirieron esquivar SIP

Espacios por tarea en vez de gestores de ventanas

  • Gestores de ventanas como Yabai o Aerospace no resultaron una solución universal para todos los usuarios
  • Organizar ventanas sobre un escritorio se parecía más a mover papeles sobre una mesa, cuando lo que se necesitaba era algo más cercano a estaciones de trabajo separadas donde todo permaneciera en su lugar
  • Las apps en pantalla completa y el modo dividido de macOS dan un área dedicada a cada tarea, por lo que encajan mejor con una navegación de spaces basada en cuadrícula

Cómo funciona GridLion

  • InstantSpaceSwitcher eliminó la animación de cambio de space en macOS sin modificar el sistema, y al ver esa transición sin animación surgió la posibilidad de resolver el problema de la navegación en cuadrícula
  • macOS mantiene bloqueada la mayor parte de la API de Mission Control, así que no hay una API documentada para añadir o reordenar escritorios
  • GridLion coloca una capa ligera sobre los spaces nativos y opta por mostrar en su modelo interno la fila única de spaces de macOS como si fuera una cuadrícula
  • Con ayuda de un LLM se creó en un día un prototipo tosco pero funcional, y tras usarlo unos días quedó claro que hacía falta una herramienta más pulida
  • Cerca de un mes después llegó a un nivel satisfactorio, y el nombre de la app, GridLion, combina el problema surgido en macOS Lion con la idea de la cuadrícula

Permisos y barreras de distribución

  • Para capturar atajos globales de teclado y navegar entre spaces se necesita el permiso Accessibility de macOS
  • El flujo de permisos de macOS no termina de inmediato como en iOS: abre Configuración, obliga al usuario a encontrar y activar un interruptor concreto, y luego a aceptar avisos de seguridad adicionales
  • Para crear pequeñas vistas previas de los spaces también se necesita el permiso Screen and System Audio Recording, y por las instantáneas de vista previa de ventanas invisibles y de la pantalla aparece un diálogo de advertencia más fuerte
  • GridLion funciona incluso sin ese permiso, pero la función de vistas previas sí lo requiere
  • Para generar confianza, la app tenía que evitar tocar la red salvo cuando el usuario pidiera buscar actualizaciones o verificar una clave de licencia
  • GridLion no puede publicarse en la App Store porque usa APIs privadas para obtener información de los spaces
  • Para vender fuera de la App Store hacía falta un Merchant of Record que gestionara compras, impuestos y reembolsos, y las opciones candidatas fueron Paddle, GumRoad y Lemon Squeezy
  • Lemon Squeezy ofrece una License code API para entregar claves de licencia al comprador y proporcionar métodos de activación, desactivación y verificación
  • La aprobación de Lemon Squeezy requería demostrar que se vendía un producto con valor y uso reales, además de aportar un screencast y pruebas de cuentas de redes sociales
  • Incluso antes de la aprobación se podían usar cuentas de prueba, lo que facilitó configurar y probar la integración con la app

Los LLM y las limitaciones que siguen ahí

  • Los LLM funcionan bien en tareas con objetivos claros, como resultados concretos de una API o consultas sobre grandes conjuntos de datos, porque es fácil iterar viendo el resultado
  • En las interfaces de usuario mucho depende de la sensación, así que las funciones visibles para el usuario necesitan a una persona dentro del ciclo de retroalimentación
  • En una situación en la que casi no se había hecho trabajo nativo para Mac/iOS en casi 10 años, los LLM ayudaron, aunque queda la duda de si la misma app podría haberse hecho en un tiempo parecido con el método anterior y aprendiendo más
  • GridLion apunta a ofrecer navegación y reorganización de cuadrículas de spaces, funcionamiento rápido y estable, y configuración de tamaño de cuadrícula y atajos por pantalla
  • No existe una API confiable para mover un space de una pantalla a otra ni para mover una ventana de un space a otro
  • Como GridLion funciona junto con Mission Control, esas tareas pueden resolverse desde Mission Control
  • La función para hacer que una app concreta aparezca siempre en una posición específica de la cuadrícula existía en Spaces de macOS originalmente, pero en GridLion sigue siendo una tarea pendiente
  • Lo más deseable es que los Spaces basados en cuadrícula vuelvan como función nativa del sistema operativo en una próxima versión de macOS

1 comentarios

 
Comentarios de Hacker News
  • El enfoque actual de Apple parece ser: para evitar el problema de que “de todos modos los principiantes pulsan Permitir”, lanza al usuario a una miniaventura de administrador del sistema de 4 o 5 pasos cada vez
    Hay que encontrar un pequeño interruptor en Configuración, activarlo y volver a pasar el prompt de seguridad, y que no exista forma de desactivar esto ni siquiera para usuarios avanzados se siente como una falta de respeto hacia el usuario
    El problema de que una abuela o un niño de 10 años pulsen “permitir acceso a todo el sistema de archivos y keylogging” en un ejecutable sospechoso es algo que Apple debe resolver, pero a los usuarios que no son ignorantes debería dárseles una forma de desactivar esta protección

    • Parece que entiendes el problema, pero la conclusión no se sostiene. Si existiera una forma de desactivarlo, la abuela también podría ver primero un video de “cómo desactivarlo” y seguirlo, con lo que después perdería esa seguridad
      Aunque no sea perfecto, el enfoque de Apple es bastante razonable, y si hay que pasar por este procedimiento con frecuencia, tampoco es una buena señal desde el punto de vista de la seguridad
    • Más que eso, probablemente la razón es hacer que el usuario se detenga un momento a pensar si realmente quiere realizar esa acción
      En cambio, los sitios web preguntan muy seguido si uno quiere permitir notificaciones, y casi nunca las quiere. Hace poco, al revisar la configuración, me sorprendió ver cuántas había permitido por error; diría que como un 5% fueron clics equivocados
    • Este permiso tiene un potencial particularmente malicioso. Basta pensar un segundo para imaginar de inmediato lo que se puede hacer
      Este permiso sirve para crear un keylogger. Eso es todo. Es un permiso que permite escribir un keylogger, así que no debería resolverse con un solo clic; es un permiso lo bastante peligroso como para justificar pasos adicionales
    • La solución es permitir que el usuario avanzado demuestre su experiencia una sola vez, en vez de cada vez. La razón por la que Gatekeeper nunca me molestó demasiado es que bastaba con spctl --master-disable una vez y una vez más en el menú de configuración. No entiendo por qué TCC no podría funcionar así
    • Es una solución, pero el problema de fondo es que Apple no lo ha desagregado lo suficiente. No hay motivo para agrupar la grabación arbitraria de pantalla con una instantánea de ventana, ni el keylogging arbitrario con la activación de atajos de teclado
      Para vistas previas, Apple podría ofrecer una API para tareas comunes. El sistema operativo podría proporcionar la imagen y muestrearla con una tasa de refresco que dificulte usarla para grabación arbitraria
      Para combinaciones de teclas, se podría reutilizar la tecla de emoji, que actualmente no admite bindings externos, de modo que solo se permita la captura después de cierta “secuencia mágica”. Si el sistema operativo gestionara centralmente los comandos y a los programas les entregara solo el comando, en lugar de las teclas concretas, también tendría la ventaja de centralizar la resolución de conflictos. Ahora mismo esta parte en macOS es bastante dolorosa
      No resolvería todos los problemas, pero sí algunos. Seguro habría formas mejores. Apple tiene programadores lo bastante brillantes; habría que dejar que el equipo de producto resuelva un problema que claramente molesta a los usuarios expertos
  • Antes de MacOS 10.11, Mission Control era bueno. Si deslizabas cuatro dedos hacia arriba, mostraba vistas previas de todos los Spaces, pero en 10.11 lo arruinaron sin motivo y la barra pasó a mostrar solo nombres como “Desktop 1”, “Desktop 2”, obligándote a poner el mouse encima para ver la vista previa
    El efecto práctico es que usar Spaces te hace perder la orientación y te obliga a memorizar
    Algunos programas de terceros fingen restaurarlo, pero lo hacen moviendo el mouse para simular el hover, así que hay latencia y no se integra bien con las animaciones. También hubo parches que funcionaban desactivando SIP e inyectando código (https://github.com/briankendall/forceFullDesktopBar), pero al final dejaron de mantenerse
    Diez años después, uno se pregunta si quedará alguien dentro de Apple que recuerde que alguna vez esta UI fue buena

    • Yo solo usaba Mission Control en modo de pantalla completa, así que no conocía ese comportamiento. Si deslizas tres o cuatro dedos hacia arriba en una ventana a pantalla completa, la vista previa aparece de inmediato
      Aun así, no entiendo en absoluto por qué escritorio y pantalla completa necesitan comportamientos de vista previa distintos
      La parte más irritante de esta UX es que Spaces se reordena sin una razón clara. Normalmente dejo abiertas varias ventanas del IDE, así que es agotador tener que comprobar cada vez si se movieron
    • La pantalla de “Desktop 1”, “Desktop 2” es realmente molesta. Ahora que los monitores de alta resolución son comunes, incluso si el objetivo era ahorrar espacio, ya no tiene sentido
  • Hace falta un concepto de proyectos o tareas en todo el sistema operativo. Ese concepto debe cruzar las apps y estar profundamente integrado con la gestión de ventanas y con Spaces
    El multitasking y el cambio de contexto han aumentado durante años, la mensajería instantánea volvió a impulsarlos, y los flujos de trabajo basados en agentes van a empujar aún más en esa dirección. Como se usa la misma app en varias tareas, esto no es una preocupación a nivel de app, sino algo que el sistema operativo debe soportar
    Los IDE ayudan en parte porque tienen conceptos primitivos de workspace o proyecto y pueden restaurar el contexto del código y la terminal. Pero las páginas web, los agentes fuera del IDE, los chats relacionados con colegas, las apps de gestión de proyectos y demás cosas conectadas siempre quedan separadas
    Esto claramente no es algo de nivel aplicación, sino una preocupación a nivel del sistema operativo. Algunos de los experimentos del iPad con configuraciones alternativas de ventanas parecían prometedores, pero en lo personal no me parecieron lo bastante potentes ni intuitivos

    • Siento que Arc resolvió este problema casi a la perfección con pestañas verticales y múltiples “spaces”. Como hoy en día casi todo sucede dentro del navegador, cubría el 99%, y eso era suficiente
      No entiendo por qué más usuarios avanzados no consideran ideal esa configuración. Espero que Zen Browser se convierta en una alternativa sólida
    • KDE intenta esto con Activities. Personalmente, no me resultó útil
      ¹https://blogs.kde.org/2026/01/17/streamline-plasma-with-acti...
    • Yo uso los workspaces de Niri de esa manera. Normalmente les pongo nombres según el nombre de la rama y dejo abiertos en cada workspace un navegador, un editor y algunas terminales
      También me gusta que el workspace tenga espacio infinito, así no siento que deba crear uno nuevo solo porque uno se volvió demasiado estrecho
    • En macOS uso Aerospace para montar una configuración parecida
  • No puede demostrarlo, pero cree que quizá fue inspiración o incluso la causa de que Apple en Leopard “limitara inexplicablemente Spaces a una sola fila horizontal”.
    En 2009 hizo un video conceptual de un gestor de ventanas lineal con navegación por gestos; aunque hoy está casi olvidado, en su momento tuvo bastante cobertura en medios tecnológicos e influyó en algunas pruebas de concepto de principios de los 2010.
    La gestión lineal de ventanas no es del gusto de todos, pero le sigue pareciendo una idea válida. Ver este lanzamiento y la reacción le dio ánimo, y de hecho ahora está trabajando en algo en esa misma área

    • Le gusta el concepto. Suponiendo que de verdad haya sido la inspiración, tiene curiosidad por saber qué piensa sobre la usabilidad.
      Hoy pasó una hora intentando hacer que funcionara como esperaba, pero todavía hay cosas raras. Incluso desactivando el reordenamiento automático basado en uso, el orden en la vista previa del deslizamiento con tres dedos no coincide con el orden real de las ventanas. El orden visual es el esperado, pero el orden del gesto no es lineal
    • PaperWM es lo más cercano a este enfoque. También tiene un port para macOS
      https://github.com/mogenson/PaperWM.spoon
    • El video es realmente excelente. Si lo hicieran en 2D y solo le agregaran atajos para ir a Spaces, lo usaría de inmediato
    • ¿Todavía existe el video? Estaría bueno que compartieras el enlace
    • Gracias por confesarlo
      De verdad odio ese diseño y lo que le hizo a Gnome. La cuadrícula era muchísimo mejor
  • La gestión de ventanas de macOS me impide cambiarme a Mac. Ya probé soluciones parecidas a Aerospace, pero no pude recrear la experiencia rápida y sin fricción que tengo con i3wm.
    Por desgracia, el gestor de ventanas de macOS se parece a las notificaciones de iOS. Con el tiempo te acostumbras al caos poco productivo, pero eso hace que pases por alto soluciones mejores. Y como probablemente todos los desarrolladores de macOS usan Mac, es muy posible que no vean ni entiendan otros enfoques mejores

    • Hace unos meses me pasé de sway a macOS e intenté mantenerme lo más abierto posible a la vida al estilo Mac porque no quería pelearme con el sistema operativo. Pero Mission Control es una basura completamente inútil.
      Me sorprendió lo estúpidamente hecho que está todo alrededor de esta función. Cosas que hace años eran posibles ahora ya no lo son. Por ejemplo, cambiar entre escritorios o workspaces con el teclado, y cosas como la cuadrícula.
      Con la app “AltTab” al menos se puede cambiar entre aplicaciones sin usar el mouse, y con raycast también se pueden acomodar ventanas, pero duele que cambiar y organizar cosas en macOS sea mucho más lento que en un gestor de ventanas en mosaico
  • Estoy convencido de que la mayor amenaza para una buena UI es la gran cantidad de diseñadores de UI profesionales. La mitad de los diseñadores de UI están por debajo de la mediana, y esa gente eligió el diseño de UI como profesión.
    No puedes hacer avanzar tu carrera año tras año solo defendiendo el status quo, así que tienes que rediseñar algo. Lo anterior se reemplaza aunque funcionara bien o no. Y como la mitad de los diseñadores de UI están por debajo de la mediana, también hay un 50% de probabilidad de que el nuevo diseño sea un retroceso.
    Y así terminamos con gente hablando en el escenario de un evento de Apple sobre Liquid Glass. Lo triste es que muchos diseñadores parecen enfocarse solo en lo visual y casi no entienden la usabilidad. Por ejemplo, ¿cuántos diseñadores que recién entran a la industria conocen la ley de Fitts? ¿Cuántos se opusieron a los problemas evidentes de usabilidad de Liquid Glass? Sinceramente, salvo raras excepciones, los diseñadores son el problema

    • Como alguien que formalmente está en un rol de diseño por la exploración de nuevos productos, me identifico. Hay muchos diseñadores gráficos con poco interés real en el diseño de producto.
      Cosas como el propósito del producto, el propósito de este fragmento de UI, los factores humanos, el diseño de interacción y la experiencia del usuario más allá de lo estético entran ahí.
      Todos dicen que les importan mucho estas cosas, pero en la práctica se consideran poco, porque no son factores que ganen en un portafolio para entrevistas ni en materiales para reportar a liderazgo. Al final eso crea una estructura que filtra con fuerza esos elementos
    • Esa lógica asume que todos los diseñadores están distribuidos como una curva de campana en roles influyentes dentro de grandes empresas tecnológicas. No estoy defendiendo la UI/UX moderna, pero es una suposición bastante fuerte
  • Un poco fuera de tema, pero la vieja Aqua UI se veía mucho mejor. No solo era mucho más fácil ver qué era un control y qué era texto, sino que además era visualmente más bonita

    • Siendo justos, otras UI también eran parecidas. Los botones cuadrados con bisel al estilo Windows 95 hacían que el contenido se viera ordenado.
      Había un botón que parecía botón para cada acción posible, y al ver una barra de herramientas a menudo podías entender todas las acciones disponibles. No tenías que adivinar si alguna parte del contenido era clicable o editable.
      Hoy en día todo tiene un exceso de espacio en blanco. La UI moderna del Panel de control de Windows muchas veces se siente como una pared de texto en varias columnas con mucho espacio vacío y unos pocos interruptores sueltos. Para meter la misma cantidad de opciones que en las UI antiguas, hubo que esconder algunos toggles porque “ya nadie los necesita” o agregar pasos intermedios de navegación. Como resultado, el nuevo Panel de control se siente inflado y menos útil
    • Curiosamente, cuando Aqua era nueva, yo pensaba que Platinum se veía mucho mejor
  • Esto resuelve una molestia que me pasa decenas de veces al día
    La cuadrícula está bien, pero lo que es aún mejor es el cambio instantáneo de pantalla virtual
    Incluso entre las “miles de pequeñas molestias con las que te mata” el macOS moderno, pocas cosas son tan malas como tener que presionar Ctrl→→→→→→→ y aguantar una animación repetida una y otra vez

    • Casi todo en Mac e iOS funciona así, y se ha vuelto más irritante durante los últimos 10 años
      No puedo asegurarlo, pero da la impresión de que los diseñadores visuales son tan inmaduros que creen que queremos ver animaciones bonitas repetidas todo el día, durante décadas, y no solo en una demo o en un tutorial que ves una vez
      No es así para nada. Una vez bastaba. No queremos animaciones. Y la implementación de “Reducir movimiento” es insultante. La demora sigue ahí; solo la cambian por un crossfade borroso
    • De verdad cuesta entender que uno tenga que quedarse sentado viendo esa animación hasta el final. Ni siquiera se registran las pulsaciones hasta que termina la animación de moverte al nuevo escritorio. Es un diseño completamente absurdo
      No entiendo cómo una empresa con recursos infinitos y diseñadores talentosos puede hacer algo así
    • Sí, es de lo peor
      Estoy usando Instant Space Switcher como solución enfocada solo en este problema, y me cambió la vida
    • También puedes presionar Ctrl-UpArrow y luego hacer clic en el Space que quieras. No es instantáneo, pero cuando tienes muchos escritorios puede ser mejor que ir recorriéndolos uno por uno
      También me parece indispensable desactivar “Automatically rearrange Spaces based on most recent use”
      En lo personal, abro solo una app por escritorio y uso nada más Command-Tab. Si mantienes presionada la tecla Command después de Command-Tab, puedes elegir una app sin tener que recorrerlas todas
    • ¿Has probado esto? defaults write com.apple.dock expose-animation-duration -float 0.05; killall Dock
  • Cuando dicen “la experiencia de escritorio de Mac de hace 20 años era mejor que la de ahora”, hace 20 años era 2006. Yo sigo usando una experiencia de escritorio de hace 20 años
    Uso Fvwm2, y los escritorios virtuales en cuadrícula que este autor extraña los he seguido disfrutando con Fvwm2 y antes con la función de escritorios virtuales de Fvwm. Una de las razones por las que me pasé a Fvwm fue precisamente por los escritorios virtuales en cuadrícula; no recuerdo exactamente cuándo, pero fue a mediados o finales de los 90
    He ido puliendo mi configuración de Fvwm2 poco a poco con el tiempo, pero en ningún momento algún diseñador corporativo decidió que una función que yo usaba dejara de existir
    El software privativo no piensa en el beneficio del usuario. Solo mira el precio de la acción o las ventas del próximo trimestre

    • Pero al menos tenemos un renderizado de fuentes decente
    • Como usuario de Linux, leer esto casi me enfureció. Cuesta imaginar que te quiten, por decisión de una empresa, un flujo de trabajo que llevas años ajustando a tus necesidades
      Antes de pasarme a Plasma y Wayland, usé XFCE con prácticamente la misma configuración durante casi 15 años, sin que las actualizaciones me interrumpieran
  • Cuando Apple eliminó los Spaces verticales, de verdad no lo podía creer. Para mí dejó de servir porque tenía que saltarme pantallas innecesarias, y al final dejé de usarlo. No es práctico