neděle 26. listopadu 2017

Potřebují firmy mobilní aplikace?

V poslední době se častěji setkávám s tím, že se zvyšuje poptávka po psaní nativních mobilních aplikací. Tato potřeba je často inicializována společnostmi, které potřebují své pole působnosti rozšiřovat na mobilní platformě.

Na tom by asi nebylo nic neobvyklého, kdyby ovšem ona potřeba nebyla často způsobena neznalostí současného stavu a toho, co je a není dnes možné.

Před tím, než se dostaneme k technickému řešení, pojďme se podívat na současný stav. Stav z pohledu obyčejného uživatele...

Když si vzpomenu na dobu před 20 lety, tak si s úsměvem vzpomínam na to, jak jsem každý program, který jsem ve svém počítači měl, zkoumal do morku kostí. Důvod proč tomu tak bylo, byl jednoduchý. Neexistovalo příliš mnoho alternativ. Potřebovali jste správce souborů? Byl zde Norton Commander. Chtěli jste si zahrát střílečku? Pustili jste si Doom.

Ta doba byla jednodušší a složitější zároveň. Složitá byla z toho důvodu, že neexistoval internet (alespoň pro běžné uživatele) a jakékoli informace se často předávaly ústní formou.

Jednodušší byla ve výběru. Je psychologicky dokázáno, že čím víc variant máme, tím je menší pravděpodobnost, že si nakonec vybereme. Důvodem je to, že onen výběr na nás v konečném důsledku působí tak složitě, že onu volbu raději odložíme "na později".

Pokud tuto dobu srovnáme s tou dnešní, tak zjistíme, že uživatelé se chovají úplně jinak, než kdysi. Jsme zahlceni aplikacemi. Jsme zahlceni volbami. Chcete aplikaci na poznámky? Pusťte si Google Play a stáhněte si aplikaci na poznámky. Ale teď kterou, že? Kolik jich dnes máme? Deset? Dvacet? Možná tisíc. Volba se stala tím nejsložitějším, co řešíme. Dnes a denně.

A teď si představte, že do této džungle chcete vstoupit jako firma, která nabízí mobilní verzi vaší webové aplikace. Ať už jste společnost, která nabízí prodej šroubků, oken, či firma, která poskytuje různé služby.

Drtivá většina firem se ihned pustí do mobilního vývoje. Ať už pomocí svých zaměstnanců, nebo pomocí subdodavatele. Výsledkem je často aplikace, která stála milióny a její dopad je žalostný. Z povinnosti si jí stáhli zaměstnanci a pak pár kamarádů kolem.

Problém výběru je spojen i s překážkami, které musíme podstoupit. Abyste použili aplikaci na poznámky, jste nuceni pustit Google Play, aplikaci dohledat a poté nainstalovat. A to už někdy bývá tak složitá varianta, že jí uživatelé nepodstoupí.

Pokud se podíváme na chování uživatelů, tak zjistíme, že každý z nás je schopen ovládat a používat pouze omezený počet aplikací. Ať už se jedná o poznámky či vyhledání MHD spojů. Do toho se míchá další překážka.

Většina firem si totiž myslí, že na to, aby nějak upoutala pozornost, musí být unikátní. V případě loga a základních barev daného "brandu" je vše v pořádku. Ale v případě vizualizace a chování samotné aplikace tomu tak již není.

Pokud se opět vrátíme ke statistikám, tak zjistíme, že uživatelé často vyhledávají takový druh aplikací, které jsou podobné těm předešlým. Je fajn, že společnost pro nás připravila svůj unikátní UI frontend, ale nám se nechce učit jejich způsob ovládání.

Díky všem těm profesionálům, jako jsou UX designéři, máme na konci aplikaci, která je často unikátní. Unikátní ale natolik, že jí nakonec umí ovládat jen tester a programátor. Důvodem není to, že by tito lidé špatně odvedli svou práci, ale to, že po určité době trpí profesní slepotou.

Výsledkem našeho snažení je, že máme webovou aplikaci, mobilní aplikaci a tisíce hodin, které ještě před námi stojí, abychom svou práci dokončili.

A zde bych se zastavil....

Skutečně firmy potřebují nativní mobilní aplikace a unikátní vzhled?

Odpověď je samozřejmě, že NE.

Pokud jste si přečetli předchozí odstavce, mohli jste sami najít základní problémy, které se s tím spojují.

Rozdělme si je do dvou částí:

Nativní aplikace:
  • Nativní aplikace jsou drahé na vývoj
  • Nativní aplikaci je často nutné psát duplicitně (Android, iOS)
  • Nativní aplikace se složitě aktualizuje
  • Nativní aplikace se složitě testuje
  • Nativní aplikaci musí uživatel najít a nainstalovat
Uživatelské rozhraní:
  • Pokud je příliš unikátní, uživatelé mu nerozumí a nebudou se ho chtít učit
  • Musí se dobře adaptovat na daném zařízení (responsivní design)
  • Je náročné ho napsat tak, aby bylo co nejvíce identické na mobilu a webu
S těmito problémy se setkává velká většina firem. Ať už existence mobilní a webové verze slouží ke snížení požadavků na helpdesk, či řeší zvýšení prodejů jednotlivých produktů a nebo se snaží poskytnout novou službu. Vždy řeší, jak nejlépe najít kontakt se zákazníkem a ten si udržet. I když nejsem marketingový specialista, tak jsem specialista v IT s dlouholetou praxí tvorby frontendových aplikací.

A jakožto IT specialista Vám můžu garantovat, že pokud vytvoříte unikátní mobilní aplikaci, tak to budete mít velice těžké, i když budete poskytovat sebelepší produkt. Důvodem bude jen a pouze lenost nás uživatelů, protože se nebudeme chtít učit, jak se Vaše aplikace ovládá. Netoužíme po tom si jí instalovat z Google Play a nechat si zabírat dalších X desítek megabajtů (sakra, už takhle máme málo místa). A už vůbec netoužíme po tom, abychom si jí aktualizovali každý týden.

Jak z toho ven?

Odpovědí je Progressive Web Application a Material Design.

PWA aneb Progressive Web Application

PWA je termín, který před pár lety použil Google. Toto označení je použito pro webové aplikace, které používají modernější webové technologie.

Ve výsledku nejde o nic převratného z pohledu technologie. Jde pouze o to, že Google na Android zařízeních je schopen identifikovat takovouto aplikaci.

Abyste si to představili v praxi, tak je to tak, že v prohlížeči narazíte na webovou stránku, která je identifikována jako PWA. Webový prohlížeč Vám poté nabídne možnost tuto aplikaci přidat na plochu. Poté, co toto potvrdíte, máte možnost onu webovou aplikaci používat tak, že se tváří jako nativní.

Součástí této specifikace je něco, čemu se říká "service workers", který Vám umožňuje, aby Vaše aplikace šla používat i v offline režimu.

A v tom je asi největší rozdíl oproti klasické webové stránce. Onen offline režim je totiž naprosto potřebná vlastnost k tomu, aby takováto aplikace šla reálně používat.

Zeptejte se svým programátorů, zda vědí co je PWA a zda skutečně musíte dnes psát nativní aplikace. Často se totiž objevuje argument typu: potřebujeme geolokaci, potřebujeme notifikace. Všechno a mohem více již PWA aplikace totiž umí.

Otázkou není, zda je již na PWA čas. Otázkou spíše je, kdy touto cestou půjdete vy. Tedy tam, kde to technicky dává smysl.

Material Design

Pokud jsme mluvili o unikatním brandu jako hlavním požadavku marketingových specialistů, tak je dobré se zeptat, co to vlastně znamená. Pokud by totiž, do tohoto brandu, někdo, kromě loga a barev, míchal i věci jako jsou například formulářové prvky, menu, apod, tak vězte, že je to špatně.

Na toto si stačí udělat jeden lehký příklad. Spustťe si na Androidu Google Play. Umíte ho ovládat? Pustťe si na Androidu Gmail. Umíte ho ovládat? Pustťe si ....

Finále totiž je, že dnes máme možnost napsat aplikaci tak, aby použila stejné chování, stejné prvky a tím docílit toho, že naší aplikaci budou uživatelé schopni ovládat, aniž bychom museli provádět složité adaptace a školení.

Google to totiž udělal za nás. Dal nám Material Design a tím pádem i způsob, jak uživatelsky navrhnout naší aplikaci.

Unikátní cesta je cesta do neznáma... A pokud nejste Facebook, tak věřte, že cesta do pekla.

Material Design vychází z jednoduché myšlenky, která říká, že musíme klást větší důraz na dotyková zařízení. Současně s tím ale mít možnost použít toto rozvržení i ve webové aplikaci. Jinými slovy. Díky PWA máte aplikaci pouze jednu. Jednou je použita na webu a jednou v mobilu.

Abyste pochopili, proč je třeba formulářový prvek zbytečné navrhovat, podívejte se na výchozí chování v Material Design. Textové pole má svůj popisek, ve chvíli, kdy kliknete do tohoto pole, se popisek posune nahoru a vy stále vidíte, jaké pole vyplňujete. I když drobnost, tak si uvědomte, že šetřit místo je důležitý aspekt, každé správné mobilní aplikace.

Závěr

I když jsme často nuceni použít nesmyslné požadavky byznysu, někdy je dobré se zpět zeptat svých IT specialistů na to, zda se nevymýšlí kolo. Zda skutečně potřebujeme nativní mobilní aplikace a zda skutečně musíme navrhovat unikátní design, abychom se odlišili od zbytku světa.

Já mám v tomto ohledu jasno. Budu za PWA a Material Design bojovat všude, kde to jen půjde. A to ne z důvodu toho, že by v tom byl jen technický pohled, ale také z důvodu toho, že je to cesta, která může společnostem skutečně pomoci...

1 komentář:

  1. No. Připomenu, že se rýsují "semi-nativní" cesty, zejména takový Flutter vypadá, že napsat v něm app-ku je snažší než napsat PWA ;-P

    (Oups, I did it again!)

    OdpovědětVymazat

React a hrátky s TypeScriptem

V minulosti jsem se již několikrát zmiňoval, že používat JavaScript bez statických typů, je stejné jako jezdit na kole poslepu. Nemusí se...