10 years of Pentaho Reporting / JFreeReport

Today, 10 years ago I received the e-mail approving the JFreeReport project on Sourceforge. This day also marks my first day as official project leader of the project.

10 years ago, JFreeReport was just starting out. A few weeks before that I added what would later be known as “Simple-XML” format to make it easier to define layouts. In the same year we got PDF export, Windows-Meta-File (WMF) rendering and report functions to calculate values and started gathering a community via the forums at www.object-refinery.com.

JFreeReport was written by David Gilbert. When I needed some printing capabilities for a customer of mine, I selected JFreeReport, as it’s code was clear, and it was easy to embed, had little dependencies and was free of weird runtime requirements (like the need for a JDK to ‘compile’ reports, whatever that means). JFreeReport was 100% in memory with the ability to run in any environment that had a Java runtime environment, regardless how restricted or resource-constrained.

And these days, we uphold that flag. JFreeReport, now Pentaho Reporting, still runs 100% in memory, with no need to swap report data to disk. The core engine is still small, even though the various data-sources can easily add up to 100MB or more, if you include them all.

Thanks to our vibrant community we had a successful decade. With remarkably minimal resources for development we now largely match what other multi-billion companies and their products can do. So thanks to everyone who contributed time, code and blood and tears to make JFreeReport … ahem .. Pentaho Reporting great.

And hopefully, ten years from now, we will be able to throw some flowers onto the graves of the dinosaurs of BI.

One thought on “10 years of Pentaho Reporting / JFreeReport

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>