Czym jest wydanie w świecie portali z oprogramowaniem?
Niniejszym postem chciałbym otwarcie zaprotestować przeciwko krzywdzącym komentarzom, jakie notorycznie pojawiają się pod newsami na temat nowych wersji przeglądarki Firefox czy na przykład, tak jak dzisiaj, Thunderbirda. Te komentarze krzyczą: wprowadzacie czytelników w błąd, to nie jest wersja stabilna, to beta!. Wygląda jednak na to, że na skutek dziwnej polityki wydawniczej Mozilli temat będzie wałkowany za każdym razem od nowa, nie łudzę się że mój wpis cokolwiek tutaj zmieni. Niemniej w ten sposób mam nadzieję raz na zawsze wyjaśnić wszelkie wątpliwości osobom zainteresowanym tym tematem.
Aktywni w społeczności Firefoksa czy też po prostu „siedzący w temacie” dostrzegą, że tytuł tego wpisu to parafraza tytułu innego artykułu opublikowanego na blogu – nie naszym jednak, a na blogu Zbyszka Branieckiego, jednej z najważniejszych osób w Polsce odpowiedzialnych za Firefoksa. Swego czasu tłumaczył on, jak to jest, że Mozilla codziennie publikuje na swoich serwerach wersje nightly, że potem te wersje stają się kandydatami do bet, a te bety stają się kandydatami do wydania finalnego, by wreszcie ogłosić to finalne wydanie. Jest to bardzo dobra lektura, którą należy przeczytać i zrozumieć przed jakąkolwiek dalsza dyskusją. Dla uproszczenia będziemy się dzisiaj zajmować jedynie stabilnymi wersjami Firefoksa, bo takie interesują wszystkich najbardziej. Z tego punktu widzenia istotny jest fakt, że Mozilla na swoich serwerach FTP posiada katalog „releases” (ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases), w którym znajdują się tzw. wydania – wersje skierowane do odbiorców i do mediów, jak pisze na blogu Zbyszek Braniecki. Są to zarówno oficjalne kompilacje beta, jak i oficjalne stabilne wydania. Żadne inne wersje, w tym wersje nightly lub inne niepewne buildy nie mają prawa znaleźć się w tym katalogu. O to przynajmniej powinna dbać Mozilla. Uprzedzając złośliwości, zdaję sobię sprawę, że na wspomnianym blogu opisywana jest afera również na naszym serwisie sprzed wielu lat. Po pierwsze jednak dotyczyła wersji beta, a nie stabilnej, po drugie zaś – cóż, przez wiele lat i wiele Firefoksów wiele się też nauczyliśmy ;)
Scenariusz opisywanego przeze mnie problemu, powtarzanego przy okazji każdego wydania, jest bardzo prosty. Mozilla na kilka dni przed premierą stabilnego Firefoksa umieszcza na swoich publicznych serwerach FTP w katalogu „releases” plik instalacyjny opatrzony najnowszym numerkiem wersji, bez żadnych dopisków „beta” czy „rc”. Po jego instalacji przeglądarka nosi wszelkie znamiona wersji stabilnej. Abstrahując od tego, czym jest „wydanie” w świecie Wolnego Oprogramowania, publiczne udostępnienie programu na serwerach producenta w miejscu przeznaczonym dla wersji stabilnych jest „wydaniem” w świecie portali z oprogramowaniem takich jak dobreprogramy. Zadaniem tych portali jest poinformować o gotowym oprogramowaniu jak najszybciej swoich czytelników, by każdy mógł się nim szybko cieszyć na swoim komputerze. Wracamy do naszego scenariusza. Kilka dni później Mozilla oficjalnie ogłasza to wydanie (czyli następuje tak zwana premiera z Wielką Pompą), ale pobieramy ten sam plik instalacyjny z tego samego adresu. Sumy kontrolne pliku pobranego „przed” i „po” zgadzają się. Rozpoczynają się automatyczne aktualizacje i świętowanie.
Co ciekawe, Mozilla umieszcza w tym samym katalogu plik index.html, w którym informuje, że Firefox X nie jest jeszcze gotowy i że powinniśmy pobrać ostatnią betę. To jest jednak tylko zasłona dymna. Po pierwsze, Firefox jest przecież gotowy, bo został umieszczony na serwerze w odpowiednim katalogu w gałęzi „releases”, po drugie – i to jest najciekawsze – na kilka godzin po oficjalnej premierze Firefoksa 6 i rozesłaniu informacji prasowych do mediów ten sam plik index.html nadal wisi na serwerze :) To jak, kiedy w końcu będzie można pobierać?
Po instalacji takiego stabilnego, ale jeszcze nieoficjalnego Firefoksa wyświetla się strona z wielką informacją: „pracujesz na wersji beta”. Oczywiście, a jaka inna strona ma się wyświetlać? Zauważcie, że ta strona to po prostu wynik wywołania adresu URL strony poinstalacyjnej. Mozilla zmienia zawartość tej strony w dniu oficjalnej premiery razem z linkami do pobrania na głównej stronie Firefoksa. Otwórzcie sobie tę stronę w Chrome albo w Internet Explorerze, a dowiecie się, że Wasz Firefox jest aktualny :) Kto zgadnie, co się stanie, gdy otworzycie ją w nieaktualnym Firefoksie?
Najcięższy zarzut dotyczy „wprowadzania w błąd” naszych czytelników poprzez informowanie o takich wersjach przed oficjalną premierą. OK, zgadzam się, że Mozilla nie „wydała” (w ich rozumieniu) jeszcze Firefoksa, więc jakby coś poszło nie tak, to mogą podmienić plik na inny, zamieść sprawę pod dywan i z szyderczym uśmiechem stwierdzić: „No przecież jeszcze niczego nie wydaliśmy!”. Spójrzmy na to jednak z innej strony. Moim zdaniem jeśli Mozilla faktycznie chciałaby coś jeszcze potestować, to mają wiele możliwości innych niż publikacja finalnej wersji w miejscu docelowym dla finalnych wersji (i w ten sposób wprowadzanie użytkowników w błąd!). Mogą wydać release candidate, który po pomyślnych testach oznaczaliby jako wersję finalną. Nikt nie odważyłby się takiego release candidate „sprzedać” swoim czytelnikom jako wersji stabilnej – wystarczy, że wrzucaliby go do katalogu z jakimś dopiskiem typu rc, a pliku nie trzeba by nawet później rekompliować, tylko zmienić nazwę folderu. Mogliby też zwyczajnie ukryć folder „releases” z testowanym wydaniem i „odkryć” go wraz z premierą. Nie widzę technicznych przeciwskazań. Z jakiegoś powodu jednak wolą wywołać zamieszanie, którego ponoć tak starają się na każdym kroku uniknąć i opublikować („wydać”, tym razem w rozumieniu serwisów technologicznych) Firefoksa tak jak czynią to do tej pory. Wszystkie szanujące się serwisy na świecie, w tym oczywiście dobreprogramy, informują o tych wersjach jako stabilnych i choćby Mozilla stanęła na uszach, to nadal tak będzie. Wyobraźcie sobie, jakie dopiero byłoby zamieszanie, gdyby faktycznie taki build został w ostatniej chwili zmieniony. Nieodpowiedzialne jest więc takie testowanie na żywym organiźmie, a nie informowanie o udostępnieniu stabilnej wersji, która z jakiegoś niewyjaśnionego powodu premierę będzie miała dopiero za trzy dni... Taka polityka wydawnicza ma jeszcze z punktu widzenia Mozilli jedną wadę. W dniu oficjalnej premiery nikt już o nowym Firefoksie nie pisze, bo wszyscy zrobili to kilka dni wcześniej. Agencje PR na całym świecie reprezentujące Mozillę wysyłają w pocie czoła informacje prasowe, które zawsze przyjmowane są z uśmiechem.
Nie używam Firefoksa, więc patrzę na to chłodno. Nie chcę też by to co tu napisałem było utożsamiane z jakimś oficjalnym stanowiskiem naszej redakcji – to tylko prosty zbiór moich osobistych przemyśleń. Uważam, że Mozilla, jeśli ma do kogokolwiek pretensje, powinna mieć je do siebie i zamiast narzekać na media, które przedwcześnie (ich zdaniem) informują o wydaniu Firefoksa, musi po prostu zmienić swoją politykę wydawniczą i publikować pliki oznaczane jako finalne dopiero wtedy, kiedy będzie pewna, że są finalne. Jeśli ktoś wie, dlaczego tego nie robi i dlaczego nie może przy tym skorzystać z propozycji, jakie przedstawiłem powyżej albo wymyślić coś lepszego, to bardzo chętnie posłucham – liczę na merytoryczną dyskusję. Szkoda tylko, że nadal pod newsami o Firefoksach będa pojawiać się komentarze „to jest beta, wasza wiarygodność leży na całej linii!”, by po kilku dniach okazało się, że sumy kontrolne naszej „niby-bety” i oficjalnego „wydania” zgadzają się. Oczywiście wtedy już nikt nie zajrzy do komentowanego newsa, który do tego czasu spadnie na drugą stronę, a już na pewno nie będzie mu się chciało przekopywać przez setki komentarzy takich jak powyższy.