In informatica, Apache OpenOffice, noto come OpenOffice e precedentemente come OpenOffice.org, è un software di produttività personale sviluppato dalla Apache Software Foundation che ne coordina lo sviluppo dal giugno 2011 e lo distribuisce con licenza libera AL2.

Il suffisso ".org" fu aggiunto nel periodo in cui il software era gestito da Sun Microsystems (poi divenuta Oracle America) dopo una disputa sul marchio con una società olandese, che portò alla richiesta di adottare formalmente "OpenOffice.org" come nome ufficiale del progetto. Tuttavia, comunemente ci si riferisce tuttora alla suite senza usare il suffisso.

Sono disponibili anche diverse versioni di OpenOffice portabili, utilizzabili da supporti di memoria esterni come ad esempio un supporto USB. Sono generalmente gratuite, open source e disponibili per i sistemi Windows e GNU/Linux.

Storia Nell'agosto del 1999 Sun Microsystems comprò StarDivision, una società di software tedesca che produceva la suite per l'ufficio StarOffice. Sun si poneva l'obiettivo di fornire un'alternativa al prodotto Microsoft Office, all'epoca dominante sul mercato. Nel 2000 Sun decise di rendere disponibili i sorgenti di StarOffice con licenza open source; l'anno dopo nacque il progetto OpenOffice.org. Questa strategia permise a Sun di accedere a uno sviluppo rapido con dei costi più contenuti.

A partire dalla versione 6.0, StarOffice è basato sul codice di OpenOffice.org con l'aggiunta di alcuni componenti proprietari. La relazione tra StarOffice e OpenOffice.org era molto simile a quella esistente tra Netscape Navigator e Mozilla Suite. Con l'acquisizione di Sun da parte di Oracle StarOffice per un breve periodo è stata rinominata Oracle Open Office.

Nelle prime versioni si era pensato di configurare OpenOffice.org per collegarsi con database come PostgreSQL o MySQL, avendo in questo modo a disposizione le prestazioni e le potenzialità di un vero database. Dalla versione 2.0 c'è a disposizione una gestione diretta di una base di dati e un'interfaccia utente più versatile simile a quella utilizzata da Microsoft Office (fino alla versione 2003, dopodiché l'interfaccia di quest'ultima si è differenziata notevolmente).

Dall'8 maggio 2008 è disponibile la versione beta 3.0 della suite che contiene varie novità tra le quali: in Calc è migliorato il supporto per la collaborazione su foglio di calcolo attraverso la condivisione dei workbook e aumentato a 1024 il numero delle colonne per foglio; in Writer è stato integrato un sistema di appunti rinnovato e ora è possibile visualizzare più pagine durante la revisione; inoltre sono presenti miglioramenti generali in Chart e una potenziata funzionalità di ritaglio (crop) in Draw e Impress. Inoltre OpenOffice.org 3.0 supporta lo standard OpenDocument Format (ODF) 1.2 e permette l'apertura di documenti Microsoft Office 2007 o Microsoft Office 2008 per macOS (.docx, .xlsx, .pptx ecc.). Da questa versione è disponibile uno "start center" con nuove icone dal quale è possibile avviare i vari applicativi della suite o aprire un documento specifico.

La versione 3.0.0 è la prima versione nativa anche per Mac OS X; prima tali utenti dovevano scegliere se utilizzare una versione di OpenOffice.org per X11 meno performante o una particolare versione nativa, un fork del progetto originario, denominata NeoOffice. La build stabile, distribuita il 13 ottobre 2008, non supporta più Windows98 e Mac OS X per processori PowerPC.

Dopo l'acquisizione di Sun Microsystems nel 2010, Oracle Corporation rinomina il progetto StarOffice in Oracle Open Office di cui pubblica la versione 3.3 nel dicembre dello stesso anno Pochi mesi dopo, il 15 aprile 2011 Oracle arresta lo sviluppo commerciale e il 1º giugno 2011 dona la suite ad Apache Software Foundation. Il successivo 13 giugno il progetto viene inserito in Apache Incubator con lo scopo di gestire la fase transitoria.

Il rapporto con The Document Foundation e LibreOffice

Il 28 settembre 2010 alcuni membri del progetto OpenOffice.org hanno fondato il gruppo The Document Foundation distaccandosi da Oracle e chiedendo a quest'ultima di donare il marchio OpenOffice.org e prendere parte all'iniziativa. Le trattative tuttavia non andarono a buon fine. Con l'intento di riunire gli sforzi (talvolta frammentati) sviluppati dalla community nel corso degli anni, la fondazione optò per la creazione di un fork della suite chiamato LibreOffice, che incorporava nella prima release anche le migliorie del progetto Go-oo.

Molti contributori al progetto OpenOffice.org compresi Canonical, Google, Novell e Red Hat aderirono al progetto di The Document Foundation per la creazione di una nuova suite aperta e indipendente.

Ora The Document Foundation continua la diffusione della sua suite per ufficio sotto il nome LibreOffice come prodotto distinto da OpenOffice.

La gestione Apache Lo sviluppo di OpenOffice.org da parte di Apache fa registrare importanti cambiamenti. La nuova fase riceve fin da subito il supporto di IBM che nel luglio del 2011 conferirà nel progetto il codice di Lotus Symphony. Viene quindi deciso un cambio di licenza con l'adozione della licenza Apache. Cambia anche la denominazione del progetto che da OpenOffice.org diventa Apache OpenOffice (spesso indicato anche con l'acronimo AOO).

Apache OpenOffice 3.4 è la prima versione della suite pubblicata sotto la gestione Apache e viene resa disponibile l'8 maggio 2012. Nell'agosto dello stesso anno la comunità di Apache OpenOffice annunciò che il piano di sviluppo prevedeva di rendere disponibile Apache OpenOffice 3.5 nei primi mesi del 2013, seguito da Apache OpenOffice 4.0 che avrebbe incluso alcuni elementi presenti in Lotus Symphony. In realtà la versione 3.5 non arrivò mai alla pubblicazione anche se nell'agosto del 2012 venne comunque presentata Apache OpenOffice 3.4.1 con una serie di aggiornamenti minori; in quell'occasione venne anche sottolineato come Apache OpenOffice 3.4.0 avesse raccolto più di 12 milioni di download nel giro di poche settimane.

Il 17 ottobre 2012 dello stesso anno AOO venne "promosso" da Apache Incubator a progetto Top Level di Apache.

Apache OpenOffice 4.0 viene pubblicato il 23 luglio 2013 e si caratterizza per l'inclusione di diverse porzioni di codice presi da Lotus Symphony tra cui la nuova barra degli strumenti laterale. Il primo importante aggiornamento di OpenOffice 4 arriva il 29 aprile 2014 con la versione 4.1. Alla fine dello stesso anno IBM annuncerà la fine del supporto a Lotus Symphony suggerendo ai propri utenti di passare ad Apache OpenOffice.

Aggiornamenti ulteriori di Apache OpenOffice sono stati resi disponibili al ritmo di uno, due o tre pubblicazioni all'anno:

Anno 2014: versione 4.1.1 Anno 2015: versione 4.1.2 Anno 2016: versione 4.1.3 Anno 2017: versioni 4.1.4 (19 ottobre) e 4.1.5 (30 dicembre) Anno 2018: versione 4.1.6 Anno 2019: versione 4.1.7 Anno 2020: versione 4.1.8 Anno 2021: versioni 4.1.9, 4.1.10 e 4.1.11 Anno 2022: versioni 4.1.12 e 4.1.13 Anno 2023: versione 4.1.14 (27 febbraio) e 4.1.15 (22 dicembre) Anno 2025: versione 4.1.16 (10 novembre)

Il 29 ottobre 2020 Apache OpenOffice ha raggiunto il record di 300 milioni di download, due terzi dei quali ascrivibili al solo ramo 4.1.x. La cifra simbolica dei 333 milioni download è stata invece annunciata il 30 agosto 2022. In entrambe le circostanze sono stati conteggiati solo i download dal sito ufficiale anche se il software è ottenibile da numerose altre fonti.

Caratteristiche Il progetto ha come obiettivo quello di fornire a tutti gli utenti un prodotto libero che offra funzionalità comparabili con i prodotti commerciali attualmente dominanti nel settore di produttività personale.

OpenOffice offre un buon livello di compatibilità con i formati di file di Microsoft Office, ma impiega come formati predefiniti quelli definiti dallo standard internazionale OpenDocument basato su XML. I file in questo formato utilizzano l'algoritmo di compressione LZW (lo stesso dei file "ZIP") per ridurre le dimensioni. Apache OpenOffice supporta ufficialmente Linux, Microsoft Windows, Solaris e macOS (la versione 2.x su macOS richiede l'uso di X11), ma è possibile installarlo anche su altri sistemi operativi.

Alcune funzioni richiedono l'installazione di una Java Virtual Machine JVM di Sun o Oracle (esistono anche versioni ufficiali che non richiedono java o versioni non ufficiali che usano una virtual machine libera quale Kaffe.org). La scelta di licenza fatta per OpenOffice.org (LGPL anziché GPL) ha consentito di rendere disponibili per il download versioni di OpenOffice.org con incorporato il Java Runtime Environment di Sun. Le varie versioni di Apache OpenOffice non includono invece il software JRE che può comunque essere installato separatamente. La dipendenza da Java è comunque limitata al gestore di database Base e a un numero limitato di funzioni degli altri moduli software.

Progetti aggiuntivi e paralleli di OpenOffice riguardano la stesura della documentazione, la localizzazione e la programmazione dell'infrastruttura sulla quali sono costruiti i vari moduli della suite. Esiste anche un progetto che ha come obiettivo quello di creare un archivio comune delle macro.

È disponibile in varie decine di versioni linguistiche ufficiali, a cui si aggiungono progetti di localizzazione "regionali" come, per esempio, la traduzione nei dialetti della lingua zulu sponsorizzata dal governo sudafricano o quella friulana.

Codice sorgente e sviluppo Come ogni software open-source, è possibile visualizzare e modificare il codice sorgente del software. Tuttavia esso non è ben commentato (alcuni commenti risalgono al vecchio StarOffice), è scritto in vari linguaggi (primariamente C++ e Java, ma anche Perl), e parte dei commenti è in tedesco.

L'API di OpenOffice è costruita secondo le specifiche della piattaforma UNO (Universal Network Objects) e consiste in un'ampia gamma di interfacce collegate tramite definizioni in linguaggio IDL (Interface Description Language).

OpenOffice usa una versione modificata di BugZilla (sviluppata da Mozilla Foundation), chiamata IssueZilla, che serve a tenere traccia di tutte le richieste, i commenti e i bug segnalati.

Licenza Il codice sorgente inizialmente veniva reso disponibile da Sun prima e da Oracle poi come software libero su licenza LGPL. Il codice era inizialmente basato sui sorgenti della versione 5.2 di Staroffice, che dopo l'acquisizione da parte di Sun Microsystems è stato distribuito con licenza libera. La clausola esplicita presente nella licenza LGPL consente all'utente di rilicenziare il codice sotto licenza GPL. La proprietà esclusiva della suite impone però un fork al codice (e l'abbandono del nome) nel momento in cui dovesse essere redistribuito o variato, in quanto la licenza JCA imponeva l'esclusività dei diritti e proventi della suite solo a favore di Sun/Oracle; infatti gli sviluppatori che collaboravano a OpenOffice.org dovevano preventivamente accettare di firmare la cessione per i diritti a Sun/Oracle secondo un accordo denominato JCA (Joint Copyright Assignment) che concedeva sia allo sviluppatore sia a Sun/Oracle la titolarità dei diritti.

Con il passaggio da Oracle ad Apache Software Foundation, il codice di OpenOffice è stato distribuito sotto licenza Apache, un tipo di licenza libera compatibile con la GPLv3.

Formato file