Frontend

Na Froncie. Stos do zadań specjalnych

Grafika przedstawia postać opuszczającą się na linie w kierunku biurka i laptopa

Kojarzycie na pewno typową scenę wykorzystaną w niejednym amerykańskim filmie akcji, w której to uzbrojony po zęby zespół operatorów służb specjalnych wrzucając granaty hukowe, zjeżdża po linach do zabarykadowanego przez terrorystów pomieszczenia i w ciągu 30 sekund opanowuje całą sytuację. Czasami chcielibyśmy w taki sam sposób rozwiązywać problemy z naszymi produktami – szybko, spektakularnie i przede wszystkim skutecznie. Okazuje się, że – oczywiście zachowując odpowiednią skalę – jesteśmy w stanie to robić. Potrzebujemy tylko tak jak jednostki specjalne, wyszkolonego zespołu i zestawu narzędzi.

Na froncie

Załóżmy, że wpadacie na świetny pomysł nowego produktu – aplikacji, witryny, portalu. Nauczeni doświadczeniem, wiecie, że jego wspomnianą świetność zweryfikuje finalnie dopiero tzw. “Go-live” i testy na prawdziwych użytkownikach. Przyjmując również, że cykl wydawniczy zajmie co najmniej kilka miesięcy, odsuwacie ten moment weryfikacji i przez cały ten czas żyjecie w stresie, czy pomysł rzeczywiście okaże się strzałem w dziesiątkę. Przenosząc to na świat wojska, wygląda to na normalny proces planowania misji – zebranie żołnierzy, organizacja logistyki, zabezpieczenie zapasów, transport, zbudowanie bazy, okopanie się…

A gdyby tak przyspieszyć etap weryfikacji i zrobić to jak jednostki specjalne, a nie regularne wojsko?

Planowanie misji

Ten etap jest niezwykle ważny zarówno w działaniach wojska, jak i jednostek specjalnych. W przypadku wdrażania nowego produktu w pierwszym wypadku byłby to pewnie proces zbierania danych, analityki i wyceny. Gdyby przyłożyć jednak do tego metodologię działania „specjalsów” moglibyśmy ten etap przyrównać do realizacji Design Sprintu. Samo „planowanie misji” jest niezwykle ciekawym procesem, którym zajmiemy się przy innej okazji. Tymczasem przejdźmy do etapu, w którym dowódca krzyczy...

Go! Go! Go!

Mamy plan (wypracowany w drodze Desing Sprintu). Wiemy, co chcemy osiągnąć (testowalny prototyp naszego produktu). Teraz potrzebujemy już tylko zespołu i narzędzi.

Team Foxtrot. Team Bravo?

Kompletując nasz zespół do zadań specjalnych okazuje się, że do dowiezienia zaplanowanego produktu niepotrzebny jest nam zespół backendowy (nazwijmy go Team Bravo), a jedynie skromny, ale bardzo zwinny zespół frontendowy (Team Foxtrot). Taką strukturę umożliwia skorzystanie z modelu BaaS (Backend as a Service). Używając na przykład zestawu narzędzi Firebase jesteśmy w stanie wykluczyć potrzebę tworzenia backendu jako takiego (oczywiście na potrzeby stworzenia naszego produktu w wersji Proof of Concept).

Skrzynki z bronią

Lista dostępnych „broni” w arsenale Firebase jest wystarczająco długa, aby zrealizować większość zadań podczas takiej misji. Logowanie? Proszę bardzo. Wykorzystujemy moduł Authentication, który w zasadzie jednym kliknięcie pozwala nam stworzyć funkcjonalność logowania, wykorzystując jedną lub wiele popularnych dróg. Obecnie na liście znajduje się 12 dostępnych usług, w tym narzędzia autentykacji od Microsoftu, Google, Facebooka czy Apple.

W przytłaczającej większości produktów będzie nam potrzebna baza danych. Z tym też nie ma problemu. Firebase dostarcza dwa rozwiązania, różniące się nieznacznie zastosowaniem, które oparte są o model bazy dokumentowej: Firestore i Realtime Database. W większości przypadków, dla zobrazowania działania prototypu taka baza będzie w zupełności wystarczająca. Dzięki bardzo wygodnemu API i bibliotekom dostępnym dla większości popularnych frameworków korzystanie z bazy jest proste i intuicyjne.

Każdy z naszych produktów cyfrowych należałoby również gdzieś opublikować. To również nie przysporzy nam kłopotów. Moduł Hosting umożliwia publikację naszej aplikacji w zasadzie natychmiastowo. Działający system dostępny jest pod publicznym linkiem, w domenie domyślnie zabezpieczonej certyfikatem SSL w ciągu paru sekund – bez szukania dostawcy, bez konfiguracji, bez ręcznego podpinania certyfikatów, z automatycznie działającym skalowaniem w przypadku większego ruchu, z wbudowanym mechanizmem ochrony przed DDoS.

Aplikacja potrzebuje miejsca na dodatkowe pliki? Żaden problem. Wystarczy jednym kliknięciem uruchomić moduł Storage, z którym również skomunikujemy się poprzez API.

W osobnych przegródkach naszej skrzynki z bronią znajdziemy również moduły Functions i Machine Learning, które jeszcze bardziej pozwolą nam na rozbudowanie naszego Proof of Concept. Gdyby tego było mało, Firebase udostępnia cały moduł analityczny, którego podpięcie do naszej aplikacji nie zajmie więcej niż tylko kilka kliknięć myszą w konsoli. W jego ramach dostajemy dostęp do tak niezbędnych na etapie prototypu narzędzi, jak Predictions czy A/B Testing, a także znanych z Google Analytics: Funnels, Audiences czy Retention.

Jakby tego było mało, Firebase oferuje nam całą bibliotekę dodatkowych wtyczek (Extensions). Dzięki nim możemy na przykład wysyłać do użytkowników e-maile, skalować przesyłane obrazy czy tłumaczyć tekst korzystając z Google Translation API. Wszystko to, jak zwykle, w zasięgu jednego kliknięcia myszki.

Po stronie Frontendu sprawa jest równie prosta. Biblioteki “creat-react-app” i “firebase” to jedyne czego potrzebujesz, żeby zacząć pracę.

Powrót do bazy

Doświadczenie pokazuje, że korzystając z opisanych narzędzi, jesteśmy w stanie dostarczać działające prototypy aplikacji nie w miesiące czy tygodnie, nawet nie w dni, ale przy zespole znającym już swój arsenał dosłownie w ciągu godzin. Takie podejście do realizacji prototypów pozwala na kolosalne oszczędności, a także ułatwia weryfikację naszych założeń produktowych. Oczywiście takie podejście nie sprawdzi się w dłuższej perspektywie (tzn. realizacji docelowego, finalnego produktu), ale wiele elementów ze „zbrojowni” w takim końcowym produkcie nadal znajdzie dla siebie miejsce.

Zdjęcie profilowe Piotra Wegnera

Piotr Wegner

Lider obszarów Frontend i Product Design z kilkunastoletnim doświadczeniem w branży. Świeżo upieczony absolwent Executive Master of Business Administration IT. Change manager odpowiedzialny za promocję podejścia produktowego. FRISowy Wizjoner w myśleniu i Strateg w działaniu. Na pierwszy miejscu stawia ambicję oraz chęć działania – reszty można nauczyć każdego. Z Britenet związany jest od ponad 5 lat.