martes, agosto 14, 2012

Ratawiki en PhoneGap

Es lo de hoy. PhoneGap es un toolkit basado en una versión de Apache (Cordova) que te permite desarrollar aplicaciones móviles a partir de html, css y javascript.

Mis viajes en metro bien podría aprovecharlos para escribir, y casi todo lo que escribo va a un ratawiki (ratasoft, degen, mis memorias de los 96 grados, canciones para mi nueva banda...). Me choca tener cosas duplicadas y pues no hay 3G en todo el trayecto.

Mi idea es hacer un editor que te permita editar offline las páginas del wiki y sincronizarlas cuando haya conexión.

El lado móvil necesita guardar local la estructura de cada página (en json), incluyendo la última versión que se sincronizó. Necesita permitirte editar las secciones y los metadatos. Y necesita sincronizar con el wiki en vivo.

Ya existe una gran parte de API usando Ratax (JSON-RPC), implementar las cosas que faltan es trivial. Aún con problemas de cambios concurrentes la cosa no es tan grave porque el Ratawiki versiona automáticamente todos los cambios.

Realmente es algo muy fácil, me va a resultar muy útil, y sería otro de esos factores que hacen a Ratawiki superior a los demás wikis.

miércoles, agosto 08, 2012

Metawiki

Hoy tuve una idea y una visión de cómo realizarla.

La idea es: un wiki que pueda tomar fragmentos del propio wiki.

Y la realización es con el buen ratawiki. Verán, en el ratawiki cada página está compuesta de una o más secciones. Esto fue diseñado para crear templates de contenido (que nunca se han usado), pasa crear secciones de código php (maa idea) y para mayor granularidad en los permisos.

Es actualmente posible acceder a documentos y a secciones.

Si no lo saben, ratawiki tiene un backend tradicional basado en xml, pero uno experimental en postgres. Combinando un lenguaje de queries con postgres será posible crear páginas que hagan referencia a otras páginas.

¿Que qué utilidad hay en eso?

Imagina que tu wiki es un listado de productos. Va a ser posible taggear laa páginas de los productos y luego generar un índice.

La página de los 96 grados tiene listados de tocadas, de canciones y de grabaciones. Sería más fácil mantener todo al día si sólo fuera necesario hacer una actualización en lugar de tres o más.

Pero todo lo vi claro cuando estaba diseñando la estructura del sitio de mi nueva banda: va a ser muy útil preparar todo con estas capacidades metawikísticas.

Probablemente no sea necesario un lenguaje de queries, bastará con un set y un iterador.

Una sección tipo 'table' podría además filtrar el contenido. Y podría soportar IO con archivos xlsx o csv. Eso sería totalmente formidable, pondría al ratawiki años luz delante de otros wikis.

Lo más difícil sería implementar eso en xml, lo que significa que tendremos que abandonar el backend clásico (!!), pero habiendo tanto por ganar es un sacrificio que tendremos que soportar.