Welcome Khaled Hosny, new Developer at TDF

Khaled Hosny

The Document Foundation (TDF) is the non-profit entity behind LibreOffice, providing infrastructure and support for the community that makes the suite. Recently, TDF decided to expand its small team with a new Developer, focusing on improving LibreOffice’s language support. This will help to make the software more accessible to hundreds of millions of people around the world.

The new Developer is Khaled Hosny, so let’s hear from him…


Tell us a bit about yourself!

I’m a software developer based in Cairo, Egypt. My area of expertise is centered around written language; fonts, text layout in general and so-called “complex” text layout in particular (I don’t like how some text layout is signaled out as being complex – all text layout is complex, but some complexity is obvious right away while others are more subtle), PDF, and so on.

I have been involved with FOSS since 2006. I started with doing Arabic localization, then Arabic fonts, and a few years later I started programming to fix Arabic bugs (I think my first patch was to fix a right-to-left UI issue for Sugar, the desktop environment for the OLPC XO laptop, if anyone still remembers it). I contributed and continue to contribute to many FOSS projects – Firefox, GNOME, HarfBuzz, XeTeX, LuaTeX, to name some.

I got involved with LibreOffice in early 2011, and I have been lurking around since then.

I’m also a type designer and font engineer. I have designed and built a few Arabic and math fonts (I can’t read much of the math notation – I was taught math in Arabic notation and I hardly remember any of that either, but I’m fascinated by the 2D nature of math typesetting).

Funnily enough, I had no formal training in any of this, I actually graduated from medical school and worked as a doctor for few years before quitting to focus on a software career (I was already deep into localization and fonts while still at medical school).

Improved glyph positioning of artificial italic text in LibreOffice 7.5

Improved glyph positioning of artificial italic text, especially combining marks – implemented by Khaled in LibreOffice 7.5

 

What’s your new role at TDF?

I’m joining the team as a LibreOffice developer focusing on areas of right-to-left and the aforementioned so-called “complex” text layout. These are some of the underserved areas of LibreOffice development while disproportionately affecting a very large group of (existing and potential) users.

I hope my role at TDF will help to widen the LibreOffice community, attract more people to it, and make it accessible to more users.

What will you be working on?

I will be fixing bugs and implementing features related to right-to-left text layout and user interface issues which affect languages like Arabic, Hebrew, Persian, and Urdu, as well as text layout issues involving writing systems that require more involved text layout, like Arabic script, and the Indic group of scripts.

I will be also working on fonts, PDF export (text extraction from PDF is major pain point for many scripts), and related areas.

I’m also looking forward to mentoring new developers interested in working on any of these areas.

Do you have any tips for new developers, who’re eager to get involved with the LibreOffice codebase?

LibreOffice is a large code base and can be overwhelming, so try to read any existing documentation as much as possible, don’t be afraid to ask for help, and in general be patient.


We’re really happy to have Khaled on board! Follow this blog and our Mastodon and Twitter accounts for updates on his work – plus more news from the LibreOffice community.

Projects selected for LibreOffice in the Google Summer of Code 2023

GSoC logo

The LibreOffice Google Summer of Code projects have been selected for 2023.

  • Ahmed Gamal Eltokhy – Improve PGP/GPG encryption support: the project aims to enhance the experimental PGP/GPG encryption support in LibreOffice by addressing several shortcomings, such as the need to select recipients anew for every save and the difficulty in finding the right keys. The project will also focus on developing smart searching, traversing, and filtering capabilities for large keyrings, as well as adding asynchronous querying for improved performance.
  • Dipam Turkar – Convert Writer’s Java UNO API tests to C++: The unit tests for Writer’s UNO API which were forked from OpenOffice.org are still implemented in Java, which in the end test C++ code making it hard to debug them. LibreOffice has had a long term plan to move them to C++. The project will also focus on fixing the unit tests for errors, if any.
  • Baole Fang – Select tests to run on Gerrit patches based on machine learning: the goal is to implement a machine learning based test selection method to select tests to run in the continuous integration chain to reduce testing load.
  • Bayram Çiçek – Search field in Options: LibreOffice has a large and growing number of options and sometimes it is not easy to find the right one by searching them one by one. The goal is to implement a search field/functionality to the “Tools > Options…” dialog, so that we can find the right options easily.
  • Paris Oplopoios – Add APNG import/export support: APNG (Animated PNG) is an animated format backwards compatible with PNG. It is supported by all the major browsers and has benefits over GIF such as partial transparency and support for more colors. The goal of this project is to integrate APNG support in LibreOffice, which had been requested for quite some time.

Good luck to the contributors – we appreciate their work on these important features and improvements! And thanks to our mentors for assisting them: Tomaž Vajngerl (Collabora); Thorsten Behrens (allotropia); Andreas Heinisch; Heiko Tietze, Xisco Faulí, Stéphane Guillou, Hossein Nourikhah and Christian Lohmaier (The Document Foundation).

Between August 28 and September 4, contributors will submit their code, project summaries, and final evaluations of their mentors. Find out more about the timeline here, and check out more details about the projects on this page.

We are looking for tender ideas and proposals to improve LibreOffice

One of the goals of The Document Foundation and the community it represents is to improve LibreOffice to make it even more competitive with other office suites. One of the tools to achieve this goal are tenders for the development of specific features, such as the implementation of OpenDocument Format version 1.3, the standard format used by LibreOffice and other applications.

Until now, tenders have followed internally developed rules, which have had the merit of getting us where we have got, i.e. very high – but for the reason that we got very high, they were no longer adequate to guarantee a further step forward, given the current size of The Document Foundation and the tender projects. Also, with the arrival of two developers, our possibilities wrt. running and overseeing tenders have emerged.

As of today, the tenders will follow new rules defined by legal experts that will allow us to be aligned with the best practices of not-for-profit foundations, and to further grow LibreOffice and LibreOffice Technology, which is already the most flexible and high-performance platform for individual productivity, and can thus evolve further for the benefit of users.

To grow, we need the ideas and proposals of community members and users. Everyone is invited to send in their ideas! Beware, however, because we need contributions that allow us to further evolve LibreOffice in the area of office suites, an extremely competitive market that today is worth nearly 30 billion dollars.

So, we ask you to make an effort and avoid submitting ideas and proposals that you, individually, would like to see implemented because they fit your idea of an office suite, but to engage with other members of the community and other users and to think big, because LibreOffice is big and needs to grow even bigger.

Talk to the community, and especially to developers, because they can help you structure your ideas and proposals in such a way that they are first accepted, then evaluated and finally voted on by the members of the Engineering Steering Committee, who will be decisive from a technical point of view, before being approved by the Board of Directors.

Also, because the proposals must respect the following structure:

Cost Estimate: x week(s)
Contact: Anakin Skywalker
Reviewers: Luke Skywalker
Short Description: …

It is clear that only the contribution of one or more developers makes it possible to calculate the cost in terms of development weeks, and to describe the functionality in such a way that it is comprehensible to those who must assess its feasibility, place it in the context of a complex development process such as that of LibreOffice, and prioritise it. Cost estimates can also be added by other parties at a later stage of the process, but proposals without a cost estimate cannot be accepted for final consideration.

Before you make your proposal, you can consult the existing ones on the wiki to get an idea of what the Engineering Steering Committee expects from all of you: https://wiki.documentfoundation.org/Development/Budget2023

The deadline for proposals is Sunday, May 28, at 1800 (UTC+2, Berlin time). Any proposals made after this date will as a general rule not be considered in this round of evaluation, unless very exceptional circumstances exist.

As soon as the evaluation and ranking of proposals by the Engineering Steering Commitee begins, we will announce the details, including the “live” ranking spreadsheet, in a follow-up blogpost.

When you are ready, register and add your text. We look forward to your contributions! Again, everyone is welcome to contribute, and we look forward to your ideas!

Want new features in LibreOffice? Help to fund developers!

Andreas Heinisch

Every major release of LibreOffice includes new features, thanks to our community of volunteer and ecosystem developers. But what can you do, if you want a new feature in LibreOffice but don’t have the technical know-how to implement it?

If you’re in a large company, you can engage with the LibreOffice ecosystem to get professional support. Or if you’re a regular end user, you can support individual developers for their work. For instance, Andreas Heinisch recently improved LibreOffice’s AutoText dialog with pre-filled text and a shortcut name, based on selected text, like this:

AutoText dialog

Andreas works on LibreOffice in his spare time, and support from users via his Patreon page helped him to implement this. He said:

If users want me to fix a certain issue, they can fund me to fix a bug or implement an enhancement, like I did for a fire department in Italy (create Table of Contents from the current chapter level only), or some small changes for TDF (fixing a redraw bug in Calc, and the renaming of macro libraries).

Andreas has worked on 173 other fixes and improvements, as you can see on the bug tracker. Many thanks for all his work! And to other developers in our community: you too can consider setting up a Patreon page too (or similar system), to get financial support for your work, and provide a way for end users to fund the improvements they want.

Outreachy and LibreOffice installer improvements: Rachael Odetayo

Rachael Odetayo

Last week, we talked to Ximena Alcaman who’s working on LibreOffice installer improvements as part of the Outreachy programme. Outreachy provides internships to people subject to systemic bias and impacted by underrepresentation in the technical industry where they are living.

Rachael Odetayo is also working on the the LibreOffice installer, and is being mentored by Marina Latini and Jussi Pakkanen, with support from sponsors SUSE and The Document Foundation. Let’s learn more about Rachael…

Tell us a bit about yourself!

My name is Rachael Odetayo and I’m from Nigeria. I studied Mass Communication at the National Open University of Nigeria. Currently, I am proud to be participating in the Outreachy internship programme. In my free time, I enjoy reading, coding, cooking, and sharing my knowledge of the Bible with others.

How did you get involved in Outreachy?

I learned about Outreachy while searching for an opportunity to hone my skills and hopefully secure a tech job. Then an alum shared the application link in a group channel. He shared his experience with Outreachy, and how the programme helped him develop his skills and eventually landed him a job in tech. I was immediately drawn to the idea behind the Outreachy internship and the support it offered to those who might have trouble breaking into the tech industry.

I applied to Outreachy, and after a rigorous selection process, I was accepted as an intern with LibreOffice.

What are you working on right now?

I am currently working on improving the LibreOffice installer for Windows. My work focuses on streamlining the installation process, making it easier and more user-friendly for Windows users. This includes improving the user interface, fixing bugs, and enhancing the overall performance of the installer.

I am excited about this project as it will have a significant impact on the experience of LibreOffice users on Windows. My goal is to simplify and improve the installation process for Windows users, but I can’t do it alone. It would be great if others could get involved and help out with this project.

Mockup installer screenshot

How can others help out?

They can assist in various ways. Windows users, for instance, can assist by testing the new installer and offering feedback on any problems or improvement they would like to see.
Software developers can assist by contributing code to fix bugs, enhance performance, or provide new functionality.

Additionally, those who are unable to contribute code or time can still aid the project by making a donation. Their assistance will go a long way in helping us achieve our goal of improving the LibreOffice installer for Windows.

After this experience, what is your opinion of Equity, Diversity and Inclusion? Did the Outreachy program give you a new perspective or is there anything you would like to highlight?

In my opinion, equity, diversity, and inclusion are extremely important in the tech industry and in society as a whole. When an environment is diverse and inclusive, problems are better solved and decisions are made faster, and as well, the needs and experiences of different people are better understood.

Did your opinion of open source change after this experience? How?

My experience with Outreachy strengthened my understanding of the value of open source in the tech industry. As an Outreachy intern, I had the opportunity to contribute to LibreOffice, which deepened my understanding of the potential of open source. I personally witnessed how people from various backgrounds and locations can come together to create something more impressive than any one of them could have done individually.

Also because open source is collaborative in nature, and allows people to freely access and modify source code, that makes it an effective avenue for driving progress and innovation in the tech industry.

Outreachy logo

Is there any contribution, experience, anecdote you would like to share from your time in the Outreachy program? Would you recommend the programme?

Yes. At the beginning of the internship, I found myself struggling to understand the technical terms my mentors use during our daily standup meetings. I was trying my best to keep up and understand what was going on, but it was like they were speaking a completely different language. One day after a particularly confusing meeting, I finally had the courage to mention it to one of my mentors (Marina). I asked if she could write a summary of our conversation in the group channel so I could review and make sense of it all. To my delight, she not only agreed but was also understanding and supportive.

From that day on, I was able to follow along. And I learned the importance of communication and asking for help. I’m grateful to have Jussi and Marina as mentors and I sincerely appreciate their hard work and effort to ensure we have a clear understanding of our tasks.

I would recommend the Outreachy program to individuals who are underrepresented in tech, including but not limited to women, people of color, people with disabilities etc. who are interested in pursuing a career in tech, and are eligible to participate in the programme.

Follow Rachael on her blog and Twitter. And stay tuned for updates on their work!

LibreOffice installer improvements coming, thanks to Ximena Alcaman, Rachael Odetayo and Outreachy

Ximena Alcaman

Today we’re talking to Ximena Alcaman, who is working on LibreOffice installer improvements as part of the Outreachy programme. Outreachy provides internships to people subject to systemic bias and impacted by underrepresentation in the technical industry where they are living.

Ximena is working alongside Rachael Odetayo on the LibreOffice installer, and is being mentored by Marina Latini and Jussi Pakkanen, with support from sponsors SUSE and The Document Foundation. Let’s learn more…

To start with, tell us a bit about yourself!

Hi! My name is Ximena but most people call me Xime and I’m from Chile. I have a degree in Business Administration, but I recently switched to the tech world to become a software developer. In my free time, I enjoy coding and trying out new technologies. I also like to learn new languages and travel to new places. When I’m not doing all that, you can probably find me in the garden or in the kitchen baking something (hopefully) delicious!

How did you get involved in Outreachy?

I came across a post about the Outreachy internships and it immediately caught my attention. At first, I wasn’t very familiar with open-source, but after doing some research, I soon realized that it was the perfect opportunity for me to gain experience and build my tech career through this internship. On top of that, the chance to be a part of a fantastic community like LibreOffice and to contribute to a product used by millions is truly exciting.

What are you working on in LibreOffice right now?

The Windows installer is a crucial component of the LibreOffice project, as it’s the primary way in which millions of users can install and use the office suite on their computers.

However, the current installer for LibreOffice is based on old code, which makes it difficult to maintain.

Our project aims to address this issue by upgrading to a more modern installer, which will make maintenance a lot easier. We’re using tools like the WiX Toolset and MSI Creator to rework the LibreOffice Windows installer. Our goal is to move away from an outdated infrastructure and upgrade to a more modern one.

Mockup installer screenshot

How can others help out with the things you’re working on?

We’re in the early stages of this project and we could definitely use help from the community. For example, we’re currently trying to localize the right pipeline for the installer and gather the necessary information to build a proper JSON file. However, gathering all the necessary information within the large LibreOffice codebase can be quite difficult. So, if community members can help us to locate the necessary files, it would be greatly appreciated! We would also welcome any testing or bug reports as we continue working on the project.

After this experience, what is your opinion of Equity, Diversity and Inclusion? Did the Outreachy program give you a new perspective or is there anything you would like to highlight?

After this, my belief in the importance of equity, diversity and inclusion has only been reinforced. The Outreachy program has been an incredible experience as it has provided me with the opportunity to work alongside people from different backgrounds and experiences. Outreachy allowed me to learn and grow in a welcoming and supportive environment, which I think is something crucial for underrepresented groups in the tech industry. I believe that having a diverse and inclusive environment is essential for innovation and creativity, and also for creating a more equitable society.

Outreachy logo

Did your opinion of open source change after this experience? How?

Before this experience, I had limited knowledge and understanding of open source, so I had the idea that it was only for advanced students from tech careers or experienced developers. However, my participation in the program has changed my perspective. Outreachy offers opportunities for people of all skill levels and backgrounds, so this made me feel more welcome and included as a newcomer in open source communities.

Is there any contribution, experience, anecdote you would like to share from your time in the Outreachy programme? Would you recommend the program?

When the contribution period started, I had doubts about my programming skills and almost waited for the next cohort to apply again. It took me about two weeks to finally contact my current mentors and I also contacted Ilmari, who kindly provided guidance and support throughout that period. I highly recommend the Outreachy programme for anyone interested in open source, as it provides valuable opportunities to get involved in open source communities and gain experience.

Follow Ximena on WordPress and Twitter. And stay tuned for our next interview, with Rachael Odetayo!