Interview with Jennifer Liebel and Tobias Madl from Munich

Last summer, German students Jenny and Tobias started a work placement organised and funded by the City of Munich. One of the most famous Linux deployments in the world, Munich began switching to Free Software across its desktop and server infrastructure in 2003, and completed the process ten years later. LibreOffice is included on all desktop computers, and the City manages its own development of the application, including training students on placements.

Tobias and Jenny talked with Sam Tuke about how they sped up LibreOffice significantly by reorganising its internal task management, with the help of their Mentor Michael Meeks, and the LibreOffice community. This work is a foundational technology for future improvements to our rendering model, converting it from immediate to deferred (ie. idle) rendering, which is necessary to get smooth double-buffered rendering without flicker. It’s great to see the investment from Munich improving the LibreOffice user experience for all.

Tobias and Jenny - students in Munich
Tobias and Jenny – students in Munich


About Jenny

  • Name: Jennifer Liebel
  • Web nicknames: jeyli
  • Nationality: German
  • Location: Munich Germany
  • Blog: Google+
  • Hobbies: personal fitness

About Tobias

  • Name: Tobias Madl
  • Web nicknames: tobaem
  • Nationality: German
  • Location: Neufahrn bei Freising, Germany
  • Blog: Google+
  • Hobbies: sword fighting, bouldering, fire fighting

When was your first LibreOffice contribution?
In August 2014, while completing a work placement with the City of Munich (Landeshauptstadt München), we started working on some LibreOffice ‘Easy Hacks‘; translating German comments into English, and working on automated quality checks with CppUnit tests. Around 20,000 city-owned computers run Linux, and LibreOffice comes pre-installed with the Limux distribution of Linux that they use. In our work placement we had the choice of what to work on, and we chose LibreOffice.
For the next seven months we worked on LibreOffice consistently.
Had you used LibreOffice before that?
Yes we were using it at University for coursework and presentations. It has all the features we need. Later on, Tobias presented his talk at FOSDEM using LibreOffice Impress.
When we began our Computer Science studies we started using Linux because it made software development easier. We chose Linux Mint, and as LibreOffice came bundled with it, we started using it.
How do you explain LibreOffice to others?
It’s an awesome alternative to Microsoft Office and if people don’t want to waste their money, they should definitely try it.
Do your fellow students use LibreOffice too?
Yes, many. Maybe even most of them. Mainly it’s used for presentations and text documents. Students here don’t get provided with a copy of Microsoft Office like at some universities, and many use LibreOffice instead. A few use Latex. Students here use LibreOffice on all operating systems.
What was your initial experience of contributing to LibreOffice like?
It was exciting and challenging: we were using new tools for the first time, like the Gerrit review platform for managing LibreOffice code contributions. Getting used to these tools was a lot of fun.
How did you choose what part of LibreOffice to work on?
We were members of a group of five students whose placement focused on LibreOffice. We worked on different parts. We were both lucky enough to be invited to the LibreOffice Conference in Bern, where we met Michael Meeks who works for the Document Foundation and Collabora. It was a fantastic event, and he proposed tasks that we could work on, and became our mentor.
One of the hardest options proposed was improving LibreOffice’s "main loop". This loop executes the most important actions that LibreOffice needs to start up and run itself, including loading macros, generating previews, updating menus, and more. It sounded demanding, and we both wanted to learn as much as possible, so we chose that.
Together we went through every single timer used in this loop, and invented a new task scheduling system, which manages the loop more efficiently. The list of tasks in the loop is huge; we wrote them up in documentation of our work on the Document Foundation Wiki. We planned and developed the new scheduler together to prioritise important tasks and drop some which were unnecessary.
Optimizing the main loop has been a huge and interesting task. We’ve learned a great deal, and are still improving the quality of our code.
How did you make decisions and distribute the work?
‘Scrum’ is an agile software development methodology that we used to organise our work. We had regular stand-up meetings, did paired programming (especially for harder tasks), and generally worked in the same space for easier communication.
Michael was in England, while we were in Germany, so we had video calls and communicated via email.
What was it like to be mentored?
Working with Michael was demanding but awesome, great to meet and get to know him. He’s very motivated! We had a few communication issues because of distance, and time available, but he was very helpful. He reviewed our code, gave us tips and direction, he spent a lot of time with us on our project.
Did you communicate with other LibreOffice community members?
Markus Mohrhard and Jan "Kendy" Holesovsky helped us a lot when we were starting out with setting up our working environment, and teaching us how to debug code efficiently with the GDB debugging tool.
Building LibreOffice binaries from source code on our own machines was easy thanks to the great documentation, but building a good development environment with the right Vim editor plugins was harder. We went to a LibreOffice/Debian Hackfest and were shown how to do it in person, which was really useful. Kendy also explained the purpose of other LibreOffice libraries that we didn’t understand which clarified things a lot.
Every day we were in the #LibreOffice IRC Chat channel talking with Kendy, Markus, Thorsten Behrens, Stephan Bergmann, Noel Grandin, and others. We had an opportunity for lots of chatting with nice people online, and then met many of them at the FOSDEM conference.
Caolán McNamara was also reviewing our work at the end of our placement, and we were very happy there was someone looking over our code because it was our first time merging code using Git for version control. We’d also like to thank Miklos Vajna, Michael Stahl, Tor Lillqvist, and Bjoern Michaelsen for helping us and reviewing our work.
Once we started chatting with people we felt accepted as part of the LibreOffice community. We were just some students, but people made time to help us.
Had you contributed to Free Software before your work on LibreOffice?
No, this was our first project, but we are thinking about contributing to other projects, maybe the Kodi home theatre application.
What aspect of LibreOffice do you like the most?
Clearly the friendly and open community, which supported us a lot. We had great fun with them.
What the one thing you’d like to change about LibreOffice?
Improve OpenGL support (hello Michael Jaumann, Stefan Weiberg 😉 ).
Michael Jaumann, a close friend of ours, developed OpenGL support for LibreOffice Impress. It was really awesome to get to know how that worked. We’re developing OpenGL shaders in another part of our Computer Science course, and we love it. It’s got so much potential. There are still some issues with implementing full-scale support in LibreOffice due to its use of some older APIs; it’ll be great when those are fixed.
What will you do after your studies?
Jenny: As part of our course commitment, we have to work for the City of Munich for three years after our degree. The City has a large IT department catering for most of its own technical needs, including software and hardware development, and sub-departments dedicated to Java applications, network infrastructure, and custom development workgroups. Our work placement was with the Linux Desktop branch, which caters to the many thousands of City staff using Linux in Munich and the region.
I’m not sure; I’ll probably stay in Munich. Let’s see after three years!
Tobias: I’m definitely interested in software development, but also in information security and embedded development. I’d like to work in a company in one of those fields, or even better a mixture from all of them, but I’m not sure if something like that exists.
Both: You can read more technical details about our work in the Document Foundation Wiki report.

Partner network prize-winner shares crypto history

Last week the winner of Collabora Productivity’s LibreOffice Conference postcard contest was posted their prize. This week, winner Rhea Salome Sturm, Swiss native, received her 4kg Toblerone box.

Box of Toblerone being shipped

In Bern last month, we provided free stamps and postcards for LibreOffice Conference attendees to send to co-workers back at the office, entitled “Greetings from Bern!”. In the last six months Collabora Productivity’s network of international partners and resellers has grown to 18, representing business on six continents.

Tobelerone chocolate received by prize-winner
Rhea’s choclatey prize

Web company Founder Rhea has a penchant for cryptographic history, and took the opportunity to share some Swiss computing hardware (with the help of her Toblerone):

My chocolates climbed the German Enigma, and the Swiss NEMA cipher machines. Normally these machines are behind bullet-proof glass. For these pictures we were able to take them out (see photo) — Rhea Salome Sturm, Moka Web Solutions

These machines were used before and during World War II for secret government and military communications. Enigma machines played an important role in the development of modern computing.

Switzerland’s NEMA machine was the successor to an earlier model which had been compromised by German forces – “the Swiss K”. First used in 1945, NEMA was a new design by University of Bern professor of mathematics, Captain Arthur Alder, tasked with being harder to crack than its predecessor.

Rhea with a German Enigma Machine
Rhea with a German Enigma Machine
Swiss NEMA machine with Toblerone chocolate
Swiss NEMA machine avec Toblerone
Enigma machine with Toberone chocolate
Enigma Machine avec chocolate

Thanks to Rhea for sharing her pictures and history!

Mutual business crowdfunding for LibreOffice results in new features investment

A document being signed by hand

Last Friday Wilhelm Tux, a Swiss community group, reached their €8,000 (CHF 10.000) crowdfunding target for LibreOffice. The money will be used to add support for digital signatures in PDF documents in a secure and compliant way. From announcement to completion took four days.Once implemented, LibreOffice will be able to:

  • Create PDF documents with legally accepted digital signatures
  • Conform to PDF/A signature standards
  • Use Mozilla Firefox or Thunderbird to manage certificates using a simple interface

Demand

Wilhelm Tux has established a strong network of business users of Open Source over the last 12 years, including companies founded by members of the organisation themselves. Even taking this network into consideration however, the speed with which funds were raised is impressive for a local advocacy group with little media experience.

The success of their campaign shows that Swiss businesses want LibreOffice, want digital signing, and, given the opportunity, are happy to pay for it. It also demonstrates the freedom that the LibreOffice ecosystem provides to businesses. Independently of The Document Foundation who steward and steer LibreOffice development, and independently of the many businesses who have stakes in the future of the application, organisations of any size can organise the addition of new features. When their needs are shared, they need not even bear the exclusive burden of cost.

Wilheml Tux logo
Logo of Wilhelm Tux

Mutualisation

25 Businesses and 65 individuals contributed to the campaign. These 90 interested parties will have their wish fulfilled by April 2015, when the features are due to be delivered. More importantly however, the cost of implementing these new features was shared 90 times.

Uniting disparate groups with shared interests to invest in solutions for mutual benefit is sometimes referred to by crowdfunding marketers as “co-funding” or “mutualisation”. It has particular relevance to Open Source.

The role of Wilhelm Tux in this campaign was similar to that of an Internet dating agency. They identified people with similar needs, and introduced them to each other using a framework designed to keep the participants safe. Wilhelm Tux acted as treasurer, guaranteeing and safeguarding payments, and also as supervisor – undertaking to manage completion of development and assure quality.

By contrast, undertaking to contract Microsoft, Apple, or Google to make customisations, however minor, is well beyond reach of most trade associations and community groups. Users seeking improvements to Office 365, iWork, or Google Docs have few avenues to pursue.

Work on PDF digital signatures was partially completed in 2012, but then stagnated. Instead of pressuring volunteer developers to pick up the project, or The Document Foundation (who do not undertake LibreOffice development directly), Wilhelm Tux proactively sought out an independent company to complete the work.

Delivery

The LibreOffice community conference in Bern last September provided an opportunity for Wilhelm Tux to meet with Collabora Productivity GM Michael Meeks, and scope out the task in-person with Collabra developers. As they explain on their campaign page, Wilhelm Tux chose Collabora due to our enterprise experience, staff of core LibreOffice developers, and commitment to publishing all changes upstream to the Open Source edition of LibreOffice. As their website states:

“That all customer-specific modifications are merged back into the free development branch (“main tree”) of LibreOffice was, for us, the main reason why we chose Collabora as our partner for this project, as it means that we can ensure that PDF signatures will be freely available for all users world-wide” — Wilhelm Tux website

3x Win

This business model of Open Source development therefore provides a rare case of win-win-win. The 90 business and individuals who backed PDF digital signatures get the features that they need at a fraction of the total cost of their development, from a proven company with enterprise expertise. Collabora get a new contract for work that they can deliver efficiently, and which will improve the usefulness of their product to other customers. But in addition to the textbook two-way “win”, a third win is also achieved: a win for all people who may use LibreOffice, for now, and for the future.

As these features will also make their way back into Open Source LibreOffice and products based upon it, ultimately the widest possible audience will enjoy the benefit — without any detriment to the project’s 90 investors, or to the development team who will deliver it.

Although contracts such as this make up a small proportion of Collabora’s work on LibreOffice, being able to fulfil the productivity needs of the highly diverse range of people using LibreOffice adds strength and flexibility to our business and position in the Open Source ecosystem.