Novell’s Michael Meeks talks LibreOffice 3.3, The Document Foundation & Oracle
LibreOffice 3.3 has arrived to liberate open source offices. We recently caught up with Michael Meeks, a distinguished engineer at Novell and a contributor to the LibreOffice project and discover quite how much of a difference an active community can make to the neglected OpenOffice.org codebase…
When Oracle acquired Sun Microsystems in 2010, the company inherited a large portfolio of open source projects. While Oracle has made a distinct effort to push many of these projects either forward or backward, OpenOffice.org was largely left alone. While Oracle set about infuriating the Java community, and outright killing the OpenSolaris community, the one project in its open source stable that had withered and been left unloved for so many years was completely ignored.
Enter the Document Foundation. As an aspiring non-profit organisation, the Document Foundation has already spent six months helping to bring new contributors and new code to OpenOffice, which the Foundation has essentially forked and renamed LibreOffice. From making word count actually work, to repairing bugs that caused the number 1,000,000 to be ignored entirely in certain situations, those six months have already made a huge difference to the project.
On to our interview with Michael Meeks…
What was your first computer?
Goodness. Well, really one of two. my parents bought a BBC Model B with a 6502 processor, and 32K of memory (to share with the frame-buffer, OS and apps). It was a fantastic investment, when I look back at it in their children’s future – and cost a lot at the time. A really good machine, hurt only by the one-bit-per-channel DAC which severely limited its graphical possibilities. I learned most of my programming on that beast as an early teen.
That was fine while I did garden rubbish removal to save up for my own computer; which after much excitement, was a speeding Pentium 60. It could even (just about) play ‘multimedia’, by which we meant a postage-stamp-sized picture on the screen.
What was your first programming language?
I learned the syntax of BBC Basic by typing in games from magazines with a friend – a surprisingly social, and rewarding pre-figurement of ‘pair programming’, that I suspect is gone forever. Since our typing was inadequate at best, we learned to parse the obscure syntax errors and fix programs before we understood anything about the language. Then writing menu systems became fashionable, along with basic games, before graduating to 6502 assembler to write some yet more interesting software. From the bottom up, all programming problems are solvable, with enough time, patience and of course all of the source code to read.
What’s your favourite language?
I program habitually in C or C++. I’ve done some chunks in C#, Perl, Python and shell. I get to see and read a lot of code, and my general feeling is that all programming languages are, in general, the same. Personally I think C# is a pretty sexy language. I like using language-integrated native query; that’s a genuine innovation. Some of the cleanups between Java and C# are really cool: using delegates and tools, for example. My favourite would probably be C#, then C or C++ in that order. LibreOffice is all C++. You can do good things with C++, and also some terrible things.
I don’t program in OpenOffice.org. Occasionally, I do do some programming in Notepad. Emacs is my choice, but I have a lot of respect for vi people too.
How did you come to Novell?
At university I cast around for some free software projects to get involved with, having been introduced to Linux for some web roles beforehand. I stumbled across several and landed in GNOME, working on the spreadsheet application Gnumeric. There I met some great guys: Nat Friedman and Miguel de Icaza, who set up a company called Ximian to drive the free software desktop forward. We did a lot of interesting work there – including, towards the end, getting involved with the creation of OpenOffice.org and shipping an enhanced version with our product.
How did you become interested in free software?
At first introduction it seems so obvious and refreshing. Having tasted the freedoms free software gives you, why would you ever want anything else ? However, as I began to travel more widely, and speak at conferences – I began to realise that many people had no idea of the benefits of software freedom and needed telling. So I suppose my political interest in free software as a concept and movement comes from trying to persuade others to share the fun I had. Latterly that has translated into attempting to encourage people to create genuinely open, fair and friendly developer communities, such as LibreOffice.
How did the Document Foundation form?
The OpenOffice.org project was launched in 2000. At the time, it was promised that we’d get a foundation behind that to support development and be vendor neutral. Unfortunately, ten years on, the opportunity to create that hasn’t been created. We took it upon ourselves to create this. We’re not yet a non-profit, but we’re bootstrapping using a German non-profit. We opened the code and dropped the required copyright agreements. We’ve got 90 entirely new people contributing code to the project since launch. We’re introducing changes at a rate of hundreds of thousands of lines of code. We’re including changes from Oracle, as well. The project is getting rapidly better. What held the project back, before, was the lack of individuals jumping in and contributing to the code.
How’s Oracle taking all of this?
We like to talk about the positive things LibreOffice brings. A lot of the benefits are really good for Oracle too. There’s a genuine and real invitation open to them to join. We’ve structured a way they can join. We know they don’t like the LGPL, so they’ve refused to accept code submitted under the LGPL. OpenOffice includes a huge chunk of Mozilla code already. It would be fantastic to be involved with Oracle again. I think in due course they’ll see the added value there.
We include code from Oracle, of course, because it’s under an open source licence and we include that code under those terms. There are contributions from entirely new people, and a whole load of translators on top of that. There are lots of new languages, too.