Upgrade to Pro — share decks privately, control downloads, hide ads and more …

LibreOffice: The History

LibreOffice: The History

Italo Vignoli

April 20, 2013
Tweet

More Decks by Italo Vignoli

Other Decks in Technology

Transcript

  1. LibreOffice: The History
    (why "libre" is better than "open")

    View Slide

  2. When you come to a fork in the road, take it
    Yogi Berra
    First Thought

    View Slide

  3. Our Ten Years Heritage

    View Slide

  4. History of StarOffice
    1984: Marco Börries, age 16, releases StarWriter for
    the Zilog Z80, the Amstrad CPC and the Commodore
    64, then ported to the 8086-based Amstrad PC-1512
    Later, the development of other two programs - Base
    and Draw - turned StarWriter into StarOffice 1.0, for
    DOS, IBM OS/2 and MS Windows
    StarOffice 3.0 offered StarWriter, StarCalc, StarDraw,
    StarImage and StarChart
    1999: Sun Microsystems acquired the company,
    copyright and trademark of StarOffice

    View Slide

  5. History of OpenOffice.org
    July 19, 2000: Sun makes StarOffice source code
    available for download with the objective of creating
    an OSS development community and providing a free
    and open alternative to MS Office
    May 1st, 2002: OpenOffice.org 1.0 released with dual
    license SISSL (Sun Industry Standard SW License)
    and GNU LGPL
    October 20, 2005: OpenOffice 2.0 released with single
    license LGPL
    October 2008: OpenOffice 3.0 released

    View Slide

  6. OOo Lean in 2000

    View Slide

  7. OOo Fat in 2005

    View Slide

  8. OOo Conference Lyon 2006

    View Slide

  9. MS Office Foundation ?

    View Slide

  10. Breaking the Bell

    View Slide

  11. The First Supper
    Budapest, Sep 2, 2010

    View Slide

  12. your life
    does not get better
    by chance
    it gets better by
    CHANGE
    Change to Improve

    View Slide

  13. September 28, 2010

    View Slide

  14. Kübler-Ross Change Curve

    View Slide

  15. 50 Reasons against Change

    View Slide

  16. Curve of Managed Change

    View Slide

  17. Founding Principles
    COPYLEFT LICENSE
    NO CONTRIBUTOR AGREEMENT
    MERITOCRACY
    COMMUNITY GOVERNANCE
    VENDOR INDEPENDENCE
    The Document Foundation

    View Slide

  18. Copyleft License
    Free
    Software
    Ethos
    Fosters the Development Community
    Protects a Fair Contribution Environment

    View Slide

  19. Allows to grow the community based
    on collaboration
    Excellent for very hard technical problems
    where nobody can run alone
    Excellent for catching up to existing proprietary
    alternatives through sharing
    Allows to reuse a lot of existing code as well
    Great if you do not want proprietary forks
    Copyleft is Awesome

    View Slide

  20. OOo source code was used by several derivatives:
    Copyleft: Go-OO, OpenOffice Novell Edition,
    RedOffice, NeoOffice, OxygenOffice Professional
    and Jambo OpenOffice
    Other: IBM Symphony (released in 2007 based on
    the five years old SISSL - permissive - licensed
    OOo 1.1, and then on OOo 3.0 based on a contract
    with Sun which ignored the obligations of the LGPL)
    CopyLeft @ OOo: What History Says

    View Slide

  21. Copyleft vs Permissive
    Copyleft
    Volunteers
    Permissive
    Corporations

    View Slide

  22. No Contributor Agreement
    Drop CLA

    View Slide

  23. Meritocracy
    if you want
    something done
    DO IT
    you will lead and
    be recognized

    View Slide

  24. Community Governance

    View Slide

  25. Vendor Independence
    NO one
    can control
    more than 30%
    of the votes
    in any statutory
    body of TDF

    View Slide

  26. The Document Foundation was born
    TO PROMOTE free software
    TO PROMOTE SW user freedom
    TO PROMOTE document freedom
    TO PROMOTE open standards
    TO DEVELOP LibreOffice
    The Document Foundation

    View Slide

  27. TDF: Strong, Stable, Enduring
    Incorporated in Berlin as German Stiftung
    Provides the legal framework for the community work
    Membership element incorporated into legally binding
    statutes
    Collects donations, holds domain names, trademarks
    and other community assets
    Annual budget (2013): about 300.000 € excluding AB
    fees
    Administrative setup completed, all administrative
    work done by volunteers, no paid consultants

    View Slide

  28. Board of Directors
    MEMBERS
    Thorsten Behrens
    Florian Effenberger
    Olivier Hallot
    Caolán McNamara
    Michael Meeks
    Charles Schulz
    Italo Vignoli
    DEPUTIES
    Jesús Corrius
    Andreas Mantke
    Björn Michaelsen

    View Slide

  29. Membership Committee
    MEMBERS
    Sophie Gauthier
    Cor Nouws
    Eike Rathke
    Fridrich Štrba
    Jean Weber
    DEPUTIES
    Leif Lodahl
    Simon Phipps

    View Slide

  30. Engineering Steering Committee
    Ahmad H. Al-Harthi (MOTAH)
    Stefan Bergman (RedHat)
    René Engelhard (Debian)
    Joel Madero (independent)
    Mirek Mazel (independent)
    Lionel Elie Mamane (indep.)
    Eilidh McAdam (Lanedo)
    Caolán McNamara (RedHat)
    Michael Meeks (SUSE)
    Björn Michaelsen (Canonical)
    Petr Mladek (SUSE)
    Markus Mohrhard (indep.)
    David Tardon (RedHat)
    Norbert Thiebaud (indep.)
    Andras Timar (SUSE)

    View Slide

  31. Advisory Board
    John Sullivan, FSF
    Thomas Krumbein, FrODeV
    Jeremy Allison, Google
    Dirk Hohndel, Intel
    Martyn Russell, Lanedo
    Christian Schaller, RedHat
    Bdale Garbee, SPI
    Alan Clark, SUSE

    View Slide

  32. Affiliations
    OSI - Open Source Initiative
    OIN - Open Invention Network
    OASIS - Organization for the
    Advancement of Structured
    Information Standards

    View Slide

  33. Subverting the Paradigm

    View Slide

  34. Teams and Collaboration
    Users
    Development
    QA
    L10n
    Documentation
    Daily
    Build
    Beta/RC
    Build
    Last RC
    ==
    Final
    Tinderbox
    TDF/Wiki
    GIT
    Bugzilla
    Pootle
    Mailing list
    IRC
    Marketing

    View Slide

  35. LibOCon Berlin 2012

    View Slide

  36. LibreOffice

    View Slide

  37. Writer

    View Slide

  38. Calc

    View Slide

  39. Graph

    View Slide

  40. Impress

    View Slide

  41. Draw

    View Slide

  42. Base

    View Slide

  43. Math

    View Slide

  44. View Slide

  45. LibreOffice: Standard for GNU/Linux

    View Slide

  46. Developers: TDF Main Asset

    View Slide

  47. "Rules for Revolutionaries"

    View Slide

  48. Growth of New Code Committers
    Sep 10
    Oct 10
    Nov 10
    Dec 10
    Jan 11
    Feb 11
    Mar 11
    Apr 11
    May 11
    Jun 11
    Jul 11
    Aug 11
    Sep 11
    Oct 11
    Nov 11
    Dec 11
    Jan 12
    Feb 12
    Mar 12
    Apr 12
    May 12
    Jun 12
    Jul 12
    Aug 12
    Sep 12
    Oct 12
    Nov 12
    Dec 12
    Jan 13
    Feb 13
    0
    100
    200
    300
    400
    500
    600
    700
    Cumulative Number of LibreOffice New Code Committers
    New Hackers Old Hackers

    View Slide

  49. "The Amazing Easy Hacks"

    View Slide

  50. Huge Mentoring Effort

    View Slide

  51. Presentations

    View Slide

  52. Hackfests

    View Slide

  53. Pasta Hacking

    View Slide

  54. Number of Committers per Month
    Mar 11
    Apr 11
    May 11
    Jun 11
    Jul 11
    Aug 11
    Sep 11
    Oct 11
    Nov 11
    Dec 11
    Jan 12
    Feb 12
    Mar 12
    Apr 12
    May 12
    Jun 12
    Jul 12
    Aug 12
    Sep 12
    Oct 12
    Nov 12
    Dec 12
    Jan 13
    Feb 13
    0
    50
    100
    150
    200
    250
    300
    350
    LibreOffice Code Contributors per Month
    New Hackers Old Hackers 12 Month Average

    View Slide

  55. LibreOffice Code Contributors

    View Slide

  56. Balanced Developers Community
    Changesets by Company/Group
    September 2011 (inner)
    vs December 2012 (outer)
    Volunteers SUSE
    Red Hat OOo Code
    Canonical ALTA
    Lanedo Aentos
    KACST Collabora
    SIL TATA
    Apache OO Bobiciel
    IBM Nou & Off
    Munich CodeThink
    CodeWeavers Intel

    View Slide

  57. Diverse Developers Community (1)
    Active Developers by Affiliation
    September 2011 (inner)
    vs December 2012 (outer)
    Volunteers OOo Code
    SUSE KACST
    RedHat Lanedo
    AOO Volunteers Canonical
    Collabora IBM
    Munich SIL
    Aentos ALTA
    Bobiciel CodeThink
    CodeWeavers Intel
    Nou & Off TATA

    View Slide

  58. Diverse Developers Community (2)
    LibreOffice Developers with 100+ Commits
    Caolán McNamara (Red Hat) Tor Lillqvist (SUSE)
    Stephan Bergmann (RedHat) Michael Stahl (RedHat)
    David Tardon (RedHat) Kohei Yoshida (SUSE)
    Markus Mohrhard (Volunteer) Miklos Vajna (SUSE)
    Luboš Luňák (SUSE) Noel Grandin (Volunteer)
    Andras Timar (SUSE) Matúš Kukan (Volunteer)
    Norbert Thiebaud (Volunteer) Michael Meeks (SUSE)
    Rafael Dominguez (Volunteer) Eike Rathke (RedHat)
    Julien Nabet (Volunteer) Takeshi Abe (Volunteer)
    Fridrich Štrba (SUSE) Jan Holesovsky (SUSE)
    Cédric Bosdonnat (SUSE) Noel Power (SUSE)
    Ivan Timofeev (Volunteer) Thomas Arnhold (Volunteer)
    Peter Foley (Volunteer) Lionel Elie Mamane (Volunteer)
    Bjoern Michaelsen (Canonical) Artur Dorda (Volunteer)
    Andrzej J.R. Hunt (Volunteer) Xisco Fauli (Volunteer)
    David Ostrovsky (Volunteer) Thorsten Behrens (SUSE)
    Zolnai Tamás (Volunteer)

    View Slide

  59. Newest Member of the Project

    View Slide

  60. Manuals in Arabic Language

    View Slide

  61. 346 active users in Pootle
    (translations.documentfoundation.org)
    112 languages in Pootle
    + 4 languages maintained outside of Pootle
    LibreOffice 4.0 has 109 UI languages,
    and help packs in 58 languages
    LibreOffice can be used in their native language
    by more than 4 billion people worldwide
    LibreOffice Localizations

    View Slide

  62. Development Process

    View Slide

  63. Gerrit Code Review

    View Slide

  64. Tinderboxes

    View Slide

  65. Automated Tests
    Automated tests to prevent software problems
    The objective is to spot problems before they hit
    master
    Tests are integrated into the development strategy
    Small filter tests ensure that a fixed bug never
    regresses again
    Tests run whenever anybody builds LibreOffice and
    are executed on Tinderboxes too
    Nightly builds are available to execute tests on the
    newest version

    View Slide

  66. Torture Tests on Documents
    3.4.0 3.5.0 3.6.0 4.0.0
    0
    20
    40
    60
    80
    100
    120
    140
    Count of Types of GNUmake Enabled Unit Tests
    (each one runs a battery of tests)

    View Slide

  67. Ongoing Quality Process
    Background Development Tools
    Tinderboxes compile the code after each commit
    Hackers can check development problems in real
    time
    Tinderboxes upload dailies for QA activities
    Bibisect (Binary Bisect) help chasing regressions
    Multiple office installs in a small package allow to
    spot the commit that introduced the bug

    View Slide

  68. Bug Submission Assistant

    View Slide

  69. Bug Tracking & Management

    View Slide

  70. Test Marathons

    View Slide

  71. Removing Unused Methods

    View Slide

  72. Removing German Comments
    3.3 3.4 3.5 3.6 4.0
    0
    10.000
    20.000
    30.000
    40.000
    50.000
    60.000
    Detected Lines of German Comments

    View Slide

  73. Paying Down Substantial Technical Debt
    Reduced footprint of the software
    Undertaken long awaited code renovation
    Removed tens of thousands lines of dead code
    Removed deprecated libraries
    Translated many German comments to English
    Many other code renovation actions
    Completely new and substancially improved
    build system, making builds much easier
    Using 21st Century C++ constructs

    View Slide

  74. LibreOffice Release Roadmap

    View Slide

  75. Growth of Users Pinging for Updates
    0
    20000
    40000
    60000
    80000
    100000
    120000
    0
    2000000
    4000000
    6000000
    8000000
    10000000
    12000000
    14000000
    16000000
    18000000
    20000000
    22000000
    LibreOffice New Unique IPs Pinging for Software Updates
    Daily (left) & Cumulative Number (right) since February 2012

    View Slide

  76. LibreOffice Estimated Value

    View Slide

  77. City of Munich loves LibreOffice
    After careful risk-assessment, the capital of Munich has
    decided to migrate from OpenOffice to LibreOffice.
    In favour of that decision, among others, was the greater
    flexibility of the project regarding consumption of open source
    licenses.
    Beyond that, Munich wants to rely on large and vibrant
    communities for any Open Source product it employs.
    Kirsten Böge, head of public relations

    View Slide

  78. MimO loves LibreOffice

    View Slide

  79. Limerick loves LibreOffice

    View Slide

  80. Las Palmas loves LibreOffice

    View Slide

  81. Chicago Public Library loves LibreOffice

    View Slide

  82. Regione Umbria loves LibreOffice

    View Slide

  83. LibreOffice
    New Features

    View Slide

  84. New Feature: LibreOffice 3.4
    New gradient / drop-shadow
    to highlight Writer pages

    View Slide

  85. New Feature: LibreOffice 3.4
    Color and line styles for the columns
    and footnote separator lines

    View Slide

  86. New Feature: LibreOffice 3.4
    Greek Characters mode
    for bullets and numbering

    View Slide

  87. New Feature: LibreOffice 3.4
    Redesigned Move/Copy Sheet dialog

    View Slide

  88. New Feature: LibreOffice 3.4
    Named range as the data source
    for Pivot Table

    View Slide

  89. New Feature: LibreOffice 3.4
    Improved search toolbar opens
    by hitting Ctrl+F

    View Slide

  90. New Feature: LibreOffice 3.4
    Adding and removing color charts

    View Slide

  91. New Feature: LibreOffice 3.4
    Improve HTML export with an image thumbnail
    gallery of the slides on the contents page

    View Slide

  92. New Feature: LibreOffice 3.4
    Linux text-rendering improvements

    View Slide

  93. New Feature: LibreOffice 3.5
    Better UI for Header and Footers handling

    View Slide

  94. New Feature: LibreOffice 3.5
    First ever built-in Grammar checker for English
    (and a few other languages...)

    View Slide

  95. New Feature: LibreOffice 3.5
    New Hinting on Linux Libertine G
    and Linux Biolinum G

    View Slide

  96. New Feature: LibreOffice 3.5
    Multi Line input bar in Calc

    View Slide

  97. New Feature: LibreOffice 3.5
    Unlimited conditional formatting

    View Slide

  98. New Feature: LibreOffice 3.5
    Re-Designed Autofilter
    popup window

    View Slide

  99. New Feature: LibreOffice 3.5
    Support embedding Palettes and other property list types
    (we could only embed palettes into Impress ODP thus far)

    View Slide

  100. New Feature: LibreOffice 3.5
    Line chart smoothing upgraded to ODF1.2 standard

    View Slide

  101. New Feature: LibreOffice 3.5
    RTF
    import
    rewrite

    View Slide

  102. New Feature: LibreOffice 3.5
    Import filter for MS Visio documents

    View Slide

  103. New Feature: LibreOffice 3.5
    Import filter for MS Visio documents

    View Slide

  104. New Feature: LibreOffice 3.5
    Import filter for MS Visio documents

    View Slide

  105. New Feature: LibreOffice 3.5
    Toolbar improvements

    View Slide

  106. New Feature: LibreOffice 3.5
    The word count dialogue is now mode-less
    and updates as you type
    This feature is key for professional writers
    like journalists and translators

    View Slide

  107. New Feature: LibreOffice 3.5
    Improved color picker

    View Slide

  108. New Feature: LibreOffice 3.5
    Importing
    PPTX
    SmartArt

    View Slide

  109. New Feature: LibreOffice 3.6
    Added Word Count to status bar

    View Slide

  110. New Feature: LibreOffice 3.6
    Support for contextual spacing

    View Slide

  111. New Feature: LibreOffice 3.6
    Label / Business Card Wizard

    View Slide

  112. New Feature: LibreOffice 3.6
    Improved CSV export

    View Slide

  113. New Feature: LibreOffice 3.6
    Support field items in cells

    View Slide

  114. New Feature: LibreOffice 3.6
    Allow Sorting
    from Autofilter
    popup window

    View Slide

  115. New Feature: LibreOffice 3.6
    Quickly allow pasting only text, value,
    or formula from the context menu

    View Slide

  116. New Feature: LibreOffice 3.6
    Support for color scales and data bars

    View Slide

  117. New Feature: LibreOffice 3.6
    More than 3 sort entries for data

    View Slide

  118. New Feature: LibreOffice 3.6
    10 new Impress
    Master Pages

    View Slide

  119. New Feature: LibreOffice 3.6
    Corel
    import
    filter

    View Slide

  120. New Feature: LibreOffice 3.6
    PDF Export with Watermark option

    View Slide

  121. New Feature: LibreOffice 3.6
    Rulers are now much cleaner and more light-weight

    View Slide

  122. New Feature: LibreOffice 4.0
    Range Comments (sponsored by OSBA)

    View Slide

  123. New Feature: LibreOffice 4.0
    Allow extra word boundary characters

    View Slide

  124. New Feature: LibreOffice 4.0
    Allow different header and footer on the first page

    View Slide

  125. New Feature: LibreOffice 4.0
    RTF: Drawing Object Import
    4.0

    View Slide

  126. New Feature: LibreOffice 4.0
    RTF: Improved eg. Formulae

    View Slide

  127. New Feature: LibreOffice 4.0
    DOCX: Ink Annotation Import

    View Slide

  128. New Feature: LibreOffice 4.0
    Support of CMIS Protocol

    View Slide

  129. New Feature: LibreOffice 4.0
    Microsoft Publisher Import

    View Slide

  130. New Feature: LibreOffice 4.0
    Arbitrary XML → Spreadsheet

    View Slide

  131. New Feature: LibreOffice 4.0
    Conditional Formatting
    Bars + Icons

    View Slide

  132. New Feature: LibreOffice 4.0
    Stock Options Pricing Formulae

    View Slide

  133. New Feature: LibreOffice 4.0
    Exporting of a single chart as image (PNG, JPG)

    View Slide

  134. New Feature: LibreOffice 4.0
    Android
    Remote
    Control
    for
    Impress

    View Slide

  135. New Feature: LibreOffice 4.0
    New Template Selection UI

    View Slide

  136. New Feature: LibreOffice 4.0
    Style Previews in Drop Down Menu

    View Slide

  137. New Feature: LibreOffice 4.0
    New Widget
    Layout Technique

    View Slide

  138. New Feature: LibreOffice 4.0
    LibreOffice Personas (shared with Firefox)

    View Slide

  139. New Feature: LibreOffice 4.1
    Font Embedding
    in ODF Documents
    ODF
    Contents
    (ODP)

    View Slide

  140. Open Document Format
    ISO/IEC Standard 26300
    Driven and maintained by OASIS
    Implemented to the latest version
    Recognized by many governments

    View Slide

  141. Hybrid PDF Format
    Standard ODF Format embedded in a Standard PDF Format

    View Slide

  142. Navigating the Project

    View Slide

  143. www.libreoffice.org/get-involved

    View Slide

  144. www.documentfoundation.org/contribution

    View Slide

  145. www.libreoffice.org/get-help

    View Slide

  146. Global Mailing List
    [email protected] - announces
    [email protected] - discussions
    [email protected] - project coordination
    [email protected] - users
    [email protected] - localization
    [email protected] - documentation
    [email protected] - marketing
    [email protected] - design
    [email protected] - certification

    View Slide

  147. www.libreoffice.org/get-help/faq

    View Slide

  148. www.libreoffice.org/get-help/installation

    View Slide

  149. wiki.documentfoundation.org/faq

    View Slide

  150. Development
    http://planet.documentfoundation.org/
    http://nabble.documentfoundation.org/Dev-f1639786.html
    #libreoffice-dev on freenode
    http://cgit.freedesktop.org/libreoffice/core/log/
    http://wiki.documentfoundation.org/Development/Native_Build
    http://opengrok.libreoffice.org/

    View Slide

  151. www.libreoffice.org/developers-2

    View Slide

  152. www.documentfoundation.org/develop

    View Slide

  153. wiki.documentfoundation.org/Git_For_LibreOffice_Developers

    View Slide

  154. wiki.documentfoundation.org/Development

    View Slide

  155. wiki.documentfoundation.org/BugReport

    View Slide

  156. wiki.documentfoundation.org/BugReport_Details

    View Slide

  157. wiki.documentfoundation.org/Development/How_to_debug

    View Slide

  158. wiki.documentfoundation.org/Macros

    View Slide

  159. Quality Assurance
    http://nabble.documentfoundation.org/Dev-f1639786.html
    #libreoffice-dev on freenode
    https://bugs.freedesktop.org/
    http://wiki.documentfoundation.org/QA

    View Slide

  160. wiki.documentfoundation.org/Litmus

    View Slide

  161. wiki.documentfoundation.org/QA

    View Slide

  162. wiki.documentfoundation.org/QA-FAQ

    View Slide

  163. wiki.documentfoundation.org/QA/Testing/Automated_Tests

    View Slide

  164. wiki.documentfoundation.org/QA/Testing/Regression_Tests

    View Slide

  165. Localization
    http://wiki.documentfoundation.org/Language
    http://nabble.documentfoundation.org/L10n-f1630956.html
    https://translations.documentfoundation.org/

    View Slide

  166. wiki.documentfoundation.org/Language

    View Slide

  167. wiki.documentfoundation.org/TipsTricksl10n

    View Slide

  168. www.libreoffice.org/get-help/documentation

    View Slide

  169. wiki.documentfoundation.org/Documentation/Easy_hacks

    View Slide

  170. wiki.documentfoundation.org/Documentation/Development

    View Slide

  171. wiki.documentfoundation.org/Documentation/Production

    View Slide

  172. wiki.documentfoundation.org/Documentation/Publications

    View Slide

  173. Resources for Documentation

    View Slide

  174. Documentation Workflow

    View Slide

  175. Design and User Interface
    http://wiki.documentfoundation.org/Design
    [email protected]
    [email protected]

    View Slide

  176. Marketing
    http://nabble.documentfoundation.org/Marketing-f1645224.html
    http://wiki.documentfoundation.org/Marketing

    View Slide

  177. wiki.documentfoundation.org/Marketing

    View Slide

  178. ask.libreoffice.org/questions

    View Slide

  179. Growing the Ecosystem
    Educating enterprises about getting
    professional support for LibreOffice
    Certification program, to allow community
    members to add value and make money
    with LibreOffice
    Help migrations from MS Office to
    LibreOffice, based on professional support

    View Slide

  180. Certification Program

    View Slide

  181. LibreOffice 2020
    THE JOURNEY HAS JUST BEGUN

    View Slide

  182. People who live in the past generally are
    afraid to compete in the present.
    I've got my faults, but living in the past is
    not one of them. There's no future in it.
    Sparky Anderson
    Last Thought

    View Slide

  183. Credits
    Thanks:
    to the LibreOffice community at large
    to Michael Meeks for statistics about developers and
    development
    to Joel Madero for coordinating QA and providing QA
    statistics
    to Marc Parè for many screenshots of new features
    to all other developers and volunteers which I do not
    remember but have provided additional information

    View Slide

  184. [email protected]
    skype italovignoli - gtalk [email protected]

    View Slide