Re: [gnome-hispano] =?iso-8859-1?q?Redefiniendo_el_paradigma_de_b=FAs?= =?iso-8859-1?q?queda_y_gesti=F3n_de_informaci=F3n_en_Nautilus?=



Saludos a Domingo y a toda la lista.

No recuerdo si alguna vez me presenté al darme de alta y si lo hice fue ya hace mucho tiempo. Y ya que un programa mío sale a colación aprovecho para presentarme entre los gnomeros hispanos.

Me llamo Tomás y soy autor de Vazaar, uso GNOME como escritorio por defecto y en los ratos libres me gusta dedicarme a leer, entre otras cosas, todo lo que esté relacionados con la Web Semántica e intentar desarrollar la que está siendo la aplicación de mi vida: Vazaar. Ya llevo casi 6 años en ello y todavía continuo dándole vueltas a muchos temas. Lástima que no le pueda dedicar todo el tiempo que deseara.

No quiero dar más publicidad de la que se le debe a mi programa pero para estar más actualizados estoy centrando el desarrollo [1] en launchpad y mis anotaciones [2] en este blog y en el wiki [3].

Dicho esto, respondo a tu correo entre líneas:

El 20 de julio de 2009 17:53, Domingo Gonzalez <gonav ono com> escribió:
Hola,

Debajo de este nombre tan espectacular subyace una idea tonta que se me ha ocurrido a raíz de intentar reorganizar y actualizar toda la información del disco. Seguro que a estas alturas esto está ya planteado y/o resuelto, pero no he encontrado demasiadas referencias al respecto. Bien, la problemática a resolver sería la siguiente:


No tan tonta idea. Yo llevo con este problema desde hace muchos años.
 

- Cada x tiempo, tenemos la costumbre de reorganizar nuestros ficheros, bien porque no nos gusta la estructura anterior, bien porque lo que antes era un cajón desastre con cien ficheros, ahora son varias categorías bien definidas y con muchísima más información. Reorganizar la estructura física de ficheros es un trabajo arduo.


Como he leído en otros correos, el porno es un buen ejemplo para pensar en como clasificar información pero la realidad es que el abanico de ejemplos es más amplio :) Principalmente, y entre otras cosas, a mi me preocupaba saber que hacer con todos esos ficheros esparcidos por infinitos directorios repletos de información (manuales, cursos, información sobre trabajos, código fuente, ...).
 


- Dentro de un directorio en particular tenemos numerosos ficheros, los cuales están organizados como mejor hemos podido. Por ejemplo, supongamos un directorio /prgtk con manuales sobre programación en gtk2.0. Dentro hay pdf muy completos e interesantes, que tenemos como referencia obligada, y otros con algún aspecto puntual sin interés actual (quién sabe en un futuro) y que guardamos en /otros. Además, puede que tengamos el mismo fichero en pdf y en html, lo cual implica otra carpeta adicional con su subestructura de ficheros, que complica la búsqueda del index.html por ejemplo. En el fondo estamos intentando clasificar las características de cada fichero por la estructura física de directorios y no por metadatos, labor que considero infructuosa y temporal.

- En una estructura de miles de directorios y subdirectorios, recordar en cada momento dónde está cada cosa es poco menos que imposible.


Efectivamente la actual organización jerárquica no es lo indicado para buscar ni organizar información. Al menos no toda. Es efectiva para organizar código fuente e información que use árboles. Para todos esos ficheros que te descargas, emails que recibes, contactos de tu agenda, pensamientos, notas, enlaces a la web, música, fotografías, vídeos, etc. es necesario otro tipo de planteamiento. Yo empecé con el más simple, el 2.0, las tags. Hasta las version 0.3 mantuve esa visión pero es un callejón sin salida. Las tags no significan nada, no tienen significado por si mismas. Para comprender, tanto la máquina como yo, de que estamos hablando necesitaba un modelo por debajo. Buscando y buscando me topé con la Web Semántica con sus ontologías y sus vocabularios.

 
- Los nombres de los ficheros no son lo suficientemente largos ni descriptivos como para poder saber muchas veces qué hay dentro del mismo. Se necesita información adicional sobre el fichero/directorio para que la búsqueda sea más práctica. Y no hace falta decir el trabajo necesario para renombrar todos los ficheros del tipo tut_pygtk_v1.0.pdf a nombres más "sociables". El sistema de notas y emblemas que integra nautilus es un principio, pero me gustaría ir más allá. 


¿Qué sistema propongo? Lo ideal sería una implementación con al menos las siguientes características:

- Separación entre la estructura organizativa de la información y la estructura física de ficheros.

A esa conclusión llegué yo. Considero dos capás:
- la física: la cual mantiene los ficheros/datos en un repositorio
- la lógica: por cada objeto almaceno en una base de datos todas sus propiedades (metadatos). Y cada objeto pertenece a una clase. Para ello me he ayudado de los conceptos de la web semántica. e El proyecto Nepomuk[4] trata de traer la web semántica al escritorio. KDE ya lo está implementando a través del proyecto Soprano[5], una capa entre las aplicaciones y la bbdd semántica. Me gustaría que GNOME Y KDE fueran de la mano en este aspecto. Creo que sería un salto de gigante en los escritorios.


- Manejo de la información como objetos y no como ficheros (por ej. un manual en html multi-página sería un solo objeto)
 

Pues así como lo consideraste tú, lo hice yo.  De alguna manera había que describir qué era qué.


- Posibilidad de asignar y visualizar información adicional fácilmente a un determinado fichero (objeto), como metadatos.

 
Una base de datos semántica está formada por miles de triples (sujeto, predicado, objeto) los cuales pueden ser consultarse con SPARQL, un lenguaje de consulta bastante potente al estilo de SQL para realizar operaciones de inserción, edición y borrado. La visualización es un tema bastante complejo. El cómo representar los datos queda a manos del desarrollador el cual no suele ser el más indicado para esos casos. Yo soy un caso y tengo tantas ideas como problemas para implentar visualmente los datos. Echa un vistazo a este post sobre el diseño de aplicaciones semánticas [6].

 .
- Fácil edición para organizar la estructura de la información, pudiendo crear secciones, subsecciones y enlazar tanto con direcciones url de internet como con del tipo file:// de una manera cómoda.
 
Dado que hay cientos de ontologías y vocabularios elegí, espero que acertadamente, el proyecto Nepomuk para realizar mi propio modelo. Permite realizar anotaciones, referencias, contactos, descripciones de todo tipo de datos como videos, fotos, música, código fuente, posts, emails, ...

 
- Sistema de búsqueda por nombre real y por metadatos.

Yo consideraría tres: una simple al estilo google basada en palabra(s), una guíada donde tú construyes la pregunta y la avanzada que permitiría escribir consultas complejas. Y posteriormente poder guardar esas búsquedas.

 
Todo esto se podría integrar en Nautilus de alguna forma. Algunas implementaciones existentes que he estado mirando y que podrían aprovecharse en mayor o menor medida son las siguientes:

- El sistema de metadatos (notas y emblemas) de Nautilus, más ampliado. 
 
Nautilus debería rediseñarse de cero o quedar relegado a ser una simple aplicación de escritorio no apta para usuarios noveles. Nautilus debería refundarse en algo parecido a Soprano para que todas las aplicaciones puedan acceder a tu base de conocimientos. Que no necesariamente tiene que ser todo lo que haya en tu home. Tracker me parece una muy buena idea pero no me vale. Escanea todo continuamente. Yo prefiero ir construyendo mi propia base de conocimientos a medida que voy añadiendo objetos.
 

- Una plataforma wiki como herramienta más flexible y eficiente para editar la organización de la información. Permitiría de una forma muy sencilla crear secciones, subsecciones, textos, comentarios y enlaces a direcciones de internet y ficheros locales, mostrando toda la información de los metadatos para conocer sus características de un vistazo. También que permita enlazar un directorio, dentro del cual navegaríamos como ventana normal del Nautilus. No sería muy descabellado integrar un wiki en Nautilus como extensión, estando moinmoin escrito en perl. Incluso hay una versión Desktop Edition [1] que trabaja en un directorio local de home. Definiendo en moinmoin /home/Archivo como directorio de trabajo se podría acceder a todos los ficheros como locales al wiki, por dar una idea.

Creo que la mejor forma de exponer los datos sería creando SPARQL end-points [7] para exponer recursos y servicios y a su vez ser consultados por otras aplicaciones.


- El sistema de gestión de colecciones de GNOME Vazaar [2], aunque me parece más flexible el wiki.  
 
No pensaba que alguien todavía se acordaría de esa versión. Sí, cualquier wiki supera a la desastrosa versión 0.3 de ese infame programa. Espero que la 0.4 sea más acorde con lo que estoy exponiendo. Por suerte, he conocido Python.


- El enfoque del entorno de trabajo de GnomeShell [3] y su nuevo paradigma de gestión de información.  

Hay varios trabajos en marcha, por aquí he leído Zeitgeist, pero hay otros proyectos que comparten el mismo objetivo: traer la Web Semántica al Escritorio. Te daría una lista de ejemplos pero no tengo a mano sus urls.


Conste que soy poco amigo de las soluciones no tradicionales, pero reconozco que un sistema de gestión como este es mucho más eficiente para un escritorio que la navegación por directorios de toda la vida. En fin, no sé si algo parecido está ya en marcha (quizás GnomeShell), pero como mínimo vamos a generar un interesante debate.

Un saludo.

[1] http://moinmo.in/DesktopEdition
[2] http://www.kaskaras.net/vazaar/index.php
[3] http://live.gnome.org/GnomeShell/Screenshots


Lamento no tener más conocimientos técnicos para crear esa capa que ayude a GNOME a dar el salto a algo más humano y no tan cuadrao como es ahora. Ojalá sea una preferencia para una próxima versión 3.0 de este escritorio. El siglo XX ya lo dejamos a la vuelta de la esquina.

Saludos.


[1] https://launchpad.net/vazaar
[2] http://www.vazaar-project.org/blog
[3] http://www.vazaar-project.org/wiki
[4] http://nepomuk.semanticdesktop.org/xwiki/bin/view/Main1/
[5] http://soprano.sourceforge.net/node/1
[6] http://blog.semantic-web.at/2008/09/18/mockups-essential-semantic-applications-design/
[7] http://www.openlinksw.com/weblog/oerling/?id=1085




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]