Informes y estudios
Radio AUPEX en Gloobal: Educación multimediática en Extremadura.
Autores corporativos:
Asociación de Universidades Populares de Extremadura (observadora)
Instituto de Estudios Políticos para América Latina y África (autoría)
Unión de Radios Culturales de Madrid (colaboradora)

Autores personales:
García Samblas, Fernando (Autor/a)

   Descripción    Clasificación    Documento   
 Índice:
     1.- Introduccion: Extremadura, tierra de descubrimientos.
     2.- Gloobal: Repositorio colaborativo de informacion social.
          2.1.- La base de datos Gloobal.
               2.1.1.- El nucleo.
               2.1.2.- Vision gloobal, recursos y lenguajes controlados.
               2.1.3.- Productos Gloobal.
          2.2.- Base de Guias Didácticas y Diccionario.
          2.3.- Servicios Gloobal.
          2.4.- El entorno de gestion y la moderacion.
          2.5.- Servidores Gloobal (o "Gloobalitos").
          2.6.- Plataforma tecnológica detrás de Gloobal.
          2.7.- Configuracion Gloobal (o Gallery is in the house!)
          2.9.- TODO
     3.- Continuidad Jabata: Sistema de emision/grabacion de contenidos radiofonicos.
          3.0.- Presentación mundial de kjabata!!
          3.1.- La "lavadora" Jabata (o kontinuidadJabata-0.01-07.tar.gz)
          3.2.- El proyecto Continuidad Jabata llega a la URCM.
               3.2.1.- La Continuidad Jabata.
               3.2.2.- Requisitos Hardware (o mejor, "maquinaria necesaria").
               3.2.3.- Requisitos Software (o mejor, "sistema deseable").
          3.3.- Asunto: kjabata galopa con Woody! (el "jBF" y el "jSF", los XMLs)
          3.4.- La "pletina" Jabata (kjabata-0.7-01.tar.gz, kjabatad-0.01.01.tar.gz)
          3.8.- FAQs (Preguntas más frecuentes)
          3.9.- TODO (¿te aburres? o mejor aún, ¿te interesa?).
          3.97.- Conclusiones Jabatas: de trolles y cualquieras, john y santiago.
     4.- Radio AUPEX: Desafio comunicativo ante la brecha digital.
     5.- Conclusiones finales.
1.- Introduccion: Extremadura, tierra de descubrimientos.
Antes del verano la Union Europea deberia haber tomado una decision ante la oscura propuesta de Directiva de patentabilidad del software. Si se aprueba, sus repercusiones para los que disfrutamos desarrollando con codigo libre pueden ser fatales (tambien para nuestra industria y para el conjunto de la sociedad europea).

Como señalo Richard Stallman en su reciente visita por la peninsula, abordar el desarrollo de nuevos proyectos en un pais (o continente en este caso) que contempla las patentes de software "es como cruzar un campo minado: dar un paso no supone un gran riesgo, pero llegar hasta el final si".

Por suerte, algunos Gobiernos (como el de Brasil por ejemplo) apoyan explicitamente el uso y desarrollo de software libre. No es el caso del Español, si bien al menos seis comunidades autonomas estan estudiando su uso.

Extremadura ya lo ha hecho, y por pionera sera un referente para el mundo. Los frutos de dicho apoyo ya se estan recogiendo, pero la verdadera cosecha se esta sembrando en estos momentos. El tren del desarrollo que lleva hacia la Sociedad de la Informacion no puede rodar sobre railes cuyo proceso de fabricacion es conocido solo por una multinacional (bueno, parece ser que ahora van permitir que los Gobiernos vean un 98% de dicho proceso).

Son un respiro para nosotros decisiones de apoyo al software libre como la que tomo la Junta de Extremadura con el proposito dotar de ordenadores sus centros educativos. Desde ese dia los que disfrutamos desarrollando con con software libre miramos la region con especial simpatia, como si de un oasis se tratase en una peninsula pro-propietaria (la mayoria de los servicios que ofrece por la Red la e-Administracion solo pueden ser aprovechados por los españoles que hagan uso de un famoso y extendidisimo Explorador propietario). Y la sequia amenaza con agudizarse si la propuesta de Directiva sigue adelante y Europa se convierte en tierra de patentes de software.

Decisiones como la de la Junta nos permiten reparar la deteriorada esperanza que ponemos cada dia en los que nos dirigen (hacia guerras y catastrofes que la mayoria creemos evitables).

Y lo mas importante, decisiones asi permiten crear el entorno apropiado para desarrollar nuestras ideas libremente, sin tener que dudar constantemente de nuestra autenticidad. Un entorno en el que no tenemos que buscar nuestras ideas para ver si son ya propiedad de una corporacion (lo que supone una perdida absurda de tiempo y motivacion). Entorno por otro lado nada actual, ya que es asi como trabajaban los cientificos en el pasado cuando las comunicaciones eran mucho mas costosas: las ideas, tesis o descubrimientos daban la vuelta al mundo y la comunidad cientifica los asimilaba, aplicaba y modificaba libremente para adaptarlos mejor a cada escenario.

Hoy en dia todo tipo de ideas circulan por la Red a la velocidad de la luz (bueno, a veces no tan rapido). Las buenas crecen y se desarrollan. Las malas caen en el olvido pero pueden inspirar otras mejores. Y las mejores se conservan con pocos cambios siendo utilizadas por millones de personas. Un algoritmo es una idea elaborada, y puede ser pieza angular para nuevas creaciones. Los programadores usamos una jerga llena alusiones a algoritmos. Quiza sea por eso que entendemos perfectamente lo que dijo el europarlamentario socialista Michel Rocard durante una sesion informativa de la Comision de Cultura: "El software es el lenguaje del siglo XXI y los lenguajes no se patentan".

Y no debemos olvidar que todo gran descubrimiento tiene como origen una idea, posiblemente sencilla. Si la idea sencilla esta protegida por una patente y el descubridor no tiene posibilidades de costearla, ¿donde ira el descubrimiento? Para los que habitamos la peninsula Extremadura es el lugar, ya que como apuntaba Jesús M. González Barahona "la promoción del software libre es absolutamente incompatible con la introducción de las patentes de software". Es por esta razon que espero que la Junta de Extremadura alce la voz en los foros pertinentes para decir NO a las patentes de software.



Este documento trata de presentar de dos proyectos (o ideas) y de su deseada complementacion, la radio multimedia en Red "Radio AUPEX" con LinEx como base tecnologica. Introducia Mariano Cebrian Herreros su libro "La radio en la convergencia multimedia" diciendo:

"La ultima decada del siglo XX ha sufrido profundas mutaciones tecnologicas, economicas y politicas que han dado lugar a nuevos espacios comunicativos, nuevos mercados y negocios, nuevas culturas. Es un fin y un comienzo de siglos en plena transformacion, el nacimiento de un nuevo universo de relaciones.

Se habla de ruptura con el pasado, pero no es cierto. No se trata de ningun salto brusco sino de una evolucion crecientemente acelerada que consume etapas en menos tiempo y que en lugar de sustituciones produce acumulaciones o momentos de convivencia de unas tecnicas y procesos comunicativos tradicionales con otros innovadores.

Todo tiende a organizarse en red. Ya no son tecnologias aisladas, sino que pasan a formar parte, como eslabones, de unas cadenas comunicativas. Es el mundo en red: redes tecnicas, redes comunicativas, redes economicas. Una de las caracteristicas de estos tiempos es la conectividad, la interrelacion, los elementos contextuales en que se genera cada proceso; es la sociedad red.

...

El escenario de la comunicacion e informacion esta cambiando aceleradamente. Sin embargo, la radio soporta el cambio con excesiva lentitud, se aferra a la rentabilidad de su planteamiento tradicional sin darse cuenta que le estan modificando las reglas y el propio lugar de juego".

Radio AUPEX naceria jugando en este nuevo escenario, con las nuevas reglas como parte fundamental del analisis de su proceso de creacion.

Tanto Gloobal como la Continuidad Jabata estan actualmente en desarrollo, aunque se encuentran ya cerca de cruzar el final del "campo de minas". Muchos de los nuevos requisitos que les añadiria "Radio AUPEX" han sido considerados desde las primeras etapas de sus respectivos desarrollos.

Reconozco no haber perdido ni un minuto en comprobar si las ideas empleadas violan alguna patente. En los EEUU este habria sido un gran error, pero en Europa a dia de hoy no lo es. No lo es gracias a que aqui se protege el software con derechos de autor y no con patentes. Terminos como "propiedad intelectual" en los que se trata de mezclar ambos conceptos no sirven nada mas que para crear confusion entre la gente (como tambien le escuche decir a Stallman en Madrid "no se puede construir ninguna conversacion inteligente partiendo de terminos como propiedad intelectual").

Ambos proyectos han cobrado forma evitando el uso de productos propietarios en favor de estandares implementados con licencia GPL (General Public License). Ambos corren en la actualidad sobre Debian GNU/Linux, en particular sobre paquetes existentes en la seccion principal de dicho sistema operativo. Por este motivo su utilizacion e integracion con LinEx (cuyo nucleo es este mismo sistema) esta garantizada en su totalidad.


2.- Gloobal: Repositorio colaborativo de informacion social.
 
  2.1.- La base de datos Gloobal.
 
  2.1.1.- El nucleo.
Gloobal es un repositorio relacional de información y recursos digitales al servicio de los grupos humanos (movimientos sociales, organizaciones y redes) que trabajan sobre temas globales y paises del sur. Por ello no es de extrañar que éstos compongan el núcleo sobre el cual se construye el resto del sistema. El nombre utilizado para referirnos a los mismos es Agentes y el concepto comprende también las unidades organizativas internas (grupos, departamentos, delegaciones, etc.) que componen cualquiera de ellas.



Junto a los Agentes y como vínculo inseparable a la hora de relacionarse con cualquier producto (documento, actividad, empleo, etc.) figuran los Roles. Todo Agente tendrá asociado al menos un rol en sus relaciones con el resto del sistema.



Como núcleo dentro del núcleo tenemos a las personas que forman parte de dichas unidades de trabajo. Las unidades de trabajo son en realidad "roles" internos y para vincular una persona con una organización es necesario hacerlo por medio de una unidad de trabajo (de la misma forma que un Agente necesita un rol para vincularse con un producto). Esto quiere decir que toda persona estará asociada al menos con una unidad de trabajo de una organizacion para poder relacionarse con la misma. Las personas, como núcleo real del sistema, pueden vincularse directamente con los productos Gloobal y tendran asociado un rol por defecto dependiendo del tipo de producto con el que se creen dichos vínculos.


  2.1.2.- Vision gloobal, recursos y lenguajes controlados.
Estamos hablando de "Productos" (que a nivel interno reciben el nombre de Entidades), sin haberlos definido. Antes de hacerlo vamos a ver el sistema gloobalmente, definiendo previamente dos conceptos muy cercanos al nucleo de la base de datos: los recursos y los lenguajes controlados.



A nivel interno cada elipse representa una tabla dentro de la base de datos relacional sobre la que se apoya Gloobal. Actualmente dicha base de datos esta compuesta por mas de ciento cincuenta tablas convenientemente formadas para: por un lado, facilitar su asimilacion, modificacion y ampliacion (con una notacion fija con semanticas asociadas), y por otro para asegurar su integridad y evitar redundancias (con un diseño robusto y normalizado). Dependiendo de su funcion se distribuyen de la siguiente forma:

  • Nucleo: 2 tablas (Agentes y Personas).

  • Recursos: 3 tablas (Imagenes, Audio y Video).

  • Entidades (o Productos): 12 tablas.

  • Lenguajes Controlados: 36 tablas.

  • Tablas relacionales: el resto (mas de cien tablas).


Como se puede observar, en la base del sistema se encuentran los Recursos y los Lenguajes Controlados.

Los Lenguajes Controlados (LCs) son simples listas de nombres cada uno de los cuales tiene un identificador unico asociado. Los podemos dividir en los siguientes grupos:

  • LCs Especificos: Se trata de lenguanjes que se utilizan dentro de un producto concreto, careciendo de significado en el resto del sistema. El ejemplo mas claro de este tipo de lenguajes son los "tipos de" o subtipificaciones. Todos los productos tienen un lenguaje asociado que tipifica el mismo (Tipo_de_Agente, Tipo_de_Actividad, Tipo_de_Curso, etc) los cuales son utilizados solo dentro de cada producto.

  • LCs Compartidos: Son aquellos cuyo uso se extiende a varios productos. Ejemplos: Solicitantes, Destinatarios, Publicaciones, etc...

  • LCs Comunes (u Observatorios): Son lenguajes que son utilizados por todos los productos y recursos del sistema. A dia de hoy son tres: Descriptores, Paises y Regiones.

  • LCs Agrupadores: Son dos lenguajes (Ejes_Tematicos y Continentes) que sirven para agrupar los LCs comunes en bloques de nivel superior. El mas importante de ellos es Ejes_Tematicos que permite asociar los Descriptores con temas genericos. Continentes agrupa los lenguajes de Paises y Regiones.

  • LC especial: los Roles. Los Roles de los que hablabamos al principio son tambien un LC. Sin embargo tiene caracteristicas que hacen que no pueda entrar en ninguno de los grupos anteriores: es especifico de Agentes, opcionalmente puede emplearse para Personas e indirectamente es utilizado por todos los productos. Sin duda, se trata de un lenguaje especial.


Los Recursos son productos en bruto. Los Recursos pueden ser referenciados y/o vinculados a cualquier producto. Sin embargo, como en las mejores familias, los recursos no se pueden relacionar entre si de forma directa. Si queremos relacionar un video o sonido con una o mas imagenes deberemos hacerlo por medio de un producto concreto que los agrupe.


  2.1.3.- Productos Gloobal.
Y por fin llegamos a los productos (o Entidades). Los buscadores genericos mas utilizados en la Red normalmente nos devuelven los resultados sin indicar la naturaleza de la informacion a la que referencian. En Gloobal, son precisamente los productos los que permiten diferenciar los resultados mostrados de acuerdo con el tipo de informacion que representan.

Los productos son la parte mas dinamica o creciente de la base de datos. Desde la creacion de la base inicial (con solo dos productos, Documentos y Actividades) se han ido añadiendo productos para atender las necesidades de nuevas organizaciones que se han incorporado al proyecto.

A dia de hoy, ampliar la base con un nuevo tipo de producto es cuestion de horas (dias a lo sumo, si este es muy complejo). Y uno de los objetivos principales del proyecto es que esta ampliacion sea cuestion de minutos y que pueda ser realizada por personas sin conocimientos tecnicos.

Independientemente de que cada producto tenga una naturaleza distinta, siempre se pueden encontrar similitudes y diferencias entre ellos que nos permiten agruparlos conceptualmente. Dichos grupos tienen un producto generico ligado al concepto agrupador, que se complementa con productos especificos que tienen caracteristicas especiales. Son los siguientes:

  • URLS: El primer producto que se creo en su dia fue el de Documentos (que de haber sido angloparlantes hubiesemos llamado directamente URLs, NetDocs o eDocs). Con diferencia es el mas generico de todos los existentes ya que se trata en realidad de recursos documentales en la Red convenientemente analizados y clasificados. Precisamente el hecho de que fuese un producto tan generico dio lugar a la creacion separada de los Instrumentos Juridicos, por reunir estos unas caracteristicas especiales ausentes en los Documentos (inicialmente implemente una especie de herencia que finalmente decidi abandonar por la complejidad que estaba añadiendo al desarrollo). Ambos productos almacenan URLs y se esta trabajando en el mantenimiento de una cache local de los recursos a los que referencian.

  • ACTIVIDADES: que fueron, estan siendo o seran. Si bien es posible almacenar tambien la URL de la pagina oficial ligada con la actividad (si es que tal URL existe), la propia ficha Gloobal dara al navegante la informacion necesaria para participar en la misma. El producto generico es Actividades y los especificos Cursos, Empleos y Recursos Economicos.

  • TEXTOS: como este que esta/s leyendo. Se trata de Productos cuyo contenido se elabora y almacena dentro del propio sistema. La ficha de un texto Gloobal puede contener integramente la informacion del tema sobre el que trata, por lo que la referencia a URLs externas es opcional. El producto generico es Textos y los especificos Noticias, Investigaciones, Experiencias, Metodologias y Herramientas.



  2.2.- Base de Guias Didácticas y Diccionario.
Paralelamente a la base Gloobal el sistema mantiene una base de datos cuyo objetivo es facilitar la comprensión de sus semánticas, tanto para el navegante como para aquellos que trabajan dentro del entorno de gestión.

Estaría compuesta por una guía didáctica para cada producto Gloobal más un diccionario de términos/sinónimos asociados a los LCs Ejes Temáticos, Paises y Regiones. Dichos lenguajes controlados, así como la estructura de las tablas de cada producto serían el punto de integración de ambas bases de datos.

El diccionario se compone de términos relacionados entre si que tienen una o más descripciones procedentes de distintas fuentes.

Cada Guía Didáctica tendrá al menos dos tablas. Una en la que sus registros se corresponderán con los distintos campos que pueden almacenarse para el producto que describe. La otra para la definición de conceptos claves que permitan asimilar la naturaleza del producto.

Actualmente sólo el diccionario está implementado pero en breve se pretende comenzar el desarrollo de las Guias.


  2.3.- Servicios Gloobal.
 
  2.4.- El entorno de gestion y la moderacion.
 
  2.5.- Servidores Gloobal (o "Gloobalitos").
Gloobal se enmarca dentro de la necesidad de distribuir el trabajo entre todos.

Con dicha filosofia no podiamos pensar en Gloobal como un producto sin posibilidad de comunicacion directa con el exterior. Si bien un servidor Gloobal podria funcionar de forma completamente independiente, lo normal es que establezca un conjunto de servidores Gloobal "amigos" (denominados informalmente Gloobalitos). El trabajo relizado entre servidores Gloobal "amigos" puede ser finalmente publicado por cualquiera de ellos.

El mecanismo de sincronizacion entre Gloobalitos esta en pleno desarrollo. Un primer prototipo esta siendo utilizado por la Federacion de Derechos Humanos para su Centro Virtual. Su diseño es bastante simple debido a que la FDDHH no queria moderar su trabajo para que este estubiese disponible inmediatamente.



Actualmente, trabajo en una segunda maquina en la siguiente generacion de "Gloobalitos" (que espero queden como Gloobalotes). El diagrama que manejo como idea de base es el siguiente:



  2.6.- Plataforma tecnológica detrás de Gloobal.
Como sistema operativo de base utilizamos Debian GNU/Linux dados los excelentes resultados obtenidos con dicho sistema operativo en la intranet de IEPALA desde que comenzó a utilizarse.

Gloobal emplea PHP4, XML, SQL estándar, JavaScript y (lógicamente) HTML para satisfacer las necesidades planteadas en su análisis inicial. Se desea incorporar tecnología LDAP para la gestión de la comunidad de usuarios Gloobal, si bien por distintos motivos aún no se ha avanzado mucho en este sentido (de momento los usuarios residen en una base de datos separada para hacer más simple la migración a LDAP cuando llegue el momento).

El mantenimiento y control de la evolución del código fuente de los desarrollos realizados se basa en el empleo de CVS (Concurrent Versions System), si bien el acceso al mismo esta restringido a la intranet de IEPALA.

El código fuente de todos los documentos servidos por el Portal de la Cooperación pretende ser HTML 4.01, cumpliendo con la recomendación del W3C (World Wide Web Consortium) del 24 de diciembre de 1999. En un futuro el sistema generará de forma paralela cualquier ficha de información en formato XML.

Dicho código ha sido modularizado siguiendo una arquitectura de tres capas: presentación, lógica de negocio y acceso a datos.

La capa de acceso a datos implementa una serie de clases que aprovechando las características de orientación a objetos de PHP (la herencia básicamente) permiten a la capa de lógica de negocio operar independientemente del SGBDR utilizado para almacenar la información.

El SGBDR utilizado actualmente es MySQL, de uso muy extendido por su rapidez, estabilidad y bajo coste. La información se mantiene en paralelo en dos bases de datos (que pueden residir en máquinas distintas), uno con los datos en explotación (sobre el cual trabajan los documentalistas) y otro con los datos en producción (al que acceden los usuarios que visitan el portal).

El almacenamiento en formato XML es empleado a nivel interno para guardar la actividad en la base de datos en instantes concretos (altas y modificaciones básicamente), así como todas las modificaciones que se han realizado en un registro que están pendientes de ser validadas por los moderadores. Este sistema permite a los moderadores revisar al detalle la evolución de un registro, validando y descartando modificaciones concretas.

La capa de lógica de negocio implementa dos clases PHP: una para el acceso a productos y recursos Gloobal concretos, la otra para manejar conjuntos o colecciones de los mismos. Las búsquedas en el sistema se realizan por medio de esta última clase.


  2.7.- Configuracion Gloobal (o Gallery is in the house!)
Me gustaria que fuese parecida a la del Gallery. Lo instale el dia de Nunca Mais en madrid y me gusto mucho que utilizase objetos para la configuracion (por el Gallery y [email protected] los [email protected] angloparlantes que han permitido Gloobal, la configuracion por defecto de Gloobal es en ingles, si bien se desea multiligue).

Ubicacion de los ficheros de configuracion:
  1. /etc/gloobal

  2. ${$home}/.gloobal


Ficheros de configuracion:
  • apache.conf

  • config.php

  • htaccess


  2.9.- TODO
  • Multilingue

  • ...

  • Botón único en Secciones --> Actualizar Secciones.


Buscalos por el codigo tambien!


3.- Continuidad Jabata: Sistema de emision/grabacion de contenidos radiofonicos.
 
  3.0.- Presentación mundial de kjabata!!
Otro mundo es posible. Dicho lo cual voy a permitirme presentar el proyecto con un correo que tenía preparado dias atrás. Lo tenía listo ¿? para mandarlo a nuestra recien estrenada lista en sourceforge. No lo hice por miedo a agobiarme con los correos que pudiese recibir respondiéndome. Quería revisarlo ortográficamente también, pero todavía no uso el ispell. ni cifrado. ni productos ofimaticos. ni programas de diseño. ni muchas cosas.

Pero estoy seguro que poco a poco algun dia sere un profesional de las "TIC". Pero de momento tengo la suerte de simplemente hacer lo que me gusta, y poder sobrevivir con ello en el intento (no me falta de na, tengo tres Alas Delta, una Sinairge C++ de 15 metros2 de iniciacion, una UP Axis 13 especial para acrobacias y una Icaro 2000 XS 14 para el vuelo facil en termica. Todas en buen estado y muy baratas. Si alguien esta interesado en alguna de ellas [email protected] Quero comprarme una "calva", lo maximo en alas delta en estos momentos).

Hay dos cosas que desgraciadamente no me interesan en absoluto dentro del mundo de las nuevas tecnologias.

Una de ellas es la belleza de los productos. Los productos no dejan de ser productos y bello es por ejemplo el cielo que veo desde mi octaba planta de San Blas muchas tardes. Y muchos otros, y muchas otras cosas.

Hay productos que son virgueros, bien hechos y bonitos. Eso me gusta, como no. Como decía esta tarde Maria Pilar "entre el tronco y el rizo...".

Desde mi pundo de vista Ignacio de Uno comunicación lo está rizando. Su curro ha sido una de las cosas que más me ha motivado en el proyecto. Se puede decir que el diseño de Gloobal me ha conquistado.

Otra es la seguridad, los virus, las bombas... Me preocupa el derecho a mi, a nuestra intimidad, la de mi padre, la de IEPALA, la de las radios y que no usen cualquier de las máquinas que administro para atacar a nadie. Pero me crié en una optimista Ciudad 70 de la transición española (mis profas eran geniales) en la que la gente no robaba por la calle (en San Francisco, con un cuarenta y tantos por ciento de los sin casa CON TRABAJO, si que robaban en la calle. A la calle lo que es de la calle. Quien vive en la calle, su casa es la calle. Esta claro que hay que respetar la propiedad privada ajena. Pero al día siguiente no tube problemas para comprarme otra. Yo de mi casa cojo lo que quiero cuando lo necesito, incluso si es de Sara. Se que me va a perdonar. Yo quiero al prójimo como quiero a Sara. Quiero a un niño iraquí igual que a un niño andaluz).

Si puedo ganarme la vida sin resolver ese tipo de problemas seguiré trabajando en este mundo. Si no, seguramente programaré sólo por el placer de resolverme cosas y resolverselas a los que mas quiero si me dejan (como es mi padre).

La Informática de Gestión solo entre familia, gracias. Me estoy comiendo la vista con esta profesion mientras el hombre se esta comiendo al mundo. Puedo ser tendero en el mercado de mi barrio (si es que resiste, que están en peligro de extinción) y hacer desarrollos por el simple puro gozo de jugar, de jugar con las maquinas.


  3.1.- La "lavadora" Jabata (o kontinuidadJabata-0.01-07.tar.gz)
"
From: [email protected] To: [email protected] Subject: Lo que faltaba=:& nueva versión de kjabata! (1/?)

Pues sí amigos, esto sí que va ser la risa. Primero os pongo en antecedentes, y avisados estais, puede que me extienda más de la cuenta.

Lo que podríamos llamar "la primera versión de kjabata", llamada entonces "kontinuidadJabata", es la que desarrollé en mi portatil durante tres meses sabáticos que decidí coger para conocer el mítico, de leyenda, Valle del Silicio en California. Estaba bastante jarto de currar sobre güindos eNeTe y con productos cerradíiiisimos que solo cuatro podían comprar (ahora con la crisis sólo dos). Tanta kutting edje tecnololli para las élites no terminaba de olerme bien. Sentía que estaba vendiendo "la mística" (gracias Javi por la expresión) de mi pasión por las máquinas. Ganaba una buena pasta a mis ventitantos abriles y para colmo me acababan de hacer indefinido. Pero la decisión estaba tomada.

Desde que dejé la universidad (la Escuela de Vallekas de la Politrésnica) no había vuelto a tocar software libre. Gracias al tío Peru y sus ganas de meter GNU/Linux en la radio pude re-engancharme en un entorno de lujo. Teníamos la esware red hat nosequé, dos máquinas y muchas ganas de hacer cositas. Una de las máquinas, la del estudio, llevaba ya tiempo rulando Win (con el Winamp y una ya olvidada continuidad M$ VBJabata). En la otra metimos la esware y la colocamos fuera del estudio para temas de oficina y experimentación. Nuestro objetivo era que la gente de la radio conociese la existencia del software libre y GNU/Linux e intentar cubrir cada día más necesidades con código libre. Instalé la misma esware en el portátil y camino de las américas me puse como objetivo personal volver a la radio con una solución para la continuidad 100% GPL (por cierto, desgraciadamente, Arturito, mi querida voz en castellano para el féstival... no es libre. Está presa entre los paquetes non-free de Debian. Lo descubrí ayer:(
Y allí estaba yo al día después. Tirao en una moqueta de un pueblo a tomar por culo de ninguna parte, a cuarenta kilometros de Berekeleley, más lejos aún de San Francisco: en "El Sobrado" (tiene coña el nombrecito).

FLASBAC UNO: Correo a [email protected] colegas mi primer día al otro lado del charco.
"

(este FLASBAC es bastante triste y personal. Me lo he pensado mejor y voy a ser más positivo.

Dos URLs relacionadas con el mundo de las radios comunitarias y de baja potencia:
  • www.savepacifica.net: web dedicada a seguir los acontecimientos relacionados con los infiltrados en la junta directiva de Pacífica Network, una red de cinco emisoras comunitarias con bastante apoyo social (en Berkeley KPFA, cincuenta años de historia, en Nueva York WBAI, en plena movida justo cuando yo andube por allí, y tres ciudades más que ahora creo andan a la deriva. Hace tiempo que no leo como evoluciona la situación pero parecen bastante optimistas).

  • www.radio4all.org: Un sitio con contenidos muy interesantes que tenian (y tienen seguramente pero que ahora mismo no logro encontrar:() un repositorio de material radiofónico independiente. Cualquiera puede almacenar programas en él. Los amigos del Bazar del Pingüino colgaban ahí su programa. A ver si vuelven pronto a emitir. Ánimo resitentes!.


Y mi cartel favorito...)

"
De allí salió la primera versión de kjabata. La eleción de KDE/QT vino por lo apropiado que me pareció el krecord como punto de partida. Lo de las xerces para el XML fué más imperdonable aún, ya que mi único motivo para elegirlas fue que ya las había utilizado desde Java. Actualmente sigo utilizando esa primera versión (en distintas fleibours) en el portátil para grabar cintas, vinilos, charlas, etc... Sigo también con la esware, pero tengo muchas ganas de pillarme otro disco para meterle Debian GNU/Linux hasta en los tornillos. Y la nueva kjabata, bastante cambiadita comparada con la que tiene ahora.

Y de eso es de lo que quiero hablaros. De la movida de las versiones, ya que si yo solito ya me hago la picha un lío, ahora que podemos ser más algo de control se hace más que deseable (el CVS de sourceforge nos espera). Al menos de cara a que todos podamos aprovecharnos del trabajo de los demás. Está claro que el hecho de que las radios que he debianizado corran versiones diferentes no es muy agradable. Sin embargo, mi ilusión es que en cada una de esas radios aparezca una programadoraque mejore kjabata para adaptarla a las necesidades de su radio (programadores también me hacen bastante ilusión, pero menos;). Y entonces tendríamos una versión por radio. Software autóctono, con denominación de origen (Viva KBronka!!!).

Sin embargo, hay demasiadas necesidades comunes como para tirar cada uno para un lado. Agarraros a algo porque, amigos, yo nunca he desarrollado un proyecto codo con codo con otros programadores. He pillado el código de otros para continuar su trabajo. He desarrollado librerias que otros han usado. Los colegas con los que he compartido espacio andabamos cada uno con nuestro proyecto (o proyectos) y si que nos pasabamos código, pero en plan artesanal.

Comencé a usar CVS para kjabata hace cosa de un año. Sin embargo, quizás por estar yo solo, al poco me empezó a entrar flojera y dejé de usarlo. Me costaba explicarme en cada commit que [coño|cojones|ostias] había modificado. Ni siquiera llegué a crear un tronco de esos que comenta el Seajob, muy deseables por cierto.

Pero ahora sí que sí. La que colgaré en SourceForge será la versión que está corriendo ahora mismo en Radio Carcoma 107.9fm y que poco a poco iré metiendo en todas las que se dejen.

Tiene cambios importantes. Uno relacionado con la ubicación de los programas y las cuñas que se van grabando desde kjabata. Y el otro encaminado a la idea de que varias continuidades puedan correr en la misma máquina (SeaJob me abrió los ojos cuando me recordó la posibilidad de un ~/.kjabata. gracias tron!;). Es ideal para situaciones como la que me tocó disfrutar en el pasado MadHack02: teníamos la señal de dos charlas y me tube que llevar dos máquinas para grabarlas. Las charlas no requieren compresión a demasiada calidad y una sóla máquina lo podría haber hecho perfectamente (Brand New Tronco: KCharlon is in the house!).

Esto si que ha sido un charlón. Mil gracias por vuestro tiempo y paciencia.

Salud a [email protected]"


  3.2.- El proyecto Continuidad Jabata llega a la URCM.
El texto que viene a continuacion es el primer documento que se colgó en la red (http://radioslibres.eurosur.org/continuidad) informando de la existencia del programa (o sistema, segun se mire).

Como no era sólo el binario kontinuidadJabata el que permitia su funcionamiento (phps, crones, permisos, scripts en diversas ubicaciones,... no era sólo KDE), decidí cambiarle la K por la C. Asi nacia el proyecto como "Continuidad Jabata" en el marco de la URCM (http://www.gloobal.net/agente-urcm).

En ese momento era "un sistema" con Debian GNU/Linux y GNOME/Ximian que "clonaba" a cada nueva radio interesada (TODO: lista de radios con kjabata).

Cuando aparecio LinEx me alegre mucho de la similitud que compartiamos. Era practicamente la misma base que la que yo estaba montando para las radios (creo que las cañas en el Victoria de la Prospe con la gente de Hispalinux pueden tener algo que ver con esto). La idea de intentar hacer una especie de distribucion se pasaba por mi cabeza con frequencia en esas fechas.

Luego vino lo del Knopix que era mejor aun para enviarselo a las radios y que lo evaluasen sin compromiso.

Pero el paquete Debian (el .deb) yo creo que es lo mejor. Formas complementarias de difusion son estupendas pero "apt-get install kjabata" y listo! es para mi la "octava maravilla" de los ssoo modernos. Distros bootables el complemento ideal.


  3.2.1.- La Continuidad Jabata.
Continuidad Jabata es el nombre de un sistema informático escrito en código abierto que permite la grabación, reprodución e intercambio libre de contenidos radiofónicos. Está especialmente diseñado para satisfacer las necesidades de emisión ininterrumpida de emisoras no comerciales de recursos limitados. Está construido sobre la plataforma Debian GNU/Linux y para su desarrollo se han empleado sólo productos cuyo código es de dominio público. El propio código del sistema es de dominio público según los términos de la licencia GPL (General Public License). Gracias a esta condición cuaquier emisora puede aprender los entresijos de su funcionamiento y modificar el sistema a su antojo para que resuelva aquellas necesidades que este no contemple.

Para entorpecer sólo lo imprescindible la labor de los locutores, el sistema se divide en dos partes: por un lado está el software de estudio y por otro el de configuración y mantenimiento.

El software de estudio consta de una sencilla interfaz gráfica que permite al locutor comenzar y terminar la grabación de su programa y de sus cuñas.



El software de configuración posibilita la gestión de los programas que forman parte de la radio junto con sus horarios de emisión.

El software de estudio está escrito en C++ y como principales características destacan su estabilidad (meses funcionando ininterrumpidamente en algunas emisoras) y facilidad de uso (hasta los más neófitos del ratón son capaces de usarlo sin problema alguno). Cuando un locutor comienza la grabación de su programa, la señal de audio emitida es comprimida en formato MP3. Cuando finaliza la grabación su programa queda disponible para su reemisión, grabación en CDROM, etc, así como para otras emisoras que pudiesen estar interesadas en él.



El software diferencia entre cuatro tipos de contenido: programas, cuñas, textos y música. Los programas y las cuñas son los contenidos radiofónicos producidos en las emisoras en formato MP3. Los textos son ficheros ASCII con noticias, avisos, etc. que son leídos por un programa de síntesis de voz. La música puede ser clasificada por géneros y es empleada en las franjas horarias en las que no se emiten programas. Cuñas y textos son intercalados entre los temas musicales con la frecuencia que se desee, con un orden preestablecido o de forma aleatoria.



El software de configuración del sistema está escrito en HTML/PHP4 y puede utilizarse desde cualquier navegador Web de la red (no necesariamente desde el ordenador en el estudio). Desde las páginas de configuración se define qué se emite en cada franja horaria así como la información ligada a cada producción radiofónica (descripción, locutores, correo electrónico, página web, etc).



Al definir un contenido podemos especificar programas de otras radios cuyos contenidos estén disponibles en Internet. La recuperación de dichos programas se realizará automáticamente con la periodicidad indicada sin necesidad de que ninguna persona intervenga en el proceso.

Para facilitar el intercambio y la difusión de los programas (especialmente a emisoras de recursos limitados, cuyos contenidos no estén disponibles en Internet) el sistema permite de una forma bastante simple la grabación y lectura de programas y cuñas en CD-ROM (cualquier persona de la emisora con una pequeña preparación podría encargarse de ello).

Y por si todo esto fuese poco, nuestro (de todos nosotros, los seres y por desgracia también recursos, humanos) maravilloso producto genera, a partir de los datos de configuración, las páginas web de cada uno de los programas así como la página de la parrilla de programación semanal de la emisora.


  3.2.2.- Requisitos Hardware (o mejor, "maquinaria necesaria").
Los requisistos hardware del sistema básico son mínimos: un PC Pentium 133 con 32Mb de memoria RAM, 2Gb de disco duro y tarjeta de sonido.

Microprocesadores más potentes nos permitirán comprimir con una mejor calidad los contenidos emitidos se guardan en disco comprimiendo en tiemp real a OGG/MP3 (con oggenc/lame).

Un disco duro de mayor capacidad dotará a la emisora de más espacio para sus contenidos (más programas, más cuñas y más música para la continuidad).


  3.2.3.- Requisitos Software (o mejor, "sistema deseable").
A día de hoy, la instalación del sistema es con diferencia la parte más compleja de la Continuidad Jabata. Además, en cada emisora nos podemos encontrar escenarios muy distintos, con o sin ordenadores, con o sin Windows, con o sin red local, con o sin acceso a Internet, etc. Esto hace necesario un análisis previo a la instalación para decidir cómo debe entrar la Continuidad Jabata a la emisora.

La plataforma sobre la que se está probando actualmente en Radio Jabato (Coslada), Radio Ritmo (Getafe), Radio Almenara y Onda Alternativa (Madrid) es la Debian GNU/Linux estable.

Una vez realizada la instalación el mantenimiento requerido es mínimo y sencillo (y la presencia de un tecnico GNU/Linux bastante eventual (Linuxeros de los barrios despaña, echad un cable a vuestras radios libres, liberadlas del codigo propietario).

Se está trabajando en la realización un paquete Debian que facilitará bastante las cosas en un futuro (pero esto, por desgracia, va despacito). Mientras tanto, desde la Unión de Radios Culturales de Madrid (http://radioslibres.eurosur.org) se está coordinando su instalación en distintas emisoras. Para saber más, envíanos un correo a [email protected]

(NOTA: La siguiente seccion, Asunto: kjabata galopa con Woody cuenta como instalar kjabata y su funcionamento en lineas generales. Es bastante durillo y solo apto para valientes e [email protected] [email protected])


  3.3.- Asunto: kjabata galopa con Woody! (el "jBF" y el "jSF", los XMLs)
Pues eso, que tras no pocas peleas para migrar el código para las QT2, por fin la continuidad jabata ("kjabata" en su denominación debianizada) puede ser instalada en la actual distribución estable de Debian GNU/Linux. He colgado el tar.gz en http://radioslibres.eurosur.org/kjabata.tar.gz.

(EN CONSTRUCCION: También he colgado http://radioslibres.eurosur.org/wjabata.tar.gz, código php4 que permite la gestión de kjabata (programas, horarios, etc..) desde un navegador sin necesidad de editar los ficheros XML a mano. Además facilita (o al menos esa es mi intención) la grabación de cds y la clasificación de los sonidos.)

Ahora me gustaría depurar el "make install" de kjabata, currarme la documentación y paquetizarlo (aunque sea sin seguir al 100% la política debian que algún día leeré icon_sad.gif ). Poco a poco. Pero de momento si lo podeis probar y decirme que tal se instala así como cualquier otra obscenidad sera bienvenida.

Para los valientes, dada la FALTA DE DOCUMENTACION TOTAL (avisaos estais) y a falta de algo mejor por el momento, aquí va una chuleta rescatada de un correo (que tratare de mantener revisado y actualizado)...

"Muy buenas apañero...

Lo descomprimimos y nos metemos:

"tar -xzvf kjabata.tar.gz".
"cd kjabata".

Para compilarlo, antes te vendrá bien algo como:

"apt-get install zlib1g-dev xlibs-dev libjpeg62-dev kde-devel libqt-dev libxerces1-dev".

Después lo típico:
./configure; make depend; su -c "make install"

Se generan dos binarios: kjabata y parrillaJabata. El segundo sirve para generar las páginas html/php de la parrilla y de los distintos programas de la radio.

Una vez instalado, para que funcione necesitaría los siguientes paquetes:
- vorbis-tools: ya sabes. El soporte para ogg es reciente y no se está probando nada más que en mi máquina (en las radios está funcionando con mp3). Tengo que retocar jabatoSound.cpp para que calcule con precisión la duración de los temas con formato ogg. Lo que hay hecho ahora es una ñapa bastante cutre. Si te animas, retócalo tu mismo y me cuentas.

- festival y festvox-ellpc11k: programa de síntesis de voz y voz en castellano. La continuidad lee textos también.

- mpg321: para que reproduzca emepetreses.

Para que comprima programas y cuñas también en mp3 tenemos que instalar el lame, que no es libre y no está en debian (ni entre los non-free¿?). La versión que se está usando en las radios es la 3.70. La tienes también en:
http://radioslibres.eurosur.org/lame3.70.tar.gz Para que meterlo en el sistema yo suelo hacer lo siguiente:
#vi Makefile Dentro de la sección de Linux (en la mitad del fichero más o menos)
comento las siguientes lineas:
GTK = -DHAVEGTK ....
GTKLIBS = gtk-config --libs
BRHIST_SWITCH = -DBRHIST LIBTERMCAP = -lncurses #make #cp lame /usr/bin (por ejemplo)

KJabata reconoce el tipo de fichero por su extensión y utiliza el reproductor/compresor adecuado en cada caso:
- Ficheros .ogg/.OGG --> ogg123 y oggenc, - Ficheros .mp3/.MP3 --> mpg123 y lame, - Ficheros .festival/.FESTIVAL --> festival FICHEROS DE CONFIGURACION jBF y jSF:
- kjabata utiliza dos ficheros de configuración con formato xml para guardar los programas y bloques musicales que forman parte de la parrilla (JabatoBlockFile->.jBF) y los horarios que dichos bloques tienen en la parrilla (JabatoScheduleFile->jSF).

- kjabata busca los dos ficheros de configuración más modernos dentro del directorio /usr/share/apps/kjabata/.

- El nombre de dichos ficheros debería tener el siguiente formato: AAAAMMDD.jBF y AAAAMMDD.jSF, siendo AAAA el año, MM el mes y DD el día de una fecha dada. Esto permite mantener un histórico de parrillas a lo largo del tiempo.

Ambos ficheros se pueden modificar a mano, si bien tengo escrito un gui en php para facilitar su manipulación, creación de directorios para los programas y otras películas (si quieres lo cuelgo también).

Tengo que escribir el DTD de ambos y documentarlos, aunque en realidad son muy sencillos y los nombres de las etiquetas y atributos son (espero) suficiente información como para atreverse a jugar con ellos (tu me dirás). Mientras lo hago, al menos te los cuento por encima.

Los atributos STATIONNAME, SAMPLINGFREQUENCY y AUTORECORDING de la etiqueta JABATOSCHEDULEFILE (principal del jSF) se guarda el nombre de la radio, la calidad de las grabaciones y el piloto automático (grabación automática a determinadas horas). Dentro de JABATOSCHEDULEFILE tenemos etiquetas con el atributo DAYOFWEEK="X" (donde si X=1 hablamos del lunes, si X=2 del martes... y si X=0 se trata de todos los dias de la semana)
Dentro de la etiqueta puede haber dos etiquetas:
- para indicar el comienzo de una franja horaria asociada a un bloque. Tiene la siguiente forma:
que viene a decir que de dos a tres de la tarde comenzará el bloque "1" y que es su hora de emisión en directo. Si trabajamos con el piloto automático (AUTORECORDING="1"), por ser su hora de emisión en directo comenzará a grabar si nadie lo impide a las 14:00 aprox. y terminará a las 15:00.
-: Un cron jabato.

El esta compuesto por uno o más s cuyos atributos obligatorios son el ID y el NAME. El bloque ID="0" es obligatorio por ser el que se utiliza por defecto donde no tengamos un .

La etiqueta puede tener o no un (y solo un) que indica el fichero en el que se grabará el programa (si no tiene esta etiqueta se trata de un bloque musical). Puede tener todas las etiquetas y que se desee indicando música y cuñas asociadas con el bloque (si un bloque no tiene ninguna cojerá la música del bloque "0", e igual con las cuñas).

Bueno, dejo el charlón aquí. La gestion desde las páginas php simplifica bastante todo y además permite ver la parrilla en html. Me encataría que lo hicieses funcionar. No dudes en preguntarme, insultarme o lo que consideres necesario para conseguirlo.


Saludos bonobos."
______________________________________ "Por que sueño, yo no lo estoy" Leo.


  3.4.- La "pletina" Jabata (kjabata-0.7-01.tar.gz, kjabatad-0.01.01.tar.gz)
O como el hostname de la máquina en la que está funcionando el prototipo ahora mismo: "kajajabata".

Llámese como se llame, me mola mucho. Un demonio. Sin teclado. Sin ratón. Sin monitor. Sin manejador de ventanas. Sin Gnome. Sin Kde (bueno sí, algo hay). Dos tarjetas de sonido: una sonando (kjabata en read-only mode) y la otra para las grabaciones: en el aire o en cerrado, como decida el locutor. Dos vncservers (apt-get install vncserver y poco más) escuchando en http://kajajabata:5800 (para grabaciones) y en http://kajajabata:5801 (para la emision continua). Voy a probarlo ahora mismo y si funciona... ¡Funciona!


  3.8.- FAQs (Preguntas más frecuentes)
 
  3.9.- TODO (¿te aburres? o mejor aún, ¿te interesa?).
Los ire apuntando segun los vaya recordando. De momento están sin priorizar (nos curramos un sistema de votación para tener algo así como un Top 10).
Empezamos:
  1. Internacionalización

  2. mio: colgar nueva versión.

  3. Cálculo de la duración de los temas en formato Ogg Vorbis (lo que hay ahora es una chapucilla para salir del paso. jabatoSound.cpp)

  4. Al entrar un nuevo bloque (o siempre que actualizamos sonido) lectura de una lista de sonidos vinculada con el bloque actual.

  5. Doc vncserver (creo que mínima)

  6. Doc rdist

  7. Doc ntp
  8. Configuracion en condiciones para wjabata (la del gallery me gusta mucho).

  9. Doc alsa inst (venga SeaJob, cuéntame...)

  10. Perico me comenta que hay un shareware (que creo no es abierto), llamado RadioPC, que según el es lo más parecido a kjabata en win. Si alguien tiene tiempo y me puede comentar alguna idea chula lo agradeceré (igual hay mil, pero se trataría de meter las que fuesen más sencillas en esta lista.)



  3.97.- Conclusiones Jabatas: de trolles y cualquieras, john y santiago.
Aqui deberia escribir mi opinion sobre la existencia de trolles en algunos sitios, y su conexion con mi "operacion cualquiera", que vera la luz dentro de los nuevos mundos del "Mono Bonobo".

4.- Radio AUPEX: Desafio comunicativo ante la brecha digital.
Es imposible que A (país, organización o ser humano) se acerque algún día a B si B avanza más rapido que A. La existencia de la brecha digital se alimenta de dicho principio fisico dentro del marco del acceso a las nuevas tecnologias. En teoría A no tiene acceso a las mismas, mientras que B sí. Desde mi punto de vista, incluso en los casos en los que A tiene acceso a la tecnología, si esta es cerrada, la brecha continuará creciendo de forma indefinida.

Los productos propietarios favorecen que B siga corriendo más rápido que A. Los paises en vias de desarrollo no tienen la posibilidad de importar tecnologia puntera que permite a los paises ricos desarrollarse aun mas rapido, ampliando las distancias, aumentando asi las dependencias ya existentes.

Con el software libre la Humanidad dispone de una buena base tecnológica sobre la que construir con mayor igualdad, compitiendo y cooperando al mismo tiempo con nuestros iguales. Y como escribió el Consejero de Educación, Ciencia y Tecnología de la Junta de Extremadura Luis Millán Vázquez de Miguel "La convicción reforzada de que la igualdad es la que permite el ejercicio de la libertad, y que esa es la fuente de riqueza del futuro, hace posible asegurar, desde cualquier tribuna que somos el futuro".

Osvaldo León, Sally Burch y Eduardo Tamayo comentan en su libro "Movimientos Sociales en la Red"(ALAI): "La brecha digital, en suma, es una expresión de las desigualdades socio-economicas prevalecientes, lo que no impide que si se la descuida, bien puede repercutir en un agravamiento de estas. Por lo mismo, tampoco se puede pensar que las soluciones que se dirigen a cerrar la brecha digital, sin abordar las causas más fundamentales de las desigualdades, podrán resolver de por sí los problemas de desarrollo".

Radio AUPEX podría ser una mas de esas soluciones "parche" ante la brecha digital. Pero no es el caso gracias a que tendria como compañero inseparable de viaje a LinEx, que desde mi punto de vista ataca de frente a una de esas causas fundamentales de la desigualdad: la transferencia tecnologia cerrada (o lo que es lo mismo, transferencia de tecnologia sin transferencia de conocimiento). Soy consciente de que seguimos hablando de tecnología y no de pan, pero es que precisamente la transferencia añadida de conocimiento que acompaña al software libre es la que posibilita la creación de una industria tecnologica local. Dicha industria local con el tiempo permitiría substituir buena parte de la importación tecnológica por la de aquellos recursos básicos cuya producción es costosa o imposible dentro de sus fronteras. Ademas, dicha industria atenderia mucho mejor las verdaderas necesidades locales ya que, por muy buenos que sean los consultores externos, nadie conoce mejor un escenario (pueblo, ciudad, region, pais, etc.) que aquellos que lo habitan, que lo quieren y sufren al mismo tiempo.


5.- Conclusiones finales.


[email protected]