poniedziałek, 21 lutego 2011

Telepathy KDE - już niedługo

Jakiś czas temu przedstawiłem wstępne założenia projektu mającego umożliwić działanie Telepathy w środowisku KDE SC. Telepathy budzi duże kontrowersje głównie za sprawą kiepskiego, moim zdaniem, przyjęcia w GNOME. W KDE SC możemy jednak mieć do czynienia ze znaczną poprawą jakości tego programu właśnie za sprawą lepszego GUI do obsługi całego systemu Telepathy.


Osobom przyzwyczajonym do standardowych komunikatorów trudno pojąć ideę działania Telepathy i często nie widzą potrzeby jej stosowania oraz usuwania ich ulubionych programów. Telepathy to jednak krok dalej niż zwykły komunikator, to rozszerzenie idei multikomunikatorów i dodania nowych funkcji. To także rozproszenie funkcji, które posiada jeden program na inne i uniknięcia w ten sposób używania kilku narzędzi do jednego celu. Jednocześnie można dzięki niej uniknąć budowania jednego monolitycznego programu, który ciągle musiałby być zaopatrywany w nowe funkcje i w ten sposób coraz bardziej tyć.

Nie używałem Telepathy w środowisku GNOME. Tu podobno nie zyskał sympatii użytkowników. Problemem był znacznie zubożony w funkcje program Empathy, który miał być graficznym frontendem dla listy kontaktów i oknem rozmowy dla Telepathy. Użytkownicy i tak instalowali z powrotem Pidgina, który był bogaty w dodatki i posiadał bardziej czytelną listę (funkcja avatarów). Rezygnacja z Empathy sprawiała, że także nowa funkcja apletu zaznaczającego nasz status obecności stawała się bezużyteczna. Dodatkowo funkcja pozwalająca innym programom korzystanie z zalet komunikacji także nie zyskała na popularności.


Nie używałem Telepathy w GNOME ale za to używałem jej w Nokii N900. Tu na bazie Maemo możliwość korzystania z większości protokołów na bazie jednej listy kontaktów jest niesamowitą zaletą. Zaletę stanowi też przeglądanie na jednym ekranie historii SMSów z jakąś osobą i jednocześnie chatu przez Skype itp. Użytkownik nie zastanawia się wtedy jakiego programu ma używać bo w ramach jednego narzędzia możliwa jest po prostu zmiana tylko rodzaju protokołu z jakiego chcemy korzystać. I to właśnie na urządzeniach mobilnych Telepathy zyskuje najwięcej.

W przypadku wersji desktopowych także możemy skorzystać z wielu funkcji Telepathy. Tu właśnie odzywa się jej rozproszona struktura. Autor gry może więc wykorzystać listę naszych kontaktów i okno rozmowy do stworzenia możliwości czatu online w rozgrywce internetowej bez potrzeby pisania dodatkowego programu. Gra dostępna więc na obu pulpitach zyska komunikację pomiędzy nimi za pomocą wspólnego narzędzia dostępnego z poziomu systemu. Kluczowym elementem staje się więc dopracowanie obsługi wszystkich funkcji protokołów. Potem wystarczy, że użytkownik doda dany protokół do zapisanego już kontaktu i zyskuje możliwość komunikacji właśnie z tą osobą.


Jak widać Telepathy nie rezygnuje z tego co już wcześniej mieliśmy dostępne za pomocą multikomunikatora. Jednak dzięki swojej budowie pozwala na znacznie więcej. Czy będzie jednak w ostateczności spełniać swoje podstawowe zadanie będziemy mogli się przekonać jeśli programiści tworzący inne programy skorzystają z zaproponowanej przez twórców nowej drogi rozwoju i zaimplementują funkcje Telepathy w swoich programach. Jak pisałem wcześniej paru z nich podjęła już się tego zadania. Oczywiście bez tego użytkownik nie zauważy w ogóle różnicy pomiędzy Telepathy, a standardowym multikomunikatorem.

Deweloperzy Telepathy KDE postanowili nie popełnić błędu poprzedników i narzędzia obsługujące program, będą zaopatrzone we wszystkie cechy z jakich mogliśmy korzystać w Kopete. Podobne okno konfiguracji, możliwość dodawania awatarów, zmiana tematów okna rozmowy sprawi, że użytkownicy w ogóle nie zauważą braku natywnego komunikatora w KDE SC. W tej chwili główny nacisk położony jest na dopracowanie obsługi wszystkich dostępnych protokołów. Jak widać na zamieszczonej liście liczba obsługiwanych protokołów i wykorzystywanych ich funkcji jest już teraz znacznie większa niż w Kopete.


Niespodziewanie ma też zostać załatwiona kwestia wykorzystania GStreamera, który w międzyczasie doczekał się swojej wersji Qt i przepisaniu bibliotek w C++. GStreamer był największą bolączką niezgody w Telepathy, przez którą projekt nie mógł trafić do głównej linii rozwojowej KDE. Niedawno otrzymaliśmy jednak pierwszą wersje stabilną QtGstreamera, która nie spełnia jeszcze wszystkich możliwości oryginału ale wystarcza na obsługę rozmów audio/video w Telepathy KDE. QtGstreamer stał się także częścią innego programu KDE - Kamoso służącego do zgrywania obrazu i dźwięku z kamerek internetowych. Ponadto znalazł się także w sferze zainteresowań twórców MeeGo, jak więc widać "potrzeba jest matką wynalazków".

Droga Telepathy do KDE nie była wiec krótka. Po porzuceniu projektu Decibel i całkowitej przebudowie koncepcji jest więc szansa, że Telepathy trafi do KDE SC już w najbliższym wydaniu, czyli 4.7. Główne założenia projektu są już spełnione, a przeszkody załatane. Pozostaje więc tylko dopracowanie szczegółów. O tym czy zobaczymy Telepathy już w lipcu będziemy mogli się dopiero przekonać po ogłoszeniu planu rozwoju na następne pół roku, co mam nadzieję nastąpi już niedługo.

Jestem wielkim fanem tego rozwiązania. Uważam, że może w przyszłości stanowić jeden z filarów KDE. Także dla Linuksa jest to duży krok ku oryginalności. Jest to rezygnacja z koncepcji systemu służącego tylko do uruchamiania programów. Twórcy dążą do jak największej integracji środowiska z programami. Ma to zlikwidować różnice występujące pomiędzy dystrybucjami i skupić się na rozwoju tego co jest najbardziej istotne, czyli dodawanie nowych funkcji i ich integrację z tymi, które użytkownik już zna. Telepathy obok Bretzn mogą być tymi jaskółkami, które oznaczają nową jakość dla Linuksa. Jest to także krok w przód w kwestii migracji z desktopów na urządzenia mobilne co zdaje się być nieuchronne zważywszy na rosnącą popularność tabletów i smartfonów.

Więcej o Telepathy KDE:

http://dot.kde.org/2010/10/17/kde-telepathy-sprint
http://www.sharpley.org.uk/
http://gkiagia.wordpress.com/