Gra Ingress – wrażenia

W Ingress grałem od początku października 2014 do początku stycznia 2015, czyli bity kwartał. Intensywność różna, choć najwyżej umiarkowana. Żadnych wielkich zrywów, maratonów itp. Ostatecznie osiągnąłem poziom 7 (i pół) z 16 aktualnie dostępnych w grze. Kiedyś było 8 poziomów. Wydaje mi się, że tyle wystarczy, by wyrobić sobie zdanie o produkcie.

Logo Ingress

Źródło: https://pl.wikipedia.org/wiki/Plik:Ingress_Logo_vector.svg

Czym jest Ingress?

Ingress – gra z gatunku MMO w systemie rzeczywistości rozszerzonej – tako rzecze Wikipedia w artykule nt. Ingress. I zasadniczo ma rację, bo nic dodać, nic ująć, ale własnymi słowami: gracze dzielą się na dwie drużyny (frakcje; Resistance i Enlightened) i działają za pośrednictwem urządzeń wyposażonych w GPS i dostęp do internetu (czytaj: smartfon) w wirtualnym świecie nałożonym na rzeczywisty. Działania graczy sprowadzają się do interakcji przy użyciu wirtualnego sprzętu z wirtualnymi portalami, umieszczonymi na interesujących bądź przynajmniej charakterystycznych elementach rzeczywistych (tablica, pomnik, most, grafitti, rzeźba itp.).

Gra jest tak skonstruowana, że nie ma konkretnego celu ani zakończenia. Ogólnie chodzi o to, żeby nasza frakcja zdobywała (w danym okresie/etapie) więcej punktów, niż frakcja przeciwna. Gracz poruszając się w świecie (rzeczywistym) zdobywa punkty akcji, które może wykorzystać do rozbudowy portali, linków (połączenia portali) lub pól (obszary ograniczone linkami) swojej frakcji lub niszczenia portali (linków, pól) frakcji przeciwnej. Jak widać, by móc działać wystarczy połazić po mieście, a przy odpowiednim balansie gra może trwać w nieskończoność. Sprytne.

Dodatkowo dochodzi element gamifikacji – poziomy, odznaki, osiągnięcia, statystyki, w tym także dotyczących działań w świecie realnym (np. ilość przebytych km w danym okresie czasu). Trzeba przyznać, że całość gry jest dobrze przemyślana i wciąga.

Jak grać w Ingress?

Kilka szybkich i ważnych porad dla początkujących, których nie znałem, gdy zaczynałem grać:

  • odległość od portalu w momencie stawiania rezonatora ma znaczenie – im dalej, tym lepiej, bo trudniej zniszczyć taki portal,
  • długość tworzonych linków nie ma znaczenia dla punktacji,
  • wielkość tworzonych nie ma znaczenia dla punktacji.

Więcej porad znajdziesz na stronie Ingress Resistance Poznań.

Jak można to wykorzystać?

Poza najbardziej oczywistą rzeczą, czyli poligonem dla autorów aplikacji opartych na GPS (poprawa algorytmów, zarówno lokalizacji, jak i działania programu typu oszczędzanie baterii, poprawa map), czy badaniem poruszania się/zagęszczenia ludzi w danym rejonie, widzę dla Ingress parę innych zastosowań.

Przede wszystkim, skłonienie użytkownika do podawania dokładnej lokalizacji otwiera drogę do serwowania reklam. Dokładnych reklam, dotyczących sklepów/usług w zasięgu wzroku. Jeśli połączyć to z wiedzą, czego szukał użytkownik ostatnio w sieci (apteka, szewc, zegarmistrz, karta SD, fryzjer), to robi się interesująco. A teraz dodajmy do tego wiedzę, ile czasu i w jaki sposób poruszał się użytkownik oraz np. stan baterii i można zaproponować np. jedzenie albo picie w miejscu oferującym możliwość doładowania telefonu (OTOH dziwię się, że tak się fast foody itp. nie reklamują…). Przypuszczam, że tego typu reklamy miałyby szanse być bardzo skuteczne.

Kolejna możliwość, to dobrze znane z różnych gier promocje czy kupne bonusy i power-upy. Ale nie w formie płacenia prawdziwymi pieniędzmi za czysto wirtualne przedmioty, tylko skrzyżowania z reklamą. Co prawda chyba jeszcze nie jesteśmy systemowo przygotowani na coś takiego, ale wyobrażam to sobie w sposób podobny do powyższego – kupujesz pizzę w określonym lokalu, wklepujesz kod z paragonu (ew. korzystasz z wbudowanych płatności…) i dostajesz przedmioty w grze.

Czemu przestałem grać w Ingress?

Nie ukrywajmy, choć niby można grać „przy okazji”, to zabawa w Ingress zajmuje trochę czasu. Nawet, jeśli gra się wyłącznie przy okazji, w drodze, to jednak tu i tam się przystanie, tu zwolni, parę minut z życiorysu znika. Kolejna sprawa to czas pracy urządzenia na baterii. Gra po prostu wysysa energię z akumulatorów i oznaczała u mnie dodatkowe ładowanie w ciągu dnia. Transfer też znika dość szybko – mi na umiarkowane granie przy okazji schodziło ok. 1 GB danych miesięcznie.

Gwoździem do trumny było jednak coś, co pojawiło się przy którejś aktualizacji: wymuszona zgoda na otrzymywanie powiadomień (zamieszczona poniżej). Czyżby przymiarka do opisanego wyżej sposobu wykorzystania? Nie wiem. Stwierdziłem, że enough is enough, przemyślałem za i przeciw i po prostu odinstalowałem grę.

Ingress licencja

Źródło: screenshot z aplikacji Ingress.

PS Wpis przeleżał blisko pół roku w szkicach, nie wszystkie informacje muszą być więc aktualne. Zdaję sobie sprawę, że grałem dość nietypowo, bo zupełnie bez aspektu socjalnego. Podobno ludzie spotykają się IRL w celu grania. Trochę zazdroszczę ilości wolnego czasu, ale fakt, Ingress może być fajnym pretekstem do wycieczek, spacerów, pozwala zwrócić uwagę na pewne aspekty rzeczywistości, które normalnie umykają itp. Z drugiej strony, jest to trochę chodzenie z nosem wlepionym w wyświetlacz, zamiast rozglądać się wokół.

HTTP czy HTTPS?

Wszystko zaczęło się od tego, że Wampiryczny blog zmienił sposób dostępu, wymuszając HTTPS. Skomentowałem pół żartem, pół serio. Dostałem odpowiedź w komentarzu, przeczytałem i trochę mi się włos zjeżył na głowie. Bo zdecydowanie o zużyciu energii ktoś nie pomyślał. Jak jestem zwolennikiem udostępniania treści po HTTPS i bardzo sobie ostrzę zęby na projekt letsencrypt.org, tak uważam, że wybór powinien być po stronie odbiorcy, a jedynie miejsca, gdzie są przesyłane wrażliwe dane (np. hasła) powinny mieć wymuszony HTTPS.

Postanowiłem zrobić mały test, czyli pobrać stronę po HTTP i zobaczyć, ile zostało pobranych bajtów (i w jakim czasie), a następnie to samo dla HTTPS. Jako system został użyty base system Debiana, uruchomiony w wirtualce (KVM), uruchomionej na laptopie. Jako stronę serwującą dokładnie to samo po HTTP i HTTPS dobrzy ludzie podrzucili stronę OVH. Google.com na ten przykład serwowało wgetowi nieidentyczną zawartość.

HTTP

$ ifconfig eth0 | grep "RX bytes" ; time for NUM in {1..20}; do wget --no-check-certificate -qO - http://ovh.pl/ >> out_http.txt; done ; ifconfig eth0 | grep "RX bytes"RX bytes:11251203 (10.7 MiB)  TX bytes:495042 (483.4 KiB)real    0m9.471suser    0m0.000ssys     0m0.772sRX bytes:14173253 (13.5 MiB)  TX bytes:583042 (569.3 KiB)

Jak widać wysłano 88000 bajtów, odebrano 2922050.

HTTPS

$ ifconfig eth0 | grep "RX bytes" ; time for NUM in {1..20}; do wget --no-check-certificate -qO - https://ovh.pl/ >> out_https.txt; done ; ifconfig eth0 | grep "RX bytes"RX bytes:14173313 (13.5 MiB)  TX bytes:583102 (569.4 KiB)real    0m13.938suser    0m0.000ssys     0m0.904sRX bytes:17387531 (16.5 MiB)  TX bytes:739702 (722.3 KiB)

Z kolei tutaj wysłano 156600 bajtów, a odebrano 3214218.

Podsumowując: HTTPS w tym teście był wolniejszy o 46%, przy korzystaniu z niego wysłane zostało o 78% więcej danych, a odebrano o blisko 10% więcej danych. Efekt, czyli pobrana zawartość jest dokładnie taka sama. Oczywiście ww. narzut procentowy będzie się różnił w zależności od rozmiaru pliku wynikowego, ale jak widać narzuty są spore.

Do prędkości bym się zbytnio nie przywiązywał, bo o ile za brak ruchu na wirtualce ręczę, to na lapku różne rzeczy się dzieją, choć generalnie idluje, a sam lapek zapięty po wifi. Niemniej, pomiarów było kilka, także dla mojej strony ze stanem rowerów na stacjach Nextbike. Wyniki podobne – wolniej i więcej przesłanych danych po HTTPS.

Dlatego przerażają mnie zmiany planowane zmiany w Chromium powodujące, że strony po odwiedzane po HTTP będą oznaczone jako niezaufane. Podobnie robi Mozilla. Rozumiem, że jeśli wysyłamy dane, zwł. z kamery czy mikrofonu, ba, jeśli cokolwiek wprowadzamy na stronie czy wysyłamy pliki. Ale sam odbiór? Trochę przesada. Tym bardziej, że istnieją narzędzia, do wymuszania HTTPS, jeśli ktoś ma taką potrzebę – choćby HTTPS Everywhere.

Zupełnie nie rozumiem podejścia Google do wykorzystania HTTPS jako sygnału rankingowego. Zdobycie certyfikatu nie jest problemem, a jak ruszy Let’s Encrypt, to już w ogóle. Znaczy rozumiem ideę, ale do sprawdzenia autentyczności, wystarczyłoby np. pobierać po HTTPS sitemap.xml. Czy tam robots.txt. Czy stronę główną.

Trochę zastanawiam się, po co ta nagonka. I mam wrażenie, że nie tyle o bezpieczeństwo chodzi (dobry pretekst, fakt), a o pieniądze. O ile certyfikaty tanieją i będą za darmo (ale czy wszystkie?), o tyle pewnie jest to pretekst do kolejnego wzrostu narzutu na ruch, nowych usług (terminowanie SSL na proxy czy CDN), wymiany pudełek itp. Nawiasem, jest nawet strona zachwalająca, jaki to TSL jest szybki, na współczesnych procesorach i nowym oprogramowaniu. Tyle, że nie. Ale nie omieszkam sprawdzić (na najnowszym Debianie), jak tylko Let’s Encrypt ruszy…

Zachęcam do polemiki. Polecenia podałem wyżej, można samemu sprawdzić, podać kontrprzykłady, pochwalić się konfiguracją z minimalnym narzutem na wersję szyfrowaną.

UPDATE: Poprawione polecenia (było dwa razy HTTP, zamiast raz HTTP i raz HTTPS). Bug przy przeklejaniu, wyniki są i były prawidłowe. W sumie jestem rozczarowany, że tak długo nikt tego nie zauważył.

Chromium pobiera zamknięty, potencjalnie naruszający prywatność kod

Do niedawna Chromium w Debianie pobierało niewolny, zamknięty, binarny fragment kodu po instalacji. Jest to oczywiście zachowanie sprzeczne z Umową społeczną Debiana. Co więcej charakter modułu i sposób jego działania (Chrome Hotword Shared Module – obsługa mikrofonu, rozpoznawanie mowy) nie wykluczają, że mogło dojść do naruszenia prywatności użytkowników tej dystrybucji, tym bardziej, że jest on pokrewny „podsłuchowi przez Google”, który opisywano na początku roku.

Jeszcze ciekawszy jest fakt, na który zwrócono uwagę, że nawet wyłączenie w opcjach przeglądarki tej funkcjonalności nie zapobiega ładowaniu czy uruchomieniu niewolnego modułu. Pojawiły się też pytania o to, w jaki sposób oprogramowanie wykorzystujące takie metody dystrybucji pojawiło się w Debianie oraz o to, czy Google powinno w ogóle być upstreamem. Pojawiły się też głosy, że zjawisko tego typu pojawia się coraz częściej.

W Debianie problem został poprawiony w najnowszej wersji pakietu.

Sam fakt pobierania binarnego dodatku nie jest ograniczony do Debiania, wywodzi się to z upstreamu Chromium w wersji 43, więc dotyczy wszystkich dystrybucji Linuksa z tą wersją. Zostało to zgłoszone do upstream Google.

Źródła:

  1. http://www.theregister.co.uk/2015/06/17/debian_chromium_hubbub/
  2. https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=786909
  3. https://code.google.com/p/chromium/issues/detail?id=491435