Behind the scenes at TDF: Release Engineering

cloph_headLibreOffice proper

The year 2015 started off with LibreOffice 4.4.0 and 4.3.6 rc1 – only the first of a whopping 42 (of course!) tags that were created and for which a build was uploaded to our mirror network – and ends with the stable releases 4.4.7 and 5.0.4 and with the first RC for LibreOffice 5.1.0 (for those interested: that’s a total of 216GB for the binary builds).

This constant stream of builds allows our volunteer testers to always stay on top, not waste time with testing stuff only to find out a fix has already been checked in weeks ago.

But even the constant stream of full builds sometimes is not recent enough. Daily builds provided by various tinderboxes fill this gap. Not only do they constantly monitor the buildability of all current branches (and nag committers in case our continuous integration platform didn’t catch the problem before it ended up in the code), many also provide one installationset per day. That way users don’t have to fiddle with building LibreOffice themselves, but still can run the current code.

We also changed our release baseline:

since LibreOffice 4.4 we require Mac OS X 10.8 or later and dropped the 32bit version

since LibreOffice 5.0 we added 64bit builds for Windows (requiring Vista or later, 32bit build requires Windows XP SP3 or later)

since LibreOffice 5.1 the new baseline for Linux is CentOS 6 (kernel 2.6.32 or later, glibc 2.12 or later)

Pootle

But the year was not only spent on LibreOffice alone. After having migrated bugzilla to our own infrastructure, it was time to tackle pootle. As mentioned in the last behind-the-scenes, we upgraded our version of pootle to run on TDF-hosted hardware and added master workflow. This allowed translators to start with their work for the 5.0 and subsequently 5.1 much earlier than with the old process (where translation could only begin after the branch was created).

Android

Good news everyone, there’s now a LibreOffice Viewer for Android! While still in its infancy, it is a first step to an editor application that you can use to give your documents the final touch when on the road.

If you own a smartwatch, then you also might be interested in the updated Impress Remote for Android, that now integrates with Android Wearable devices.

Hackfests

Continuing from last year, Hackfest-VMs were provided for the various gatherings that took place in 2015 and will be provided to those happening in 2016. Participants don’t have to roll thumbs waiting until the build is finished on their personal machines, but can instead start digging into the code on a fast virtual machine, and also do some bibisecting to warm up/find an easy entry point.

tl;dr

nearly one LibreOffice build per week on top of that daily builds from tinderboxes

Impress Remote for Android got support for Wearables

LibreOffice Viewer for Android with basic editing capabilities

Bugzilla was migrated to TDF-Infrastructure

Pootle server was upgraded and moved to TDF-Infrastructure, with translators now being able to work on master branch

Behind the scenes at TDF: LibreOffice QA (Halloween Bug Hunting)

robinson-in-brusselsLibreOffice QA has been busy during the last few months!

We had our first BugHunting Session for the upcoming LibreOffice 5.1 release over the Halloween weekend at the end of October. Testing our alpha1 builds, members of the QA Team helped to lead users, developers, and other community members in identifying and documenting problems in our very first binaries available for this release series. Having support from members of QA, L10n, Developers, members of the Design community, and regular LibreOffice users was a great sign for continued cross-team participation. We’re looking forward to seeing a similar mix of contributors during our next BugHunting Session coming up this weekend.

We identified 104 bugs during the Halloween BugHunting session, primarily from initial testing with the alpha1. Of the 74 of bugs remaining open, 80% have been triaged to previous versions, leaving only 15 bugs tied to LibreOffice 5.1. Looking at all 5.1 versions, there are only 212 open bugs pegged to this release series, with only 44 open bugs pegged against 5.1 alpha1.

We’ve been busy with regression-hunting, performing over 550 bibisects this year, and over 200 since June. With one of our chief regression hunters and bibisect sorcerer Matthew Francis taking a well-earned respite from the cauldron of crafting new bibisect repositories and hacking on Python internals, we’re actively recruiting new QA members to help perform these binary searches on all platforms.

In fact, with so many of our developers (and other community members) using Free Software operating systems on their workstations, there’s always a need for contributors who are running MS-Windows or OS X to help us track down OS-specific bugs. This includes not only performing bibisects, but also debugging and getting a backtrace for a crashing bug.

Keeping our UNCONFIRMED bug count steady has been challenging. Currently hovering in the mid-500s, other important QA tasks and processes have commanded our time, and we could benefit from several more QA Team members to help shoulder the daily influx of new, untriaged bug reports. With the focus of our regular BugHunting Sessions on finding and identifying new issues in our upcoming builds, we may find it useful to host similar events that focus wholly on triage and “gardening” of the mass of existing reports in Bugzilla. Maybe we could have something like “Clean Sweep Mondays,” where we tackle the existing clutter for a set period of time, and post some quick stats such as total drop in UNCONFIRMED, # of NEEDINFO cleaned up, etc.

Work continues on our comprehensive Media Support wiki pages, a collection of tests designed to directly verify the level of support for various image, audio, video, (and other) file formats across all of our platforms. Keeping these pages up to date ensures that they continue to be a resource for QA bug triaging as well as for our volunteers helping to answer questions on the Ask LibreOffice site. Lead by QA Team member raal, we now have initial image test results for Android, and are interested in talking with developers who’d like to expand the Android Viewer’s capabilities in this area, as well as testers who would like to expand our battery of test results for the Android OS.

This weekend (Fri, Sat, Sun), we’re holding our BugHunting Session for the 5.1 Beta1 build. For those of you who are interested in kicking the tires and working with a still-rough-around-the-edges piece of software, your help is greatly appreciated. With a large package such as LibreOffice, it’s invaluable to have the technical members of our userbase exercise some of the more esoteric features of LibreOffice, and identify any minor regressions or usability concerns early-on in the release process.

The QA Team looks forward to seeing you in IRC anytime, or stopping by one of our weekly Wednesday meetings. We’re always happy to answer your questions about bug reports, bibisecting, etc., and to helping new contributors get started with the LibreOffice community!

Behind the scenes at TDF: NLP/L10n

_SDS5526LibOCon in Aarhus, Denmark, has been a really nice meeting especially for the L10n/NLP communities with a large workshop on the day before the opening of the conference. Even the whole afternoon was too short to discuss all the topics we had on the agenda. Around 40 persons from all over the world were attending the meeting. We have shared experiences and feedback, Christian has explained the new workflow with master and how branching is managed, and discussed some Pootle enhancements as well as other enhancements on coordination.

At the end of the meeting we discussed a specific issue with accelerators that are broken in some languages and specifically in languages using complex script layouts. This has led Niklas Johansson to develop a tool that detects duplicate use of accelerator keys in menus. This tool is of great help for all of us, translators, but also for our users and even more when accessibility matters. Thanks so much Niklas for this!

If you missed the conference, you’ll find all the videos of the talks on the TDF channel [1], there has been a whole track about localization, migrations and marketing. Italo has also organized marketing workshops dedicated to NLPs.

As a direct consequence of this meeting, we have opened a NLP channel on IRC, still too quiet in my opinion, don’t hesitate to join us and say hello! on Freenode #libreoffice-NLP, we will be happy to meet you there.

This meeting has also encouraged the Native Language projects to give more feedback on what they are doing locally, so far we have news about events in Korea, Turkey, Albania, India, Singapour, Sri Lanka… ans still feedback from the very active communities in Japan and in Italy where a first hackfest has been organized.

In more details, the Turkish community has participated to the DevFest in Istambul, giving an introduction on LibreOffice developments. I’d like to highlight the work done by Kader Tarlan who has written almost 50 new tests for MozTrap, and is currently working on porting java tests to python, a big big thank you to her!

The L10n community has extended its translations to some part of the tools we are using and has provided translations for Redmine and Ask in a very timely manner. I’m very happy to see the reactivity of our project especially during the translation sprint of the next version, namely the LibreOffice 5.1 release. This release has had a lot of changes in its off line help, it’s a very good thing (thanks a lot to Lera Goncharuk and Olivier Hallot!) but that means also a bunch of work for the localizers. Chandrakant Dhutadmal, representing the Centre for Development of Advanced Computing, has took the lead on several Indian languages in Pootle and will try to revive their localization, that’s a really nice initiative, thanks also to him.

I wish to all a happy holiday period and see you next year!

[1] https://www.youtube.com/channel/UCQAClQkZEm2rkWvU5bvCAXQ

Behind the scenes at TDF: marketing and PR

italovignoli-cheersMarketing and PR at TDF are a very demanding task, as we are covering the entire world from a single point in Europe. It is a challenging role, and also a very rewarding one (because we continue to increase the project visibility with each announcement, and this is a testament to the quality of the software).

During the last six months, we have worked at two major announcements: the finalization of LibreOffice 5.0 announcement, which has been a success under any point of view, and has raised the visibility of LibreOffice over the other free office suites, and the preparatory work for the announcement of LibreOffice 5.1, which will be finalized in early February 2016.

In between, we have had the Aarhus Conference – with a number of community related announcements – and the 1,000th developer joining the project since 2010, a significant achievement for a project which until 2010 was considered one of the most difficult to contribute to, because of the size and the characteristics of the source code.

In July, we prepared the announcement, planned for August 5, 2015. Apart from drafting the usual press release, we developed a “road to LibreOffice 5.0” text and visual to underline the importance of our time based release schedule, and the key features of every previous major release.

In addition, a couple of weeks before the announcement, we started poking top editors for a pre-release conference call, to provide additional information to the people interested in offering some insights. Conference calls were scheduled both the week before the announcement and on the Monday and Tuesday before our Wednesday, August 5, announcement.

We organized two group conference calls, and one publisher specific conference call. On the day of the announcement, LibreOffice 5.0 received a large coverage, with a corresponding spike in donations and downloads. All in all, the launch of LibreOffice 5.0 was the most successful ever.

In September, we supported the LibreOffice Conference in Aarhus with the traditional “state of the project” presentation, plus several community related announcements (sent as press releases after the end of the conference).

In October, it was business as usual, i.e. the usual flow of LibreOffice releases updating the LibreOffice 4.4 “still” branch and the LibreOffice 5.0 “fresh” family. Each new release confirmed the uptake of donations, which have increased since the announcement of LibreOffice 5.0. This is probably also due to the growth of the awareness, based on a large number of articles in the media.

In November, we have started planning the LibreOffice 5.1 announcement, scheduled for early February 2016. The challenge is to outperform what we have achieved with the announcement of LibreOffice 5.0, which was a success. In order to improve results, we have planned a number of actions starting from December, when the first Release Candidate will be available.

In addition, we plan to produce several documents to describe LibreOffice 5.1 to specific user clusters, such as enterprises and individual users (which represent the majority of our users). Later on, we will try to add a document targeted to schools, where LibreOffice is rather popular.

To reach a wider media audience, we have also started to add other journalists to our mailing lists, and to purge the existing mailing lists from outdated or wrong addresses.

We have a total of over 13,000 journalists in our global and local mailing lists, which are becoming more accurate after the distribution of each press release. All people covering LibreOffice are cherry picked and added to a specific mailing list, which is becoming the core of our press release distribution system.

Stay tuned, exciting marketing times ahead of us.

Behind the scenes at TDF: Jan Iversen, mentoring development lead

janiversensmallI started working for Document Foundation in November. I live and work in southern Spain, Malaga, a nice warm place. I wrote my first program in 1975, so I have been active in the pre-unix, pre-linux, pre-pc worlds, and have been involved in developing drivers, micro kernels and compilers. I retired from my international companies in 2011, dedicating time to open source.

LibreOffice is one of the most complex and biggest open source software packages, and at the same time one of the most well known. Today, having developed open source is a big plus on a CV, but starting with LibreOffice can be a challenge. In the upcoming period, I will be focusing on making a simple non-complex step by step guide to make the first patch, and will personally be there for new (and old) people.

In open source projects, it is perfectly normal to have people come and go, although – as a community – we would like people to stay and grow their development experience. I will devote time researching what can be done to make our community even more attractive, by getting input from people who are less experienced developers.

Many mature open source projects have a “not invented here” attitude, simply because senior developers know how to do things, and tend to refer new people to a lot of information. The core LibreOffice developers have a very open attitude, but are also very busy. So, my role will be to connect newcomers to the most relevant developer.

My mailbox is always open, so if you have any comment/suggestion/complaint please e-mail me.

Behind the scenes at TDF: Karl Morten Ramberg, marketing intern

kmr2I am working as marketing intern since October, living and working out of Lillehammer, Norway. I have been working with open source software and projects since around the year 2000. Before that I was a development manager for ERP software for some years. I have also been heavily involved in using office suites as front ends to ERP and other systems both in private industry and the public sector.

Currently, I am working at the release planning of LibreOffice 5.1, with a focus on putting together the information for the product flyers – for both private users and enterprises – we will make available for the product launch. I have also been participating in a business exhibition in Stuttgart, and coordinating with native language groups via Sophie.

Based on previous experiences and impressions from the event, I have also written a market segmentation/positioning document, which will be broken down into prioritized actions and deliverables.

Hopefully, we will be able to streamline the upcoming major release announcements, based on the improved process we are using for LibreOffice 5.1.