Tender for implementing support for a dedicated, built-in UNO object inspection tool in LibreOffice (#202007-02)

The Document Foundation (TDF) is the charitable entity behind the world’s leading free/libre open source (FLOSS) office suite LibreOffice.

We are looking for an individual or company to implement support for a dedicated, built-in UNO object inspection tool in LibreOffice, to start work as soon as possible.

In order to make working with UNO objects easier and to avoid the need to always install extensions before debugging, it is necessary to be able to inspect UNO objects in a running LibreOffice instance effectively.

This task involves reading the existing Basic IDE Watch code, evaluating how it can be improved based on ideas implemented in external tools like xray and MRI and extending the Watch code to be a first-class inspector that allows focusing the relevant part of the UNO API for opened documents and also based on your current selection (similar to what is possible in web browsers).

A good part of the features are implemented already. Work carried out under this tender will therefore mostly consist in making the features more accessible and more stable, adjusting the UI and refactoring things.

The work has to be developed on LibreOffice master, so it can get released in the next major version.


The following required features need to be implemented:

  • Dockable toolbar that can appear at the bottom of a document frame, similar to find-bar.
  • Left-hand side of the toolbar exposes a snapshot of a useful subset of the DOM as a tree view: Writer paragraphs, Calc sheets, Impress slides
    • This tree widget should populate its content on-demand whenever possible in order to ensure performance.
  • Point&click inspect mode (similar to F12 in Chrome): combine Help -> What’s this (point on something & then an action) and normal selection, so it’s possible to point on something (e.g. an image), make it the current selection and automatically launch DevTools on it. Perhaps rename ‘DevTools’ to something else.

    Note that this is mostly UI work, ThisComponent.CurrentController.Selection in Basic already gives access to the current selection in a not-so-convenient way.

  • Right-hand side: show details in a table about the current selected item in the “DOM tree-view”, which is implemented as part of the watch window in the Basic IDE:
    • object’s UNO properties
    • object methods
    • supported services and interfaces
  • User documentation for the new dialog is mandatory.
  • Brief developer documentation for the newly introduced classes is required.
  • Whenever adding new functionality, it should be considered if it’s possible to test the functionality with automated tests with reasonable amount of effort.

The following are optional features:

  • Configuration support: remember which tabpage was open last time (properties, methods, etc.)
    • Remember sorting settings (prioritize paragraphs/sheets/slides and other relevant properties or sort alphabetically)
  • Click on value for details: primitive types
    • This is useful if the user selected lots of text for inspection, we can’t show all the content in a table cell, but can if a multi-line edit replaces the table widget.
  • Click on value for details: re-launch DevTools on a sub-object on the right-hand side. This is already handled to a large degree in the existing watch variable code, which represents the object already as a tree.
    • This allows recursion: double-click on a value with a complex type, which has its own properties, methods, etc -> inspect it.
  • Show implementation name of object
    • If a consistent name is provided by the object, this can allow jumping to the relevant C++ code from DevTools easily.
  • Copy&paste support:
    • Normally content of a table in a widget is not easily copy&paste-able. It can help debugging if add explicit support to copy the table content still, e.g. all property names and their primitive values.
  • Improved presentation of the DOM for Writer/Calc/Impress:
    • The inspector tool could be just a generic presenter for any UNO object, but in practice macro and extension authors are interested in a subset of the extremely rich and generic API we provide.
    • The idea is to select a few key properties for each component, so it’s trivial for the user to see how to access the most important details of a document:
      • Writer: style families, paragraph list, text portion list, etc.
      • Calc: sheets, columns, cells, named ranges, etc.
      • Impress: slides, shapes, etc.

Required skills

  • Extensive knowledge of C++
  • Experience working on the LibreOffice source code
  • Knowledge of UNO

Other skills

  • English (conversationally fluent in order to coordinate and plan with members of TDF)

We use free, libre and open source (FLOSS) software for development wherever possible, and the resulting work must be licensed under the Mozilla Public License v2.0.

TDF welcomes applications from all suitably qualified persons regardless of their race, sex, disability, religion/belief, sexual orientation or age.

Bidders will get a preference for including a partner or independent developer who has not been involved in a successful tender before.

As always, TDF will give some preference to individuals who have previously shown a commitment to TDF, including but not limited to certified developers and/or members of TDF. Not being a member, or never having contributed before, does not exclude any applicants from consideration.
Further discussions on this tender took place on the public board discussion mailing list of The Document Foundation.

The task offered is a project-based one-off, with no immediate plans to a mid- or long-term contractual relationship. It is offered on a freelance, project basis. Individuals and companies applying can be located anywhere in the world.

When budgeting, we anticipated that this project (incl. optional tasks) to take in the region of 60 days of work. Bidders are free to bid on the required features only. Bidders who bid on both the required and optional features are asked to provide a breakdown in terms of costs for each.

TDF is looking forward to receiving your applications for one or more of the aforementioned tasks, your financial expectations and the earliest date of your availability, via e-mail to a committee at tender20200702@documentfoundation.org no later than September 1, 2020.

Applicants who have not received feedback by October 15, 2020 should consider that their application, after careful review, was not accepted.

Community Member Monday: Sandra Louvezo

Today we’re talking to Sandra Louvezo, who is helping to spread the word about LibreOffice and FOSS in Congo. Also, she recently became a Member of The Document Foundation, the non-profit entity behind LibreOffice…

To start with, tell us a bit about yourself!

I was born on August 31, 1984 in Pointe-Noire, the economic capital of Congo-Brazzaville. I achieved a BAC+3 in Human Resources Attaché at the Magrebin Institute of Science and Technology in Tunis, Tunisia (IMSET) in 2008.

Then I returned to Congo in 2009, where I worked for five years in local companies as an Accounting Assistant – Claims Writer – Head of Life and Health Insurance services at the Huet de Baroquer group, under the H branch in B Congo Insurance. Then I was Director of Human Resources in a service subsidiary and provision of Health, Safety and Environment (HSE) staff for two years.

For the past two years, until now, I have started my own business as a motivational and personal development coach, as well as a nutritional coach and caterer.

What are you working on in the LibreOffice project right now?

In Pointe-Noire I belong to a community called “Librists”. Our goal is to help people discover the world of open source software here in Congo – which very few people know about. I am responsible for training people to use the LibreOffice suite, and we have named the training “SPRINT”, which lasts 60 days per component starting from Writer, Calc, Impress etc.

The aim of this sprint is to help users learn the applications, and get their comments, to then bring back to the LibreOffice Francophone community, to which I also belong. Then we can continue to improve LibreOffice.

Why did you decide to become a member of TDF?

I decided to become a member in order to raise awareness, mobilize people, and bring LibreOffice to my country and Africa in general. Discovering LibreOffice and open source was a delight for me, and I want to teach others this life lesson: contribute back to open source, and help make the world a better place.

Anything else you plan to do in the future?

I am training to prepare the next SPRINT, which will start from the end of July to the beginning of August 2020 in several African countries such as: Congo Brazzaville, Cameroon, the Democratic Republic of Congo, Togo, Senegal and Benign. For 60 days, users will learn to use and discover LibreOffice Writer in the form of exercises, and the answers will be returned at the end of ech day.

The goal is to be present, so that each African country discovers LibreOffice and builds a mini community around it, before we start to offer the application to the different companies that have everything to gain from using it.

Thanks to Sandra for all her contributions! Our native language communities are always open for more help – so if you want LibreOffice and its website localised in your language, give us a hand!

Annual Report 2019: Social media and video channel

(Note: this is a section from The Document Foundation’s Annual Report 2019, which will be published in full very soon.)

Social media

In January 2019, our Twitter account had 22,907 followers; by the end of the year, we had grown this to 28,775. Our most popular tweets were for major releases, but we also produced some campaigns, such as “NO” in August. Accompanying the text “Don’t get trapped by your office suite”, this tweet included an image with a striking “NO” next to “registration, forced payments and vendor lock-in”. The tweet gained over 80,000 impressions, thanks to likes and retweets, while our community translated the graphic.

In April, we joined Mastodon, a Twitter-like open source, federated and self-hosted microblogging service. Fosstodon – a Mastodon server set up specifically for free software projects – kindly accepted our request for an account, so we set up this account and started posting content, often more focused on technical users, compared to our tweets and Facebook posts. By the end of the year, we had over 3,100 followers, and have been engaging with other users who have questions and suggestions.

Our Facebook page growth was smaller, from 54,045 page likes to 55,985, and on April 2, Google officially discontinued its Google+ service. We had over 16,000 followers at the time, but that number had gradually been reducing, as most users had been aware for many months that Google was closing the service for personal accounts.

Throughout the year, we investigated tools to automate and enhance our use of social media. For instance, we set up PostPickr to automatically tweet prepared messages and graphics at regular intervals.

YouTube channel

Our YouTube channel grew from 7,231 subscribers and 1,147,772 video views in January 2019 to 9,351 subscribers and 1,544,818 video views by the end of the year. The “LibreOffice 6.2: New Features” video amassed over 100,000 views:

Please confirm that you want to play a YouTube video. By accepting, you will be accessing content from YouTube, a service provided by an external third party.

YouTube privacy policy

If you accept this notice, your choice will be saved and the page will refresh.

…while the video for LibreOffice 6.3 had over 70,000:

Please confirm that you want to play a YouTube video. By accepting, you will be accessing content from YouTube, a service provided by an external third party.

YouTube privacy policy

If you accept this notice, your choice will be saved and the page will refresh.

Meanwhile, our community helped out with tutorial videos – in particular Harald Berger of the German community, who produced a series of professional-looking step-by-step guides to installing and using Libreoffice.

Thank you

TDF would like to say thank you to the many native language social media groups, organised by local communities that support LibreOffice. They are really helping to spread the word around the globe.

If you find LibreOffice useful, support us with a donation so that we can continue to build our community, share knowledge, and improve LibreOffice for everyone!

openSUSE + LibreOffice Virtual Conference Extends Call for Papers

The organizers of the openSUSE + LibreOffice Virtual Conference are extending the Call for Papers to August 4.

Participants can submit talks for the live conference past the original deadline of July 21 for the next two weeks.

The conference is scheduled to take place online from Oct. 15. – 17.

The length of the talks that can be submitted are either a 15-minute short talk, a 30-minute normal talk and/or a 60-minute work group session. Organizers believe shortening the talks will keep attendees engaged for the duration of the online conference.

The conference will have technical talks about LibreOffice, openSUSE, open source, cloud, containers and more. Extra time for Questions and Answers after each talk is possible and the talks will be recorded. The conference will schedule frequent breaks for networking and socializing.

The conference will be using a live conferencing platform and will allow presenters with limited bandwidth to play a talk they recorded should they wish not to present a live talk. The presenter will have the possibility to control the video as well as pause, rewind and fast-forward it.

Attendees can customize their own schedule by adding sessions they would like to participate in once the platform is ready. More information about the platform will be available in future news articles.

Organizers have online, live conference sponsorship packages available. Interested parties should contact ddemaio (at) opensuse.org for more information.

Join our team! Job Search for a Development Mentor (m/f/d) – #202007-01

The Document Foundation (TDF) is the non-profit entity behind the world’s leading open source office suite, LibreOffice. It’s comprised of a team of highly skilled and motivated people, working on infrastructure, design, documentation, QA, marketing and other tasks. We’re passionate about free software and bringing people into our community.

To grow our volunteer community, in particular for code contributions, we’re searching for

a Development Mentor (m/f/d)

to start work as soon as possible. If you’re interested in the role, which is offered on a part- or full-time basis, you ideally have:

  • previous experience in remote work
  • been a long-time contributor to one or more FLOSS communities
  • excellent communication skills, with enthusiasm for mentoring – a fluent command of the English language (written and spoken) is expected
  • coding experience in several FLOSS code bases and programming languages, including LibreOffice
  • demonstrable C++ coding experience of at least five years, plus active knowledge of at least one more language used in LibreOffice (e.g. Python or Java)
  • willingness to regularly travel to Hackfests & conferences in Europe and globally
  • self-driven and a good team player; interested in working together with our team

The remote job role involves working from home at your location and includes among other items:

Work with our existing team in the LibreOffice community on topics including:

  • building relationships between the community and new contributors
  • identifying and on-boarding new contributors
  • affirming and encouraging their contribution
  • encouraging them to join IRC and other communication channels to meet the community
  • building relationships with domain experts for deeper learning
  • attracting new contributors by promoting the project
  • interaction with UX volunteers

Shape and create development mentoring including:

  • helping to onboard new contributors by
    • positively reviewing their code contributions
    • improving their C++ programming skills & design, and coding style
    • introducing them to our tooling and culture
  • designing, and define easy tasks for new contributors
  • maintaining our technical documentation, e.g.
    • developer guide
    • wiki articles
    • code comments
  • helping to review the results of development tenders produced by TDF
  • goals-oriented and with a laser-sharp focus to grow excellent LibreOffice core contributors, our perfect candidate will come up with creative ways to find and attract volunteers

Previous experience with such tasks is highly welcome, so is using free software. Speaking and writing English fluently is a mandatory requirement.

The work time during the day is flexible, apart from some fixed times when availability is required (e.g. during meetings).

TDF welcomes applications from all suitably qualified persons regardless of their race, gender, disability, religion/belief, sexual orientation or age.

As always, TDF will give some preference to individuals who have previously shown a commitment to TDF, including but not limited to members of TDF. Not being a member, or never having contributed before, does not exclude any applicants from consideration.

TDF is looking forward to receiving your applications, including curriculum vitae, your financial expectations, and the earliest date of your availability, via e-mail to tender20200701@documentfoundation.org no later than September 15, 2020.

If you haven’t received feedback by October 30, 2020, your application could not be considered.

Update on marketing and communication plans for the LibreOffice 7.x series

From the Board of Directors at The Document Foundation, the non-profit entity behind LibreOffice:

Dear fellow Community members,

Time has now come to decide how to proceed with some of the proposed changes taken from the Marketing/Communication Plan for 2020-2025 with the regards of the 7.0 release, due in some weeks.

We really appreciated ideas and thoughts coming from our Community and we want to thank everyone who actively participated in the discussion, providing different points of views and sharing different scenarios, and proving themselves as passionate and caring members of the Community. Many contributions found on the board-discuss mailing list and/or via other channels are thoughtful, interesting and worthy of a much more profound discussion, in the common effort to overcome the challenge we have at hand: providing even better sustainability to the Project and its Community.

All those ideas, objections and insights will require more time to digest, merge and distill than the short time that separates us from the 7.0 release, the major release for the 10th anniversary of our beloved project, LibreOffice.

As such, the Board of Directors decided that the Marketing/Communication Plan for 2020-2025 has to undergo further investigations and refinements, that we hope to carry on with the support of Community members, with the goal of implementing in a future release some clear, discussed and agreed changes on branding and Marketing that will help improving the sustainability of the project without lessening or hindering the role of LibreOffice and its Community inside the free software panorama.

Because of the importance of the topic at hand and the need of a worthy and compelling discussion with the Community, we will provide a time plan in a few days as well as some guidelines, with the goal of streamlining the process and coming to some good conclusions in a quick and effective way.

As such, the 7.0 release of LibreOffice will not see any of the tagline/flavor text proposed inside the release candidate (RC) versions, the Marketing/Communication Plan for 2020-2025 or any of the alternatives proposed during the discussion, specifically inside the splash-screen, the start center and the about box; to explain it with other words, the modifications put in the RC versions with the regards of branding will be reverted to a previous state, so there will be seamless continuity from the 6.4 version to the 7.0.

As stated before, none of the changes being evaluated will affect the license, the availability, the permitted uses and/or the functionality. LibreOffice will always be free software and nothing is changing for end users, developers and Community members.

Yet again, we renew our encouragement to contribute actively in the discussion about the Marketing/Communication Plan for 2020-2025 in the next weeks, to allow for a more effective branding/Marketing ideas for the LibreOffice product and sustainability of its Community.

LibreOffice is celebrating its tenth birthday this year. We wouldn’t be where we are today without you, our worldwide amazing Community and all of its members, no matter their profession or background. Thank you truly, to all of you, for the passion, energy and creativity you put into this joint and thriving project. We’re looking forward to the next ten years to come!