Diaspora* w użyciu

Patrzyłem na projekt Diaspora* od dłuższego czasu i cały czas uważałem, że nie jest skończony i gotowy. Opis instalacji na Debianie przyprawia lekko o ból głowy, znajomi nie bardzo korzystają… Ale po zniknięciu plum.me (nadal niewyjaśnionym, wygląda jakby wyparowały wszystkie zabawki A. jednocześnie) powstała pustka, więc stwierdziłem, że spróbuję.

Diaspora logo

Źródło: https://en.wikipedia.org/wiki/Diaspora_%28social_network%29

Nie stawiałem swojej instancji Diaspory, tylko skorzystałem z porównywarki podów Diaspory i wybrałem diasp.eu – ma sporo użytkowników, jest SSL, bardzo dobry uptime, stoi w Niemczech. Pierwsze wrażenie: ten klon Facebooka nawet działa! I są jacyś ludzie! Można normalnie korzystać z hashtagów (obserwować je) i po chwili okazało się, że znalazłem polskich znajomych z netu. Całych dwóch, ale zawsze.

Posty zamieszczane na Diasporze formatuje się przy pomocy Markdown – nie jestem fanem, ale jest prosty i można przywyknąć, szczególnie, że jest prosta ściągawka dostępna od ręki. Możliwości bardzo podobne do HTML, tylko bardziej dla ludzi. Załączanie obrazków czy video działa. Są hashtagi.

Są  też – znane z FB – ignorowanie użytkowników, zgłaszanie postów, możliwość ustawienia avatara, wiadomości prywatne i ankiety. Można przypisywać użytkowników do grup oraz tworzyć własne grupy. Można zintegrować Diasporę z Twitterem, Facebookiem, Tumblr czy WordPressem. Nie testowałem, ale zdaje się (opis potwierdza), że chodzi o to, że robimy wpis na Diasporze i mamy możliwość jednoczesnego wysłania go na (wybrane?) serwisy. Jest możliwość eksportu zdjęć i treści.

Wszystko to oczywiście oparte o wolne oprogramowanie, z możliwością postawienia na własnym serwerze, szyfrowane (SSL), odporne na cenzurę wielkich portali i niezależne od nich (nie ma śledzenia, profilowania, reklam). Itd., itp. 😉

Dodatkowo w Diasporze jest funkcja, która może zastąpić bloga (w minimalnym wymiarze). I nie jestem pewien, czy do tego Diaspora* nie nadaje się najlepiej. Mianowicie posty oznaczone jako publiczne dostępne są w formie strony WWW z wygenerowanym kanałem RSS. Czyli tak naprawdę blog, gdzie komentować mogą wyłącznie zalogowani.

Wady Diaspory:

  • Brak API. Nie żartuję, projekt open source, mocno programistyczny i póki co nie ma API. Ewidentny strzał w stopę, bo bez API słabo da się zrobić sensowne klienty (zwł. mobilne).
  • Niezbyt intuicyjny interfejs. Bardzo subiektywne, niby jest ładnie i standardowo, ale jak raz mi mignął link do kanału RSS z publicznymi wpisami, to potem się go naszukałem… Chwilowe i szybko mija.
  • Soft niby działa i jest good enough, ale używając czuć, że nie jest w 100% skończony i doszlifowany. Niekrytyczne.
  • Mała popularność. Trochę samonapędzająca się wada, ale nie mogłem pominąć…
  • Brak edycji wpisu po zamieszczeniu. Oczywiście można usunąć i dodać jeszcze raz, ale trochę overkill, jeśli chodzi tylko o usuwanie literówek.

Wygląda, że Diaspora zastąpi mi plum.me, bo możliwości większe, a nie wszystko nadaje się na bloga/Twittera/FB. Kiedyś przedstawiano – przynajmniej takie miałem wrażenie – Diasporę jako nadchodzącą wielką wolną alternatywę dla FB. IMO nic z tych rzeczy – zwykły serwis i social network, trochę mniej dopracowany, trochę bardziej wolny. Jest łatwa, więc IMO warto spróbować.

UPDATE: Dodany brak edycji w wadach.

Konsekwencje prawa nieuniknionych konsekwencji

Ponieważ rysiek nie daje możliwości komentowania u siebie (a szkoda), będzie krótki wpis. Ryśkowe prawo nieuniknionych konsekwencji mówi o tym, że:

Jeśli coś jest technicznie możliwe,
jest praktycznie nieuniknione.

Zupełnie się z tym zgadzam. Osobiście wyznaję dość podobną zasadę, którą można streścić

Każde zdarzenie o niezerowym prawdopodobieństwie zaistnienia prędzej czy później nastąpi.

Trochę fatalistyczne, fakt (szczególnie w kontekście kolizji ciał w przestrzeni kosmicznej o niepomijalnej masie), ale sprowadzając do komputerów i bezpieczeństwa: każda baza zostanie wykradziona, każde dane prywatne ujawnione, każde hasło zostanie złamane. Prędzej lub później.

W kontekście Diaspory, która jest przytoczona przez ryśka jako remedium na problemy dotyczące ochrony prywatności m.in. na Facebooku

Zwyczajnie nie da się wprowadzić reklam lub sprzedać danych prywatnych wszystkich użytkowników tej sieci jednocześnie. jest to technicznie niemożliwe.

oznacza to, że da się zdobyć dane wszystkich użytkowników tej sieci. Jak? Wystarczy błąd w aplikacji. Jak trafnie zauważa Wiktor:

One wszystkie ze sobą gadają i mają ten sam, możliwy do sprawdzenia kod.

Wystarczy klasyczny 0 day, i jeśli tylko komuś będzie zależało na tych prywatnych danych, to zdobędzie je. Oczywiście nie wszystkie, bo albo jakiś serwer będzie offline, albo będzie nietypowo skonfigurowany, albo zwyczajnie admin zdąży go załatać. Albo nie zdąży zaktualizować do podatnej wersji.

Fakt, że oprogramowanie jest open source nie eliminuje prawdopodobieństwa wystąpienia błędu. Wystarczy wspomnieć błąd z OpenSSL w Debianie. Zresztą, chyba wszyscy pamiętamy o tegorocznym Heartbleed

Należałoby więc raczej mówić jedynie o zmniejszaniu prawdopodobieństwa zaistnienia zdarzenia, nie jego eliminacji. W tej chwili raczej nikt się na dane użytkowników Diaspory nie połasi, ale nie dlatego, że nie może, tylko dlatego, że się po prostu nie opłaca. Użytkowników Diaspory jest zwyczajnie za mało.

Wybory – sytuacja, pomysły

Początkowo z wyborami było trochę śmiesznie (no dobrze, śmiech przez łzy), zrobiło się trochę strasznie (okupacja PKW, nie ma zgody na kwestionowanie wyników przez miłościwie nam panującego, wygrana PSL). Pojawiły się też głosy o konieczności stworzenia otwartego, wolnoźródłowego systemu i inicjatywy w tym temacie. Cieszy, bo oznacza, że to nie moje paranoje i pomysł ma sens.

Trochę na FB pisałem, ale to znika, więc dla pamięci (i szerszego grona). Do głowy przyszedł mi wariant minimum. Zaznaczam, że bazuje na starych procedurach ręcznych (ale cóż więcej trzeba?) i starych, sprawdzonych technologiach, choć korzystając z nowych warunków.

Wystarczyłoby, żeby komisje wysyłały proste tekstowe dokumenty o ustalonym formacie (formatkę, czyli odpowiednik protokołu powinny dostać wcześniej) przy pomocy emaila (stara sprawdzona technologia, dobrze się skalująca). W ramach ustalenia autentyczności i tajności[1] podpisanego/zaszyfrowanego GPG. Oczywiście członkowie komisji (a przynajmniej 2-3 z każdej komisji) musieli by mieć potwierdzone klucze, ale z tym nie ma problemu – i tak są na szkoleniu dla członków komisji. Maila każdy w dzisiejszych czasach ma (wystarczą 2-3 osoby z komisji, powtórzę) i wysłać umie. Czyli tak, wysyłali by wyniki podpisane GPG z dowolnych, nawet prywatnych, darmowych kont. Potwierdzenie dostarczenia jest opcjonalne (delivery notification), ale dostępne w programach pocztowych, czyli komisja wie, czy/kiedy protokół dotarł do serwera poczty PKW. Z nowoczesnych dodatków i zwiększania wiarygodności – można załączyć „skany” papierowego protokołu. Wystarczy smartfon z aparatem (znaczy: smartfon)…

Po stronie serwera email PKW nic specjalnego się nie dzieje. Jeśli chodzi o dalszą część serwerową, to program do liczenia łączy się do serwera poczty, odbiera maila, na podstawie tematu przypisuje do komisji (albo z treści formularza…). Następnie weryfikuje autentyczność podpisu GPG i w przypadku zgodności parsuje plik tekstowy.

Gdyby pliki były wysyłane w dokładnie określonym formacie, to całość jest do naklepania w Perlu w parę godzin. No ale pewnie nie będą, bo maile umożliwiają dość dużą dowolność formatu wysyłki pliku i co program, to wynalazki… (szczególne ukłony w stronę Microsoft). Można się bawić oczywiście w napisanie prostego klienta poczty dla komisji. Zaleta rozwiązania jest taka, że po wyborach PKW może udostępnić publicznie wyniki. Albo wręcz przeforwardować wyniki z danej komisji wszystkim zainteresowanym, którzy np. wcześniej zgłoszą takie zapotrzebowanie.

W kontekście wysokiego wyniku PSL i ponownie sporej ilości głosów nieważnych dla przypomnienia kawałek historii:

wybory 2010 głosy nieważne

Źródło: http://uczciwe-wybory.pl/analiza-glosow-niewaznych-wyborach-parlamentarnych-2005-2007-2011-samorzadowych-2010/

W odpowiedzi na to kolejny pomysł – kamery w komisjach i albo streaming online, albo przynajmniej rejestracja i udostępnienie obywatelom bezpośrednio po wyborach[2]. Jeśli jest podejrzenie fałszowania głosów przez członków komisji (a właśnie o dostawianiu krzyżyków mowa), to powinno to rozwiązać problem. Plus obowiązek przebywania głosów „na oczach kamer” od momentu wyjęcia ich z urny do czasu sporządzenia protokołu przez komisję.

W ten sposób obywatele mieliby możliwość prostego zweryfikowania wyborów ze swojej komisji i nadzorowania pracy (przypomnę, po zamknięciu lokali poza członkami komisji i mężami zaufania obywatele nie mają dostępu do lokali).

[1] Tajność wygląda na zbędną. Wysyłki są dokonywane już po zamknięciu lokali, więc nie ma potrzeby utajniać wyniku.

[2] Zdaję sobie sprawę, że danych jest sporo i nakłady na infrastrukturę (kamery plus streaming) nie są małe. Być może wystarczyłaby możliwość montowania kamer (z publicznym streamingiem) przez obywateli.