FOSDEM Call for Papers: Open Document Editors DevRoom

fosdemFOSDEM is one of the largest gatherings of Free Software contributors in the world and happens each year in Brussels (Belgium) at the ULB Campus Solbosch. In 2017, it will be held on Saturday, February 4, and Sunday, February 5.

As usual, the Open Document Editors DevRoom will be jointly organized by Apache OpenOffice and LibreOffice, on Saturday, February 4, in room 4.401 in Building K (from 10:30AM to 6:30PM). The shared devroom gives every project in this area a chance to present ODF related developments and innovations.

We are now inviting proposals for talks about Open Document Editors or the ODF document format, on topics such as code, extensions, localization, QA, UX, tools and adoption related cases. This is a unique opportunity to show new ideas and developments to a wide technical audience.

Length of talks should be limited to a maximum of 30 minutes, as we would like to have questions after each presentation, and to fit as many presenters as possible in the schedule. Exceptions must be explicitly requested and justified. You may be assigned LESS time than you request.

All submissions have to be made in the Pentabarf event planning tool: https://penta.fosdem.org/submission/FOSDEM17.

While filing your proposal, please provide the title of your talk, a short abstract (one or two paragraphs), some information about yourself (name, bio and photo, but please do remember that your profile might be already stored at Pentabarf).

To submit your talk, click on “Create Event”, then make sure to select the “Open Document Editors” devroom as the “Track”. Otherwise, your talk will not be even considered for any devroom at all.

If you already have a Pentabarf account from a previous year, even if your talk was not accepted, please reuse it. Create an account if, and only if, you don’t have one from a previous year. If you have any issues with Pentabarf, please contact ode-devroom-manager@fosdem.org.

The deadline is Monday, December 5th, 2016. Accepted speakers will be notified by Sunday, December 11th, 2016. The DevRoom schedule will be published on the same day.

Recording Permission

The talks in the Open Document Editors DevRoom will be audio and video recorded, and possibly streamed live too.

In the “Submission notes” field, please indicate that you agree that your presentation will be licensed under the CC-BY-SA-4.0 or CC-BY-4.0 license and that you agree to have your presentation recorded. For example: “If my speech is accepted for FOSDEM, I hereby agree to license all recordings, slides, and other associated materials under the Creative Commons Attribution Share-Alike 4.0 International License. Sincerely, Name”.

LibreOffice Community Weeks: Wrapping up

LibreOffice Community Weeks

We’re already in to a new Month of LibreOffice, but in October we ran a series of Community Weeks, looking at what different teams in the LibreOffice project do, and how you can help them. So firstly, here’s a reminder of the articles, and then we’ll find out what effect they had…

Documentation

Development

Quality Assurance (QA)

Design

 

Feedback from the teams

So what effect did the Community Weeks have on the projects? Here’s what each team had to say:

Olivier Hallot (documentation): “The Community Weeks brought more people to the realm we are working in, and I had 3 new people showing up. One is a PhD professor from a university in India, who wrote a page on a set of Calc functions, and asked for more work. Another is a New Zealand national, involved in migrations and support, who is updating our books. I also got someone on IRC, but he did not came back. So overall, the week is positive, but we need people to return after their first contributions.”

Jan Iversen (development): “The week worked well – during the last period 15 people have got their first patch merged, and will appear by name in the 5.4 release notes. I often hear “but I cannot work full-time”, so it is important to realize that while roughly 50% of the changes are done by 20-30 people, the other 50% is done by hundreds of people making 1-10 patches a year. Every change counts and is very welcome! We arrange developers days, when a group wants help, so please contact us at mentor@documentfoundation.org if you need help.”

Xisco Fauli (QA): “There were 4-5 new users who showed up on IRC during the Bug Hunting Session, who may have joined from reading the Community Week posts. Also, we hope both posts from that week will help readers to report better bugs in the future (attaching simpler samples, adding clearer steps, and so forth).”

Heiko Tietze (design): “The campaign was interesting and encouraged readers to follow links to the Design Team Blog. Even if we didn’t get more active people showing up in the design project, comments are always welcome.”

Thanks to everyone who took part. We’ll do more Community Weeks next year, so if there’s something you want us to focus on, just let us know!

Community Week: Development – get involved

LibreOffice Community Weeks

On Monday we had a chat with LibreOffice’s dedicated mentor for new developers, Jan Iversen, and on Wednesday we then looked at some statistics from the development team and the tools they use. Today we finish off this Community Week by showing you how to get involved. Put your coding gloves on and get ready to become a LibreOffice hacker…

Getting the source code

The first thing you need to do is read this page – this is a step-by-step guide, from the primary contact until you have successfully gotten your first patch merged.

The page describes how to download the source code:

  • Git: at the command line, enter “git clone git://anongit.freedesktop.org/libreoffice/core”

This download takes a while, but with that you have access to not only master (the bleeding edge source code), but also are release candidates (e.g. 5.1.6 RC1) as well as old versions. In total this is the source code with history.

Building LibreOffice is a task that takes quite a while, because the suite has approximately 7 million lines of code. The time needed depends a lot on your setup and the operating system. Windows is the slowest, and it is common to see the first build to take 6-10 hours. Linux and macOS are pretty fast: the normal time is 1-2 hours. Remember that the second build is a lot faster because it only builds changes.

Building it

How you build the code depends on your operating system, but our wiki has some guides:

If you have a choice of operating systems at your disposal, we recommend using Linux, where it’s very easy to install development tools and other related software.

Oh, and want to see what a LibreOffice build process looks like? Check out this speeded-up video (maybe turn down your audio before playing it though – the music is a bit loud!)

Start communicating

Once you’re able to build LibreOffice from its source code, it’s a good idea to reach out to other developers – maybe to get help, or ask for pointers, or simply see what things need working on. You can subscribe to the mailing list (see the archives here), but for more immediate contact join the #libreoffice-dev IRC channel on Freenode.

The mailing list and IRC channel can be busy, so there’s not a lot of time for off-topic discussion, but it’s worth introducing yourself quickly (who you are, why you want to help, any specific things you want to work on). If you want to talk to Jan, the new developer mentor, you’ll find him as @janIV on the IRC channel. Or send an email to mentoring@documentfoundation.org.

Start hacking!

We’ve mentioned “Easy Hacks” a few times this week – now we’ll explore them in detail. Easy Hacks are small tasks designed to be ideal starting points for new LibreOffice developers, so you can take them on without needing a lot of experience with the project or source code.

The first thing to do is read the quick introduction on this page – it explains the workflow and shows you how to use Bugzilla, which is used to coordinate Easy Hacks. From there, you can choose the language or technology area in which you want to help, eg:

For a full list of Easy Hacks in different languages, see this page, and once you’ve completed a few, you may want to move on to Core Hacks.

So good luck on your coding adventure, we look forward to your contributions, and just let us know on IRC or the mailing list if you have any questions!

Community Week: Development – people, stats and tools

LibreOffice Community Weeks

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.

Who’s who

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!

Community Weeks: Development – our mentor for newcomers

LibreOffice Community Weeks

Last week we looked at the documentation team’s role in the LibreOffice project, and this week we move on to development. As you’d expect, the development team is responsible for updating and maintaining LibreOffice’s source code – adding new features, fixing bugs, and making sure that the suite builds correctly across various operating systems.

Development may seem like the most daunting sub-project in LibreOffice, but there are many ways to get involved, even for less-experienced programmers or those with just a couple of spare hours every week. We have “Easy Hacks” to get new contributors on board (more on those later in the week), and we have a dedicated mentor who helps first-time developers explore the source code, build it, and create their first patches.

His name is Jan Iversen, and we asked him about his role and how he helps newcomers…

What is your role in the development team?

My role is to mentor new contributors, and in general help the development community grow. I often act as a intermediary between new people and core developers, to save time for the core developers. To help the community I am also a “part-time” release engineer and I help the infrastructure team as well.

What does your typical workday look like?

I start every morning by looking at new patches in Gerrit from new contributors, comment on them and if they look good, assign a core developer to make the review. I also control the state of bugs.documentfoundation.org with regards to our Easy Hacks, control new ones, and check comments on existing ones.

On average there are 5-10 mails in my inbox, mostly from contributors but also more and more from the rest of the community.

The rest of my workday goes with the bigger tasks, like:

  • Rewriting big parts of the development wiki
  • Being available on IRC (I am there 24/7 as @janIV – or more correctly, messages are stored when I sleep
  • Rewriting our Easy Hacks to make them more understandable

As I live in Spain, I also work to get the Spanish community up and running.

How many developers are active in a typical week?

We have a nice page of stats for that.

In a typical day, I guess there are about 20 different people active on IRC and 5 on email. We are about 10 people who, as a person told me, have a IRC client seemingly built-in to their brains! And the others are people popping in for a question.

It is very clear that IRC is for the more hard-core developers. New people especially use social media a lot more, so I am working on getting social media interconnected with IRC.

What’s the biggest success so far, and the biggest challenge?

My biggest success was Google Summer of Code (GSoC), where our community managed to get the largest number of applicants to date. Google sadly enough only awarded us 12 seats, so we had to select the projects carefully.

My biggest challenge, is and will be for some time, to change the way we communicate, to a style more acceptable for especially students. This must be done as a evolution, not a revolution, in order not to break the existing community.

What sort of help are you looking for?

LibreOffice is very much C++, so people who know C++ and want to learn how to work with a big project are very much sought after.

But in reality, we have Easy Hacks for a lot of programming languages, so everybody is welcome. One of the people I mentored started by telling me that he was a newbie in programming. It made me very happy when he lately was given committer status, so people tend to grow with the community.

Local community building is my theme for 2017: having small groups of developers that help each other is something I would like to see, and then we will help such groups, by having mentors ready to help them. Also, I have – among others – created a step-by-step guide explaining how to get from you first contact with the community to have successfully submitted your first patch: see this page.

Thanks Jan. Later in the week we’ll look at some stats from the development team, see what tools are used, and show you how to get involved. You could even be awarded a shiny certificate like the one below when your first code patch is accepted…

Prototypefund: an opportunity for German freelance developers

The Document Foundation is happy to share with the community the opportunity represented by Prototypefund (http://codefor.de/blog/prototype-fund), an excellent project for freelance developers based in Germany.

TDF Board of Directors encourages all hackers with the necessary credentials and interested in improving either LibreOffice or the Document Liberation Project to apply for the fund. Approved projects will be supported by the LibreOffice development community, which will provide the mentoring resources to achieve the objective.

This is a list of potential projects, which will be very helpful both for LibreOffice users and for the broad scope outlined by Prototypefund:

  1. Develop a LibreOffice Calc import filter from public administration sources, to allow citizen to process and analyze data themselves. Such an import filter would allow to easily create content for publication.
  2. Develop a digital tool based on LibreOffice, to create, share and use (open) data, for data visualization and storytelling, social engagement, transparency and citizen participation. An example project would be to create a filter that export diagrams in Calc to d3js for publication on the web.
  3. Develop an “open data browser” – most likely as an extension – capable of importing data made available at: https://offenedaten.de/dataset into LibreOffice Calc or Base.
  4. Allow LibreOffice to read/process and render basic geographic data from OSM using Calc or Draw.

These are just examples, which can be used to look at Prototypefund in a creative way, to write the project (according to the website, one page should be enough to apply).

The Document Foundation is happy to help the interested developers with their pitch related to the development of LibreOffice.