Ingeniería del software y OpenOffice.org

La creación de una nueva funcionalidad en cualquier proyecto software no trivial requiere seguir una serie de pautas y métodos que aseguren que lo que se va a crear se hace según lo especificado, en el tiempo acordado y con el coste previsto. Para conseguirlo, es necesario pasar por una serie de trámites que harán además que lo creado pueda ser revisado, modificado o reutilizado en el futuro sin dejarse la salud en el intento. Crear una nueva funcionalidad en OpenOffice.org, aunque sea pequeña, requiere también pasar por un proceso de documentación ingenieril que aunque pueda asustar al principio, se ve como algo imprescindible si se quiere que OOo sea una suite ofimática de calidad. Un ejemplo de todas estas abstracciones lo podemos encontrar en la nueva funcionalidad «overline» prevista para OpenOffice 3.1.

Para que esa nueva funcionalidad se aceptara en OOo Writer, lo primero que tuvo que hacer su autor es redactar una completa especificación siguiendo la plantilla que el equipo de revisión de OOo (iTeam) ha preparado al efecto. Alguien podría decir, bueno, no hace falta todo esto para poner un efecto de subrayado superior a las fuentes… hasta que se da cuenta de que ese efecto requiere un cambio/añadido en la especificación del estándar OpenDocument… vaya, pues sí, habrá que hacerlo. Luego se da cuenta de que ese cambio incluye nuevas cadenas de texto en el interfaz, que por supuesto habrá que traducir. «Ah… pues también es verdad». Cuando ha terminado, observa que el API UNO de OOo también debería de ofrecer la posibilidad de cambiar por programación el efecto de subrayado superior… etc., etc. El redactar una especificación requiere pensar y hacer frente a todos esos problemas (y más) por escrito. ¿Hemos terminado? No. El equipo iTeam de OpenOffice requiere también, para el control de calidad, la redacción de una serie de «pruebas unitarias» para el interfaz gráfico. Una serie de pasos muy detallados con un final esperado. Algo del estilo: «Pulsa en Nuevo documento writer, elige Formato/Carácter en el menú. Pulsa la pestaña Efectos de Fuente. Selecciona «Overline» en la lista, la primera opción debería de ser «Sin subrayado», comprueba que en el desplegable Color, la opción por defecto es «Sin color»…» Son especificaciones de casos de prueba (Testcase specifications)

Si queréis saber más al respecto, podéis echarle un vistazo a esta presentación bajo el título «The OpenOffice.org specification process demystified»

Frases y celebridades en Informática (I)

«Premature optimization is the root of all evil» C.A.R. Hoare («La optimización prematura es la madre de todos los males»). Hoare (1934 – ) es entre muchas otras cosas, el inventor del algoritmo de ordenación Quicksort, que permite, en promedio, ordenar n elementos en O(n log n).

Ojo, porque la frase original tiene miga: «Deberíamos de olvidarnos de intentar conseguir pequeños avances en la eficiencia de un programa; digamos que el 97% de las veces la optimización prematura es la madre de todos los males», también se le atribuye a Donald Knuth (1938-) … otro monstruo (si no el mayor) en el campo de la informática.

Gracias a Wikipedia por la foto y la información complementaria. Gracias a «Algorithms in a nutshell» (OReilly-2008) por el excelente libro y las constantes referencias a frases célebres en informática.

Sinadura 1.3 publica el código fuente y manual técnico

David Olmos (Zylk.net) me envió a finales de año información sobre el código fuente de la versión 1.3 de Sinadura, la aplicación libre para el uso de firma digital en Linux (en concreto, para la firma digital de documentos PDF).

«Acabamos de publicar las fuentes de la versión 1.3 de sinadura, está dividido en en core y en desktop como en la v.1.0. Hemos estado limpiándolas un poco y, todavía no tenemos manual para explicar cómo se configura el proyecto para compilar desde las fuentes y satisfacer las dependencias, pero dános unas semanas y estará todo publicado.»

Dicho y hecho, han pasado unas semanas y ya tenemos manual técnico, que nos explica paso a paso cómo descargar y compilas las fuentes de Sinadura. Entre las funcionalidades que se requieren con más urgencia yo destacaría el soporte a la comprobación de listas de revocación (si no se comprueba no podremos realmente confirmar la validez de un certificado) y el soporte a la firma múltiple (imprescindible para firmar actas con certificado digital por parte de varias personas).

Igual hasta se podrían proponer estas funcionalidades al Google Summer Of Code 2009… si es que este año Google también se anima a llevarlo adelante (con eso de la crisis, lo veo difícil…)

GIMP: Curso de iniciación

Koro nos escribe para contarnos (en euskera y castellano):

Elgoibarko Zerikasi Bitartekotza Zerbitzutik, 16 orduko «Irudiak Gimp programaren bidez lantzeko hastapen ikastaroa» antolatu dugu.

Ikastaroko datuak hauexek dira: Datak: Otsailaren 9tik – Otsailaren 19a arte Ordutegia: 16:30etatik 18:30ak arte (astelehenetik ostegunera) Tokia: IMHko Danobat Gelan (Elgoibarren) Irakaslea: Koro Gabiola Nori zuzendua: Debabarreneko 25 urtetik gorako edonori zuzendua dago – Informazio gehiagorako edo izena emateko: Tel. 943 748271 (Leire) / zerikasi AT imh es

Eskerrik asko informazioa zabaltzen laguntzeagatik!


Desde el Servicio de Mediación de Zerikasi (en Elgoibar), hemos organizado el siguiente curso de iniciación de tratamiento de imágenes con Gimp.

Datos del curso: Fechas: Del 9 al 19 de febrero Horario: de 16:30 a 18:30 hrs. (de lunes a jueves) Lugar: IMH (Aula Danobat) – en Elgoibar Profesora: Koro Gabiola Dirigido a: Mayores de 25 años residentes en Debabarrena – Para más información e inscripciones contactar con : Leire (Tel. 943 748271) – Email: zerikasi AT imh es

¿Se está perdiendo la netiqueta?

Respuesta: Porque rompe el orden en el que la gente lee en general un texto. Pregunta: ¿Por qué es malo responder antes de citar el mensaje al que estás respondiendo?

No me gusta que respondan a los mensajes de correo con una respuesta antes de citar o contextualizar el texto original que generó esa respuesta. No me gusta que se escriba en letras MAYÚSCULAS PORQUE PARECE QUE ESTÁS GRITANDO. No me gusta leer mensajes con faltas de ortografía. Aún menos que me envíen archivos de X megas como adjuntos al correo. Tampoco me gusta que mi dirección de email aparezca en el CC junto al de otros tantos usuarios. Menos aún que aparezca en el cuerpo del mensaje, con múltiples forwards, avisando del peligro de un virus inexistente (o del fin de los días). No me gusta que los nuevos ciber-habitantes se traguen los hoax y los distribuyan. Tampoco que no sepan distinguir el CC del BCC.

Me disgusta recibir mensajes de correo enormes cuya única aportación, única respuesta, es un «Ok» (no se han molestado ni en recortar a dos líneas el original). Y me saca de mis casillas recibir una respuesta Ok a un mensaje enorme que además llevaba adjunto y en la respuesta del Ok se vuelve a incluir dicho adjunto. Me escuecen los ojos al ver que alguien responde a un mensaje con un «Subject» o «Asunto» nuevo, eliminando toda traza de la pregunta o contexto original (no digamos si han pasado varios días desde el original). Y me rechinan los dientes cuando alguien termina un mensaje con una firma mucho mayor que el texto que escribió, especialmente cuando esa firma culmina diciendo que «No malgastes recursos. Ahorra papel y no imprimas este mensaje».

En los tiempos que corren, no estaría de más que a los nuevos o futuros ciber-habitantes se les diera una pequeña clase sobre Netiqueta, esa gran desconocida. Voy a por mi tila.