Earlier in the week we talked to Jan Iversen who is mentoring new contributors to the development team. Let’s now look at some of the people involved, statistics from recent months, and the tools used by developers in their daily work.
As with other large free and open source software projects, LibreOffice developers come from a variety of backgrounds: some are paid to work on the code by companies that use or offer support for LibreOffice; others contribute in their spare time because they enjoy programming and working with the community. If you’ve looking to build a career as a software developer, working on a well-known open source project can provide you with great experience, and is something to put on your CV.
Because the LibreOffice codebase is quite large, most developers focus on certain areas. Some work on specific components of the suite like Calc or Writer, whereas others concentrate on the user interface or improving overall performance. Here is a list of “friendly experts” who are well versed in the code in specific areas, and who can help with questions or problems. But please remember: these are very busy people, who do not always have time to answer beginners’ questions, especially on IRC. The best practice is to send an email to our dev list, which will be seen by all developers including Jan.
Running the numbers
So who is committing code, and how often? Here’s a break-down of commits in the past 12 months:
Some other interesting statistics:
- In the last 12 months, 282 different contributors had patches merged
- There are 253 Easy Hacks ready for contributors (new and existing)
- The Engineering Steering Committee (aka ESC) publishes a list of top 5 contributors every week on our dev mailing list – a lot of companies look at these emails, so being on that list is a plus if you’re searching for a job
- Development mentor Jan does 50 reviews per week for patches from contributors
Finding the right tools
As mentioned, most of LibreOffice’s source code is C++. Developers use their own choice of editors and development environments to work on the code. The version control system used by LibreOffice developers is Git, while Gerrit is used for review.
For a list of all the tools available to developers, see devcentral.libreoffice.org. Some of the most notable include:
- Opengrok, which provides a friendly and attractive way to browse the source code
- Jenkins, which provides CI (continuous integration): every patch which is submitted is built and tested automatically before being merged into the master code branch, to keep master stable
- Tinderbox, which supports a lot of different setups, and tests regularly (several times a day) that master can build in this special version
- And Gerrit, where patches end up. This is the system where we review patches before merging to master
So now you have an overview of the development community and the tools that they use – stay tuned for Friday’s post, where we show you how to get involved with Easy Hacks!