second gate studio blog

Autorem tego bloga jest zx. Na stronie zajmuję się szeroko pojętym user-experience i takoż pojętym designem. Piszę o technologii, pokazuję rzeczy zaprojektowane z wyczuciem, dbałością o szczegóły i szukam inspiracji w każdej możliwej dziedzinie. Kontakt.

Miranda-IM: mToolTip do statusów opisowych

Moja konfiguracja Mirandy nie przewiduje statusów opisowych wyświetlanych na liście kontaktów. Czasem można się nimi pobawić, ale w praktyce nie wnoszą do funkcjonalności IMów nic wartościowego. Wśród moich kontaktów znajdują się jednak osoby, których opis ma duże znaczenie i fajnie byłoby mieć możliwość łatwego podejrzenia go. Domyślnie Miranda umożliwia wyświetlenie małego okienka z opisem (prawoklik na kontakcie → Read offline/away/online message), ale do najwygodniejszych rozwiązań to na pewno nie należy.

CopyPasteTool na multischowek

Testowałem całe mnóstwo multischowków (czyli narzędzi rozszerzających możliwość kopiowania i wklejania danych między programami), jednak większość była strasznie zagmatwana, a słowa prostota chyba nie widziała na oczy. Aż do momentu w którym znalazłem CopyPasteTool pod Windows. Szybkie, małe i idealnie proste narzędzie rozszerzające możliwości standardowego kopiuj/wklej. Tak proste, że instrukcja obsługi zawiera się w powyższym obrazku.

Uruchamiamy program i od tej pory dzieje się cała magia. Możemy kopiować dane (właściwie, w tej chwili, tylko tekst) normalnie tak, jak robiliśmy to do tej pory, za pomocą kombinacji klawiszy CTRL i C. Dzięki programowi do schowka trafia nie tylko ostatnia skopiowana rzecz, ale również kilka poprzednich. Jak się do nich dostać? Wciskając standardowe CTRL i V odpowiednią ilość razy (bez puszczana CTRL). Raz – wklejamy ostatnio zapamiętane dane, dwa razy – przedostatnio, trzy – o jeden raz wcześniej itd. Żadnych zbędnych menusów ani rozwijanych list!

Opera uczy się budować markę

strona internetowa Opery

Taki wniosek nasuwa mi się po obejrzeniu materiałów powstałych wokół premiery dziesiątej wersji przeglądarki. Sama Opera wciąż jest aplikacją niszową. Głośną wśród użytkowników zaawansowanych, a jednak niezbyt popularną wśród całej reszty. Nie będę się zastanawiał dlaczego - można by wymienić dziesiątki powodów, ale bez sprawdzenia ich słuszności będą to marne spekulacje.

Ważne jest natomiast to, że twórcy Opery wyciągają wnioski i od niedawna robią co mogą, żeby zbudować markę przyjazną użytkownikowi. Starają się być nowocześni i docierać bezpośrednio do użytkowników. Podążają poniekąd drogą Apple - strona WWW jest przejrzysta i bezpośrednio mówi o tym, co ważne. Społeczność Opery gromadząca się na my.opera rośnie, a twórcy oddają do ich dyspozycji coraz więcej narzędzi. Do pracy przy wyglądzie najnowszej wersji zatrudniono Jona Hicksa, który jest znaną postacią w branży designerów (efekt końcowy zostawię bez komentarza - niektórym się podobno podoba). ;) Już nawet zmiana ikony jest zauważalnym krokiem w kierunku zdobycia większej popularności.

Wystarczy przejrzeć sposób prezentacji przeglądarki na stronie domowej Opery - to kawał dobrej, designerskiej roboty. Coś pięknego. W każdym miejscu zauważam wpływ Apple, choć fajnie, że twórcy nie idą ślepo za stylem nadgryzionego jabłka i starają się dodać coś od siebie. I to z bardzo dobrym skutkiem. Całkowicie przekonał mnie do tego poniższy film prezentujący nowości w wydanej niedawno becie Opery Mini w wersji piątej. Niby jak Apple, a jednak nie do końca (IMO filmik przebija styl Apple). Brawo Opero - marketingowo idziesz w najlepszym możliwym kierunku! A teraz błagam… dogoń konkurencję w funkcjonalności samej przeglądarki.

Coraz więcej stron mobilnych

Ostatnio spędzałem dłuższy (niż zwykle) okres bez komputera, ale z iPhonem, więc i z Internetem w kieszeni (WiFi w zasięgu oczywiście). Przeglądałem tylko kilka podstawowych stron dla zabicia czasu i zostałem cholernie zaskoczony, że spora część z nich oferuje wersje mobilną!

I tak, na mojej liście stron-zabijaczy czasu był Twitter, Facebook (z dość ubogą funkcjonalnie stroną mobilną), deviantART (genialnie dostosowuje się do iPhone), Google Reader (wygląda i zachowuje się lepiej niż wersja standardowa) i Flickr.

Taka lekka wersja to sama przyjemność korzystania. Ba! Często strony tworzone dla urządzeń przenośnych wyglądają lepiej niż wersje pełne. Trend tworzenia wersji dostosowanej do urządzeń przenośnych pewnie istnieje już jakiś czas, ale wcześniej nie miałem okazji sprawdzić na własnej skórze jakie to daje możliwości i jak ułatwia przeglądanie zasobów za pomocą mniejszych urządzeń.

Jednocześnie po przejrzeniu kilku stron oferujących taką funkcjonalność naturalne było sprawdzenie głównej Joggera, czy Wikipedii, gdzie wersji mobilnej już nie ma. Od razu da się to zauważyć i taki brak zaczyna doskwierać.

Postanowiłem więc, że od dziś wszystkie moje projekty będą oferowały możliwość przeglądania ich zasobów przez stronę dla urządzeń przenośnych. Od bloga zaczynając, na komercyjnych projektach kończąc (o ile zleceniodawca się zgodzi, nawet bez obciążania go kosztami). To po prostu jest zbyt wygodne, żeby czekać aż spopularyzuje się samo.

(Blog już jest jako-tako dostosowany (chociaż nie rozgryzłem jeszcze wszystkich dziwactw Safari), choć pełną funkcjonalność osiągnie dopiero, gdy zdecyduję się przepisać kod na nowo.)

Miranda IM: Podstawowa konfiguracja

Wśród komunikatorów dostępnych na Windows, w moim przekonaniu, najlepszym wydaje się być Miranda IM. Wśród zalet na pewno można wymienić niskie zużycie zasobów, czy coś, czym Miranda po prostu miażdży konkurencję – konfigurowalność.

Sam główny program stanowi swego rodzaju pień drzewa, jest tylko ośrodkiem dostarczającym odpowiednie narzędzia do gałęzi i zapewniającym łączność pomiędzy nimi. I – tak jak sam pień nie czyni drzewa, tak sama główna aplikacja nie ma sensu istnienia bez odpowiednich rozszerzeń. Gałęziami dla Mirandy są pluginy (wtyczki). I to właśnie wtyczki zapewniają programowi każdą pojedynczą funkcjonalność – od możliwości połączenia się z siecią Gadu-Gadu, przez wyświetlanie listy kontaktów, aż do obsługi animowanych emotikon w oknie rozmowy. Wszystkie takie pojedyncze funkcje zapewniają właśnie wtyczki.

Tak bogata możliwość rozbudowy głównego programu niesie ze sobą niestety też jedną potężną wadę – skomplikowaną konfigurację. Pierwsze zetknięcie z programem do miłych niestety nie należy. Choć autorzy próbują coś tam robić w tej sprawie, tak program przed konfiguracją nie jest przyjazny dla użytkownika praktycznie w żadnej kwestii i nie ma co mówić, że jest inaczej.

Postaram się napisać coś w rodzaju poradnika dla osób chcących zapoznać się z Mirandą i pomóc im przejść przez pierwszą konfigurację tak, aby po wykonaniu wszystkich zaleceń dało się z programem wygodnie pracować.

iPhone i GPS

Lubię mieć pod ręką dobrą mapę, bo miasta w którym mieszkam nie znam praktycznie w ogóle. Dobrej mapy jednak ciągle ze sobą nosić nie zamierzam, dlatego też rozwiązaniem wydawał się GPS wbudowany w telefon. iPhone 3G spadł mi z tym jak z nieba, jednak o wbudowanym GPSie ciągle krąży wiele mitów. To jak z tym w końcu jest? Da się używać, czy nie?

Na początku wydawało się, że wystarczy mi prosta mapa z oznaczeniem pozycji w której się znajduję. Po mieście poruszam się głównie pieszo (ew. autobusem lub rowerem), więc nie potrzebowałem nawigacji turn-by-turn. Chodziło tylko o to, żeby wiedzieć czy muszę już wysiąść z autobusu, w którą uliczkę mam wejść, żeby dostać się do WORDu, albo gdzie jest ta nowa galeria handlowa. ;) Wiadomo jednak – apetyt rośnie w miarę jedzenia.

Google Maps

iPhone posiada na starcie wbudowaną aplikację do obsługi map. Ta, mimo swojej prostoty, spisuje się całkiem nieźle. Aplikacja potrafi oznaczyć punkt w którym się znajdujemy (jeśli nie może się połączyć GPSem używa triangulacji), wyznaczyć trasę od-do czy wyświetlić zdjęcia satelitarne okolicy. Całość radzi też sobie świetnie z wyszukiwaniem miejsc i adresów.

I wszystko byłoby naprawdę bardzo fajnie, gdyby nie to, że aplikacja nie potrafi zgrywać map do pamięci! Żeby faktycznie z niej korzystać trzeba być stale podłączonym do Internetu. WiFi gdzieś tam niby się zdarza, ale w większości sytuacji (np. w takiej, w której gdzieś się zgubię), zwyczajnie nie będziemy mieli doń dostępu, a ceny połączeń przez GPRS/3G skutecznie mnie odstraszają przed używaniem map w ten sposób.

Jest jeden mały trik, który do tej pory wykorzystywałem – aplikacja posiada mały cache. Przed wyjściem z domu przeglądamy więc trasę która może nam się przydać, żeby potem móc spojrzeć na mapę. Teoretycznie zapamiętywany jest ostatnio przeglądany obszar, jednak w praktyce zdarza się, że mapa nagle zginie i zostajemy w lesie.

Maps Offline

Ten ostatni trik wykorzystać się da trochę bardziej. Powstała aplikacja, która potrafi podmienić plik z cache na dowolny, wcześniej utworzony (oczywiście po jailbreaku). Niestety aplikacja jest dość zawodna. Przede wszystkim, utworzenie pliku cache jest dość skomplikowane (specjalny, niezbyt intuicyjny i stabilny, programik), a samo podmienianie map już na telefonie nie zawsze przynosi oczekiwane rezultaty. Słowem – dużo zabawy a i tak nie wiadomo, czy wyjdzie.

xGPS

Problemem na początku była polityka Apple, które odrzucało aplikacje duplikujące funkcjonalność, którą iPhone już posiada. Czyli między innymi mapy. Potem polityka się zmieniła i miało być fajnie, bo aplikacje do nawigacji miały rosnąć jak atomowe grzyby po wojnie nuklearnej. Nie rosły. Fakt – coś tam powoli się dzieje, jednak tylko dla niektórych regionów USA. Reszta sobie czeka, bo ciągle ktoś coś zapowiada, ale efektów nie widać. Kto wie – może w końcu dostaniemy program z prawdziwego zdarzenia… kiedyś.

Póki co, na jailbreakowanym iPhone można zainstalować aplikację o nazwie xGPS. Według producentów ma to być soft do nawigacji z prawdziwego zdarzania. Na razie jest tak sobie. Wybrałem się wczoraj na przejażdżkę, żeby sprawdzić to cudo. Ale po kolei.

To, co wyróżnia xGPS, to możliwość zachowywania map i tras! Wszystko jest cały czas dostępne, niezależnie od połączenia z Internetem. Zaznaczamy obszar który chcemy mieć na telefonie, ustawiamy jak bardzo szczegółowych map nam trzeba (zoom level) i całość leci do pamięci. Można to robić zarówno z samego iPhone jak i przez program dostępny na PC, Mac i Linux. O to chodziło. Podstawowa funkcjonalność, której wymagałem w końcu dostępna.

App oferuje też nawigację turn-by-turn. Postanowiłem wypróbować, bo skoro jest, to czemu nie, prawda? Zaplanowałem trasę, zapisałem do pamięci i ruszyłem. Miły głos z syntezatora trafnie informuje mnie, że mam skręcić w lewo w ulicę Piasta. Potem kilka kolejnych uwag, łącznie z odległościami i pomocnymi wskazówkami (jeśli np. droga się rozwidla). Czasem nie sposób dosłyszeć nazwy ulicy, bo syntezator jednak używa języka angielskiego i ciężko przychodzi mu czytanie polskich wyrazów. Nie będę jednak narzekać, bo zaprowadził mnie na miejsce. To teraz inna trasa, ale tym razem sprawdzimy inne zachowanie. Ładuję nową trasę, ruszam. Syntezator mówi, żebym skręcił w prawo. Skręcam w lewo. Dowiaduję się, że źle jadę.

I teraz tak – całość potrafi przeanalizować mój błąd i obliczyć nową trasę, jednak nie potrafi zrobić tego bez połączenia z siecią. Niestety, nawigacja turn-by-turn odpada. Nie jestem pewien do czego soft potrzebuję wtedy połączenia, ale mam szczerą nadzieję, że w przyszłości da się coś z tym zrobić, bo xGPS jest cały czas aktywnie rozwijany.

Program, póki co, nie jest zbyt stabilny, nie jest specjalnie wygodny w użyciu i trochę odstaje od dopracowanych programów przeznaczonych na iPhone OS, ale to już krok w dobrym kierunku.

Podsumowując – póki co nie ma mowy o wygodnym używaniu GPSa z mapami. Na razie trzeba sobie radzić samemu, korzystając z różnych, niezbyt wygodnych metod. Jest jednak jakieś światełko w tunelu i mam nadzieję, że niedługo coś się w temacie zmieni.

Zarządzanie kontaktami na wielu platformach?

Rozglądam się wokół siebie. Po lewej leży telefon, na monitorze odpalony komunikator i program pocztowy. Wszystkie posiadają swoją bazę kontaktów. Spora część wpisów pokrywa się na wszystkich trzech "platformach". A gdyby tak móc je odpowiednio synchronizować w taki sposób, żebym nowe kontakty i ewentualne zmiany wprowadzał tylko w jednym miejscu, a wszelkie pozostałe urządzenia i programy aktualizowały swoje listy na bieżąco bez mojej ingerencji? Zachciało mi się sprawdzić, czy w tej chwili jest to możliwe bez jakiegoś specjalnego kombinowania.

Na początek musiałem wybrać sobie główną bazę danych z którą będę synchronizował całą resztę. Najbardziej oczywistym rozwiązaniem wydaje się Microsoft Exchange. Tyle, że system ten wydaje się ociężałą, przeładowaną kobyłą, w dodatku niezbyt prostą do utrzymania i – przede wszystkim – skierowaną głównie dla firm w których ktoś będzie się tym zajmował. Do tego – mimo popularności – część aplikacji nie wspiera Exchange, a jeśli wspiera to w dość ograniczony sposób.

Poza Exchange znajdzie się oczywiście jeszcze kilka podobnych systemów jak Lotus Domino Server czy Novell GroupWise, jednak to wciąż ta sama liga. Wybrałem więc Google Contacts – za lekkość i prostotę, a przede wszystkim – za popularność wśród zwykłych użytkowników. Bo taka popularność daje nadzieję na coraz lepsze wsparcie ze strony twórców oprogramowania.

Stworzyłem więc księgę kontaktów wpisując wszelkie dostępne mi dane. Pierwszy problem to brak pola na numer Gadu-Gadu czy JabberID. Nic jednak nie stoi na przeszkodzie, żeby takowe sobie dodać ręcznie, prawda?

Po niecałej godzinie przeniosłem wszystkie kontakty na serwery Google. (Tak, teraz Google wie kogo znam!) ;) Kolejny krok to synchronizacja tego wszystkiego z iPhone, Thunderbirdem i Mirandą. Z tym pierwszym miałem najmniej problemów. Google udostępnia usługę Google Sync pozwalającą synchronizować dane z rozmaitymi urządzeniami mobilnymi. Tyle, że usługa jest jeszcze świeża i czasami działa dość nieprzewidywanie. Jednak społeczność Apple ma to do siebie, że często radzi sobie sama zapewniając wsparcie dla rozmaitych serwisów często lepsze niż te "oficjalne". Rozwiązań pozwalających na synchronizację iPhone z Google jest mnóstwo. Cześć działa w oparciu o Microsoft Exchange, część o API udostępniane przez twórców. Mój wybór padł na najbardziej wygodny, najszybciej rozwijający się i najbardziej stabilny serwis NuevaSync. Całość to również serwer Exchange, jednak doskonale radzący sobie z przetwarzaniem danych Googla.

Na początku ogromnym problemem było to, że NuevaSync nie radziło sobie z rozpoznawaniem pól. I tak czasami np. adres miał dziwną konstrukcję, a państwo nie trafiało do właściwego pola. Ostatnio jednak twórcy wprowadzili automatyczne rozpoznawanie adresów i w tej chwili podobnych problemów nie stwierdzam. Obustronna synchronizacja z telefonem przez WiFi przebiega bez problemów, więc pierwszy krok mam za sobą.

Teraz przyszedł czas na Thunderbirda. Póki co znalazłem dwie główne wtyczki – Zindus i Google Contacts. Ta druga wydaje się mniej stabilna, więc skupiłem się na tej pierwszej. Działa naprawdę bardzo dobrze z jednym wyjątkiem – nie potrafi filtrować danych. Bo ja nie chcę mieć w programie pocztowym kontaktów nie posiadających w danych adresu e-mail. Po co mi one? Wystarczyłaby prosta funkcja filtrująca – wysłałem zapytanie do twórców. Kto wie, może się doczekamy. Dostałem odpowiedź i okazuje się, że twórcy nie planują wprowadzania nowych funkcjonalności, proponują kilka możliwości, choć moim zdaniem wszystkie kiepskie. Póki co darowałem sobie więc synchronizację i przepisałem listę kontaktów ręcznie…

Ostatni krok to synchronizacja z komunikatorem. Używam Mirandy i liczyłem, że wśród tych tysięcy pluginów znajdę coś, co zapewni mi podobną funkcjonalność. Przeliczyłem się jednak grubo. Oczywiście – Google samo umożliwia coś na wzór synchronizacji kontaktów z Google Talk. Tyle, że ja używam innego serwera, a do tego posiadam na swojej liście kontakty MSN i Gadu-Gadu. Czyli – nie da się.

Wyszło na to, że tylko iPhone radzi sobie z synchronizacją. W tej chwili ciężko mi to zrozumieć – w końcu Google udostępnia niezłe API, jest popularnym serwisem, więc teoretycznie powinno już istnieć mrowie pluginów do Thunderbirda i Mirandy zapewniających synchronizację na odpowiednim poziomie. Czy nie mieliśmy przypadkiem iść w kierunku Cloud Computing? ;)