Mr. Grummel Pobierz aplikację
← Wszystkie notatki
PRODUKT 5 MIN CZYTANIA SZKIC — SIERPIEŃ 2026

Nauczyciel, który obserwuje twój kursor

Jego nastrój na stronie głównej nie jest przypadkowy – to obliczenie dystansu wykonywane przy każdym ruchu myszy, z celowym wyjściem awaryjnym dla każdego, kto w ogóle nie widzi, jak się porusza.

Przesuń kursor blisko przycisku listy oczekujących na stronie głównej, a narysowany obok niego Mr. Grummel się cieszy. Odsuń się, a stygnie – surowy, potem zirytowany, a odpowiednio daleko – wyraźnie wściekły, para i wszystko. Czyta się to jak postać, która cię zauważa. Pod spodem to zwykły wzór na odległość, wykonywany wewnątrz callbacku requestAnimationFrame przy każdym ruchu myszy: zadowolony poniżej 180 pikseli od środka przycisku, surowy poniżej 420, zirytowany poniżej 700, wściekły dalej niż to. Żadnego uczenia maszynowego, żadnego wykrywania intencji – cała paleta emocji nauczyciela sprowadzona do czterech liczbowych progów.

Jedna zasada, która wyprzedza dystans

Obliczenie dystansu ma klauzulę wyjścia: postaw kursor bezpośrednio na przycisku, a przestaje oceniać odległość i zaczyna świętować, a ten stan trzyma się, dopóki nie odejdziesz. Musi to wyprzedzać wszystko inne, bo moment, w którym jesteś na przycisku, to moment, w którym jego opinia o tobie przestaje mieć znaczenie. Postać, która wciąż parowałaby z wściekłości w trakcie kliknięcia, czytałaby zły sygnał dokładnie w chwili, gdy sygnał przestaje mieć znaczenie.

Quiz na stronie prowadzi powiązany, ale osobny system nastroju, oparty na odpowiedziach zamiast na pozycji kursora. Passa dwóch poprawnych odpowiedzi zdobywa „zadowolonego”; błędna odpowiedź podbija licznik eskalacji o jeden, z limitem trzech, a każda błędna odpowiedź zeruje też passę. Trzy błędne z rzędu i jest „wściekły”, z trzęsącą się kartką i odcieniem ekranu, które oba śledzą ten sam licznik. Odpowiedz potem poprawnie, a licznik cofa się o krok, zamiast całkowicie się zerować – zła seria kosztuje cię stopniowo, a dobra seria odzyskuje to w ten sam sposób.

Cztery liczby, jeden kursor, jeden nastrój. Postać nie odczytuje twoich intencji – kod odczytuje twój dystans, a postać to tylko część tego, co wolno ci zobaczyć.

Część, która musi zostać wyłączona

Śledzenie każdego ruchu myszy, żeby napędzać nieustannie aktualizowaną animację, to dokładnie ten rodzaj ruchu, po który sięga prefers-reduced-motion: reduce, więc nasłuchiwacz podążający za kursorem sprawdza to ustawienie raz, na wstępie, i w ogóle się nie podpina, jeśli jest włączone. To realny kompromis, nie darmowy: ktoś z tym ustawieniem wciąż dostaje dyskretne nastroje – najechanie, fokus, błędna odpowiedź w quizie wciąż działają – tylko traci ciągłą wersję „on obserwuje, jak się zbliżasz”. Wybraliśmy wersję, która w pełni respektuje to ustawienie, zamiast takiej, która rozwadnia ruch i wciąż wysyła jego część, bo ustawienie respektowane „w większości” to ustawienie, które nie jest respektowane.

Czego wciąż nie jesteśmy pewni

Metafora „zaangażowania” oparta na dystansie do przycisku to rozsądne przypuszczenie i nic więcej – ktoś, kto uważnie czyta stronę, trzymając kursor zaparkowany w kącie, wcale nie jest niezaangażowany, po prostu formuła, która zna tylko piksele, źle go śledzi. Nie sprawdziliśmy, czy system nastroju popycha kogokolwiek w stronę listy oczekujących, czy tylko zostaje zauważony i wywołuje uśmiech w danej chwili. To dwa różne rezultaty, a na razie mamy dowody tylko na ten drugi.

Nic z tego nie jest programem nauczania – to notatka o tym, jak zbudowana jest ta strona marketingowa, a nie coś, z czego pyta aplikacja. Jeśli wzory na odległość i nasłuchiwacze zdarzeń to rzeczy, z których wolałbyś być pytany, niż o nich czytać, dział Informatyka w aplikacji obejmuje prostsze klocki leżące u ich podstaw, zaczynając od Programowania.

Mr. Grummel zamienia takie fakty w pytania quizowe.
Wypróbuj quiz