ROBINSONES URBANOS
INFORME TÉCNICO
Introducción El objetivo de la plataforma digital robinsonesurbanos.org, según se planteaba en el proyecto presentado, consistía en el desarrollo de un espacio de comunicación tipo web 2.0, que funcionara a la vez como espacio de trabajo, ayuda mutua y creación. Este espacio digital debía ser concebido y funcionar como una extensión de una red social física, componiendo así una máquina “sociotecnica”, para la investigación práctica de los potenciales de Internet en la construcción de la salud mental, desde una perspectiva comunitaria. Las funciones principales del portal web incluían: publicación abierta multimedia, edición participativa de contenidos, dotación de espacios para trabajo en grupo y/o individuales, organización de diferentes usuarios y niveles de privacidad, y dotación de diferentes áreas de contenidos: difusión del proyecto, noticias, documentación sobre salud mental, agenda, documentación del proyecto. También era un requisito técnico del proyecto su desarrollo con software libre. Modelo de desarrollo El modelo de desarrollo ha tenido un carácter participativo, a partir del diálogo entre un programador principal y la comunidad de usuarios/ participantes en el proyecto. Se partió de la premisa de usar software libre, por la disponibilidad y economía, y con el objetivo de generar una herramienta igualmente libre, que esté también disponible, y pueda ser a su vez usada por otras personas o colectivos. El desarrollo se ha realizado desde el principio y de forma permanente en “modo debug”, esto es, se partió de un prototipo básico, concebido a partir del proyecto presentado, que ha ido siendo modificado, ajustado y ampliado en función del testeo llevado a cabo por los propios participantes en el proyecto y en la medida de las necesidades que la comunidad ha ido detectando. El trabajo técnico partió del análisis de las herramientas (CMS, Content Management Systems) existentes, valorando la adecuación a las necesidades del proyecto, así como la flexibilidad, robustez, facilidad de customización y solidez de la comunidad de usuarios y desarrolladores. El desarrollo se ha basado en la adaptación de herramientas que pueden ser configuradas íntegramente desde el tablero de administración sin necesidad de reprogramar el código. El
1
ROBINSONES URBANOS
INFORME TÉCNICO
trabajo se ha centrado en una selección conveniente de módulos o plugins instalados sobre la plataforma Dupal, que posteriormente se han configurado para adaptarlos a las necesidades de la plataforma. Esta opción ha facilitado tanto la actualización del sistema como su administración, incluyendo la distribución de las tareas de mantenimiento entre miembros del equipo que no son programadores o especialistas en administración web. Igualmente ha hecho posible que el desarrollo se ajustara a las restricciones presupuestarias del proyecto. El diseño web se ha llevado a cabo de forma colaborativa entre el equipo de programación y diseñadores participantes en el proyecto, contando con los criterios del conjunto de la comunidad.
Análisis y diseño de la plataforma Se plantean dos escenarios diferentes, desde la perspectiva del usuario: la plataforma web como espacio de comunicación, difusión y documentación; y como espacio creativo, de trabajo y ayuda mutua. Cada uno de estos escenarios tiene sus propios requisitos técnicos y plantea una serie de consideraciones que se resuelven configurando adecuadamente el CMS base y los módulos o plugins: usabilidad, privacidad, tipología de contenidos, flujo de trabajo, sistemas de permisos e integración con el modelo basado en grupos de usuarios o islas. Escenario A - La web como espacio de comunicación, difusión y documentación En este escenario los usuarios no necesitan loguearse. Distinguimos tres grupos de visitantes y usos que puede hacer de la web: A.1 / Un usuario que viene de visita y que quiere obtener información del proyecto ->> Hace uso de una serie de enlaces superiores destacados que dan acceso a la información general del proyecto: qué es, quienes somos, etc. ->> Navega por la web a través de una serie de iconos destacados con cada uno de los
2
ROBINSONES URBANOS
INFORME TÉCNICO
apartados de la web en los que se explica en qué consisten: despensa, noticias, comunidad, agenda, etc. ->> Accede en la portada a las noticias destacadas elaboradas por el grupo de editores. A.2 / Un usuario interesado en mantenerse al día con las noticias generales del proyecto relacionadas con el trastorno bipolar, la autoayuda y el desarrollo de herramientas participativas de apoyo y trabajo ->> Acceso directo en la página de inicio a una columna central de noticias generales en la que se destaca también algún contenido de alguna isla o material multimedia. A.3 / Un usuario interesado en participar de manera anónima añadiendo contenido al portal ->> Tiene un acceso directo al sistema de publicación abierta de contenido o newswire ->> Acceso en portada a un bloque lateral con las últimas entradas del newswire Escenario B - La web como espacio creativo, de ayuda y trabajo En este escenario los usuario se dan de alta en el portal para desarrollar la red social y/o crear su propio espacio de comunicación, autoayuda y trabajo. B.1 / Un usuario interesado en participar en el proyecto formando parte de la red social ->> Tiene la posibilidad de unirse a cualquiera de las islas para añadir entradas ->> Tiene acceso a un blog personal con entradas públicas o privadas ->> Tiene acceso al sistema de comentarios ->> Accesos directos para añadir contenidos de cualquier tipo ->> Acceso directo a través de bloques laterales que enlazan a las últimas entradas y comentarios en tus islas B.2 / Un usuario quiere formar un grupo de trabajo y apoyo, una isla, privada o pública, donde puede invitar a otros usuarios para que añadan entradas, archivos multimedia, comentarios, tareas, etc. ->> Acceso a un panel de gestión de su isla ->> Tiene la opción de crear libros para la elaboración personal o colaborativa de documentación personal, médica, etc.
3
ROBINSONES URBANOS
INFORME TÉCNICO
Requisitos e implementación de las herramientas web El requisito principal que plantea el portal web es la necesidad de poder organizar los contenidos en grupos de trabajo. Estos grupos de trabajo son los que hemos llamado Islas, en las que los usuarios se unen siguiendo el modelo de la red social. Cada Isla funciona como un blog multiusuario en el que se añaden entradas de texto, entradas multimedia o tareas vinculadas a un calendario. Los contenidos de las Islas deben permitir diferentes grados de privacidad. Una entrada es visible sólo para el usuario que la publica, o sólo para los usuarios suscritos a una isla o, por defecto, para cualquier usuario que visite la página. Se pueden crear múltiples redes sociales, articuladas en Islas, cada una con un grado de privacidad distinto, lo que permite al usuario o al grupo usos diferenciados para cada Isla. De entre los CMS existentes, Drupal, http://drupal.org, junto con el módulo para comunidades Organics Groups, es lo que mejor resuelve las necesidades iniciales, y lo tomamos como base para luego desarrollar de manera más específica cada apartado de la web y el conjunto de las herramientas.
A continuación encontramos un cuadro que define la estructura de la web y su relación con el sistema de Islas y los tipos de formatos, y con el sistema de permisos:
A / Información general estática sobre el proyecto Robinsones Urbanos QUÉ: Esta información corresponde a los enlaces de arriba: qué es, quienes somos, etc. TIPO: Este tipo de información la almacenamos en el tipo PÁGINAS de drupal. Es un tipo de contenido pensado para información estática que se reedita con poca frecuencia PERMISOS: estas PÁGINAS las pueden editar sólo los que pertenecen al equipo editorial. ISLAS: estas PÁGINAS no se incluyen en ninguna ISLA
4
ROBINSONES URBANOS
INFORME TÉCNICO
B/ Documentación elaborada participativamente en Robinsones Urbanos QUÉ: Es la documentación de referencia del proyecto: despensa, S.O.S, links, etc . También sirve para crear una revista digital de Robinsones Urbanos, que recoge información variada sobre el proyecto a modo de dossier con el historial del proyecto TIPO: Usa el tipo LIBRO de drupal. Es un tipo de contenido pensado para información en permanente transformación y con un formato especial para imprimir. Permite añadir páginas, subpáginas y creación de índices PERMISOS: Cualquier usuario registrado que se subscriba a cualquier isla puede añadir páginas nuevas a la documentación. ISLAS: Cada página de libro, como hemos visto puede pertenecer a la ISLA documentación o a cualquier otra, incluso puede quedarse colgando del libro y no pertenecer a ninguna. CATEGORÍAS: Cada página de libro tiene que estar categorizada con algún término. así podremos navegar el libro a través de palabras clave. C / Foro de publicación abierta o Newswire QUÉ: Un espacio para que cualquier visitante de la página pueda publicar abiertamente en el portal, sin necesidad de estar logueado. Es un blog más pero de carácter más dinámico, general y anónimo TIPO: Para esto usamos el tipo HISTORIA, que es como el tipo PÁGINA, pero admite comentarios. PERMISOS: Cualquier usuario sin registrar puede añadir una HISTORIA nueva al Newswire. ISLAS: las historias del Newswire no pertenecen a ninguna isla. D/ Blogs de usuario o de grupos o Islas QUÉ: Son los blogs personales públicos y blogs multiusuarios en las ISLAS que pueden ser privados o públicos. TIPO: Se usa la entrada tipo POST de BLOG PERMISOS: Los POSTS sólo pueden publicarse en tu blog personal, que siempre es público, o en el blog de alguna ISLA. Entonces el post puede ser privado o público, según elijas a la hora de postearlo. Hasta que no te das de alta en alguna ISLA o creas una isla no puedes postear. Sólo los editores pueden promover un POST a la página central ISLAS: El POST va a una isla o a tu blog personal.
5
ROBINSONES URBANOS
INFORME TÉCNICO
E/ La editorial central de la portada Son entradas de BLOGS de cualquier ISLA, o entradas del NEWSWIRE, o entrada MULTIMEDIA que un editor promueve en la columna central. F/ Registro de actividades QUÉ: Un calendario dentro de una isla privada/pública en el que se registran actividades TIPO: Usamos el CALENDARIO para grupos al que añadimos EVENTOS, con fecha y hora de inicio/fin. PERMISOS: Cualquier usuario registrado puede usar el calendario. ISLAS: hay que formar parte de una ISLA para enviar EVENTOS G/ Historial clínico QUÉ: Un espacio para documentar asuntos clínicos a lo largo del tiempo. TIPO: Funciona con el tipo LIBRO, con partes privadas y partes públicas, según se quiera PERMISOS: Cualquier usuario registrado que forme parte de una ISLA puede crear un libro con un historial clínico. Si el usuario quiere mantener el historial en privado, puede hacerlo creando una ISLA privada a tal efecto. ISLAS: Este contenido va siempre dentro de una ISLA H/ Contenidos multimedia QUÉ: Archivos de audio, vídeo, imágen subidos por los usuarios a las galerías. TIPO: Se usa el tipo IMAGEN para las imágenes y el tipo VÍDEO para los vídeos y audios. PERMISOS: Cualquier usuario registrado puede subir audio, vídeo, foto. ISLAS: Funcionan igual que las entradas de BLOG, así que se pueden añadir a tu blog personal o al de una ISLA.
6
ROBINSONES URBANOS
INFORME TÉCNICO
I/ Categorías de contenidos QUÉ: Son las categorías o etiquetas, tags, que añadimos a cada entrada de BLOG, MULTIMEDIA, NEWSWIRE, LIBRO, etc TIPO: Usamos las TAXONOMíAS y los VOCABULARIOS para etiquetar cada nodo de contenido. PERMISOS: El sistema de etiquetado de contenido es libre. Pero el equipo editorial siempre puede proponer una serie de términos generales para etiquetar según un criterio.
Herramientas de software utilizadas y notas de instalación La totalidad del software web utilizado para construir la plataforma web de Robinsones Urbanos es software libre. Exceptuando el software de conversión multimedia libre ffmpeg, el resto del software instalado surge del proyecto Drupal. Drupal usa una base de datos Mysql 5, y se sirve a través de Apache 2 y PHP 5, instalados en una distribución GNU/Linux Debian Lenny. No adjuntamos al informe los archivos comprimidos del Drupal que hemos usado, ni los módulos o plugins que se han añadido al Drupal y ni el software ffmpeg, todos ellos de libre distribución. Sin embargo especificamos las versiones que hemos usado en la instalación de Robinsones Urbanos. A continuación listamos los paquetes de software instalados y algunas notas sobre sus funciones, y en caso necesario, notas de instalación específicas.
Drupal-5.8 Es el sistema base de Robinsones Urbanos. Sobre el Drupal instalamos luego una serie de módulos o plugins para ampliar o añadir determinadas funciones. Se instala siguiendo el manual que contiene el programa. Una vez instalado activamos los siguientes módulos opcionales que trae Drupal: Blog, Book, Comment, Contact, Locale, Menu, Profile, Search, Statistics, Upload.
7
ROBINSONES URBANOS
INFORME TÉCNICO
Organic Groups: og-5.x-7.3 y og_calendar-5.x-1.1 Es el módulo para comunidades de Drupal, el que nos permite crear grupos o Islas y desarrollar la red social de Robinsones Urbanos. Se instala siguiendo su manual. Una vez instalado activamos los siguientes módulos: Organic groups, OG calendar y Organic groups access control. Content Construction Kit: cck-5.x-1.7 Este módulo permite añadir campos personalizados a los tipos de nodos de Drupal. Lo usamos para crear nodos especiales, como los nodos que contienen imágen o videos o audios. Sirve para crear tipos de contenido personalizados sin necesidad de programarlos: es un kit de construcción. Una vez instalado siguiendo sus instrucciones, activamos el módulo Content. Event: event-5.x-1.0 Añade un tipo de contenido Evento al Drupal. Una vez instalado siguiendo sus instrucciones, activamos los módulos Basic event, Event y Event All Day Image: image-5.x-2.x-dev y imagefield-5.x-2.1 Image permite añadir imágenes en Drupal. Imagefield, crea un tipo de campo 'imágen' personalizado para que podamos crear tipos de contenido con imágenes. Image, además, nos permite organizarlas en galerías de imágenes. Una vez instalado siguiendo sus instrucciones, activamos los módulos Image, Image Attach, Image Gallery y ImageField. TinyMCE: tinymce-5.x-1.9 y imce-5.x-1.2 TinyMCE es un editor WYSIWYG, que permite a los usuarios editar las entradas de los BLOGS, o NEWSWIRE o LIBROS, en un editor amable que realizaz el formateo de texto automáticamente, a través de una interfaz con botones para cada función de formato. Imce es un módulo para TinyMCE que facilita la gestión de las imágenes de usuarios mientras está editando las entradas. Una vez instalado siguiendo sus instrucciones, activamos los módulos TinyMCE y IMCE. OpenPackage Video: op_video-5.x-3.11
8
ROBINSONES URBANOS
INFORME TÉCNICO
Es un paquete de funciones para Drupal que permite subir contenido de vídeo y audio, y reencodearlos para mostrarlos en un reproductor multimedia embebido en web. Para reencodear los vídeos, debe estar instalado en el sistema el software ffmpeg, que veremos luego. Una vez instalado siguiendo sus instrucciones, activamos el módulo OpenPackage Video. Shoutbox: shoutbox-5.x-1.2 El Shoutbox permite tener una espacio en la portada de la web, en el que los usuarios pueden dejar mensajes, como si fuese un chat. De esta manera, los usuarios que están online pueden saludarse o dejarse comentarios. Una vez instalado siguiendo sus instrucciones, activamos el módulo Shoutbox. Tagadelic: tagadelic-5.x-1.0 Este módulo de Drupal permite mostrar una nube de tags, en la que los términos aparecen en distinto tamaño en función de su relevancia, por repetición. Una vez instalado siguiendo sus instrucciones, activamos el módulo Tagadelic.
Views: views-5.x-1.6 Este paquete sirve para crear vistas personalizadas de contenidos, tanto en la central como en los bloques laterales. Junto con el módulo CCK, permite crear casi cualquier tipo de presentación para los contenidos, sin tener que desarrollar código específico. Una vez instalado siguiendo sus instrucciones, activamos el módulo Views, Views RSS y Views UI. Ffmpeg – ffmpeg-svn-23-07-08 Ffmpeg es un conversor universal de archivos multimedia. Lo usamos para unificar los codecs de los archivos de vídeo y audio, para que se puedan mostrar a través de un único reproductor web. Se descarga desde el repositorio svn usando este comando en el terminal del servidor: # svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg' Luego se configura con este otro comando:
9
ROBINSONES URBANOS
INFORME TÉCNICO
# ./configure --prefix=/usr --enable-static --enable-shared --enable-gpl --enable-postproc --enable-swscale --enable-pthreads –enable-libmp3lame --enable-libtheora --enable-libvorbis --disable-ffserver --disable-ffplay --disable-debug --disable-network --enable-avfilter --enableavfilter-lavf --disable-devices –disable-vhook Para compilarlo hay que satisfacer algunas dependencias que se resuelven instalando paquetes de Debian Lenny. Una ves satisfechas las dependencias se compila y se instala con: # make && make install Una vez instalado hay que reconfigurar el módulo OpenPackage Video para darle las rutas del binario de ffmpeg.
Administración de la plataforma La administración de la plataforma web de Robinsones Urbanos consiste en seguir los manuales de administración de cada uno de los software instalados, listados en el punto anterior. Por lo tanto, la única tarea específica de administración, que no desarrolla el grupo editorial, es la de actualizar y mantener el servidor web y actualizar Drupal y los módulos cada vez que resulte necesario.
10