Dla aplikacji internetowych
Stoję na ekranie użytkownika. Wiem, gdzie co jest, i potrafię to nacisnąć.
Użytkownicy nie czytają dokumentacji — pytają. Dziś pytają dział wsparcia albo odchodzą. Wystarczy umieścić mnie w aplikacji, a zapytają mnie: otwieram właściwy ekran, przełączam zakładkę języka, wpisuję tekst — i zatrzymuję rękę nad przyciskiem „Zapisz”, dopóki nie usłyszę „tak”. Wiem, z którym użytkownikiem rozmawiam, widzę tylko jego dane, a gdy coś na ekranie wymaga uwagi, mówię o tym, zanim użytkownik to zauważy.
Do wypróbowania tutaj
To ekran aplikacji. Wystarczy poprosić, a go wypełnię.
Zwykły formularz, jaki mógłby być w Państwa aplikacji. Wypełnię pola, wybiorę plan — i zapytam, zanim nacisnę „Zapisz”. Zapisanie niczego nie wysyła — to demo.
Zobaczą Państwo, jak pracuję w naszym panelu — po rejestracji →Jak przygotować taki formularz — dla programistów →Co się dzieje w aplikacji, gdy już w niej jestem.
- «Przejdź do faktur za marzec.»
Znam ekrany aplikacji po ich adresach, więc otwieram właściwy — od razu z ustawionym filtrem, jeśli ekran przyjmuje go w adresie.
→ - «Wpisz adres dostawy z mojego profilu.»
Patrzę na ekran, znajduję pola, wpisuję dane i mówię użytkownikowi, co zastąpiłem. Zakładki, listy rozwijane, pola wyboru, suwaki, listy z przyciskiem «Dodaj» — obsługuję je tak, jak zrobiłby to człowiek.
→ - «Zapisz to.»
Nie zapisuję. Dopóki użytkownik tego nie powie: kliknięcia, którego nie da się cofnąć, nie wykonuję, tylko pytam — wystarczy odpowiedź własnymi słowami albo jedno dotknięcie. Albo raz mi powiecie, że w Państwa aplikacji mogę sam nacisnąć «Zapisz» po wypełnieniu formularza — to Państwa decyzja, nie moja.
→ - «Dlaczego przycisk Zapisz jest szary?»
Czytam ekran i odpowiadam na jego podstawie: które pole jest jeszcze puste, co mówi uwaga obok niego. Przy tym niczego nie dotykam.
→ - «Co powinienem tu zrobić?»
Zanim ktoś zapyta: gdy własna kontrola aplikacji coś wykryje na tym ekranie — niedokończoną konfigurację, import, który się wysypuje — podnoszę rękę w rogu i mówię jednym zdaniem, raz, a potem milczę tak długo, jak ustawicie.
→
</>
Wiem, z którym użytkownikiem rozmawiam — bo aplikacja mi to mówi, tak jak mówi się własnemu API.
Aplikacja przekazuje mi własny token użytkownika, gdy ten się loguje, a ja dołączam go do każdego zapytania wysyłanego do API. Dlatego «pokaż moje nieopłacone faktury» oznacza jego faktury, a ja nigdy nie trzymam tożsamości, w której mógłbym się pomylić. Token nie jest nigdzie zapisywany, nie trafia do logów i nigdy nie jest pokazywany modelowi.
Na współdzielonym komputerze wylogowanie czyści mnie do zera: rozmowę i pamięć o tym, kto to był.
</>
Co robi programista. Jeden raz.
- Ta sama jedna linijka co na każdej stronie.
- Wystarczy opisać mi ekrany. Każdy ekran to krótka notatka w panelu: wzorzec adresu (/orders/{id}), nazwa i to, do czego służy. Trasy z identyfikatorami są w porządku; identyfikator uzupełniam na podstawie tego, o co zapytał użytkownik.
- Wystarczy oznaczyć jeden przycisk, który zapisuje. Jeden atrybut przy przycisku Zapisz i wiem, czym na tym ekranie jest «zatwierdzenie». Pole oznaczone jako prywatne nigdy nie jest przeze mnie czytane. Całą resztę ustalam ze samej strony — etykiety, karty, listy rozwijane — a im lepiej ekran czyta się czytnikiem ekranu, tym lepiej czytam go ja.
- Przekaż mi użytkownika. Jedno wywołanie przy logowaniu, jedno przy wylogowaniu.
Nasz własny panel jest zbudowany dokładnie tak i tam się spotkamy po rejestracji: wystarczy poprosić mnie o zmianę koloru widżetu — i patrzeć.
Znaczniki — dla programistów →Jak wygląda kolejka zgłoszeń do wsparcia po miesiącu.
Mniej zgłoszeń, które w gruncie rzeczy są pytaniami.
«Gdzie jest…», «jak zrobić…» — odpowiedź pojawia się na ekranie, a sprawa jest już załatwiona.
Nowi użytkownicy, którzy sami trafiają, gdzie trzeba.
Bez samouczka, bez telefonu, w swoim języku.
Lista rzeczy, w których ludzie się gubią.
Zapytania, na które nie udało mi się odpowiedzieć na podstawie ekranów aplikacji, pogrupowane — to lista ekranów do poprawy.
To, co czytam na ekranie, ustawiasz sam
domyślnie wyłączone, tylko oznaczone pola albo wszystko.
To, co naciskam, też ustawiasz sam
nigdy, najpierw pytam albo zapisuję sam.
Dane Twoich użytkowników
trafiają do Twojego API na ich własnym loginie, nie na moim. Dane i kontrola →
Growth
Dla aplikacji to plan Growth.
Ekrany, działania na stronie, własne API i podniesiona ręka są w planie Growth: $29 miesięcznie, kredyty: 7000, strony: 3. Aplikacja z wieloma ekranami i wieloma użytkownikami będzie potrzebować planu Pro.