Sramana Mitra: Then what happens next?
Bruno Lowagie: I had three different jobs in the first two years of my career because I saw myself as a guru. When I went to a job interview, I said, “I want to be the guru in something.” Obviously, they said, “We don’t need a guru. We need somebody to write the right codes.” I worked for system integrators for two years.
Then there was a university professor who knew me because I had worked earlier for the Flemish government. I had worked on a research and development project to develop state-of-the-art GIS systems. This professor had also worked for the government and knew my work. He recruited me for Gent University between 1998 and 2010 to write codes. I rewrote the complete student administration system. It was a software that calculated the grades and compiled the reports for the students. That’s how I first had the need to write a PDF library. Before the project, professors had a clipper application on the diskette. They could only print lists on an HP printer. I promised them that I’m going to give them a PDF.
Java existed since 1995 and PDF existed since 1993. I thought there will be some library somewhere that I can use. But that wasn’t the case. PDF was an application for the desktop where a PDF would be created manually. What I needed was something that could create PDFs without human intervention. You have a database. You push a button and out of the database comes a report.
At that time, there were 23,000 students at Gent University. We moved from a desktop application to an intranet application. I needed to be able to create a 23,000-page document in a web application. There wasn’t any library around that could do that. In the Christmas holidays of 1998, I started reading the PDF reference. Back then, it was only 600 pages. It was feasible. I really hated PDF because I didn’t understand the format.
I wrote my first library for Gent University and the problem with that library was you had to know PDF in order to use it. What happened was I became the help desk. I was the only one who understood my code. Because of the fact that I had been working with that library between 1998 and 2000, I suddenly saw the light. I started to understand PDF. I asked the university if I could throw away my old library and start from scratch. They said, “We have something that works. Why would you fix something that isn’t broken?”
During my spare time, I created iText. The idea was to create something that developers could use without knowing about PDF. I introduced a higher level layer where you have a document and a writer. The document doesn’t know it’s going to write PDF. At first, I made an HTML writer because HTML is much more straightforward. PDF writer was something that you could couple to the document too. You open the document and then you add a paragraph, a table, or lists. You don’t need to worry about the PDF. The document has these abstract things that everybody understands. The PDF writer would translate everything into PDF syntax and would organize everything on a page. This layer of abstraction opened up PDF for a lot of developers.