Przeglądarka internetowa to najważniejszy program uruchamiany na nowoczesnym systemie operacyjnym. To narzędzie, bez którego żyć już nie można, a jeśli można, to co to byłoby za życie? Odeszły już do lamusa IBrowse, AWeb, Voyager, a nawet Sputnik. Od dłuższego czasu na MorphOS-ie króluje niepodzielnie OWB (a właściwie Odyssey Web Browser, bo taką nazwę w końcu przyjął ze względu na dalekie różnice z OWB od Sand-Labs, na bazie którego powstał pierwszy port), który wszedł w skład systemu jako domyślna przeglądarka www. O sukcesie programu zdecydowało kilka czynników: zastosowanie silnika renderującego WebKit, możliwości programu jako przeglądarki czy chociażby samo nazwisko autora - Fabien Coeurjoly (znany również z wysokiej jakości portów na MorphOS-a takich programów, jak MAME, MPlayer czy ScummVM). W tym miejscu zamiast listu pochwalnego lub laurki przejdę do opisu cech oraz walorów użytkowych programu odrzucając gdzieś na bok emocje i przyzwyczajenia. Przyjrzałem się dogłębnie temu, co oferuje program, przy pomocy którego bez strachu korzystam z Facebooka, Twittera, oglądam filmy np. na YouTube, robię przelew bankowy czy wysyłam pocztę przez GMaila.
Start
Przed uruchomieniem programu należy zapoznać się z wymaganiami - zależnie od posiadanego sprzętu mogą być skromne lub nie do przeskoczenia. Do poprawnego działania wymagany jest system MorphOS w wersji przynajmniej 2.x (choć jak zaznaczył autor w "readme" niewykluczone, że zadziała również na 1.4.x z kompilacją wersji beta MUI4 z 2007 roku) oraz 45 MB wolnej pamięci RAM (do samego uruchomienia przeglądarki). Pierwsze uruchomienie Odyssey rozpoczyna od indeksowania czcionek TrueType dostępnych w systemie, które to czcionki będą mogły być wykorzystywane do wyświetlania tekstu na stronach www (domyślnie sprawdzane są ścieżki z partycji systemowej). Autor zaleca zaopatrzenie się w czcionki Microsoftu, które, w porównaniu z tymi domyślnie dostępnymi w MorphOS-ie, zdecydowanie lepiej nadają się do wyświetlania zawartości stron. Aby ułatwić użytkownikowi pobranie czcionek, w katalogu z programem jest dostępny skrypt z ikonką "Download fonts", po kliknięciu w którą zostaną pobrane odpowiednie czcionki.
Interfejs użytkownika
Okno programu zbudowane jest w oparciu o znane wzorce użytkowe przeglądarek www - nie ma tu żadnej rewolucji w stosunku do znanych interfejsów z popularnych przeglądarek, zarówno amigowych jak i innych systemów. Paskowi adresu nie brakuje podpowiadania adresów, przyciski do ulubionych stron można wrzucać do paska szybkich linków na zasadzie "przeciągnij i upuść", jest pasek wyszukiwarek, możliwość dodania linków do ulubionych. Odyssey nie jest również obce przeglądanie stron w kartach czy wygodne wyszukiwanie tekstu w treści. Istotną cechą jest możliwość włączenia lub wyłączenia paneli i belek z okna programu, przez co łatwiej dostosować wygląd do własnych upodobań. Tryb widoku przeglądarki można również przełączyć na pełny ekran, co może przydać się do przeglądania niektórych dokumentów, stron czy wyświetlania filmików. Menu kontekstowe dla tekstu, odnośników i obrazków zawierają niezbędne opcje ułatwiające podejmowanie typowych akcji w przeglądarce. Program umożliwia też dowolne skalowanie treści strony - przybliżanie i oddalanie, czyli nic nowego dla przeciętnego zjadacza chleba, ale dziesiątki tego typu szczegółów w interfejsie użytkownika OWB posiada i to czyni ten program pełnowartościową przeglądarką.
W OWB niewątpliwie jest kilka zapożyczeń ze standardów w GUI z przetartych szlaków z innych platform, ale również i z amigowych przeglądarek. Niewątpliwie inspiracją dla autora było okno statusu pobieranych/pobranych plików. Zwykle, gdy korzystałem z popularnych przeglądarek na innych systemach, brakowało mi takiego okna do podejrzenia pobieranych plików, jakie ma IBrowse. Niemal identyczne okno znalazło się również w OWB i chwała za to autorowi, że nie starał się podążać inną drogą. Domyślnie program pracuje w trybie przeglądania stron w kartach (czy jak to niektórzy mylnie mówią zakładkach), co również jest aktualnie standardem w świecie przeglądarek, ale ta cecha również była od dawien dawna dostępna domyślnie w IBrowse (w dawnych czasach karty znane były jedynie użytkownikom Opery), a później w Sputniku, więc nie jest to dla użytkowników żadna nowość, aczkolwiek warto podkreślić, że nie wszystkie dobre wzorce pojawiają się nagle jako jedynie słuszne - zwyczajnie jest to element wygody użytkowania. Dzisiaj nikt nie wyobraża sobie pracy tylko w jednej karcie lub na wielu oknach przeglądarki. Karty obsługują oczywiście akcje "przeciągnij i upuść". Przy okazji należy dodać, że program posiada również obsługę przywracania sesji (istotne gdyby komuś wyłączyli prąd lub gdyby program się zawiesił - wówczas istnieje możliwość ponownego otwarcia ostatnio otwartych kart). Warto zaznaczyć, że Odyssey Web Browser wpisuje się raczej w trend minimalistycznego interfejsu, który udostępnia użytkownikowi domyślnie niezbędne opcje nawigacyjne i, co za tym idzie, zostawia więcej przestrzeni w oknie programu na wyświetlanie strony WWW.
Przeglądanie www
Pamiętam, że gdy pojawiła się pierwsza publiczna wersja przeglądarki Google Chrome, w ramach promocji przedstawiono komiks, w którym w kolejnych ilustracjach wymieniano cechy, jakimi powinna się charakteryzować dobra przeglądarka www. Była tam mowa o tym, że przeglądarka powinna być przede wszystkim stabilna, szybka i bezpieczna. W odniesieniu do Odyssey Web Browser każdą z tych właściwości można przypisać różne oceny, choć niestety nie będą one najwyższe.
Stabilność
Ogólne wrażenie z bezawaryjnej pracy jest dobre. Jednak należy mieć na uwadze, że przy dłuższym (kilka godzin lub dłużej), intensywnym korzystaniu z przeglądarki zdarzyć się może, że program nie będzie mógł zaalokować dla silnika renderującego (WebKit) pamięci, co może skutkować wyświetleniem się komunikatu ostrzegawczego (z opcjami umożliwiającymi wyjście z programu lub próbę ponownej alokacji) lub zawieszeniem się aplikacji. Na stabilność może wpływać negatywnie włączenie wtyczki flash lub konstrukcja strony, którą odwiedziliśmy. Co ciekawe, nawet gdy program zawiesi się, to jego zamknięcie zwykle nie sieje spustoszenia w systemie i można go odpalić kolejny raz (niestety zawieszony program dalej będzie zajmował pamięć systemową) - mimo wszystko trudno to jednak uznać za zaletę. Dla lubiących porównania, IBrowse w tej kwestii był jednak o wiele mniej stabilnym programem - zarówno na AmigaOS 3.x jak i 4.x i MorphOS-ie, ale trudno brać go jako punkt odniesienia, bo jest to program z innej epoki. Na plus dla stabilności można zaliczyć na pewno znaną z IBrowse możliwość przerwania skryptów Javascript, które zapętliły się lub zbyt długo działają wpływając na brak możliwości obsługi strony (w Google Chrome czy produktach fundacji Mozilla podobnej funkcjonalności nie widziałem, a tam też przydałaby się w niektórych przypadkach).
Obsługa dzisiejszych standardów to istotna cecha przeglądarki, która zmotywowała niewątpliwie autora Odyssey do stworzenia programu. Dlatego warto wspomnieć raz jeszcze o silniku renderującym WebKit, który za sprawą firmy Apple Inc. powstał jako rozwinięcie biblioteki KHTML (z KDE) dla Safari w systemie OSX (swoją drogą dzięki temu, że Apple stworzyła swoją przeglądarkę, wyrzucając z systemu Microsoftowego Internet Explorera, przyczyniła się do rozwoju otwartego oprogramowania, które w tym przypadku powstało pierwotnie dla Linuksa). Jego możliwości i obsługa nowoczesnych standardów są ogromne, a łatwość implementacji oraz dostęp do źródeł (licencje LGPL i BSD) sprawia, że nie tylko przeglądarki, takie jak Safari czy Google Chrome (choć warto wspomnieć, że Google będzie rozwijać swoją wersję silnika pod nazwą Blink), korzystają z jego możliwości (a także wsparcia programistów z Apple, jak i Google w kooperacji przy pracy nad otwartym kodem silnika), ale również programy (jak na przykład znany w naszym kraju komunikator GG). WebKit daje dostęp do obsługi najnowszych standardów HTML, CSS, DOM i JavaScript, w wielu cechach wyprzedza konkurencyjne silniki (takie jak Gecko od Mozilli), a jego powszechność i wsparcie ze strony dużych firm z branży jest korzystne również dla użytkowników systemów amigowych (dzięki temu przeglądarka może być zawsze na czasie z obsługą standardów). Co prawda, w amigowych systemach, aktualnie WebKit jest wykorzystywany jedynie w przeglądarce, ale nie można wykluczyć, że skoro mamy implementację w OWB to być może kiedyś autorzy innych programów (np. klientów poczty e-mail takich, jak YAM czy SimpleMail) skorzystają z cech silnika? Pozostaje mieć tylko taką nadzieję.
Poza silnikiem jest oczywiście cała masa innych udogodnień. Pierwszą, jaka rzuca się w oczy, jest obsługa HTML5, czyli również tagu <video> a co za tym idzie filmów z YouTube i podobnych serwisów. Nie jest już potrzebny żaden zewnętrzny program (typu Tubexx) do odpalania klipów z YT. Ciekawy pozostaje jedynie tutaj fakt, że prędkość odtwarzania filmu jest lepsza, gdy przełączy się go na pełny ekran (lub raczej okno przeglądarki). Nie jest to duża niedogodność, ale można to zaliczyć na drobny minus.
Z bardziej wizualnych elementów Odyssey radzi sobie również dobrze z obsługą grafiki przez dostępne w powstającym standardzie HTML5 elementami <canvas>, a także obsługuje grafikę wektorową SVG. Nie obsługuje, póki co, WebGL.
A co z Flashem, Java, Silverlight? Flash jest obsługiwany w ograniczonym stopniu - jest dodana eksperymentalna wtyczka bazująca na bibliotece swfdec, ale nie jest ona ani szybka, ani stabilna, ani kompatybilna z wieloma istotnymi stronami czy prezentacjami napisanymi we Flashu, nie działa również Google Street View, nie pogramy w Settlersów Online czy tym podobne produkcje... Nie ma i raczej nie będzie obsługi apletów Java jak i wtyczki Silverlight (z tej technologii sam Microsoft się wycofuje), więc z poziomu przeglądarki www póki co nie obejrzymy wielu materiałów wideo np. na stronach TVP czy Onetu.
Szybkość przeglądarki to komfort pracy. System jest szybki, więc tego samego oczekiwałbym po przeglądarce. Jak jest z OWB? Poprawnie, w miarę szybko, ale do ideału daleka droga - wyświetlanie stron mogłoby być szybsze (tutaj porównaniem może być jedynie wyświetlanie stron na innych systemach i przeglądarkach na tym samym sprzęcie). Prędkość wczytywania stron jest akceptowalna i nie przeszkadza w przeglądaniu stron www, ale w wyścigu na najszybszą przeglądarkę Odyssey jeszcze ma dużo do nadrobienia. Na pewno użytkownicy przyzwyczajeni do prędkości IBrowse (którzy używali programu na mocniejszych maszynach niż A1200 z 8 MB Fast RAM) mogą poczuć pewien dyskomfort, bo przecież strony ładowały się tam błyskawicznie szybko, a tutaj jest ze dwa razy wolniej - to dlatego, że obsługa dzisiejszych standardów wymaga od przeglądarki i, co za tym idzie, od sprzętu, na którym działa, nieco więcej zasobów, którymi dzisiejszy świat się nie przejmuje (zwłaszcza jeśli chodzi o pamięć).
Przeglądarka w codziennym użytku
Jako typowy użytkownik uzależniony od internetu zacząłem od sprawdzenia aktualności. Jako stronę domową mam ustawioną PPA.pl, nowości i komentarze przeczytane, więc idę dalej - na pierwszy ogień poszła wyszukiwarka Google. Załadowała się, ale tym razem nie potrzebuję niczego szukać, choć odruchowo wpisuję "Amiga", aby sprawdzić czy moja ulubiona strona jest na właściwym miejscu w wynikach ;). Idę dalej i sprawdzam kolejne usługi Google z jakich korzystam - czyli GMail, Google Drive, Kalendarz oraz Google+. Sprawdziłem pocztę, zaktualizowałem plan tygodnia w kalendarzu, a w arkuszu kalkulacyjnym odhaczyłem tabelę opłat za mieszkanie i media. Czas przejrzeć aktualności. Czytam nagłówki w Google News, w tle otwieram kolejne zakładki interesujących mnie wiadomości, w międzyczasie otwieram też kartę z Facebookiem, aby tam na tzw. ścianie (czy jak kto woli - tablicy) przeczytać co nowego na świecie i u lokalnych celebrytów lub znajomych. Internet zjada kolejne minuty z mojego życia, Odyssey mi w tym nie przeszkadza. Myśląc o upływającym czasie otwieram kolejne dwie karty - lokalny portal miejski, aby sprawdzić co się dookoła mnie dzieje oraz popularny serwis z hitami internetu. Nuda, nic nowego, ale w międzyczasie ktoś na Facebooku przesyła mi linka do klipu na YouTube, gdzie czym prędzej wchodzę i oglądam kolejny film ze skaczącym kotem w roli głównej. W końcu przychodzi chwila refleksji i czas zamknięcia przeglądarki, a może wcale jej nie zamykać? Przynajmniej do czasu aż się zawiesi ;)
Benchmarki
Dla fanów liczb i słupków prędkości przedstawiam pomiary za pomocą popularnych testerów przeglądarek.
============================================ RESULTS (means and 95% confidence intervals) -------------------------------------------- Total: 8847.9ms +/- 1.3% -------------------------------------------- 3d: 913.2ms +/- 3.1% cube: 268.3ms +/- 10.3% morph: 342.4ms +/- 1.0% raytrace: 302.5ms +/- 0.9% access: 1151.0ms +/- 0.4% binary-trees: 131.9ms +/- 2.7% fannkuch: 543.9ms +/- 0.3% nbody: 323.0ms +/- 0.3% nsieve: 152.2ms +/- 0.5% bitops: 1557.0ms +/- 2.4% 3bit-bits-in-byte: 200.8ms +/- 0.5% bits-in-byte: 254.4ms +/- 0.3% bitwise-and: 604.0ms +/- 3.0% nsieve-bits: 497.8ms +/- 6.9% controlflow: 176.8ms +/- 0.6% recursive: 176.8ms +/- 0.6% crypto: 579.3ms +/- 0.5% aes: 236.6ms +/- 0.3% md5: 174.9ms +/- 0.7% sha1: 167.8ms +/- 1.2% date: 516.0ms +/- 13.3% format-tofte: 276.3ms +/- 23.5% format-xparb: 239.7ms +/- 12.6% math: 989.8ms +/- 0.4% cordic: 363.7ms +/- 0.3% partial-sums: 384.6ms +/- 0.5% spectral-norm: 241.5ms +/- 1.1% regexp: 1106.4ms +/- 3.9% dna: 1106.4ms +/- 3.9% string: 1858.4ms +/- 5.5% base64: 296.8ms +/- 17.0% fasta: 399.4ms +/- 7.8% tagcloud: 387.4ms +/- 21.7% unpack-code: 480.7ms +/- 3.3% validate-input: 294.1ms +/- 22.9%
Bezpieczeństwo
Gdy mowa o bezpieczeństwie w kontekście przeglądarki www, na myśl przychodzi kilka zagadnień. Pierwsza z nich to obsługa połączeń szyfrowanych. Odyssey obsługuje takie połączenia i ufa większości wystawianych certyfikatów. Problemem są strony, które łączą się po https, a program certyfikatu nie rozpozna (czasami nie ma takiej potrzeby, jeśli użytkownik jest świadom tego, co robi), wówczas nie można wejść na taką stronę chyba, że ustawiona zostanie specjalna zmienna środowiskowa w systemie (ale jako rozwiązanie docelowe nie jest to zalecane ze względów bezpieczeństwa). W przypadku https brakuje również ikonki kłódki i czytelnej informacji na pasku adresu, że strona jest podpisana certyfikatem (kłódka została umieszczona, podobnie jak w IBrowse na dolnym pasku przeglądarki). W programie nie sposób odnaleźć (o czym mowa również w dołączonej dokumentacji) opcji do zarządzania certyfikatami, nie ma więc możliwości łatwego dodania certyfikatu SSL.
Inną kwestią, aczkolwiek w dużym stopniu powiązaną, jest informacja o stronach, które chcą wyłudzić od nas dane. Mowa o zagrożeniach typu Phishing. Odyssey nie posiada żadnego mechanizmu ostrzegającego przed tego typu stronami. To, co można było zaliczyć na minus w przypadku możliwości przeglądarki i obsługi wtyczek takich jak Flash czy Java w przypadku bezpieczeństwa jest zaletą - ich brak oraz "niszowość" systemu sprawiają, że można poczuć się trochę bezpieczniej niż na wiodących platformach.
Osobnym tematem jest ochrona rodzicielska a raczej jej brak. Założyć jednak można, że program jest używany przez świadomych użytkowników i ten temat nie jest priorytetowy. Brakuje również opcji "Do Not Track".
Rozszerzenia, dodatki
Mamy szybkość, stabilność, bezpieczeństwo i obsługę dzisiejszych standardów www. Czego jeszcze oczekujemy od przeglądarki? Na pewno różnego typu udogodnień i możliwości ustawień lub nawet rozszerzeń, aby odpowiednio skonfigurować sobie środowisko pracy. Tych ostatnich dla Odyssey raczej bym się nie spodziewał, bo przeglądarka póki co nie posiada odpowiedniego API, ale od kilku wersji istnieje obsługa skryptów użytkownika (są to skrypty w języku javascript, jakie można stosować do zmiany zachowania lub wyglądu określonych witryn), których repozytorium można znaleźć na stronie userscripts.org, a sama przeglądarka zawiera również parę przykładowych do wykorzystania.
Ciekawą opcją, znaną z innych przeglądarek, jest tryb prywatny (zwany przez niektórych "trybem porno"). Tryb ten również w OWB działa na takiej samej zasadzie - po zamknięciu okna otwartego w ów trybie cała historia i ciasteczka ustawione w tym czasie i dla tej sesji są kasowane, przez co nikt nie dojdzie w łatwy sposób jakie strony były przeglądane.
Z trybu prywatnego przejdźmy do reklam. W tym temacie również nie jest źle. Oczywiście mowa o ich blokowaniu. Co prawda ustawienia filtrów w programie nie są rozbudowane, ale są wystarczające, a obsługiwane są te same listy (tak składnia jak i dane) do blokowania reklam, co w dodatkach blokujących znanych z przeglądarek na innych platformach.
Czy Odyssey Web Browser oferuje coś dla webmasterów? Tak - jest to znany chyba ze wszystkich przeglądarek opartych na silniku WebKit dodatek WebInspector.
O czym jeszcze warto wspomnieć?
Program posiada port ARexxa, bez problemów współpracuje również z systemowym OpenURL. Odyssey posiada również m. in. opcję eksportu strony do dokumentu PDF oraz obsługę słowników językowych (choć nie udało mi się zmusić programu do poprawnego wykorzystania słownika, więc nie wiem czy w polach tekstowych podkreśla błędy). Jest również możliwość ustawienia podawania się za inną przeglądarkę (tzw. spoofing) oraz możliwość ustawienia wczytywania obrazków czy obsługi skryptów również pod konkretną witrynę. OWB posiada również przydatną właściwość zapamiętywania danych z formularzy. Wszystkich opcji nie ma sensu tutaj opisywać, ale warto wiedzieć, że jest ich niemało.
Znane problemy
Podczas testów wykryłem następujące problemy, które wynikały z działania przeglądarki po dłuższym czasie lub były widoczne od razu:
Podsumowanie
Od mojego apelu z 2005 roku wiele się zmieniło. Na pewno dzięki Sputnikowi, a później Odyssey Web Browser walory użytkowe systemu MorphOS stały się przyzwoite i jest mniej powodów do narzekań, zwłaszcza że rozwój przeglądarki nie stoi w miejscu (choć rozwija ją tylko jeden człowiek). Pozostaje życzyć autorowi wytrwałości i dalszej motywacji w ulepszaniu programu. Z mojej strony dziękuję za już i proszę o jeszcze, bo jest jeszcze wiele do zrobienia.
Przeglądarka Odyssey Web Browser została przygotowana również na inne systemy - istnieje jej wersja na AmigaOS 4.x (która bazuje na starszej wersji programu, nie posiada m. in. obsługi treści wideo) a także dla systemu AROS.
Recenzja dotyczy wersji 1.20 przeglądarki dla systemu MorphOS 3.1