Apache OpenOffice jest zaskakująco aktywny jak na martwy projekt
Od czasu czasu do czasu zaglądam na strony projektów oprogramowania, którego niegdyś używałem, żeby zobaczyć jak się ma i czy jeszcze żyje. Pomaga to rozszerzyć wiedzę na temat kondycji społeczności open source i przekonać się, czy względem popularnych rozwiązań wciąż istnieją sensowne alternatywy. Dlatego okresowo sprawdzam stan projektu SeaMonkey i LibreSSL. Dziś postanowiłem dokonać wyprawy na stronę projektu OpenOffice. Wracam z nieco zaskakującymi wnioskami.
Turbulentne pochodzenie
Projekt OpenOffice ma niezwykle burzliwą i okropnie długą historię. Wywodzi się z (również wiekowego) pakietu biurowego StarOffice i przez wiele lat egzystował, pod nazwą OpenOffice.org, jako jego otwarta wersja i zarazem główny pakiet biurowy w systemach linuksowych. Rozwojem pakietu zajmowała się firma Sun Microsystems, ale została ona przejęta przez złowrogą Oracle Corporation.
Oracle, jak wszyscy wiemy, nie ma programistów. Ma samych prawników. Nie ma również żadnych klientów, a jedynie zakładników. Powtarzam to za każdym razem, gdy mowa o Oracle, a w dalszym ciągu muszę tłumaczyć ludziom nieobytym ze słowem pisanym, że jest to hiperbola i żart. Jest to jednak żart niepozbawiony podstaw. Oracle miewa tendencje do wykazywania „odwrotnego dotyku Midasa”. Pod koniec roku 2010, OpenOffice.org organizacyjnie stał w miejscu, a Oracle nie wykazywało szczególnej woli, by zmienić ten stan. Zwłaszcza, że pakiet StarOffice przynosił groszowe zyski w porównaniu z innymi produktami firmy.
Wielka schizma
Stąd też duża grupa osób związanych z projektem opuściła go i zajęła się pracą nad forkiem pakietu, pod nazwą LibreOffice. Niewiele później Oracle przestał udawać, że OpenOffice cokolwiek go obchodzi, zwolnił resztę ludzi i oddał kod pod opiekę Fundacji Apache. To oczywiście skrócona historia. Nie oddaje na przykład tego, że cały podział odbył się w mało przyjacielskiej atmosferze. Zawiłość perypetii OpenOffice sprawia, że w potocznym rozumieniu, los projektu jest inny. I choć zdecydowanie nie oddaje rzeczywistości, brzmi mniej więcej tak:
[quote]Prawdziwym spadkobiercą projektu jest LibreOffice, a ludzie skupieni wokół projektu fundacji Apache to nieodpowiedzialne uparciuchy, które rozwijają swój fork żółwim tempem nie wiadomo po co. W efekcie jedynie dzierżą znaki towarowe szanowanego niegdyś produktu i wprowadzają użytkowników w konfuzję.[/quote]
Tymczasem to nie do końca słuszna opinia. Niemniej, jest w niej trochę prawdy: istnieją użytkownicy, którzy zwyczajnie nie wiedzą o LibreOffice i pobierają inny pakiet o znajomej nazwie, mimo że oferuje on niższą zgodność z formatami DOCX. OpenOffice miał również problemy z regularnością wydań, aktualnością tłumaczeń i prędkością reakcji na odkryte luki w zabezpieczeniach. Podczas gdy LibreOffice przestrzegał dość sztywnego i cyklicznego harmonogramu wydań.
Oracle odmówiło oddania znaków towarowych nowej organizacji (The Document Foundation), a zamiast tego powierzyło je, wraz z repozytoriami, fundacji Apache. Decyzja ta, zarówno wtedy, słowami decydentów, jak i dziś, słowami obrońców OO, uzasadniana jest mitycznym argumentem ze świata wolnego oprogramowania, który brzmi "to wszystko po to, by użytkownicy mieli wybór". Ponownie jednak jest to argument nonsensowny.
Iluzja wyboru
Wybór powinien być dokonywany między ofertami, a nie etykietami. Jeżeli dwa pakiety są identyczne (nie są), "wybór" jest jedynie szumem informacyjnym. Gdy pakiety różnią się modelem wydawniczym i licencją, a na dłuższą metę implementują to samo i tak samo - ponownie wybór jest jedynie horrendalnie drogą iluzją. A gdy różnice między projektami polegają na tym, że jeden rozwija się dynamicznie, a drugi w imię rzekomo zdrowszego codebase'u brnie w zaparte mimo braku rąk do pracy – to fakt, wybór istnieje. Ale jest oczywisty i zdecydowanie niekorzystny dla tego drugiego.
W zasadzie trudno dziś zdefiniować powody, dla których Apache OpenOffice w ogóle istnieje. Oba projekty stosują rozbieżne licencje a zapewne sporo dziwnych miejsc wystandaryzowało na OpenOffice i oczekuje wsparcia za wszelką cenę, ale naprawdę nie jest łatwo użyć owych argumentów jako wystarczającej wymówki. A miejmy jednak świadomość, że tak duże inicjatywy, jak OpenOffice lub LibreOffice nie utrzymują się na powierzchni wyłącznie wskutek "działań społeczności". Są na to zbyt duże, potrzebują więc rady nadzorczej, płatnych programistów (choćby na zlecenia) i zaplecza finansowego. Oznacza to, że OpenOffice wcale nie znajduje się w fazie "po prostu istnieje": wykonywane są aktywne czynności mające utrzymać go na powierzchni.
JIRA, GitHub i instalatory
Znalezienie sensu w projekcie OpenOffice wymaga przejrzenia trzech miejsc: listy dyskusyjnej, repozytorium kodu oraz katalogu kompilacji conocnych (czyli mówiąc po ludzku: nightly builds CI bot. To pierwsze wpędza w depresję. Widok WWW archiwum maili pokazuje, jak bardzo aktywność na "dev" spadła odkąd projekt dokonał swojej szaleńczej schizmy ponad osiem lat temu. Gdy zaś zajrzymy do środka, okaże się, że większość dyskusji dotyczy problemów w SVN, Gitem, nową Javą oraz Pythonem. Jest to naturalnie właściwy kanał komunikacji w kwestii takich właśnie problemów, ale jeżeli jest to jedyna dyskusja na grupie "dev", to coś jest nie tak.
Sprawdźmy zatem inne grupy. Może API? Nie - tu nic się nie wydarzyło od 2018 roku. Announce? To samo - w dodatku tylko jedna wiadomość w 2018 (wydanie 4.1.6). Na Users coś się dzieje, wszak to grupa wsparcia dla użytkowników, ale to jedynie pogłębia atmosferę kompletnej dezorientacji. Co ci ludzie w ogóle tam robią...? Jest jednak coś ciekawego - projektowa JIRA! To miłe zaskoczenie. JIRĘ wszak wszyscy lubią, bo nie ma nic lepszego – i wszyscy zarazem nienawidzą, bo jest często jedynie pozornie elastyczna.
W koszyku jirowych ticketów nie ma zbyt wiele, ale obecność owego narzędzia świadczy o zorganizowanym procesie rozwoju projektu. I nawet coś się tam dzieje. Do issues są potworzone subtaski, wiele z nich ma status "w toku", martwe projekty nie wykazują takiego poziomu organizacji. Z drugiej strony jednak, zdecydowana większość wszystkich issues jest przypisana do jednej osoby... Jest nią Peter Kovacs, kierownik projektu, więc może to być jedynie artefakt biurokratyczny. Biorąc pod uwagę liczbę osób wpisanych do Komitetu OpenOffice, nie jest on jedyną osobą w projekcie.
Udało się więc znaleźć pierwsze dowody na to, że w OpenOffice ktoś pracuje, w dodatku regularnie. Co zatem dzieje się na repozytorium kodu? Szczęśliwie, AOO oferuje mirror swojego kodu i podpina commity do repozytorium na Githubie, co pozwala uniknąć konieczności nurkowania w SVN. Tutaj niespodzianka jest jeszcze większa: niemal codziennie pojawiają się nowe commity! Są one różnorakiej natury, sporo z nich to czyszczenie kodu z drobniejszych problemów, ale takie pomniejsze prace konserwacyjne przekładają się docelowo na wysoką jakość kodu, co nie zawsze się udaje w projektach rozwijanych "zwinnie". Aktywne gałęzie to obecnie AOO417 i AOO42X (a także 'trunk' czyli master).
Instalator Nightly
Powyższe oznaczenia odpowiadają wersjom OpenOffice 4.1.7 oraz 4.2. Widać dzięki temu, że mimo skromnego tempa, planowane jest kolejne, "sprzątające" wydanie z obecnej serii oraz nowa wersja 4.2. Wciąż więc są ambicje i zamiary na nowy plan wydawniczy. Tak prowadzonego projektu nie można nazwać martwym. Dla porównania, Calligra rozwija się wolniej. Na niską prędkość prac nad AOO wpływa niewątpliwie drenaż kadr, bo wszyscy programiści idą do LibreOffice, ale dłuższe przyjrzenie się poszlakom sprawia, że aż chce się wierzyć w przechwałki fundacji o wyższej jakości bazy kodowej. Stają się one o wiele mniej wyimaginowane i przesadzone, choć z biegiem lat stabilność LibreOffice wzrosła na tyle, że trudno tu o łatwy osąd.
Pozostaje więc przekonać się, jak daje sobie radę najnowsza wersja Apache OpenOffice. Odłóżmy na chwilę stabilizowaną wersję 4.2, która być może zostanie wydana w tym stuleciu i zerknijmy od razu na to, co się dzieje na masterze. Dostępny jest tylko 32-bitowy instalator, będzie musiał wystarczyć. Świeżutki "Apache_OpenOffice_4.5.0_Win_x86_install_en-US_1864263.exe" skrywa conocną kompilację o roboczym numerze wersji 4.5. Przeciwko jej uruchomieniu natychmiast protestuje SmartScreen, ze względu na zbyt niską liczbę użytkowników Windows 10, którzy kiedykolwiek uruchomili ten plik EXE (żadne zaskoczenie).
Instalator wita nas lekką wariacją na temat klasycznego i dobrze znanego niektórym logo z mewami. Od razu można sobie przypomnieć, jaki kapitał brandingu wysłano na śmietnik wskutek całej tej awantury. Wizualnie, proces instalacji nie różni się niemal niczym od instalatora LibreOffice. Różnice zaczynają się pojawiać później. Powoli staje się widoczna teleportacja dekadę wstecz: program wita nas kreatorem zadającym zbędne i niewidziane już nigdzie indziej pytania i momentami jest bardziej podobny do Office 2000, niż do LibreOffice 6.3.
Świadome ograniczenia
Interfejs zdecydowanie nie uległ żadnym modyfikacjom, na pewno nie są tu obecne opcjonalne eksperymenty ze wstążkami i inteligentnymi menu. Pakiet otwiera pliki zapisane w formacie Microsoft OOXML. Robi to nieco gorzej, niż LibreOffice. Nie pozwala też zapisać do owego formatu. Z jednej strony to dobrze: nie oszukuje użytkownika w kwestii deklarowanego wsparcia dla formatu, który jest tylko pozornie udokumentowany i w praktyce otwierany poprawnie tylko przez Microsoft Office. Z drugiej strony jest to brak względem LibreOffice, który nie tylko radzi sobie z importem OOXML lepiej, niż produkt Apache, ale i potrafi zapisywać do niego, z wersji na wersję zmniejszając ryzyko rozsypania dokumentu. Mimo to, nikomu nie polecam zapisywania jego pracy w LibreOffice do pliku DOCX czy PPTX. OpenOffice troszczy się o to za mnie, usuwając tę możliwość w całości.
No i tu właśnie jest problem. Widziałem już nieraz świeże instalacje systemów przeprowadzone przez "fachowców", zastygłych 10-15 lat temu ze swoją wiedzą i instalujących komuś OpenOffice ze względu na siłę marki. Naturalnie, można powiedzieć, że użytkownik "sam jest sobie winien" (i często padają właśnie takie słowa), ale takie myślenie jest aroganckie i toksyczne. Byłoby zdecydowanie lepiej dla wszystkich, gdyby Apache dogadało się z Document Foundation i oddało mu markę. Tylko co wtedy? LibreOffice ma zmienić nazwę, wprowadzając chaos na nowo? Być może najlepszym rozwiązaniem byłoby przemianowanie gałęzi przedłużonego wsparcia na OpenOffice, pozostając przy LO dla gałęzi "fresh"?
To wszystko już dawno przestało być takie proste. Zresztą, sprawa komplikuje się jeszcze bardziej, ponieważ prace w Apache ewidentnie nie ustały. Projekt nie jest "wystarczająco martwy", by dyskutować o jego potencjalnym zamknięciu, przejęciu lub przemianowaniu. Doprowadzono do nierozwiązywalnego impasu, działającego na nerwy purystom i wprowadzającego użytkowników w błąd.
Czy to ma jeszcze sens?
Zresztą, jest to problem tracący na znaczeniu. W ciągu ostatnich kilku lat, chmurowe pakiety Google Docs oraz Microsoft Office Online mocno dojrzały i oferują coraz więcej funkcji, z których duża część jest darmowa. W dodatku oferują wsparcie nie tylko dla formatów OOXML, ale także dla ODF. Obecnie więc chmurowe pakiety biurowe mogą się okazać wystarczające dla wielu osób niechcących wydać kilkuset złotych na Office z Redmond. W dodatku sprawiają mniej problemów z przenośnością danych. Dane też dziś przechowujemy i otwieramy w inny sposób niż te kilka lat temu...
Mimo upartego doszukiwania się zalet w pakiecie Apache OpenOffice, trudno wymyślić scenariusz, w którym byłby on lepszą rekomendacją, niż LibreOffice. Krótka wizyta na stronie not wydawniczych The Document Foundation, na przykład dla wersji 6.0 szybko pozwala odkryć funkcje, których w AOO po prostu nie ma i na których rychłą obecność nie ma co liczyć. Jeżeli ten argument jest za ciężki i ma nie mieć znaczenia dla kogoś, kto "po prostu chce sobie czasem coś napisać", to łatwiej i szybciej będzie po prostu otworzyć Google Docs.
Apache OpenOffice spełnia dziś zatem swoje zadanie, w wielu miejscach wciąż bywa wręcz nieodróżnialny od LO, ale niezbyt jest sens go używać. Łatwo też podać w wątpliwość również sens jest rozwijania, a atrofia i rozmycie marki są po prostu przykre. OpenOffice jest dostępny w naszej bazie oprogramowania, ale LibreOffice też.
Czy ktoś z Was wciąż używa OpenOffice? Podzielcie się powodami tej decyzji w komentarzach!