Entrevista con Jose Manuel Sanchez- Cuando empezaste tu proyecto? El proyecto empezó a finales de 2003, como trabajo para una asignatura que estaba cursando en la facultad de informática en ese momento llamada Diseño de Aplicaciones Web. El trabajo salió bien, por lo menos a mi profesor le gusto... y me propuso realizar el proyecto de fin de carrera mejorando la librería, que en aquel momento tenía una funcionalidad bastante reducida. En la actualidad ultimo los detalles que me quedan para poder presentarlo lo antes posible, aunque ahora que estoy trabajando, tengo menos tiempo para dedicarme al proyecto. - Por que lo empezaste? Había trabajado en algunos proyectos de aplicaciones web usando PHP+MySQL en el que la generación de informes era un problema, siempre se hacía generando un HTML con todas las limitaciones que eso conlleva. Después de hacer unas cuantas b�squedas en internet, no encontré ning�n generador de este formato, conocía algunos generadores gratuitos para el formato PDF como el FPDF o el R&OS, pero lo cierto es que me apetecía bastante más investigar la posibilidad de generar documentos de OpenOffice.org. - En que consiste el proyecto (para los que no saben)? El proyecto consiste en una librería PHP que proporciona una serie de métodos que pueden ser usados para crear documentos de OOo. En la actualidad pueden ajustarse algunas características del documento como el tipo de fuente, de párrafo y de página así como añadir dibujos (gráficos vectoriales), enlaces, imágenes, tablas, cabeceras y pies de página, etc. La versión en la que estoy trabajando, además, añadirá otras cosas interesantes como la posibilidad de añadir formularios, macros, gráficas (en el formato nativo de OOo), códigos de barras y algunas cosas más. Puede ser usado para crear informes, facturas, o todo aquello que se le ocurra a la gente, aunque está especialmente indicado en aquellos casos en los que la salida por html no es la mejor opción y se busca un resultado de más calidad o con formato de documento y no de una �nica página. Otra de las funcionalidades que se le añadieron a la librería fue la capacidad de comunicarse con la aplicación OOo para poder convertir los documentos generados a otros formatos, por lo que en la práctica, se pueden generar algunos formatos más como MSWord, PDF, RTF, etc. - Cual es la meta final del proyecto?
- Has tenido ayuda de desarrolladores externos? Quienes? El que mayor aportación ha hecho al proyecto es Emanuel Greisen, que me envió lo que en principio era un parser del formato xml de OOo con el fin de poder soportar la modificación de documentos; con lo que el me envió podía abrirse un documento de OOo, reemplazar una serie de palabras por otras y volver a guardar el documento, una aportación genial ya que hay mucha gente a la que esto le puede resultar muy �til. Al final este parser se va convirtiendo en una librería xml completa en la que a�n estoy trabajando. Adam Donnison también me mando una modificación del script de arranque del OOo (para convertir documentos). David Aldred, me mando ejemplo de uso de la librería para generar etiquetas. Pascal Schalck tradujo al francés la documentación de la versión 0.2 de la librería, aunque desgraciadamente la versión 0.3 se ha quedado huérfana... Además de este tipo de aportaciones, otra mucha gente ha colaborado enviado parches, informando de errores, aportando ideas, etc. - Cuando crees poder alcanzar una funcionalidad 'estable' -- version 1.0. Lo cierto es que pretendo alcanzar la funcionalidad 'estable' mucho antes de la versión 1.0, probablemente con la próxima versión (0.4). La verdad es que la forma en la que he numerado las versiones es bastante arbitraria ya que nunca fijé límite de tiempos para sacarlas. Tenía una lista de características que quería implementar para llegar a la 1.0 y seg�n iba implementándolas, publicaba una nueva versión en la web. Sin embargo, la �ltima versión 0.4 (que todavía no esta publicada) incorpora incluso más características de las planeadas para la versión 1.0, por lo que se podría considerar, al menos, una 1.0 beta. En estos momentos estoy intentando acabar unas cuantas cosas que están pendientes, pero espero poder sacar esta versión en un mes o dos. - Que tan sencillo de implementar en una aplicacion web existente? Si te refieres a si es fácil modificar una aplicación existente para que use la librería, yo creo que es bastante sencillo. Los métodos de la librería tienen un nombre bastante descriptivo (creo yo) y en la práctica para generar un documento sólo es necesario hacer unas cuantas llamadas a "write" (para escribir contenido en el documento), "setFont" (para cambiar el tipo de fuente), "addPage" (para añadir una nueva página), etc. He recibido muchos emails en todo este tiempo y lo cierto es que la gente lo usa para muchas más cosas de las que yo había pensado en un principio, por lo que me da la impresión de que no debe ser una tarea demasiado complicada. - Qué impacto tiene el nuevo soporte de PHP5 con XML y como beneficiara tu extensión en el futuro? Bueno, lo cierto es que la salida de PHP5 ha ralentizado un poco el desarrollo de la librería ya que también estoy trabajando en adaptar la librería xml que usa internamente PHP DocWriterpara que sea compatible con la nueva extensión de PHP5, de tal forma que se use una u otra indistintamente dependiendo del entorno PHP (versión 4 ó 5) en el que se este ejecutando. A largo plazo, supongo que afectará positivamente a la generación de documentos, sobre todo en términos de velocidad en la creación. En la actualidad PHP DocWriter esta compuesto de "dos" librerías, la primera es la que sabe cómo es la estructura de un documento OOo y la segunda proporciona un interfaz DOM a la primera para crear el xml. Esta segunda librería está escrita en PHP (ya que para PHP4 la extensión DOM XML siempre se consideró como inestable) y por muchas optimizaciones que se hagan resulta extremadamente lenta cuando estas generando documentos grandes (100 ó más páginas). Las primeras comparaciones que hice en términos de velocidad parseando un documento de aprox. 100 páginas, daban como resultado que usar la extensión de PHP5 era alrededor de 10/ 20 veces más rápido que usar la librería que usa en la actualidad PHP DocWriter. - Cuando soportaras el nuevo formato de OpenDocument Pronto! Aunque probablemente, después de entregar el proyecto de fin de carrera. Lo cierto es que me quedo con ganas de añadir algunas cosas más antes de entregarlo, aunque hay que poner el límite en alg�n sitio... A�n así espero poder seguir añadiendo alguna de estas cosas en un futuro cercano si encuentro el tiempo necesario. - Qué potencial ves en el formato de OOo? El formato en sí tiene mucho potencial, y además está empezando a entrar de lleno en el mundo empresarial. Algunas grandes compañías como IBM y Corel tienen planeado soportarlo en las próximas versiones de sus aplicaciones, después del proceso de estandarización que éste está siguiendo. Personalmente, me parece un acierto que eligieran un formato basado en XML desde el principio ya que ha demostrado que es fácilmente adaptable a las nuevas características de las que dispone la versión 2.0 de OOo. El simple hecho de que otras compañías de la competencia hayan querido sumarse a este acierto unos años después, abandonando los formatos binarios, ya dice bastante... Por otra parte, siempre me ha parecido que el punto verdaderamente fuerte del formato OOo (ya sea del antiguo o del nuevo), es que es libre y está estandarizado, así de simple. Cuando me planteé iniciar el proyecto, lo �nico que tuve que hacer para ver como era el formato OOo fue ir a la página de OpenOffice.org y descargarme la documentación. Esto que puede parecer una tontería, está muy lejos de serlo en la mayoría de los casos. Creo que cada vez más gente es consciente de que guardar su información en un formato que es propiedad secreta de una empresa y que, por tanto, puede desaparecer cuando alguien lo estime conveniente, no es la mejor opción. El hecho de que el nuevo formato OpenDocument, esté en trámites de conseguir una estandarización ISO me parece un acierto total. Gracias a este proceso de estandarización (entre otras cosas), veremos a muchas empresas y organismos p�blicos migrar hacia este formato, si no, al tiempo. Uff muchas preguntas, espero que no te quite mucho el tiempo. Gracias por tu respuesta. De nada, para eso estamos |

