Interview by Ryan Harte: April 4, 2010

http://www.phpdocx.com/ and http://www.javadocx.com

What is the coolest implementation of Open XML you have seen?
I am not really familiar with all the developments in this relatively new field. We have started to work with Open XML not so long ago. We needed to create some editable reports out of records in a database so we started to learn WordProcessingML in order to do the job.

Although we knew that there were many useful tools that work on the Microsoft platform it seem that there were no equivalent tools for the LAMP platform. We did a little research and decide that there was an opportunity to develop a cool piece of software that would help developers working in the open source domain to integrate Open XML tools in their “bag of tricks”.

We focused our efforts on docx documents because we believed that it would be more fruitful and because the available documentation was pretty clear and well structured. After a little testing generating Word documents out from a plain text processor we decided that it was the time to start to build the necessary classes in PHP to get the job done.

Our goal was to develop all the code needed to generate full-fledged Word document from scratch including charts, headers footers, sections, TOCs, etcetera.

So you guys built the class libraries?
Yeah, the application is built completely from scratch so we don’t use any of the tools that Microsoft offers. We just built all the necessary classes in PHP.

After doing the job in PHP (4.0 and 5.0) we also decided to translate it into JAVA so we could give service to a wider community.

So what kind of feedback have you received for this project?
Although the reception has been very good the ROI has been scarce by the time being. We opened two website (
http://www.phpdocx.com/ and http://www.javadocx.com) with basically two versions of the software each, One of them is offered with a LGPL license meaning this is free and anyone can take it and use it anyway they wish and there is another “PRO version” with some added functionality and eligible for support.  The free versions are downloaded profusely, around 200 times a day aprox., however the PRO version, although very cheap, is not selling so well. Tha sales are slowly growing but we cannot call it a commercial success by the time being J. 

Overall the feedback from the community is pretty good and many people in the PHP and JAVA world have shown their interest. There have also been some people in the Open XML community that have shown some interest and have contacted us to this respect.

We continue developing the software and we plan to include in the near future (the code is already written and we are already finishing the debugging) an HTML parser that will transform directly HTML into DOCX in order to facilitate the work of programmers and business that have already built data driven dynamical websites and have the need to generate reports out of them.

Thanks to PHPDocX and JAVADocX you will only have to code once to generate a web page and its associated Word document.

Since you guys hadn’t worked with Open XML much before this where did you seek help for Open XML?
We, of course, had access to all the online documentation and fortunately that was enough. It was also of much help that one could generate Word documents directly from MS Office and be able to see all the XML structure behind it just unzipping the Word file.

The openness of the standard has been crucial to simplify the development. I think that it has been a great idea and a big bet for the future to open the standard and that we will see in the future some amazing developments based on it.

We are certainly interested in developing new “web oriented” products based on Open XML and we are actively searching for partners in the community in order to do so.

So what are you doing when you are not coding software Eduardo?
I’m family man so I spend almost all my day working and afterwards I go home to be with my wife and kids, read a little bit,…. I also like cooking and well nothing really special.

But I would like to stress that although I have actively participated in the early stages of the process I am not the one that has written the code for PHPDocX and JAVADocX. I am not really a software developer, my knowledge of programming is pretty basic. I am a recycled PhD in Mathematical Physics that abandoned his research work to get into “the Internet world”.

The software has been mainly developed by two of our programmers here in www.2mdc.com : Jorge López and Victor Barbero. They have done a very nice job and they are currently giving support through the website to the people that have any questions about the software packages. I would like to say their names because I believe that they deserve the recognition.