Before joining SoftArtisans, Ackley worked at the (NASA) Kennedy
Space Center as a senior programming analyst. But it was his
key contributions to the Jakarta POI Open Source project where
he gained his prominence in the Java™ community.
We recently sat down with Ackley to discuss POI, Open Source
and advancements in MS Office Web reporting.
| Q: |
Having worked
in both realms, what are your thoughts now on Open Source
vs. commercial software? |
| A: |
I
think they both have a place in the software ecosystem.
Without commercial software, all software developers would
essentially be hobbyists. I don't want that to happen.
I love developing software for a living. |
| Q: |
What
made you get involved in POI? When did you start? |
| A: |
I
had a project at a former job that required me to extract
text from Word documents. I found that this was something
that many people needed to do. I discovered some old C
code that did it and converted it to Java™. Later,
I found a Word 97 file format specification on the Web.
I began implementing this in Java™ with plans to
create a commercial library for converting Word documents
into non-proprietary formats. When the POI project became
part of Apache, I contacted them and offered up my code.
All this happened in early 2001. |
| Q: |
How
did you figure out the internals of the Word file format
while working at POI? |
| A: |
I
found the Microsoft documentation for Word 97 on the web.
It didn’t provide everything but it helped . I had to dig
further and do a little bit of reverse-engineering. If
I ever got really stuck I would go peek at OpenOffice.org
code and see their algorithms for opening or saving the
Word format. But at SoftArtisans we have licensed the Word
file format from Microsoft so it’s a lot simpler. |
| Q: |
How
much time did you spend working on POI? |
| A: |
I
tried to make contributions on a weekly basis. I would
say about an average of 5-10 hours a week was devoted to
POI. |
| Q: |
Why
did you decide to leave POI and join SoftArtisans? |
| A: |
The
reason was simple; I felt it was a great opportunity. I
enjoyed being a part of Apache, but it didn't provide me
with a career. |
| Q: |
Why
should someone use OfficeWriter instead of POI? |
| A: |
There
are several reasons. The first is the number of features
that OfficeWriter provides compared with POI. SoftArtisans
provides a solution that supports all features of Excel
and Word. POI doesn't come anywhere near that. The second
is quality of the service and the product. POI has a handful
of volunteer developers who fix bugs and answer questions
at their leisure. SoftArtisans has many developers who
are continually providing cutting-edge features and fantastic
customer support. |
| Q: |
Can
you compare the coding effort required with POI and OfficeWriter? |
| A: |
For
most common tasks, POI takes about four times as much coding
as OfficeWriter. |
| Q: |
Have
you noticed a report generation difference between OfficeWriter
and POI? |
| A: |
OfficeWriter
beats POI hands-down. What I think is clever is that OfficeWriter
has two APIs. One that is optimized for just doing reporting
and another one that is for more general purpose applications. |
| Q: |
Are
there any misconceptions about POI that should be cleared
up? |
| A: |
We
always hear the words “free” and “open source” used together,
but developing with open source code may be more costly
than you think. Obviously, the initial cost is free, but
you need to consider the cost of paying one of your developers
to spend two weeks integrating it into your solution. Worse
yet, after two weeks you realize POI doesn't provide the
features you need. |
| Q: |
Are
there any other open-source projects that you are involved
in or think are exciting? |
| A: |
One
that interests me is Jakarta Slide. They are a back-end
for content repositories. I see a lot of potential in the
field of collaboration and they seem to be going in the
right direction. SoftArtisans has been great in letting
me continue to work on other non-competing open source
projects. |
| Q: |
What
is your favorite application server? |
| A: |
JBoss.
Because they never stop innovating. They also happen to
be open source and free. |
| Q: |
What
is your favorite API? |
| A: |
Why
WordWriter of course! |