Wygraliśmy.

Wiem, że to nie jest najbardziej wyrafinowany wstęp, ale nie mam lepszego. W połowie października, na hackathonie WUD Szczecin wspieranym przez Technopark Pomerania, nasz zespół zajął pierwsze miejsce. Grali Iggy, Tomek, Maks i ja.

Zadanie dała Filharmonia im. Mieczysława Karłowicza w Szczecinie. Tak, to ten biały budynek, który wygląda jak góra lodowa i który fotografuje każdy turysta w Szczecinie.

Hasło briefu brzmiało „Filharmonia zaczyna się online”.

Sam brief był natomiast rozbudowanym, wielowymiarowym zadaniem technicznym z dość precyzyjnie opisanym, nieosiągalnym ideałem. Filharmonia chciała mieć prostą, lekką i nowoczesną stronę. Taką, żeby na głównej zmieściło się wszystko.

A pod „wszystko” mam na myśli WSZYSTKO.

Koncerty symfoniczne, kameralne i jazzowe. Cykle i festiwale. EDUfilharmonię dla dzieci, rodzin, szkół, nauczycieli i młodych muzyków. Dwie galerie z własnym kalendarzem wystaw. Zwiedzanie budynku w trzech językach. Orkiestrę, solistów, nagrania i tournée. Projekty międzynarodowe. Strefę dla partnerów biznesowych i strefę mediów dla dziennikarzy.

I to wszystko na jednym ekranie telefonu.

Szczerze mówiąc, i ja, i reszta ekipy mieliśmy ochotę się poddać. Przy czym w momencie briefu nie byliśmy jeszcze nawet zespołem. Tak, tak: wygrała drużyna, która poznała się dopiero po przeczytaniu zadania. Wcześniej każdy z nas był wolnym strzelcem.

To nie był hackathonowy temat. Oj, nie był. Nawet nie blisko. Czuć było przy nim zapach kawy z automatu i open space'u.

Sporo czasu zajęła nam więc rozkmina, co tak naprawdę chcemy zrobić. Jasne było tylko jedno: nie chcemy robić tego, co jest w briefie.

Zaczęliśmy szukać czegoś, czego dałoby się złapać. Start był o 18:00 i dopiero po kilku godzinach dyskusji znaleźliśmy w briefie zasadę, która się do tego nadawała:

„Użytkownik nie musi znać Filharmonii, żeby umieć korzystać z jej strony.”

Brzmi prosto. Nie jest.

Odpowiedzią okazał się debiutant.

 

Debiutant

Filharmonia chciała dotrzeć do ludzi, którzy jeszcze nie wiedzą, że lubią muzykę klasyczną. Do debiutantów.

Problem z debiutantem polega na tym, że on na stronę filharmonii nie wchodzi. Siedzi w piątek wieczorem w domu i nawet mu przez myśl nie przejdzie, żeby iść na koncert. A jeśli przejdzie, od razu pojawiają się pytania. W co się ubrać? Kiedy klaskać? Czy wypada nie znać Mahlera? Co, jeśli zasnę w drugiej części?

Najpierw trzeba dać człowiekowi powód, żeby w ogóle tam trafił. Potrzebna była kampania.

Tak powstało „Zaplanuj swój pierwszy raz”.

Tak. Dokładnie tak to brzmi.

Delikatna dwuznaczność, pary na zdjęciach, puszczone oko. Dla publicznej instytucji kultury to spacer po bardzo cienkiej linii między „sprytne” a „niesmaczne”. Przyznaję, że przez chwilę patrzyliśmy na siebie z pytaniem, czy na pewno chcemy to pokazać jury.

Chcieliśmy. I dobrze.

 

Co właściwie zbudowaliśmy

Kampania prowadzi do minimalistycznej aplikacji mobilnej z jednym celem: pomóc zaplanować ten pierwszy wieczór.

Na pierwszym ekranie są zmieniające się co jakiś czas zdjęcia filharmonii i raptem sześć przycisków. Nic więcej. Żadnej karuzeli z dwunastoma banerami, żadnego menu na pół ekranu i żadnej „Wojny i pokoju” o wszystkim, co oferuje filharmonia, choć brief właśnie tego chciał.

Jedno podświetlone CTA, a potem trzy pytania, po jednym na ekran. Wolisz słuchać czy oglądać? Klasycznie czy nowocześnie? Wystawa czy architektura?

Bez filozofii.

Dalej są karty z prawdziwymi wydarzeniami z repertuaru, które przesuwa się jak w Tinderze. W prawo „chcę”, w lewo „nie dzisiaj”. Na koniec dostajesz plan wieczoru: co, kiedy, jak dojechać, jak się przygotować i ile biletów potrzebujesz. Jest też wybór miejsca na interaktywnej mapie sali.

A obok tego wszystkiego działa asystent głosowy. To była moja działka, więc pozwolę sobie poświęcić mu chwilę.

 

Asystent

Założenie było proste. Skoro i tak trzeba gdzieś zmieścić wszystko, co filharmonia oferuje, a nawet więcej, to czemu nie zrobić alternatywnego interfejsu na skróty? Wchodzisz i po prostu mówisz, na co masz ochotę. Asystent zna wszystkie usługi, przeszukuje kalendarz wydarzeń i doradza.

W ten sposób całą tę nieszczęsną „Wojnę i pokój” zmieściliśmy pod jednym przyciskiem.

Pod spodem siedzi backend w Go, baza SQLite z repertuarem zebranym parserem z publicznej strony Filharmonii i agent, który sam decyduje, czego potrzebuje. Wyszukiwanie jest hybrydowe: pełnotekstowe FTS5 plus embeddingi. FTS5 łapie „Mozarta”, embeddingi łapią „coś spokojnego na randkę”. Do tego dochodzi baza wiedzy dla odwiedzających, czyli parking, szatnia, dress code i te wszystkie pytania, których debiutant wstydzi się zadać na głos człowiekowi.

Maszynie się nie wstydzi. To zresztą cała idea.

Odpowiedź jest czytana na głos strumieniowo, więc nie trzeba czekać, aż model skończy myśleć. Liczby są wymawiane po ludzku. Po odpowiedzi można od razu zadać kolejne pytanie, bez klikania. Asystent pilnuje też tematu, więc pytanie o przepis na pierogi zostaje grzecznie odbite.

 

Noc

Pierwszy commit w repozytorium jest z 21:05. Tak, naprawdę potrzebowaliśmy sporo czasu, żeby ruszyć. To nie był łatwy rozruch.

Ostatni commit jest z 7:58 następnego dnia. Pracowaliśmy całą noc i pomiędzy tymi godzinami jest ich osiemdziesiąt pięć.

Nie będę udawał, że pisaliśmy to wszystko ręcznie. Każdy z nas pracował z agentem, a na hackathonie widać to jak nigdzie indziej. Jeszcze rok temu jedenaście godzin wystarczało na ładny prototyp w Figmie i jeden klikalny ekran. W tym roku wystarczyło na działającą aplikację: kalendarz z filtrami, trzy wersje językowe, panel dostępności z czcionką dla osób z dysleksją, mapę sali, wyszukiwarkę hybrydową i asystenta głosowego.

Moim zdaniem nie zmieniło się samo pisanie kodu. Zmieniła się decyzja, co w ogóle warto zrobić. Kiedy implementacja jest tania, najdroższym zasobem staje się pomysł i gust. A tutaj Iggy z kampanią i designem oraz Tomek, który z naszego UX-a zrobił MEGA UX, odwalili robotę, której żaden model by za nas nie wymyślił.

 

Czego się nauczyłem

Najlepsza technicznie rzecz, jaką zrobiliśmy tej nocy, nie wygrała hackathonu. Wygrał go pomysł, żeby zaryzykować i odezwać się do ludzi tak, jak się do nich mówi, a nie tak, jak instytucja zwykle mówi do „odbiorców”.

Poszliśmy w tę głupkowatość all-in. Absurd był rozkręcony na maksa od pierwszej sekundy prezentacji.

Gdzieś koło trzeciej w nocy wpadłem na genialny pomysł, żeby dodać na stronie głównej skrzypce. Mazałeś palcem po ekranie i grałeś.

Zgadnijcie, jak zaczęła się nasza prezentacja.

Głośno. I kakofonicznie.

Ale, jak widać, przyniosło to swój efekt.

Kod był potrzebny, żeby jury mogło wziąć telefon do ręki i zobaczyć, że to działa. To dla mnie ważna lekcja także w codziennej pracy z klientami. Strona, sklep czy aplikacja to tylko połowa roboty. Druga połowa to powód, dla którego ktoś w ogóle ma na nią wejść.

Dziękuję Filharmonii za odważny brief, organizatorom za noc, której mój kręgosłup nie zapomni, a drużynie za to, że była naprawdę FANTASTYCZNA.

 

Dzięki za przeczytanie.