Firefox 4 i nowsze#

Podstawy#

22 marca 2011 wydany został Firefox 4.0 (skondensowany opis poszczególnych wersji znajduje się na Wiki). Wersja ta wprowadza bardzo wiele zmian, począwszy od nowego silnika renderującego strony, nowego silnika JavaScript po całkowicie przebudowany interfejs dodatków. Wygląd przeglądarki jest bardzo minimalistyczny, zrezygnowano np. z Paska stanu, przeniesiono karty nad Pasek adresu, przebudowano menedżera dodatków i wiele więcej. Wszystko po to, by w jak największym stopniu wykorzystać możliwości HTML5, CSS oraz nowego API dla JavaScriptu.

Obecnie Firefox, Chrome, Opera i Internet Explorer wyglądają bardzo podobnie - postawiono na jak największą przestrzeń roboczą interfejsu przeglądarki eliminując wszystkie zbędne przyciski i dodatkowe paski.

Firefox 4 - nowy interfejs aplikacji

Rysunek. Firefox 4 - nowy interfejs aplikacji

Oczywiście producenci przeglądarki zaczęli reklamować swój produkt jako najlepszy, najszybszy, no po prostu cudo. Postanowiłem przetestować nowe dzieło pod kątem moich skryptów.

Testy#

Pierwsze na co należy zwrócić uwagę w moim wywodzie to platforma testowa:

Nie ma się co oszukiwać, konstrukcja jednordzeniowa, mało RAM-u, system leciwy, ogólnie komputer z zeszłej epoki. Oczywiście taka konfiguracja ma też swoje plusy, nie ma miejsca na pisanie "badziewnego kodu", wszystko musi być bardzo zoptymalizowane (ma to szczególne znaczenie w przypadku JavaScript).

Kolejna wada to brak akceleracji przeglądarki po stronie karty graficznej. Najnowsze browsery (w tym Firefox 4) został zaopatrzony w taki mechanizm. Niestety, pod Windows XP jest on okrojony, w dodatku działa tylko na nowszych grafikach (moja nie dała rady). Szkoda, bo wsparcie od GPU daje solidnego kopa innym programom, w przeglądarkach internetowych może być podobnie. Dotyczy to głównie Firefoksa, dla niektórych osób jego "mułowatość" jest dużym problemem.

Co mogę powiedzieć po wykonaniu testów. Czwarty Lisek na starych maszynach nie robi żadnego wrażenia. Wcale nie działa szybciej, żwawiej (mam tu na myśli pracę skryptów na wielu kartach), czasami odnoszę wrażenie, że wszystko pracuje wolniej niż w wersji 3.6.x. W dodatku dochodzą niewygodne zmiany w interfejsie (np. brak Paska stanu), trzeba trochę pokombinować by całość przywrócić do starszego wyglądu.

Najważniejsza wada na którą zwróciłem uwagę to problemy ze środowiskiem skryptowym. Niektóre podstawowe polecenia np. alert psują wykonywanie timerów. Nie wiem jak można wypuścić przeglądarkę z tak poważnym błędem.

Kolejny minus to brak kompatybilności z CookiePie. Niestety, dodatek nie jest już rozwijany, dlatego nie ma co czekać na jego aktualizację pod najnowsze wersje przeglądarki. Jeśli ktoś czuje się na siłach (potrafi pisać dodatki do Mozilli) może zmierzyć się z problemem.

Na dzień dzisiejszy (biorąc pod uwagę powyższe spostrzeżenia i problemy) nie zamierzam przystosowywać moich skryptów do nowych wydań Firefoksa. Korzyści są wątpliwe, szkoda zachodu. Oczywiście do normalnej pracy warto zainstalować najnowszego Liska, ale w przypadku The Crims polecam jednak granie na wersji z gałęzi 3.6.x.

Kolejne wersje#

Po udostępnieniu 4 wersji przeglądarki Mozilla postanowiła zmienić cykl wydawniczy produktu. Całość bliźniaczo przypomina mechanizmy z Chrome. Co 6 tygodni dostajemy nowe wersje, przez co już nie musimy czekać kilkunastu miesięcy na lepszy produkt. Mamy kilka gałęzi programu:

Najwięcej korzyści z nowego cyklu odczują zwykli użytkownicy, w jak najkrótszym czasie dostają aktualny program, dostosowany do realiów szybo rozwijającego się Internetu. Gorzej z administratorami, którzy mają pod opieką dziesiątki (a nawet setki maszyn), nowe wersje co kilka tygodni stają się problematyczne.

Wracając do tematu, skrypty testuję zawsze na najnowszych Nightly. W dniu 27.07.2011 było to wydanie 8.0a1. Oczywiście miało być szybciej, brać mniej RAM-u itp. zapewnienia deweloperów. Nie bardzo odczuwam tę szybkość, praca na wielu kartach (powyżej 10) szału nie robi. Na uwagę zasługują tylko dwie kwestie:

Przyszłość#

Zobaczymy co przyniesie. Po zmianie maszyny na coś aktualnego (4 rdzenie, 8 GB RAM-u, grafika zgodna z DirectX 11, dysk SSD, Windows 7) wybadam jak najnowszy Firefox się sprawuje. Możliwe, że przy nowszych podzespołach aktualne wydanie Mozilli rozwinie skrzydła - byłoby miło.

Co do innych browserów sytuacja wygląda następująco. Teoretycznie skrypty można przepisać i dostosować do każdej przeglądarki. Niestety, to właśnie Firefox ma najlepsze środowisko do tworzenia dodatków, przez co można w nim zdziałać najwięcej. Rozszerzenia spod Liska są dopracowane i najwygodniejsze w użytkowaniu. Skrypty przeniesione do innych środowisk mogą mieć ograniczoną funkcjonalność. Dlatego wolę poświęcić nieco szybkości (Chrome/Opera) na rzecz funkcjonalności (Firefox). Przy odrobinie wysiłku (optymalizacja środowiska pracy) całość działa z zadowalającym rezultatem. Piszę to z perspektywy posiadacza komputera, który już za kilka chwil wyląduje na złomie.

Tyle jeśli chodzi o potyczki z nowymi przeglądarkami. Nie zawsze nowsze okazuje się lepsze. W przypadku skryptów i pracy na wielu kartach pozostaje przy starym, sprawdzonym rozwiązaniu.

Testy - uzupełnienie#

Minęło trochę czasu od powstania ostatniego testu wydajności. W chwili obecnej zaszło sporo zmian. Najważniejsze to wymiana platformy na której pracuję. Dopiero obecny komputer pozwala rozwinąć skrzydła.

Zanim przejdę do opisu najnowszego Liska, najpierw wypadałoby powiedzieć coś o pracy wersji 3.6.x na nowej maszynie. Testy trwały długo (2-3 edycje w grze), nie miałem czasu przenosić wszystkich dodatków od razu (ponad 40), dlatego z otrzymanych wyników można wysnuć konkretne wnioski.

Każda kolejna wersja przeglądarki potrzebuje do komfortowej pracy więcej pamięci RAM. Dotyczy to wszystkich przeglądarek dostępnych na rynku. Z moich obserwacji wynika, że na maszynie z 512 MB RAM najżwawiej chodził IE6 - relikt przeszłości, ale to właśnie ta przeglądarka pozwalała uruchomić na raz masę kont (w nowych oknach) pozwalając w tym samym czasie robić inne rzeczy. W przypadku innych browserów nie było tak różowo. Nawet 10 aktywnych kont powodowało przymulanie komputera. Po wykonaniu skrupulatnej optymalizacji dało się z tym żyć, ale robienie czegoś innego na komputerze (poza graniem w TC) było problematyczne.

Wąskim gardłem w moim przypadku była niewielka ilość pamięci RAM oraz procesor jednordzeniowy. Komputer tak stary, że miał prawo dostawać zadyszki. Pomimo takich ograniczeń byłem w stanie samodzielnie robić skoki grupowe na 10-14 kontach. Jeśli ktoś posiada podobny sprzęt jak mój leciwy Sempron to powinien go wymienić. Oczywiście nie trzeba wydawać majątku na nową maszynę, wystarczy coś dwurdzeniowego z 4 GB RAM-u na pokładzie. Taka konfiguracja zapewnia komfortową rozgrywkę z jednoczesnym robieniem innych czynności (oglądanie filmów, praca z innymi programami, komunikacja itp.).

Po wymianie sprzętu dalej przeprowadzałem testy na Firefoksie z gałęzi 3.6.x. Dopiero teraz poczułem, co to znaczy mieć porządną maszynę. Nierzadko odpalałem po 4 przeglądarki, w każdej po 12 kont, wszędzie odpalone były skoki grupowe. Czemu tylko 4? Bo więcej nie potrzebowałem. Procesor był zajęty w 10%, RAM-u nigdy nie zabrakło. Czasami w jednej przeglądarce odpalałem 50 kont ze skokami pojedynczymi. Tak, wcale nie żartuję, było ich aż tyle. W tym samym czasie mogłem oglądać film, słuchać muzyki, gadać z osobami na czatach, odpalać wirtualne maszyny itd. Nigdy nie doświadczyłem zamulenia systemu, mocy było aż nadto.

Przyszedł wreszcie ten moment, kiedy postanowiłem przenieść skrypty pod aktualne wydanie Firefoksa. Oczywiście już wcześniej je testowałem na wersjach nightly, ale sprawdzanie trwało zazwyczaj kilka minut. Obecnie postawiłem nowego Liska wraz ze wszystkimi dodatkami, które stosowałem w poprzedniej wersji, to też mogłem spokojnie skupić się na dostosowaniu skryptów. Co do wydajności ciężko mi się wypowiedzieć. Maszyna jest tak mocna, że chyba 50 programów odpalonych na raz mogłoby ją zamulić (chociaż wątpię). Co do samego Firefoksa, jak wspomniałem na początku, jest szybszy pod względem renderu strony, ma szybszy silnik JS, szybciej się uruchamia i zamyka. Najwyższy czas, by użytkownicy moich skryptów wreszcie pozostawili wersję przeglądarki 3.6.x i przesiedli się na coś aktualnego.

Nowy Firefox zawiera kilka zmian w samym interfejsie, dlatego przygotowałem specjalny dział, w którym opiszę najważniejsze różnice w porównaniu z wersją 3.6.x. Warto się z nim skrupulatnie zapoznać, niektóre nowości wprowadzone w przeglądarce są denerwujące, kilka tricków i całość działa po staremu.

Pasek społecznościowy

SPIS TREŚCI AKTUALNEJ STRONY

Firefox 4 i nowsze (H1) Podstawy (H2) Testy (H3) Kolejne wersje (H3) Przyszłość (H3) Testy - uzupełnienie (H3)