Strona domowa Minia

Ascetyzm zgodny z HTML5

AQQ2

Jeszcze za czasów tworzenia kampanii WAK, spotkałem się z komunikatorem AQQ. Spłodziłem nawet niedługi tekst o nim traktujący. Moja negatywna opinia spowodowana była głównie koniecznością rejestracji konta w zamkniętej sieci oraz zupełnie nieużywalną wtyczką do obsługi XMPP (to było zanim jeszcze Marooned opublikował swoją). Gdy jednak niecały rok później Internet obiegła informacja, że Oconnel pracuje nad wersją 2.0, która ma korzystać z XMPP jako domyślnego protokołu komunikacji, zapanowała radość, euforia i odzyskanie niepodległości, połączone z oczekiwaniem pierwszej publicznej wersji, choćby beta. Nie mam zamiaru tutaj opisywać kolejnych wydarzeń towarzyszących rozwojowi AQQ2, wspomnę jeszcze o jednym fakcie: po zobaczeniu materiału wideo prezentującego którąś z wersji beta w akcji, naprawdę uwierzyłem, że komunikator ten ma potencjał odegrania roli Prometeusza wprowadzającego płomień Jabbera do życia pogrążonych w ciemnocie nieświadomości niewprawionych użytkowników Internetu. Czy stanie się tak w rzeczywistości, pokaże czas. Pomijając również wątek wielu zarzutów stawianych kierunkowi rozwoju komunikatora – kilka dni temu opublikowana została stabilna wersja, oznaczona numerkiem 2.0.1.50. Niezwłocznie więc skorzystałem z działającej kopii Windowsa w celu powierzchownego chociaż przetestowania komunikatora i wydania o nim swojej opinii.

Plik instalatora waży niecałe 4 MB, co jest niewielkim krokiem naprzód względem poprzedniej wersji AQQ, ale już zaletą w porównaniu z takim np. Spikiem, którego instalator zajmuje ponad dwa razy więcej miejsca (informacja istotna szczególnie dla posiadaczy wolnego połączenia z Internetem). Instalacja przebiega bezproblemowo i w dalszym ciągu nie wymaga ponownego uruchomienia komputera po zakończeniu.

Pierwsze uruchomienie wiąże się oczywiście ze stworzeniem profilu. Należy wybrać serwer z listy kilku popularnych w Polsce lub wpisać odpowiedni, uzupełnić pola przeznaczone na login, hasełko i – jeżeli jest to konieczne – zaznaczyć, że się nie posiada jeszcze konta; w tym ostatnim przypadku program zarejestruje odpowiednie korzystając z danych wpisanych do formularza. Po dokonaniu tych niezbędnych formalności można włączyć komunikator.

Co już na wstępie rzuca się w oczy, to interfejs. Obramowania okien rodem z Visty (można zaznaczyć w opcjach, żeby to system operacyjny przejął nad nimi kontrolę – sprzyja to integracji programu ze środowskiem graficznym) jeszcze da się przeżyć, chociaż jak dla mnie przyciski na pasku tytułowym są zdecydowanie zbyt małe. Jednak znacznie bardziej uderzyła mnie domyślna skórka, która wydała mi się okropnie przeładowana. Oczywiście był to efekt przyzwyczajenia do ascetycznego wręcz Psi, gdyż po kilku godzinach nie przeszkadzała mi tak bardzo jak na początku – właściwie w ogóle mi nie przeszkadzała. Niemniej pierwsze wrażenie program wywarł na mnie raczej negatywne. Wadą jest również, że wyświetlaniem dostępnych zasobów (trudno mi zrozumieć cel takiego zabiegu – powinny one raczej być wyświetlane, gdy dany kontakt łączy się w danej chwili z więcej niż jednego) czy avatarów liście kontaktów zajmuje się skórka, a nie jakaś opcja w konfiguracji programu.

Mówiąc o skórkach, wspomnieć trzeba o dwóch rzeczach: primo są one pisane przy pomocy HTML-a i CSS; secundo mają naprawdę wyjątkowo dużą kontrolę nad wyglądem programu.

O zaletach płynących z tego pierwszego nie muszę chyba przekonywać. Do wad jednak zaliczyć trzeba brak – przynajmniej do dnia publikacji tekstu – jakiejkolwiek dokumentacji opisującej tworzenie własnych skórek. Każda skórka składa się z hierarchii katalogów z odpowiednio nazwanymi plikami, próżno jednak szukać gdziekolwiek schematu struktury katalogów i opisu funkcji każdego z plików. Tworzenie nowej skórki musi być procesem modyfikacji jednej z już istniejących.

Jeżeli zaś o modyfikacje idzie, jak wspomniałem mogą one być bardzo zaawansowane. Nie sprawdzałem jak bardzo, jednak można nawet modyfikować fragmenty interfejsu (umiejscowienie paska narzędzi, obramowanie okna etc.), co wystarczająco świadczy o potędze możliwości. Prawdopodobnie jedynymi ograniczeniami są wyobraźnia, umiejętności i specyfikacja CSS, w której wciąż obecne są braki szczególnie wyrafinowanych funkcji. Zakładając jednak, że AQQ korzysta z silnika IE do rysowania zawartości swoich okien, również on może być pewną przeszkodą.

Zdecydowaną zaletą jest także fakt, że wybranie nowej skórki ogranicza się do rozpakowania pobranego archiwum w odpowiednim katalogu i wybraniu jej w opcjach programu – wszystko to odbywa się bez jego ponownego uruchomienia!

Wracając do domyślnych skórek: wyjątkowo do gustu nie przypadło mi kolorowanie pewnych pozycji w menu (np. Wyloguj na czerwono) oraz domyślne umieszczenie samego paska menu pod reklamą. Nie spodobało mi się jeszcze, że rozwinięcie danej pozycji na pasku menu wiąże się z kliknięciem nań – pojedyncze kliknięcie i późniejsze przesunięcie kursora myszy wydaje mi się wygodniejsze (acz może to tylko przyzwyczajenie).

Kontakty można dzielić na grupy, a każdą z nich zwinąć lub wyłączyć wyświetlanie w niej kontaktów niedostępnych. Niestety za tę drugą funkcję odpowiada tajemnicza dioda, którą należy zaświecić lub zgasić – nigdzie jednak nie znalazłem słowa wyjaśnienia co ona właściwie robi (trzeba się o tym przekonać empirycznie), co poczytuję zdecydowanie na minus. Prócz tego o ile grupy można globalnie (ro)zwinąć, tak już wyświetlanie kontaktów niedostępnych trzeba zmieniać dla każdej z osobna. Kontakty w grupach można posortować wg trzech kryteriów, których kolejność jest dowolnie ustalana przez użytkownika: stan, sieć oraz alfabet.

AQQ2 jest nie tylko komunikatorem XMPP, ale także multikomunikatorem. W związku z tym do podstawowej konfiguracji zaliczyć można podpięcie swoich kont z innych sieci komunikacyjnych. Można to zrobić na dwa sposoby: przez wtyczkę lub transport na serwerze aqq.eu (bądź dowolnym innym). Przez wtyczki do tej pory realizowane są tylko dwie, ale najważniejsze sieci – Gadu-Gadu i AQQ. Połączenie z Tlenem jest hybrydą wtyczki i natywnie obsługiwanego konta XMPP – konto Tlenu dodaje się zupełnie jak inne konto XMPP, wybierając jako serwer tlen.pl, jednak do komunikacji wykorzystywane są inne procedury (wszak Tlen w dalszym ciągu jest zmodyfikowanym Jabberem). Przy pomocy transportów dodatkowo połączyć się można z AIM, ICQ i IRC-em.

Podpięcie swojego konta z innej sieci przy pomocy wtyczki jest tak proste jak wybranie z menu Ustawienia -> Wtyczki, zaznaczenie odpowiedniej i wpisanie swojego identyfikatora i hasła. Jakkolwiek wygląda na banalne, wydaje mi się że laik komputerowy, do którego kierowany jest program, może mieć niemałe problemy ze znalezieniem tej właśnie pozycji. W skrajnym przypadku obsługę sieci GG zrealizuje przez transport (łatwiej dostępny, o czym za chwilę), co wiąże się z pewnymi ograniczeniami; szkoda natomiast korzystać z transportu mając do dyspozycji wtyczkę, która bezproblemowo radzi sobie z wysyłaniem plików i obrazów do najpopularniejszej w Polsce sieci IM. Do tego sama, zaraz po aktywowaniu, pobiera listę kontaktów z serwera; funkcja taka powoli zaczyna być standardem, ale wciąż uważam ją za niemałą zaletę.

Transport można zarejestrować na jeden z dwóch sposobów: wybierając z menu pozycję Transporty albo Przeglądarka usług. Oczywiście ta druga oferuje również inne, obecne na serwerze aqq.eu, usługi, np. wysyłanie SMS-ów za Wapstery czy PubSub. Rejestracja transportu jest równie banalna co aktywacja wtyczki, aczkolwiek poczatkujący mogą mieć z nią problemy (co zrzucam raczej na karb samych transportów i używanej przez nie terminologii, niż komunikatora). Z nieznanego powodu wyrejstrowanie transportu ukryte jest pod przyciskiem Odłącz – osobiście po jego kliknięciu spodziewałbym się wylogowania z transportu i ukrycia wszystkiego co z nim związane na rosterze. Tymczasem bezpowrotnie traci się wszystkie kontakty GG, co zdecydowanie nie jest pożądane, a bardzo dotkliwe przy braku ich kopii – czyli w większości przypadków.

AQQ2, podobnie jak jego poprzednik, jest multikomunikatorem mającym funkcję rozbudowania możliwości programu poprzez wtyczki. W standardowej dystrybucji znajdują się wspomniane dwie komunikacyjne i Zwykły kontakt, pozwalająca dodać do rostera wirtualny kontakt, czyli nieodpowiadający żadnej sieci komunikacyjnej. Taki kontakt uzupełnić można o wszystkie te informacje co normalne kontakty, czyli: imię, nazwisko, adres zamieszkania, adres e-mail, nr telefonu i masę innych. W ten sposób program stara się pełnić funkcję książki adresowej, ale wydaje mi się, że wypadłoby blado na tle dedykowanych aplikacji – ci zaś, którzy takowych nie używają, zapewne nie skorzystają również z tej możliwości w AQQ2. Stąd też nie widzę praktycznego zastosowania tej wtyczki. Na szczęście inne wtyczki są znacznie bardziej użyteczne: jest sprawdzanie poprawności pisowni, autoresponder a nawet wtyczka ułatwiająca dodawanie wpisów do swojego bloga na Jogger.pl.

Okna konfiguracyjne komunikatora są raczej ubogie w opcje, w imię prostoty obsługi. Generalnie jest to dobre posunięcie, acz odczułem brak dwóch opcji: wyłączenia lub jakiejkolwiek konfiguracji okienek wyskakujących w okolicach zasobnika systemowego (informują one o zmianie stanu osoby z listy kontaktów, wyświetlają fragment pierwszej odebranej wiadomości etc.) oraz możliwości zdefiniowania proxy do przesyłu plików, zgodnie z XEP-0065; co prawda Stoow twierdzi, że AQQ2 powinno domyślnie, w przypadku niemożności nawiązania połączenia bezpośredniego, próbować nawiązać połączenie za pośrednictwem serwera aqq.eu, jednak podczas moich testów najwidoczniej coś nie działało, gdyż ani razu nie udało mi się wysłać pliku. Skoro zaś o nich mowa, AQQ2 nie ma większych problemów z odbieraniem (również w sieci GG, o czym wspomniałem wyżej). Można również wysyłać obrazy wklejone do okna rozmowy: cały pulpit, wybrane okno albo wycinek pulpitu. Co ciekawe, nic nie stoi na przeszkodzie, by spróbować wysłać plik do osoby niedostępnej – jednak, co oczywiste, skutkuje to komunikatem o błędzie połączenia. Opcja taka powinna być w jakiś sposób uniedostępniona.

Okno rozmowy jest schludne, chociaż domyślnie raczej niewielkie. Zakładki umieszczone są pomiędzy polem do wpisywania tekstu a wiadomościami odebranymi, co mi osobiście pasuje. Przyciski w oknie rozmowy zawierają takie podstawowe funkcje jak wstawienie emotikonki czy obrazka, wysłanie pliku, dostęp do historii rozmów z daną osobą czy wyczyszczenie dotychczasowej konwersacji – słowem standard. Jego górna partia radzi użytkownika reklamą, która – o zgrozo – jest większa niż powierzchnia na nią przeznaczona. Powoduje to wyświetlanie nieestetycznych pasków przewijania zanim reklama jeszcze zostanie pobrana (co, notabene, zajmuje wyjątkowo dużo czasu). Gdy już to się stanie, pole do wpisywania treści wiadomości traci aktywność, co skutkuje próżnym klepaniem w klawiaturę.

Jak wspomniałem, i jak Bozia nakazała, AQQ archiwizuje historię rozmów. Okno historii jest dość bogate i przypomina to znane z GG – po lewej znajdują się pozycje z listy kontaktów, górną część pozostałej przestrzeni zajmuje powątkowana historia, resztę – sam zapis rozmowy. Dostępna jest również prosta wyszukiwarka, przeszukująca wszystkie rozmowy lub tylko konserwacje z wybranym kontaktem. Nie obyło się jednak bez zgrzytów – kontakty po lewej nie są w żaden sposób sortowane (lub sortowane wg jakiegoś zupełnie mi nieznanego klucza), co utrudnia znalezienie interesującej persony.

Czasami przychodzi potrzeba zmiany swojego statusu, i tutaj AQQ2 daje ciała. Nie można ustalić statusu opisowego i jednocześnie zmienić stanu – trzeba najpierw wykonać jedną czynność, następnie drugą. Nie można również z okna programu zmienić stanu dla wszystkich sieci – odpowiada za to menu dostępne po wciśnięciu PPM na ikonce w zasobniku systemowym. Nieszczególnie również spodobało mi się, że wspomniana reprezentuje stan głównego konta jabberowego – powinna raczej reprezentować stan najwyższego w hierarchii połączonego konta jabberowego.

Podczas swoich testów zwróciłem uwagę na jeszcze dwie cechy: po pierwsze AQQ2 jest wyjątkowo pamięciożerne, mianowicie tylko uruchomione (nawet nie połączone!) potrzebuje ok. 20 MB RAM-u; na szczęście podczas używania ilość ta zwiększa się nieznacznie. Po drugie otrzymuje i wysyła zdarzenia <composing>, jednak nic ponadto z nimi nie robi. Jak się dowiedziałem, AQQ2 obsługuje wyłącznie nowy XEP-0085, podczas gdy wciąż stosunkowo popularny jest porzucony już XEP-0022. Oznacza to, że ignorowanie zdarzeń <composing> wynika jedynie z ułomności mojego środowiska testowego; aczkolwiek implementacja starego XEP-a obok nowego z pewnością by nie zaszkodziła. W poczet wad zaliczyć można jeszcze rzekome wyzucie z rozmów wieloosobowych – osobiście nie testowałem, ponieważ od lat nie mam tej funkcji i na palcach jednej ręki mogę policzyć sytuacje, gdy brak ten dał się odczuć. Ale być może dla kogoś będzie to poważny zarzut.

Powyższy opis komunikatora skupia się głównie na jego wadach, co bynajmniej nie oznacza, że program pozbawiony jest zalet; prócz tego wiele z tych wad jest raczej nieuciążliwych i stanowi kwestię przyzwyczajenia. Zdaję sobie również sprawę, że – jako stary użytkownik Mirandy i Psi – mam określone wymagania wobec komunikatora, i w związku z tym trudno mi spojrzeć na całość okiem ZU, do którego jest on przecież skierowany. Stąd też, jakkolwiek dalej polecam Mirandę jako najlepszy komunikator w skali bezwzględnej, moja opinia o AQQ2 jest raczej pozytywna. Sądzę, że przy odpowiedniej promocji komunikator jest w stanie zdobyć znacznie liczniejszą rzeszę fanów niż jego poprzednik. Jeżeli ktoś używa Windowsa, polecam przynajmniej dać szansę.

Notabene nie mogę przemilczeć dwóch rzeczy. Po pierwsze droga rozwoju komunikatora, bardzo ostro krytykowana przez jego największych zwolenników. Owszem, nie sprawia ona, że można optymistycznie patrzeć w przyszłość. Mam jednak nadzieję, że Oconnel nie popełni błędu całkowitego ignorowania uwag od użytkowników. Uruchomienie systemu zgłaszania błędów pozwala przypuszczać, że nie ma takiego zamiaru.

Po drugie zaś: drodzy użytkownicy AQQ. Krytyka jest bardzo potrzebna, a rzetelna pozwala niesamowicie usprawnić program. Tylko ja proszę i radzę: pilnujcie, żeby wasze brudy i wewnętrzne konflikty pozostały między wami – wobec świata zaś ukrywajcie je tak długo, jak to tylko możliwe. Inaczej zalety programu zostaną przykryte pod grubą warstwą waszego niezadowolenia – a zapewniam was, że istnieją programy znacznie bardziej warte bojkotu niż AQQ2.