13 de junio de 2007

Leopard, groarrrrr

Ayer anunció Apple Leopard, la versión de Mac OS X que saldrá en Octubre. La verdad es que parece una versión bastante impresionante. Bastante gente ha comentado que tiene pocas cosas nuevas. Desde luego, las principales novedades no se caracterizan por ser una novedad radical como Spotlight, sino una mejora aparentemente leve pero bastante radical desde el punto de vista de usabilidad y del modo de usar la interfaz, y definitivamente muchos cambios por debajo. Es la primera vez desde la salida de Mac OS X en la que se hacen cambios tan radicales a la interfaz básica del sistema operativo.

La primera novedad y la más importante es, sin duda alguna, stacks. Stacks son una idea dificil de explicar si uno no lo ve con sus propios ojos, por lo que recomiendo ir a esta página donde Apple pone un enlace a un video. Las pilas son colecciones de cosas que tienen algo en común: las fotos de vacaciones, documentos de clase, imagenes graciosas. Son algo complementario, según dicen los expertos, a los directorios; o más bien una forma distinta de presentar visualmente a una persona los contenidos de un directorio. Básicamente tienes un icono de la pila en el escritorio, le das y el icono "saca" todos sus contenidos y te los muestra ahí mismo. Son una forma más humana de representar las cosas: tengo ahí un montón de papeles, cojo el montón y busco entre ellos.

Las pilas son un concepto aparentemente inventado por Apple y conocido hace tiempo por el nombre de Piles, en concreto parece ser que fueron Gitta Salomon y los máximos responsables de usabilidad de Apple quienes lo anunciaron en 1992. Tambien están patentados por Apple, yya se rumoreó sobre su inclusión para Mac OS X 10.3, y ha habido gente preguntándose recientemente por qué no se incluían (este último enlace tiene imagenes del primer documento público que Gitta Salomon utilizó para anunciarlo), lo cual demuestra que hay ciertos rumores aparentemente absurdos que no lo son tanto.

En cualquier caso estamos ante una gran novedad en usabilidad, a pesar de que muchos la esten pasando por alto. Esta es la primera implementación de esta idea, y no quepa duda que Apple la va a perfeccionar en el futuro y probablemente extender a otras partes del sistema - si es que no lo ha hecho ya, porque Jobs no ha mostrado todo en su presentación.

La segunda novedad que más me ha impresionado es la renovación del dock, esa grandísima idea que deja al estúpido concepto de barra de tareas/menú de inicio heredadas por vista/linux de windows 95, o quizás OS/2, en vergüenza. Eso tambien se puede ver en el enlace del video anterior. Pero no es ese aspecto 3D que se le ha querido dar lo que me llama la atención. Es el reflejo en la base del dock lo que me tiene obsesionado. Si uno ve el video, puede ver como los iconos se ven reflejados en la base del dock, pero no solo los iconos, tambien las ventanas que se bajan demasiado. Para quien no haya visto el video, incluyo imagen (de baja calidad) donde se ve el reflejo de los iconos y del texto de la ventana abierta:



Hasta ahora en los escritorios se habían visto transparencias, que es una propiedad de ciertos materiales como el cristal o la ropa interior femenina, pero jamás de los jamases había visto en un entorno de escritorio crear reflejos. que es una propiedad física de otros objetos. En los juegos ya se habían visto cosas así desde hace muchos años, pero no en escritorios. ¿Como lo habrá hecho Apple? ¿Tiene reflejos porque el sistema gráfico toma en cuenta su posición espacial y la del resto de objetos en relación con él y crea reflejos de acuerdo con todo eso, como (supongo) hacen los juegos, o es un hack que toma los contenidos de los buffers del escritorio cercanos al dock y hace efectos con ellos para crear un efecto 3D "a mano" que en realidad no existe? Yo apuesto por el hack, que suena sencillo de implementar, porque lo otro significaría introducir nociones 3D, y sería un avance acojonante.

Se lleva hablando de los escritorios 3D hace tiempo. Algunas personas piensan que es algo ridículo, porque lo que escuchan son descripciones de entornos donde mueves una ventana al "fondo" del escritorio y no le ven utilidad. Y tiene razón. Pero un escritorio 3D en realidad no significa eso. En realidad, los escritorios gráficos han sido 3D desde el primerísimo día de su concepción. El poner una ventana debajo de otra es un efecto 3D, por ejemplo. Los menús, idem. Los botones que utilizamos a diario tienen efectos gráficos para aparentar que se meten hacia dentro cuando los pulsas. La realidad es que las interfaces gráficas han sido 3D y han utilizado los citados efectos 3D desde sus inicios. El problema es que, debido a la ausencia de hardware gráfico capaz de mover gráficos 3D, los diseñadores tuvieron que limitar la programación a entornos 2D que generaban falsos efectos 3D, y que para mas inri, en sus inicios ni tan siquiera utilizaban aceleración 2D, se generaba todo con la CPU: Dibujo de una linea negra que simulaba una sombra mezclado con un desplazamiento de un pixel en el texto de un botón, etc.

Pero si tuvieramos hardware capaz de trabajar con 3D, no querríamos tener esos falsos efectos 3D, querríamos tener verdaderos efectos 3D: En vez de dibujar una línea negra para aparentar una sombra, simplemente diríamos al botón que se moviera hacia "el fondo". El sistema gráfico se encargaría de dibujar automáticamente las sombras necesarias y de mover la posición final del botón en la pantalla - 2D - un pixel, o lo que haga falta. Del mismo modo, una ventana no estaría "debajo de otra", simplemente, se modificarían las coordenadas de la ventana y el sistema gráfico calcularía cual es la que al final se ve desde el punto de vista del usuario. Un sistema gráfico así no sería en absoluto una pérdida de tiempo, sino que terminaría de completar la visión de las interfaces gráficas que una vez se ideó en Palo Alto. Significaría tambien que se podrían introducir más nociones 3D que hasta el día de hoy no se han introducido porque simularlas en una CPU o en las capacidades 2D de una gráfica era imposible o muy complejo. Significaría que en vez de tener efectos simplemente 2D, como hacen todos los sistemas operativos, por muy avanzados que sean como es el caso de Mac OS X, tendrías efectos 3D...podrías hacer que al eliminar unos documentos se formara un torbellino, con los iconos de los documentos rotando en 3D al son del torbellino hacia la papelera. Por ejemplo. Visualmente sería espectacular.

Y he aquí la paradoja: En los últimos años las tarjetas gráficas han evolucionado lo suficiente como para hacer posibles esos escritorios. Si esas tarjetas tienen la capacidad, y el concepto de interfaz gráfica requiere en el fondo de esas capacidades, es cuestión de tiempo que alguien cree una interfaz gráfica así. Es por todo esto que el reflejo que veo en los videos de Leopard me inquieta. Repito que lo dudo, pero imagínenese por un moneto que el reflejo del dock es exactamente eso: Una superficie tumbada que refleja lo que tiene encima, y que si tuviera otra orientación espacial diferente lo reflejaría de diferente manera. Imagínense que el sistema gráfico tiene esas capacidades: sería posible crear un theme que de a las ventanas unos bordes redondeados que reflejen la imagen las ventanas adyacentes acorde con la curvatura del borde. Imagínense que el menu de una aplicación tambien tuviera esos bordes redondeados que reflejaran el contenido de la aplicación, incluido el parpadeo del cursor. Sería una auténtica revolución, pero insisto en que lo que tiene leopard probablemente sea un efecto gráfico, aunque no quepa duda que Apple está trabajando en alguna parte en un sistema gráfico como el descrito.

La tercera novedad son los Spaces, tambien conocidos como escritorios virtuales en el mundo Linux. En realidad son una copia exacta de la idea, aunque no debemos sentirnos mal por ello, porque los unixeros, a diferencia de muchas empresas - incluida Apple, que tiene patentado un método de renderizado de fuentes que las distribuciones Linux tienen que desactivar por miedo a ser denunciados - no creemos en patentes y creemos que las ideas informáticas tienen que intercambiarse libremente para crear mejores productos. Realmente esa idea, la de los escritorios virtuales, es la única idea original que Unix ha contribuido al mundo de los escritorios. Merece especial atención el nombre tan acertado que le han puesto a esta característica: Ni escritorios virtuales, ni escritorios: Espacios, más cercano al propósito original de la idea: espacio de internet, espacio de desarrollo, etc.

La otra gran novedad es la renovación del finder. Para quienes no lo sepan, el finder es con diferencia la aplicación más odiada de Mac OS X por grupos de zealots exquisitos en términos de usabilidad. Para ver la renovación del finder, es recomendable echar un ojo a la página de Apple sobre el tema, que tambien incluye un imprescindible video. Lo más interesante es la nueva vista Cover Flow, idéntica a la del iPhone e itunes en su concepto. Al principio, en las capturas, me parecio literalmente una cosa realmente inútil, incluso la del iPhone, porque cuando tienes 200 elementos es más comoda una vista de miniaturas, que abarca más elementos que el Cover Flow, que en realidad solo te permite ver en pantalla unos pocos elementos del total de la carpeta, sin duda una razón por la cual la han mezclado con una vista de lista en debajo del Cover Flow. Pero despues de ver el video queda claro que es una forma muy útil de visualizar los contenidos de una carpeta, especialmente cuando no hay muchos elementos. Se hace evidente a poco que uno establezca analogías que la vista Cover Flow es una implementación visual diseñada para las Pilas, o Stacks. Si uno echa un ojo a los gráficos del enlace anteriormente citado, se pueden establecer rápidamente los paralelismos. Cover Flow, inicialmente diseñado para iTunes, es en realidad un método para mirar los contenidos de una pila. De ahí se puede derivar que del mismo modo que las pilas no reemplazan ni pretenden reemplazar a los directorios, la vista Cover Flow no reemplaza ni puede pretender reemplazar a las vistas tradicionales para los directorios.

Otra gran novedad, bastante relacionada con la anterior, es Quick Look. Se trata de ver los contenidos de las aplicaciones sin necesidad de sbrir el documento. No, no se trata de una vista en miniatura del archivo. Si uno echa un ojo al video anterior del finder, se dará cuenta de que en la vista Cover Flow se pueden mirar los contenidos de un PDF o ver un video sin salir del Cover Flow. Pues bien, eso es Quick look.

En fin, que estas son las cosas que más me llaman la atención de Leopard.Hay más y se pueden ver aquí, pero las anteriores me parecían especialmente interesantes. Todas ellas, junto al uso de LLVM en la pila OpenGL, la posible inclusión de un sistema de seguridad a lo SELinux, la independencia de resolución, la inclusión de Dtrace y ZFS, Objective C 2.0 con soporte para recolección de basura, hacen evidente que estamos ante la mayor actualización de Mac OS X en su historia en cuanto a nuevas características y en cuanto a innovación en todos los planos del sistema. En resumen, un 10 para Apple por esta versión de su sistema operativo. Merece bien la pena retrasar su salida 3-4 míseros meses si este es el resultado final.

6 comentarios:

  1. Anónimo10:06 a. m.

    Maldito MacOS que nos aleja al mundo de linux en el escritorio.

    Lo de los reflejos en el escritorio ya lo hacia e16 en linux hace mucho.

    Echo en falta en este nuevo Sistema operativo miniaturas del contenido de las ventanas por lagun lado (ejemplo crt+tab) como hacen Vista, Beryl o el nuevo kwin.

    Un saludo

    ResponderEliminar
  2. Anónimo11:12 p. m.

    En Compiz Fusion tambien hay reflejos en el escritorio en varios plugins, como en Rotate Cube y en Expo, por poner 2 ejemplos

    ResponderEliminar
  3. Anónimo12:30 p. m.

    Que ganas tengo de que salga ya, ahora que me lo puedo instalar en mi Centrino Duo!

    ResponderEliminar
  4. Anónimo12:56 a. m.

    chaval eres un fanatiquillo ... se ve que conoces el macos pero describes las 2 o 3 chorraditas nuevas que trae el leopard como si fueran el descubrimiento de america. en mi opinion el leopard es muy racano en nueva funcionalidad, y ademas es "notabilisimamente" menos estable que el tiger. Y bueno, eso de que "la unica contribucion del unix al mundo de los escritorios es los escritorios virtuales" ... chaval, en los años 80 con unix entre otras cosas ya se podian exportar escritorios por TCP/IP, cosa que el MACos no hace ni ahora a no ser que instale un servidor X que ademas sera FreeBSD, o sea, nada que ver con apple... Respecto a lo de la parente de las fuentes que las distribuciones de Linux tienen miedo a usar... me da la risa, tio, o sea, ¿Cuantas patentes de UNIX violaria el MAC hoy en dia? Se quedarian na mas con un kernel, un driver de opengl y el finder que a ti te parecera la bomba, pero a mi me parece que funcionalmente es muy cortito.

    , si todas las empresas fueran tan jilipollas como apple y microsoft, por ejemplo, apple no podria usar

    como si fueran e

    ResponderEliminar
  5. ¿Y algo coherente tienes que decir, o te conformas con las metidas de pata?

    ResponderEliminar
  6. Anónimo3:41 p. m.

    Un chaval alardeando del descubrimiento de America,plagios y chorraditas nuevas cuando los Chinos descubrieron America antes que los falsos españoles y America se escribe con A no a...

    ResponderEliminar