Realna alternatywa dla GG: Facebook?

Pisałem już na blogu o tym, że nie lubię GG. Nie jest to opinia umotywowana typowo polską skłonnością do narzekania na wszystko. Uważam, że trudno jest lubić program służący do komunikacji w czasie rzeczywistym, który:

  • Wyświetla irytujące, nachalne reklamy we wszystkich możliwych miejscach (sugeruję umieszczanie reklam dodatkowo również pomiędzy znakami przesyłanych wiadomości, bo tam ich jeszcze nie było)

  • Ma interfejs przeładowany bezużytecznymi funkcjami (ktoś wie do czego służy GG Rodzina albo GG Zamawianka? Ja nie wiem i ta wiedza nie jest mi do szczęścia potrzebna)

  • Ma po prostu źle wykonane archiwum. Przynajmniej u mnie czas załadowania się archiwum to kilkanaście sekund przy pełnym obciążeniu procesora. Bez przesady - można to zrobić efektywniej

  • Potrafi od czasu do czasu nie dostarczyć wysłanej wiadomości

  • Może się pochwalić jakże bogatym zbiorem wyników po wpisaniu w Google: gg cenzura. Niestety istnieją zaobserwowane przypadki blokowania treści przesyłanych przez sieć GG

W mojej ocenie zarzuty te (w szczególności dwa ostatnie) są dyskwalifikujące dla tego programu jako rozwiązania typu instant messaging.

Szeroko stosowanym i polecanym przez profesjonalistów rozwiązaniem jest dowolny program korzystający z protokołu XMPP zwanego dawniej Jabber:

  • Jest to standard otwarty, tzn. nie należy do żadnej firmy i każdy może “postawić” swój serwer tego protokołu

  • Zmierza w stronę oficjalnego standardu internetowego RFC

  • Istnieje bardzo dużo programów do jego obsługi, wybór jest ogromny

  • Jest sprawdzony i niezawodny

  • Jest darmowy i niekomercyjny

  • Ma szereg funkcji niedostępnych w GG

  • Nie istnieje przykra konieczność poddawania się kaprysom firmy produkującej program np. zmuszanie do aktualizacji, zmuszanie do oglądania reklam, zmuszanie do korzystania z programu w taki sposób, jaki wymyślą sobie wizjonerzy firmy. W przypadku XMPP korzystamy z takiego programu, jaki nam się podoba

Niestety główna zaleta GG jest jednocześnie główną wadą XMPP/Jabbera: baza użytkowników. Co z tego, że ja bym go chętnie używał skoro musiałbym rozmawiać chyba sam ze sobą? Zwykli użytkownicy komputerów niestety o nim nie słyszeli i korzystają z GG, bo jak wiadomo z GG korzystają wszyscy. W lutym br. Facebook wykonał moim zdaniem niezwykle trafną operację, która może coś w tej dziedzinie zmienić, a mianowicie:

Facebook udostępnił dla każdego użytkownika serwisu konto na swoim własnym serwerze XMPP. Rozmowy prowadzone w ten sposób są tym samym, co dostępny w serwisie chat tzn. możemy używać do rozmowy chatu lub swojego ulubionego programu obsługującego XMPP. Korzyści są na przykład takie:

  • Aby rozpocząć korzystanie nie trzeba zakładać żadnego konta. Wystarczy wybrać program, ja polecam Pidgin

  • Konfiguracja jest trywialna. Wystarczy jako serwer (dla konta XMPP, w Pidginie pod nazwą “domena”) wpisać w programie chat.facebook.com, podać nazwę użytkownika i hasło a w opcjach zaawansowanych odznaczyć szyfrowanie SSL (niestety nieobsługiwane) i to wszystko

Od tego momentu można korzystać z chatu FB w swoim ulubionym programie. Konto XMPP jest niezależne od zalogowania w serwisie Facebook. Można mieć jednocześnie otwarty Pidgin oraz przeglądarkę ze stroną FB. Widać, że zmiany (dostępność znajomych) pojawiają się szybciej w programie niż na stronie. Ponadto można również korzystać z programów na telefony komórkowe np. Parlingo.

Facebook załatwia nam problem tego, że z XMPP korzysta mało użytkowników, czyli likwiduje jego największą wadę. Gdyby poinformować użytkowników Facebook’a, że w ten sposób mogą wykorzystać swoje konto, do tego, aby mieć pełnowartościowy, lepszy od GG komunikator to myślę, że coraz więcej osób mogłoby zrezygnować z wątpliwych usług żółtego słoneczka.

Zabezpieczenia przed skutkami awarii dysku twardego – przemyślenia

Dysk twardy należy do tych części systemu komputerowego, których działanie jest uzależnione od elementów mechanicznych. A elementy mechaniczne, nawet gdy są najwyższej jakości, będą ulegać awarii częściej niż elementy elektroniczne. Chciałbym podzielić się kilkoma spostrzeżeniami na temat skutków awarii oraz metod zabezpieczania się przed nimi.

Najczęstszym objawem trwałego uszkodzenia dysku jest pojawienie się tzw. bad sectorów. Krótko mówiąc są to obszary na dysku, które uległy fizycznemu uszkodzeniu i nie można odczytać i/lub zapisać na nich danych. Obszary te mogą mieć bardzo różny rozmiar, przykładowo widziałem raz uszkodzenie długości zaledwie 11 bitów (polecam narzędzie SpinRite). Rodzaj skutków takiego uszkodzenia ściśle zależy od tego, w którym miejscu ono wystąpi. Jest to oczywiście zupełnie losowe. Można wyróżnić takie przypadki:

  1. W miejscu oznaczonym jako wolne: wówczas nic złego się nie stanie. O ile awaria zostanie w porę zaobserwowana np. poprzez monitoring S.M.A.R.T. albo skanowanie powierzchni dysku programem sprawdzającym, ważne dane skopiowane, a dysk wycofany z użycia. Sprawą oczywistą jest to, że praca na dysku z uszkodzeniem fizycznym prędzej czy później zakończy się jego kompletną “wysiadką”.

  2. W miejscu, w którym znajduje się plik, ale niekrytyczny dla systemu operacyjnego. Wówczas też nic złego się nie stanie, o ile, podobnie jak w (1), awaria zostanie zauważona.

  3. W miejscu, w którym znajduje się plik należący do systemu operacyjnego. W tym momencie zaczynają się już poważne skutki. Trudno przewidzieć co się może dziać, ale system o ile w ogóle się uruchomi, to w najlepszym wypadku będzie się zachowywał dziwnie. Zanim zacznie się przeklinać producenta systemu dobrze jest upewnić się czy na dysku nie pojawił się właśnie bad sector. Należy użyć stosownych narzędzi do sprawdzania dysku i jak najszybciej skopiować cenne dane. Warto wiedzieć, że w systemie Windows awarie dysku można również zauważyć w dzienniku systemu (eventvwr.msc) jako błąd pochodzący od “disk” o komunikacie jednoznacznie wskazującym, że dyskiem nie jest dobrze (swoją drogą podobny komunikat może pojawić się w przypadku problemów z aparatem fotograficznym, kartą pamięci, pendrive’em etc. Wtedy nie należy się bać, bo przyczyną może być np. wadliwy kabel - trzeba upewnić się kiedy te błędy się pojawiają, czy zdarza się to podczas podłączenia np. aparatu do komputera). Należy również cieszyć się, że dostęp do danych jest w ogóle możliwy, bo w ostatnim przypadku.

  4. W miejscu, w którym znajduje się tzw. superblok systemu plików, czyli struktura opisująca fizyczną organizację danych w pliki na dysku. Widziałem kiedyś taki przypadek, że bad sector “trafił” w obszar MFT partycji NTFS. W takiej sytuacji przestaje być możliwy dostęp do systemu plików (w jakikolwiek sposób - zapomnij o sztuczkach z ratunkowymi dystrybucjami Linuxa). Jeżeli stało się to na partycji systemowej to objaw jest taki, że system wyświetla na czarnym ekranie enigmatyczny komunikat o błędzie odczytu (niestety nie pamiętam treści) i komputer zawiesza się. Komunikat jest na czarnym, a nie słynnym niebieskim ekranie, bo BSOD jest komunikatem o błędzie jądra, a tutaj jądro nie zostało jeszcze załadowane, ponieważ 16-bitowy kod bootloader’a nie był w stanie otworzyć systemu plików partycji systemowej. W tej sytuacji można pożegnać się z danymi na dysku (dokładniej: partycji). Aczkolwiek podejrzewam, że firmy specjalizujące się w odzyskiwaniu danych potrafią binarnie grzebać w partycji NTFS (jest to robota porównywalna do szukania igły w stogu siana, dosłownie), ale koszt takiej usługi zapewne jest astronomiczny.

Widok przypadku (4) był dla mnie bardzo pouczający. Warto sobie uzmysłowić, że coś takiego w ogóle może się zdarzyć (fakt, dysk miał wyjątkowego pecha) i, że skutki są aż tak katastrofalne. Na tej podstawie można wywnioskować, że bezpieczniej jest mieć wiele partycji na dysku niż jedną dużą. W przypadku jednej dużej, gdy nastąpi awaria typu (4) tracimy zwartość całego dysku. Gdy natomiast mamy wiele partycji, tracimy zawartość tylko tej, w którą “trafiło”.

Chciałbym poruszyć jeszcze zagadnienie macierzy RAID. Moje refleksje w tym temacie są takie, że pomimo dostępności tego typu rozwiązań w domowych komputerach, są one raczej mało użyteczne.

  1. RAID 0. Stosowanie tego poziomu jest raczej bez sensu z punktu widzenia bezpieczeństwa. Zwiększa się prawdopodobieństwo awarii i utraty danych kosztem większej wydajności.

  2. RAID 1. Stosowanie tego poziomu w domowym komputerze jest wątpliwe, ponieważ chyba nie ma wielu osób, które chciałyby kupić 2 dyski a mieć dostępną przestrzeń tylko jednego.

  3. RAID 0+1, albo 1+0. W domowych warunkach odpada, ze względu na zbyt dużą minimalną liczbę potrzebnych dysków - aż 4.

  4. RAID 5. W najnowszych płytach głównych poziom ten jest dostępny w sprzętowych kontrolerach. Jest to szeroko stosowane rozwiązanie w sieciowych urządzeniach pamięci dyskowych oraz modularnych macierzach dyskowych. Poziom ten charakteryzuje się bardzo dobrymi parametrami, ale również wymaga zbyt wielu (tak sądzę), jak na domowy komputer, dysków: 3 dając dostęp do przestrzeni dwóch.

Moim zdaniem najlepszym rozwiązaniem dla domowego komputera jest montaż dwóch dysków twardych, na każdym z nich instalacja oddzielnego systemu operacyjnego oraz ręczne kopiowanie najważniejszych danych w taki sposób, aby zawsze były w aktualnej postaci na obu dyskach. Rozwiązanie to ma szereg zalet:

  1. Mamy dostępną przestrzeń obu dysków, nie występuje problem np. RAID’u 1 gdzie de facto kupujemy 2 dyski a “mamy” 1.

  2. Zabezpieczamy się przed awariami (1), (2) i (3) ponieważ w przypadku awarii któregokolwiek dysku mamy gotowy do działania drugi system operacyjny, który możemy uruchomić i użyć do uratowania danych z uszkodzonego dysku.

  3. Dodatkowo zabezpieczamy się przed programową awarią samego systemu operacyjnego. Gdy jeden z systemów odmówi posłuszeństwa, po prostu uruchamiamy drugi i mamy możliwość dalszej pracy.

  4. Zyskujemy możliwość wygodnego wykonywania kopii zapasowej również takich plików, które są zablokowane podczas działania systemu operacyjnego. Można uruchomić drugi system, np. Linux i na wszelki wypadek zrobić kopię zapasową pierwszego systemu operacyjnego np. Windows’a, bo planujemy wykonywać na nim jakąś ryzykowną operację, którą warto byłoby móc przywrócić.

Sam stosuję takie rozwiązanie, że na obu dyskach mam działający program rozruchowy, dzięki temu w każdej chwili mogę odłączyć dowolny z dysków i drugi pozwoli na uruchomienie znajdującego się na nim systemu. Na jednym dysku mam system Windows zainstalowany standardowo, na drugim mam system Linux z menedżerem rozruchu GRUB uwzględniającym oba systemy. Dysk z systemem Linux jest dla komputera pierwszym urządzeniem do rozruchu dzięki czemu mogę wybierać między dwoma systemami. Gdyby dysk ten uległ awarii, mogę przełączyć drugi dysk na główne urządzenie rozruchowe i bez wprowadzania jakichkolwiek dodatkowych zmian pracować w systemie Windows. Analogicznie, gdyby dysk z system Windows się zepsuł, mogę o nim zapomnieć i pracować w systemie Linux.

Podsumowanie będzie krótkie: dbajmy o to, aby najważniejsze dla nas dane przechowywać na co najmniej dwóch, niezależnych fizycznych nośnikach. Doświadczenie pokazuje, że awarie zdarzają się zwykle właśnie tym użytkownikom, którzy nie robią kopii zapasowych :)

Linuks zawiesza się przy hibernacji - rozwiązanie

Wpis ten jest rozwinięciem zagadnienia opisanego tutaj. Krótkie przypomnienie: gdy utworzymy zbyt małą partycję wymiany może dojść do sytuacji, w której podczas próby hibernacji system zawiesza się. Jest to spowodowane niewystarczającą ilością miejsca na tej partycji. Gdy partycja wymiany jest w użyciu, znajdujące się tam wymiecione strony pamięci dodatkowo zmniejszają obszar potrzebny na zapisanie obrazu pamięci fizycznej. Przypomnę jeszcze, że stanowi to problem, dlatego, że jądro (bez dodatkowych zabiegów) nie potrafi zahibernować systemu przy użyciu pliku wymiany, a jedynie dedykowanej partycji. Poniższe rozwiązanie jest w pewnym sensie prowizoryczne, ale działa i pozwala na uniknięcie ryzykownych operacji zmienienia rozmiaru partycji.

Rozwiązanie polega na “zniechęceniu” systemu do korzystania z partycji wymiany, po to, aby było tam miejsce do zapisania obrazu pamięci fizycznej. Musimy jedynie świadomie hibernować system, tak, aby nie następowało to wtedy, gdy zużycie pamięci fizycznej przewyższa rozmiar tej partycji. Szczegóły przydatności tego rozwiązania zależą już od konkretnego przypadku - o ile za mała jest partycja wymiany. Ja ustawiłem tę wielkość na 1 GiB, dosyć trudno jest doprowadzić system do większego zużycia pamięci podczas wykonywania typowych czynności. W moim przypadku rozwiązanie okazało się więc wystarczające.

  1. Tworzymy i włączamy dodatkowy plik wymiany, tak jak jest to opisane we wcześniejszym wpisie. Dodatkowo podajemy najwyższy możliwy priorytet dla nowego pliku wymiany opcją -p 32767. Dzięki temu system, gdy będzie chciał wymiatać strony na dysk w pierwszej kolejności zrobi to do nowego pliku wymiany, pozostawiając nietkniętą partycję wymiany, na której znajduje się cenna przestrzeń potrzebna do zapisania obrazu pamięci fizycznej.

  2. Dodatkowo możemy sterować “wymiatalnością” stron pamięci. Parametr ten, jak sugeruje nazwa, określa jak często system ma wymiatać strony na dysk. 0 oznacza wyłączenie wymiatania; 100 oznacza, że system próbuje wymiatać jak najwięcej nieużywanych stron. Standardowo parametr ten wynosi 60. Ja ustawiłem go na liczbę jednocyfrową, po to, aby jak najwięcej używanej pamięci zmieścić w pamięci fizycznej i zobaczyć, czy zmieści się to w partycji wymiany podczas hibernacji. Sterowanie jest bardzo proste, modyfikujemy liczbę w systemie plików proc: /proc/sys/vm/swappiness. Polecam eksperymentowanie z tym parametrem, ponieważ można w ten sposób doprowadzić do zwiększenia wydajności systemu zmuszając go do odwlekania z korzystania z pliku wymiany tak długo jak tylko jest to możliwe.

Muzodajnia – serwis udostępniający muzykę w formatach mp3 i wma

Testowałem ostatnio serwis o nazwie Muzodajnia, który oferuje opłacany abonamentem dostęp do zbioru utworów muzycznych w formacie mp3 oraz wma. Na początek opiszę dlaczego moim zdaniem warto zwrócić uwagę na tego typu serwisy. Jednym z częstszych zastosowań dostępu do Internetu odkąd pamiętam było ściąganie muzyki. Osobiście pamiętam jeszcze legendarnego Napstera w swej najpiękniejszej dla użytkowników, darmowej postaci. Zarówno Napster jak wszelkie powstałe po nim narzędzia wymiany plików służyły do nielegalnego udostępniania utworów muzycznych. Sytuacja zmieniła się nieco wraz z upowszechnieniem serwisów udostępniających klipy muzyczne online jak Youtube. Wielu użytkowników zadowala się muzyką odtwarzaną bezpośrednio z tego serwisu, istnieje również wiele sposobów na ściągnięcie na swój komputer utworu muzycznego np. Youtube (pisałem o tym tutaj). Niemniej jednak wiąże się z tym problem, który dla audiofili z prawdziwego zdarzenia jest nie do pominięcia: jakość. Bardzo często zdarza się, że ścieżka dźwiękowa klipu na Youtube jest po prostu zakodowana przy bardzo niskich parametrach, co jest dosyć denerwujące. Płatny serwis muzyczny - Muzodajnia eliminuje oba wyżej wymienione problemy czyli po pierwsze pobieranie za jego pomocą utworów jest jak najbardziej legalne, po drugie utwory te są naprawdę wysokiej jakości. Opcji jest kilka: mp3 128 kbps, wma 128 kbps, wma 256 kbps i mp4 128 kbps.

Podstawowym czynnikiem przy podejmowaniu decyzji o zakupie abonamentu do takiego serwisu będzie zapewne wielkość “bazy” utworów. “Baza” ta jest dość spora, aczkolwiek pod żadnym pozorem nie należy oczekiwać, że cokolwiek co znajdziemy na Youtube będziemy mogli sobie ściągnąć w super jakości z Muzodajni. Myślę, że każdy użytkownik bez względu na upodobania muzyczne bez problemu znajdzie taki tytuł, którego w Muzodajni nie będzie. Nie mam tutaj na myśli jakichś szczególnie niszowych gatunków, chociaż przykładowo z polskiego hip-hopu nie znajdziemy PIH’a, a znajdziemy TeDe’go i to w sporych ilościach. Bardzo duży wybór jest z muzyki POP, wykonawców i zespołów często ostatnio słyszanych w wielu stacjach radiowych jak Black Eyed Peas czy Lady Gaga. Ale przy gatunku POP też można się zdziwić, bo np. po wpisaniu do wyszukiwarki serwisu “Shakira” tabela wyników świeci pustkami, co wydaje się być dość zaskakujące. Podsumowując zasoby - całkiem w porządku, ale bez rewelacji.

Muzyka w serwisie pogrupowana jest w kategorie: pop, dance (z podkategorią disco-polo), hip-hop i r&b;, rock, klasyka i jazz oraz kategoria “inne” z podkategoriami typu country, czy elektroniczna. Wyszukiwarka w serwisie jest raczej kiepska, w tym sensie, że przy mało precyzyjnym zapytaniu prawie na pewno nie znajdziemy tego, o co nam chodzi. Najlepiej jest wpisywać pełny tytuł ora pełną nazwę wykonawcy. Gdy już uporamy się z wyszukiwaniem, możemy wylistować zawartość całej płyty do której należy wyszukany uwtór. Każdy kawałek w ramach płyty możemy próbnie posłuchać - kilkunastosekundowy fragment oraz oczywiście pobrać. Nie ma możliwości pobrania seryjnie wszystkich utworów w ramach płyty. Utwory pobierają się bardzo szybko, w moim przypadku przy prędkości ok 2 MiB/s. Zwrócę jeszcze uwagę, że serwer nie lubi menedżerów pobierania, przykładowo przy użyciu popularnego DownThemAll nie udało mi się ściągnąć żadnego pliku. Sama strona natomiast ładuje się dość wolno, podczas mojego dwumiesięcznego okresu testowania były sytuacje, że jej fragmenty nie chciały się w ogóle załadować. Ponadto zdarzały się też sytuacje, że wyszukiwarka całkowicie odmawiała posłuszeństwa i przepraszając zapraszała do skorzystania za chwilę. Widać, że pod względem niezawodności serwis nie wypada najlepiej, a (przynajmniej ja) w przypadku usług płatnych oczekuję bardzo wysokiej jakości. Również sam projekt strony jest dosyć “ciężki” - przy przeglądaniu listy utworów wykonują się liczne skrypty JavaScript znacznie obciążające procesor (uciążliwe dla laptopów, które podczas pracy bateryjnej zmniejszają szybkość taktowania zegara procesora), co w połączeniu ze wspomnianym wcześniej powolnym transferem elementów strony sprawia, że są momenty, że z serwisu korzysta się mało przyjemnie.

Na koniec aspekt najważniejszy: płatności. Przytoczę tutaj ceny na dzień dzisiejszy  dla użytkowników nie będących klientami Plus’a:

  • 96 zł za 25 utworów miesięcznie przez rok

  • 192 zł za 100 utworów miesięcznie przez rok

  • 288 zł za 250 utworów miesięcznie przez rok.

Działa to w ten sposób, że mamy miesięczny limit na liczbę pobranych utworów. Limity nie przechodzą na następny miesiąc. Moim zdaniem powyższe “pakiety” płatności są zbyt mało elastyczne. Osobiście oczekiwałbym jakiejś formy pre-paid czyli przedpłacenia sobie np. możliwości pobrania 50 utworów bez zobowiązań czasowych.

Podsumowując, Muzodajnia jest serwisem ciekawym, chociaż mającym pewne wady. Moim zdaniem dwie najważniejsze to: zbyt częsty komunikat wyszukiwarki o braku utworu który co chwilę można usłyszeć w radiu oraz właśnie mało elastyczna płatność.

Usuwanie śledzika to ściema

Postanowiłem wypowiedzieć się na ten temat na blogu, ponieważ różne “czarodziejskie” sposoby usuwania śledzika cieszą się wciąż niemałą popularnością, pomimo, że ich skuteczność była, jest i będzie zerowa. Niezerowe są natomiast zyski sprytnych osób wykorzystujących wiarę użytkowników w to, że mało użyteczna funkcjonalność zniknie z ich profilu w serwisie NK. Pokażę tę pomysłowość na konkretnym przykładzie.

Najpierw jednak kilka słów o tym dlaczego śledzik nie zniknie. Przede wszystkim ze względów biznesowych. Wprowadzenie tej funkcjonalności do serwisu NK było sporym przedsięwzięciem, nad którym pracowało wiele osób i które z całą pewnością było kosztowne. Hipotetyczna decyzja zarządców serwisu o usunięciu śledzika (przynajmniej w tak krótkim czasie od jego wprowadzenia) byłaby równoznaczna z wyrzuceniem do śmieci wyników pracy zespołu twórców oraz zmarnowaniem wszelkich innych włożonych w to nakładów. Moim zdaniem to oczywiste, że taka decyzja nie zostanie podjęta. Aczkolwiek niewątpliwie sam pomysł okazał się niewypałem, sądząc po reakcji użytkowników. W polskim internecie funkcjonują już mikroblogi z prawdziwego zdarzenia jak blip.pl czy moblo.pl. Okazuje się, że coś takiego w ramach NK nie bardzo spełnia swoje zadanie, natomiast jedynie zajmuje miejsce na stronie głównej.

Dla jasności dodam jeszcze, że wszelkie odprawianie czarów w rodzaju wpisywania kodów takich jak J3273M-D38113M do okienka tekstowego śledzika jest z góry skazane na porażkę. Praktycznie jest to niemożliwe technicznie, aby wprowadzenie jakiegokolwiek ciągu do okienka śledzika było zinterpretowane przez serwer i spowodowało niewyświetlanie wybranym użytkownikom pola śledzika. Ustawienia są wprowadzane przez użytkownika na przeznaczonej do tego stronie. Gdyby serwer miał analizować wprowadzone przez użytkownika ciągi znaków (co przy takiej liczbie użytkowników jest zadaniem wymagającym obliczeniowo) w poszukiwaniu jakiegoś kodu tylko po to, aby zmienić jakąś hipotetyczną właściwość użytkownika np. “Wyświetlaj śledzika” z wartości “prawda” na “fałsz” - to byłoby to rozwiązaniem totalnie idiotycznym.

A teraz spojrzenie z innej strony. W dwóch poprzednich akapitach przekonywałem, że śledzik nie zniknie “systemowo”, w tym natomiast pokażę, że zniknąć może - dla nas jako użytkowników. Oczywiście z tego co napisałem wcześniej wynika, że nie możemy zmusić serwera, żeby nie wysyłał do naszej przeglądarki strony bez śledzika. Możemy jednak zmusić naszą przeglądarkę, żeby ona nam go nie pokazywała. Sprytni użytkownicy zauważyli, że pole śledzika w kodzie strony ma nazwę _sledzik_boxi wystarczy użyć narzędzia filtrującego reklamy, aby nie pokazywać śledzika. Rozwiązanie takie jest opisane tutaj. Mniej zaawansowanych użytkowników uspokajam, że jest to rozwiązanie wyjątkowo banalne do zastosowania (sprawdziłem, działa).

Na koniec obiecany przykład kogoś bardzo sprytnego, kto autentycznie zarabia pieniądze, na tym, że użytkownik NK myśli, że usunie sobie śledzika. Poniżej zrzut ekranu ze strony http://śiedzik.pl/usun/ do której link rozprzestrzenia się właśnie za pomocą śledzika. Jestem rzeczywiście pod wrażeniem pomysłu jak łatwo można zarobić na czyjejś naiwności. Przedstawię zatem ten średnio uczciwy (autor obiecuje, że śledzik zniknie, a jak wiemy, nie zniknie - więc moim zdaniem podchodzi to pod formę oszustwa) mechanizm .

  1. Nazwa: Śiedzik.pl. Znana sztuczka, głównie przestępców z kategorii phisherów, polegająca na wymyśleniu takiej nazwy strony, której wizualny układ liter łudząco przypomina oryginał. Ulubionym mechanizmem jest tutaj podobieństwo litery “i duże” do “l małe”. Dodatkowo oprawa graficzna żywcem przeniesiona z oficjalnej strony śledzika potęguje wrażenie, że mamy do czynienia z firmowym narzędziem do pozbycia się uciążliwego mikroblogu.

  2. Najlepszy pomysł - autor zakłada, że gdzieś obok jesteśmy zalogowani do NK. Wciśnięcie przycisku powoduje umieszczenie na naszym śledziku linku do strony. Mamy więc tutaj mechanizm rozgłaszający informację o istnieniu strony.

  3. Liczba osób odwiedzających. Ten element jest ważny dla reklamodawców. Zanim zapłacą za reklamę muszą zobaczyć liczbę. Jest ona duża. Duża liczba odwiedzających = duża oglądalność = większa cena za reklamę.

  4. Reklamy. Aż trzy, autor jest jak widać zachłanny na zyski z reklam. Co w końcu nie jest dziwne - trzeba zarobić jak najwięcej w jak najkrótszym czasie, zanim potencjalny odwiedzający nie przeczyta na przykład tego tekstu i nie rozejdzie się informacja o tym, że jest to ściema. Autor najzwyczajniej w świecie sprzedaje przestrzeń reklamową na tej stronie. Z wymienionych wyżej przyczyn, jest to dobre miejsce na reklamę ponieważ odwiedzi je dużo osób.

Zwracam uwagę na bardzo zręczny pomysł samonapędzającej się promocji strony. Klikając w ten przycisk wklejamy link do strony na swojego śledzika, przez co zobaczą go nasi znajomi i zapewne też klikną w link zwiększając tym samym liczbę odwiedzin i dochód za reklamy, ponieważ skoro już tu weszli, zapewne chcą usunąć śledzika więc klikną w przycisk. - koło się zamyka.

Nie wiem ile jeszcze powstanie tego typu pomysłów w przyszłości, ale mam nadzieję, że chociaż w minimalnym stopniu przyczynię się do tego, że użytkownicy NK uwierzą wreszcie, że śledzik nie zniknie.

NK

Twój linuks zawiesza się przy hibernacji?

Zaobserwowałem trudno powtarzalny problem pojawiający się przy próbie zahibernowania linuksa Ubuntu. Nie będę się rozpisywać o zaletach używania hibernacji - dla mnie to bardzo praktyczna opcja pozwalająca skrócić czas “włączania” komputera. Jestem przyzwyczajony do tego, aby natychmiast mieć uruchomione wszystkie programy z których korzystam na co dzień. Problem polegał na tym, że czasami podczas hibernowania system zamiast wyłączyć komputer wyświetlał na ekranie szereg enigmatycznych komunikatów, z których jedyne, co było zrozumiałe to fakt, że coś się zawiesiło. Jedyne co można było zrobić to wcisnąć magiczną kombinację [ALT]+[Print Screen]+[R]+[S]+[I]+[U]+[B] powodującą synchronizację buforów dyskowych, odmontowanie systemu plików i bezpieczny restart (szczegółowy opis tej linuksowej sztuczki jest np. tutaj, odpowiednika w systemie Windows niestety brak)

Stwierdziłem, że nie można tego problemu tak zostawić i zacząłem poszukiwać informacji na temat jego przyczyny. Po drodze trafiłem na fajne alternatywne narzędzia pozwalające na zahibernowanie bądź uśpienie systemu z konsoli: http://en.wikipedia.org/wiki/Uswsusp - polecam. Niemniej jednak również s2disk powodował identyczne zawieszenie się systemu.

Po dłuższych poszukiwaniach udało mi się ustalić, że przyczyną jest bardzo dziwny mechanizm hibernacji stosowany w jądrze linuksa - zupełnie odmienny od tego co jest stosowane w systemie Windows. System linuks zapisuje obraz pamięci do… no właśnie - właściwie na… partycję swap. Nietrudno się domyślić, że gdy swap jest w większości zajęty to nie ma tam miejsca na zapisanie zawartości pamięci fizycznej. Rozwiązanie z oddzielnym plikiem o rozmiarze równym pamięci fizycznej i przeznaczonym wyłącznie do hibernacji w systemie Windows jest o wiele lepsze. Swoją drogą, warto zwrócić uwagę, iż pomimo posiadania dużej ilości pamięci RAM nie warto ograniczać (nie mówiąc już o rezygnacji - słyszałem, że niektórzy użytkownicy tak robią) rozmiaru partycji swap.

Całe szczęście, że jądro linuksa umożliwia określenie dowolnego pliku jako dodatkowej przestrzeni swap. Problem rozwiązałem dodając sobie (trochę na zapas) dodatkowe 3 GiB przestrzeni swap:

dd if=/dev/zero of=/swap3gb bs=1024k count=4000
mkswap /swap3gb                    
swapon /swap3gb                    

Można to w każdej chwili wyłączyć:

swapoff /swap3gb                      
rm /swap3gb

Niestety jak się okazało problemu nie rozwiązałem. Sprawa jest znacznie bardziej skompilowana niż mi się wydawało. Istnieją 2 mechanizmy pozwalające na hibernowanie systemu Linux:

  • Swsusp

  • Tuxonice

Pierwszy z nich jest zaimplementowany w jądrze od wersji 2.6, drugi stanowi łatę na kod jądra i co za tym idzie wymaga jego rekompilacji. Pierwszy z nich jest standardowo używany w systemie i nie obsługuje zapisywania obrazu pamięci przy hibernacji do obszaru swap zdefiniowanego w pliku. Istnieje dość złożony sposób pozwalający na wybudzenie się ze swap’a w pliku polegający na modyfikacji ustawień initfs oraz grub’a. Polega on na odczytaniu fizycznego numeru bloku dyskowego pliku i podania go jako parametr jądra. Szczegółowy opis jest tutaj. Obecnie jestem w trakcie testowania pewnej sztuczki, która być może pozwoli na prostsze rozwiązanie problemu (coś jednak spowodowało, że po dodaniu pliku swap system na kilkadziesiąt hibernacji zawiesił się tylko raz). Jeżeli mój pomysł się sprawdzi oczywiście go opiszę.

Ipla – program do oglądania telewizji

Ostatnio miałem okazję przetestować aplikację Ipla służącą do oglądania materiałów wideo. Jest to darmowy program za pomocą którego mamy możliwość oglądania materiałów zgromadzonych w katalogu Ipla (można oglądać tylko to co jest dostępne w katalogu, Ipla nie jest odtwarzaczem wideo). Użytkownicy konta płatnego mają możliwość oglądania kilku dodatkowych kanałów, w tym takich, które są transmitowane na żywo jak. np Polsat News; oraz mogą oglądać wideo w wyższej jakości. 

Sama aplikacja jest wykonana solidnie, działa bez problemów na koncie zwykłego użytkownika w systemie Windows (jak wspominałem, z tym bywa różnie). Odtwarzanie przy najwyższej jakości pobiera dane z prędkością ok. 140 KB/s. Interfejs jest przejrzysty i łatwy w obsłudze, sprawia wrażenie dobrze zaprojektowanego - łatwo i szybko można zorientować się w dostępnych opcjach oraz hierarchii nagrań wideo.

Użytkownik ma do dyspozycji 5 kategorii tematycznych: seriale, rozrywka, wiadomości, sport. Można obejrzeć odpowiednio np. konkretny odcinek serialu (liczba materiałów wideo w kategorii seriale jest chyba największa), nagranie występu kabaretu, materiał z wiadomości Polsat, skróty meczów. Jest dostępna wyszukiwarka - co znacznie ułatwia odnalezienie danego materiału. Z pewnością wiele osób zada w tym momencie pytanie: co jest lepszego w korzystaniu z takiego oprogramowania od ręcznego wyszukiwania wideo np. w youtube i oglądania w przeglądarce? Moim zdaniem program jest z pewnością lepszy:

  • Nie mamy denerwującego ograniczenia długości materiału jak w youtube

  • Jest to program, który służy tylko do oglądania wideo i do tego został zaprojektowany - transmisja wideo jest stabilna, nie zdarzają się zacinanie odtwarzania, można swobodnie “poruszać” się po całej długości nagrania, mamy do dyspozycji aż 3 poziomy jakości -  żadna z tych cech nie jest dostępna w przypadku oglądania filmów w przeglądarce.

  • Program posiada funkcjonalności społecznościowe -  jest wbudowany komunikator, lista znajomych, można dowiedzieć się kto również ogląda dany przekaz.

Moim zdaniem jest to rozwiązanie warte polecenia, aczkolwiek w sensie usługi chyba trochę “niedojrzałe”. Przede wszystkim baza nagrań jest (jeszcze) zbyt uboga. Producent chwali się dostępnością “tysięcy” odcinków seriali - i faktycznie fani głupkowatych polskich produkcji nie będą zawiedzeni - ale jeśli chodzi o ciekawsze i bardziej ambitne materiały to już pojawia się problem. Video On Demand, bo do tej kategorii zalicza swój program producent, zawsze kojarzył mi się z możliwością obejrzenia pełnometrażowego filmu - jest to coś, czego oczekiwałbym od płatnej wersji usługi. Liczba kanałów transmitowanych na żywo (dostępnych tylko w wersji płatnej) jest na dzień dzisiejszy również bardzo skromna.

Podsumowując myślę jednak, że jest to usługa warta zwrócenia uwagi - Video On Demand jest w Polsce raczej we wczesnej fazie rozwoju i zapewne będzie się coraz dynamiczniej rozwijał.  W Ipli jest spory potencjał, widać, że technicznie jest przygotowana bardzo dobrze i jeżeli rozwój pójdzie w kierunku powiększania oferty programowej to z całą pewnością będzie ona warta polecenia - myślę, że jest wielu użytkowników, którzy byliby gotowi skorzystać również z płatnej wersji po to, aby w naprawdę wygodny sposób obejrzeć sobie film.

IPLA

Usuwanie polskich znaków z dokumentu tekstowego w systemie Linux

Musiałem ostatnio pozbyć się polskich znaków z pliku tekstowego pracując w systemie Linux. Z pewnością jest sporo sposobów, ale ponieważ nie chciało mi się szukać wymyśliłem własny. Kilka lat temu spisałem kody wszystkich polskich znaków w Windows-1250, ISO-8859-2 i UTF-8. Dokument ten umieściłem tutaj. Aby usunąć polskie znaki wystarczy użyć polecenia tr, które idealnie się do tego nadaje, umieszczając kody znaków (ósemkowo) jako ciąg do zamiany. Zakładam, że mamy do czynienia z kodowaniem ISO-8859-2 - z UTF-8 nie chciało mi się kombinować, ze względu na 2-bajtowe kody znaków, co trochę skomplikowałoby polecenie. Zapisu do ISO-8859-2 można dokonać w większości edytorów tekstowych dostępnych w systemie Linux. Skrypt usuwający polskie znaki przy takich założeniach wygląda tak:

#!/bin/sh  
cat $1 | tr '\277\363\263\346\352\266\261\274\361' zolcesazn > $1

PS. Bardziej zaawansowanym narzędziem do manipulacji kodowaniem jest polconv.

Przesyłanie plików przez Internet

Banalna czynność. Wszyscy przesyłają pliki przez Internet. Jednakże prostota tej czynności jest odwrotnie proporcjonalna do liczby plików i/lub ich objętości. Ostatnio musiałem przesłać ok. 600 plików o łącznej objętości ok 2 GiB. Są to wielkości przy których “wymiękają” powszechnie znane rozwiązania. Poniżej krótkie zestawienie rozważanych sposobów przesyłania plików oraz opis tego, które zdecydowałem się zastosować.

  • Poczta elektroniczna. Odpada jeśli chodzi o duże pliki. Co prawda współcześni dostawcy darmowych skrzynek kuszą pojemnościami rzędu kilku GiB, ale powiedziałbym, że jest to w pewnym sensie iluzja. Owszem mamy tyle do dyspozycji, ale mało kto będzie w stanie nam tyle wysłać - chyba wszyscy dostawcy stosują ograniczenia wielkości wysyłanego listu, przykładowo GMail - 25 MiB - jest to słuszne i uzasadnione ochroną przed automatami wysyłającymi spam. Dostawcy płatnych rozwiązań np. home.pl nie stosują ograniczeń wielkości wysyłanej przesyłki, ale są raczej mało popularni w kategorii skrzynek pocztowych. Moim zdaniem poczta nadaje się do przesyłania plików o względnie małej wielkości rzędu kilku MiB.

  • Serwis hostingowy typu Rapidshare, 4Shared, Drop.io etc. Odpada jeśli chodzi o duże pliki, dodatkowo kwestia upublicznienia materiału, który chcę przekazać w sposób poufny. Należałoby użyć szyfrowania. Dodatkowy kłopot - rozwiązanie bez sensu.

  • Serwis przesyłający plik w czasie rzeczywistym typu filesovermiles.com czy jetbytes.com. Odpada jeśli chodzi o duże pliki. Co prawda serwisy te uważam za rewelacyjną usługę ułatwiającą przesył plików, jednakże ze względu na pośredniczącą rolę serwera wprowadzany jest spory narzut na szybkość (jetbytes.com - szybkość ok. 20 KiB/sek, to bardzo niewiele). Wolałbym z resztą rozwiązanie, które umożliwi mi wznowienie przerwanego transferu.

  • Przesył plików w komunikatorze internetowym. Odpada w ogóle. Konia z rzędem temu, komu ta funkcjonalność w ogóle działa w najpopularniejszym w naszym kraju komunikatorze. W przypadku klienta za NAT’em można zapomnieć o przesłaniu pliku do znajomego przez GG.

  • Postawienie własnego serwera FTP. Odpada - za duży kłopot. Problem z wyborem łatwego w obsłudze i bezpiecznego serwera. Ponadto wystawianie otwartego portu FTP na świat nie jest najlepszym pomysłem ze względów bezpieczeństwa - należałoby dokładnie skonfigurować konto użytkownika i poustawiać zabezpieczenia. Dodatkowo można narazić się na atak DoS. Domowy komputer z systemem Windows nie jest maszyną dobrze przygotowaną do roli serwera.

Jak widać jestem wymagający ;).  Rozwiązaniem, które okazało się satysfakcjonujące jest program do tworzenia VPN o nazwie Hamachi razem z programem kopiującym foldery Microsoft Robocopy. Hamachi umożliwia stworzenie wirtualnej prywatnej sieci lokalnej zabezpieczonej hasłem. W systemie widoczny jest jako dodatkowa karta sieciowa. Cały ruch po tej karcie w rzeczywistości jest tunelowany przez szyfrowane algorytmem AES połączenie do serwera Hamachi albo bezpośrednie połączenie do peer’a nawet znajdującego się za NAT’em (Hamachi potrafi automatycznie skonfigurować przekierowania portów w urządzeniu sieciowym) . W praktyce, od strony użytkownika wygląda to tak jakby była zwyczajna sieć lokalna. Transfer plików odbywa się poprzez folder udostępniony Windows przy użyciu programu kopiującego Robocopy. Jest to zaawansowane narzędzie do kopiowania plików, które wyświetla bogate statystyki oraz ma bardzo duży zestaw opcji - w tym możliwość wznawiania przerwanego transferu. Oto co udało się zyskać:

  • Bezpieczeństwo - połączenie jest szyfrowane i w większości przypadków ustanowione bezpośrednio do innego komputera (jeżeli nie udało się ustawić przekierowania portów, wówczas połączenie jest pośrednio przez serwer Hamachi - te szczegóły techniczne konfigurują się automatycznie bez ingerencji użytkownika). Nie muszę się martwić, że ktoś podejrzy zawartość przesyłanych plików. Nie muszę ich dodatkowo zabezpieczać.

  • Szybkość - co prawda serwer pośredniczący Hamachi również wnosi pewien narzut szybkościowy, ale w praktyce udało się uzyskać prędkości rzędu 100 KiB/sek przy wysyłaniu, co było satysfakcjonujące.

  • Wygoda - przeglądanie zawartości udostępnianych katalogów przy użyciu standardowych narzędzi. Nie muszę kompresować plików ani poddawać ich innym zabiegom.

  • Dokładne informacje o postępie kopiowania - informacje podawane w trakcie działania Robocopy są bardzo bogate

  • Możliwość przerwania i wznowienia transmisji w dowolnej chwili

  • Automatyzacja działania - Robocopy zachowuje się “inteligentnie” w przypadku chwilowych problemów z siecią i wielokrotnie ponawia próby kopiowania. Po uruchomieniu tego narzędzia można spokojnie zająć się czymś innym - przy ustawieniach domyślnych program nie poddaje się przy pojedynczym błędzie tylko czeka 30 sek. a następnie ponawia próbę - i tak milion razy (parametry te można ustawić)

Poniżej zrzut ekranu z konsoli po zakończonym transferze Robocopy. Szybkość jest tu mniejsza niż wspominane 100 KiB/sek ponieważ transfer odbywał się z maszyny o łączu 32 KiB/sek - jak widać “tunelowanie” zabiera ok. 4 KiB/sek - tutaj mamy statystyki z poziomu łącza VPN, na poziomie rzeczywistego połączenia do peer’a szybkość wynosiła w przybliżeniu właśnie 32 KiB/sek.

Microsoft Robocopy

PS. Hamachi jest szeroko stosowanym rozwiązaniem wśród amatorów gier działających w sieci lokalnej. Znakomicie nadaje się do “zwirtualizowania” sieci lokalnej wszędzie tam gdzie istnieje taka konieczność, a dysponujemy tylko łączem internetowym.

Nie lubię reklam w GG c.d.

Tak po prostu ich nie lubię. Denerwują mnie. Są głupie. Jako dość skomplikowane animacje nierzadko pochłaniają niepotrzebnie moc obliczeniową procesora. Ich ładowanie opóźnia pojawienie się okienka z rozmową. Powodów jest mnóstwo.

OK. Rozumiem model finansowania najpopularniejszego komunikatora. Rozumiem, że dostaję za darmo program i usługę więc w zamian powinienem posłusznie gapić się w zjadliwie pokolorowane rozpraszające uwagę skaczące zygzaki. Byłoby to nawet w porządku, gdyby nie moje nieodparte wrażenie, iż wyświetlanie reklam przez aplikację kliencką GG dostało się na miejsce pierwsze celów projektowych tej aplikacji. A dostarczanie wiadomości dopiero na miejscu drugim. Zauważyłem, że reklamy wyświetlają się zawsze podczas gdy spotkałem się niestety wielokrotnie z sytuacją, w której wiadomość nie została dostarczona. Nie muszę chyba pisać w tym miejscu, że komunikatorowi można wybaczyć różne uchybienia, ale niedopracowania swojej podstawowej (teoretycznie) funkcji już nie.

Niestety przedstawiony przeze mnie na tym blogu sposób pozbycia się reklam przestał działać. Nie udało mi się ustalić dokładnie dlaczego, z powodu zmian jakie wprowadzałem w tym czasie w swoim systemie. Być może:

  • Twórcy zadbali o sprawdzanie czy Internet Explorer jest w trybie online

  • Przedstawiony sposób przestaje działać po zainstalowaniu Internet Explorera 8

Nieważne. Przedstawiony przeze mnie sposób dział na pewno dla starszych wersji komunikatora i/lub przeglądarki dlatego nie kasuję tamtego wpisu, ponieważ nadal może się komuś przydać. Postanowiłem natomiast przeprowadzić kilka eksperymentów i zbadać czy istnieje inny prosty, bezpieczny i legalny sposób wyłączenia reklam. Oczywiście, że istnieje :) - wymyśliłem go po zaledwie kilkudziesięciu minutach “badań”. Z pomocą znów przychodzi flash’owa natura skocznych bazgrołów.

Przechodząc do rzeczy. W poprzednim wpisie wspominałem o programie służącym do izolacji - Sandboxie. Programy uruchamiane w piaskownicy nie mogą wprowadzać bezpośrednio zmian na dysku. Wszystkie ich operacje zapisu kierowane są do wyznaczonego przez nas folderu. Sandboxie oferuje jednak znacznie bogatsze możliwości, m. in.:

  • Blokowanie dostępu do rejestru

  • Blokowanie dostępu do sieci

  • Blokowanie dostępu do obiektów IPC

  • Blokowanie dostępu do wskazanych plików na dysku

Wszystko to dla wybranego przez nas programu. Rozwiązaniem jest zablokowanie dostępu do katalogu w którym znajduje się kontrolka ActiveX Adobe Flash :). Dzięki temu GG znów zaczyna wyświetlać ładne białe okienko zamiast denerwujących reklam. Poniżej przedstawiam 2 zrzuty ekranu obrazujące co i gdzie należy wpisać w ustawieniach piaskownicy (oczywiście z dokładnością do nazw folderów, które być może trzeba będzie dopasować do swoich, jeżeli są niestandardowe):

Dla poprawnego działania GG dodajemy jego foldery (instalacyjny i profilu)  do list folderów do których program ma mieć dostęp bezpośredni (tzn. nie przez piaskownicę):

Sandboxie

Blokujemy użycie przez GG kontrolki Flash poprzez dodanie katalogu Flash’a do list blokowania:

Sandboxie

To wszystko! Sposób jest legalny ponieważ niczego wchodzącego w skład aplikacji GG nie modyfikuje. Wykorzystuje po prostu w sprytny sposób sprytne i darmowe narzędzie jakim jest Sandboxie :) Oczywiście uruchamianie GG w Sandboxie wnosi dodatkowe bezpieczeństwo przed zagrożeniami mogącymi rozpowszechniać się tą drogą (kosztem troszkę mniej wygodnego odbierania plików, przyda się skonfigurowanie również pewnego folderu dostępu bezpośredniego do którego będziemy odbierać pliki od znajomych, w przeciwnym razie wylądują one w folderze piaskownicy - ale to szczegół, z resztą wysyłanie plików i tak rzadko działa w GG)

Możemy również zmodyfikować sobie skrót do GG tak, aby otwierał komunikator od razu w piaskownicy. W tym celu we właściwościach skrótu jako ścieżkę wpisujemy:

"C:\Program Files\Sandboxie\Start.exe" /box:Nazwa_Naszej_Piaskownicy "C:\Program Files\Nowe Gadu-Gadu\gg.exe"