POIT #053: Tworzenie aplikacji mobilnych

Witam w pięćdziesiątym trzecim odcinku podcastu „Porozmawiajmy o IT”. Tematem dzisiejszej rozmowy jest tworzenie aplikacji mobilnych.

Dziś moim gościem jest Krzysztof Wojewodzic – CEO Escola S.A, software house’u specjalizującego się w tworzeniu aplikacji mobilnych. Posiada background akademicki w technologiach IT i zarządzaniu. Prelegent i od niedawna podcaster.

W tym odcinku o tworzeniu aplikacji mobilnych rozmawiamy w następujących kontekstach:

  • skąd wynika ich fenomen?
  • czy często są one jedynie biednymi kuzynami strony WWW?
  • co to jest podejście mobile first?
  • jakie są podstawowe etapy ich tworzenia?
  • czy korzysta się z prototypowania podczas ich budowy?
  • czy klient najczęściej zamawia od razu na Android i iOS?
  • czy te platformy mają dużo różnic?
  • jak sprawdzają się platformy hybrydowe typu React Native czy Xamarin?
  • jak w praktyce testuje się takie aplikacje?
  • jak w praktyce utrzymuje się takie aplikacje?
  • czym jest marketing aplikacji mobilnych?
  • czy wykorzystuje się machine learning i wirtualną rzeczywistość?
  • jak rynek aplikacji mobilnych wygląda w Polsce w porównaniu do innych krajów?
  • w którym kierunku ta branża będzie się rozwijać?

Subskrypcja podcastu:

Linki:

Pozostańmy w kontakcie:

 

Muzyka użyta w podcaście: „Endless Inspiration” Alex Stoner  (posłuchaj)

Transkrypcja podcastu

To jest 53. odcinek podcast Porozmawiajmy o IT, w którym z moim gościem rozmawiam o tworzeniu aplikacji mobilnych oczami właściciela Software House w nich się specjalizujących. 

Przypominam, że w poprzednim odcinku poruszyłem temat drogi do zostania Android Developerem

Wszystkie linki oraz transkrypcję dzisiejszej rozmowy znajdziesz pod adresem porozmawiajmyoit.pl/53

Chcę poszerzać horyzonty ludzi z branży IT i wierzę, że poprzez wywiady takie jak ten i publikowane podcasty, będę to robił z sukcesem. 

Ja się nazywam Krzysztof Kempiński i życzę Ci miłego słuchania. Odpalamy!

Cześć, mój dzisiejszy gość to CEO Escola s.a – Sofware house specjalizującego się w tworzeniu aplikacji mobilnych. Posiada Background akademicki w technologiach IT i w zarządzaniu. Jest prelegentem i od niedawna również podcasterem, o czym pewnie powie. Mój dzisiejszy gość to Krzysztof Wojewodzic. Cześć Krzysztof, bardzo mi miło gościć Cię w podcaście.

 

Cześć Krzysztof, cześć wszystkim.

 

Właśnie powiedziałem, że Krzysztof zajmuje się, czy też na tą chwilę pewnie najwięcej swego czasu poświęca na prowadzenie Software House, który tworzy aplikacje mobilne i właśnie o aplikacjach mobilnych trochę sobie porozmawiamy, ale tak jak możecie sobie zobaczyć, nagrałem już kilka odcinków takich bardziej technicznych, o iOS, o Androidzie. Natomiast w dzisiejszym odcinku chciałbym porozmawiać o tworzeniu aplikacji mobilnych bardziej całościowo, trochę z punktu widzenia osoby, która prowadzi tego typu biznes, ale też pod kątem spojrzenia na cały proces wytworzenia aplikacji mobilnej. Ja zawsze zadaję pytanie-Krzysztof, czy słuchasz podcastów, jeśli tak to, jakich najczęściej, co mógłbyś polecić?

 

Podcasty to jest świetna sprawa jak dla mnie, kiedy biegam, kiedy spaceruję z dzieckiem, także ostatnio przyznam, jeżeli chodzi o IT, to są dwa moje ulubione-Porozmawiajmy o IT, więc bardzo mi miło być gościem jednego z moich ulubionych podcastów, jak i Biznes w IT Piotrka Budzkiego. Oba te podcasty to dla mnie jest super wiedza i inspiracja do założenia naszego podcastu, który prowadzimy od niedawna z Jędrzejem, od 5 miesięcy, który się nazywa Escola Mobile i faktycznie jest to jedyny podcast na razie w Polsce poświęcony technologiom mobilnym, także można powiedzieć, że masz Krzysztof właściwego gościa na właściwym miejscu, bo faktycznie zajmuję się technologiami mobilnymi właściwie od 3 lat nieprzerwanie i udało mi się rozwinąć tę firmę Escola w dość krótkim czasie, skupiając się tylko wokół Mobile. Z zagranicznych podcastów, to wbrew pozorom preferuję książki zazwyczaj od podcastów, ponieważ te najlepsze podcasty mam wrażenie, niestety już są tak mocno zpozycjonowane, tak mocno wyreklamowane, że przyznam, że odrobinę mnie to zniechęca, ale może jeszcze nie trafiłem na ten dobry.

 

Jasne, Waszego podcastu słucham też, doceniam. Jest to dla mnie możliwość rozszerzania wiedzy, jeśli chodzi o mobile. W odcinku (oczywiście zalinkujemy), a też zapraszam do tego, żeby w aplikacji, w której słuchacie podcastów, wyszukać sobie podcastu Escola, z pewnością będzie to dla Was wartościowa treść. Ok, to co? Przechodzimy do tych aplikacji mobilnych. Na początku chciałbym Cię zapytać, skąd w ogóle wynika fenomen aplikacji mobilnych? Czy to jest taka realna potrzeba użytkowników, którą próbuje się zaspokoić? Czy może jest to raczej element takiego prestiżu dla firm, że po prostu warto mieć swoją aplikację mobilną, natomiast jest to raczej element taki dodatkowy do biznesu? Co Ty o tym myślisz?

 

Ja może powiem, jak u mnie się zaczęła przygoda z aplikacjami mobilnymi. Ja robię w życiu IT różne rzeczy. Najwięcej jednak poświęciłem firmom produktowym. Miałem przyjemność zakładać pierwszą szkołę językową online, która odniosła dość duży sukces zarówno w Polsce, jak i w kilkunastu krajach na świecie i w 2013 roku, żeby promować naszą szkołę języka online, zrobiliśmy aplikację. Wyobraź sobie nasze zdziwienie, kiedy w krajach tak egzotycznych, jak Meksyk, Kanada (egzotycznych z poziomu Wrocławskiej firmy) znaleźliśmy się na pierwszym miejscu w kategorii edukacja. Naszą aplikację pobrało pół miliona osób w dość krótkim czasie. Nagle okazało się, że liczba rejestracji szybuje na księżyc, a de facto nie poświęcamy ani złotówki na promocję. To był 2013 rok i to był taki początek tego boom mobilowego. Potem tę firmę sprzedałem, natomiast kiedy wróciłem do biznesu IT, już jako właściciel Software House, kupiłem 4 małe Brandy, małe Software House i patrzyłem, które z nich się bardziej rozwija. Czy te związane z animacjami, z technologią frontendowymi, webowymi, czy mobilnymi, no i wrzucając nowych klientów w Excela i dotychczasowych klientów, znowu wyniki jasno wskazały-Mobile to jest to, w roku 2016. No i właściwie do dzisiaj nic się nie zmieniło. Mobile jest dla mnie po prostu zjawiskiem rosnącym, ale nie tylko dla mnie. Jeżeli popatrzymy na statystyki, choćby ruchu w internecie, mobile vs. desktop, czy wydatki choćby w E-commerce, Mobile vs. desktop, widzimy, że te wzrosty są ogromne po stronie telefonów. Dlaczego tak się dzieje? Dlatego, że jest to urządzenie, które mamy cały czas przy sobie. 95% czasu jesteśmy w odległości mniej niż metra od naszego telefonu. No bo zazwyczaj, nawet kładąc się spać, odkładamy go na szafkę nocną i jest bardzo blisko nas. Już nie wspominam o ewenemencie zabierania telefonu do toalety i to ile mądrych myśli na Facebooka, czy LinkedIna powstało właśnie z toalety [śmiech]. To jest po prostu narzędzie, które jest dosłownie przedłużeniem naszej ręki. Są badania, które porównują poziom stresu związanego ze zgubieniem telefonu. Jest to mniej więcej porównywalne z sytuacją ataki terrorystycznego lub katastrofy. Ludzie po prostu czują, jakby utracili kontakt ze światem, kontakt ze swoimi znajomymi, mają takie bliskie odczucie. Nie wiem, czy pamiętasz określenie PC, już teraz rzadziej używane-Personal Computer, że to jest moje, tego nie powinno się ruszać, to jest osobiste. Tak naprawdę telefon jest czymś takim PC do potęgi, to jest tak personalne, praktycznie każdy ma to zahasłowane na siebie i nawet nie daje tego używać swojej małżonce, czy dziewczynie, co więcej nie ma na to jakiś twardych danych, ale spodziewam się, że najczęstsze odkrycie i problemy w związkach-odkrycie zdrady, to jest właśnie telefon w dzisiejszych czasach. Przypadkowo odpalony, gdzieś zostawiony i tak dalej…także po prostu to jest coś dla nas niezwykle osobistego, co wpływa zarówno na nasze życie osobiste, jak i na biznes. A jak już mówimy o stylu życia osobistego i biznesu, to coś, co mnie najbardziej fascynuje w mobilu jako zjawisku, jest właśnie zmiana nawyków użytkownika. Co mam na myśli przez zmianę nawyków? Pewnie 10 lat temu powiedziałbyś swojemu dziecku, nigdy nie wsiadaj do samochodu, nie daj się zagadać obcym ludziom, a dzisiaj, gdy chcesz, żeby Twoje dziecko wróciło do domu, to powiesz-no to weź Ubera. Czyli de facto pozwalasz swojemu dziecku wsiąść z obcą osobą, która nie ma kwalifikacji do prowadzenia tego auta, nie zna miasta, często nie zna języka i godzimy się na to. To jest ogromna zmiana nawyku na Airbnb, nauczyliśmy się rozmawiać, wynajmować mieszkania od też totalnych nieznajomych, bez żadnych ubezpieczeń, gwarancji, statusu tego, ale internet i te technologie mobilne dają nam takie niezwykłe poczucie bliskości. Na Bla Bla Car wsiądziemy z nieznajomym do auta, na Uberze...w Airbnb będziemy spać u nieznajomych.

 

Dokładnie, czyli nie da się inaczej powiedzieć jak o fenomenie, właśnie tak jak powiedziałeś, no to liczne implikacje, na to, w jaki sposób się zachowujemy, w jaki sposób żyjemy. Myślę, że do tego tematu jeszcze wrócimy. Ja chciałem jeszcze podciągnąć pod taki rys trochę historyczny, to, w jaki sposób te aplikacje się kształtowały, bo niekiedy spotykam się właśnie z aplikacjami mobilnymi, które są takim można powiedzieć biednym kuzynem, innego, pełnoprawnego produktu, najczęściej aplikacji webowych, bo z tym pewnie mamy do czynienia. Chciałem Cię zapytać pod kątem doświadczeń, które macie jako Escola, czy to jest częsty przypadek, że ta aplikacja mobilna jest takim dodatkiem, czy też może jest raczej odwrotna tendencja? Odwrotne podejście do tego, żeby najpierw powiedzmy stworzyć aplikację mobilną i od tego rozpocząć tworzenie biznesu, albo na tym oprzeć tworzenie biznesu i dokładać inne klocki jako kontynuację właśnie tej pierwotnej myśli?

 

Niewątpliwie boom na mobile, który zaczął się w 2010/11 roku sprawił, że wszyscy zapragnęli mieć aplikację mobilną. Tylko że z posiadaniem aplikacji mobilnej jest jak z posiadaniem dobrego samochodu, to znaczy, trzeba na to wydać pieniądze. Zresztą ta metafora jest bardzo stosowna też, jeżeli chodzi o wydatki. Dlatego, że aplikacja mobilna i jej stworzenie, kosztuje mniej więcej tyle, co zakup samochodu. Można zrobić aplikację za 50 tysięcy złotych, czyli za tyle, za ile kupimy Fiata Tipo z klimatyzacją i radiem, ale nie będziemy mieli tam jakiś super bajerów. Jeśli chcemy zrobić bardziej zaawansowaną aplikację, wydamy na to 100, 200, 300 tysięcy. A jeżeli oczywiście chcemy mieć Maybacha, bo to ma być potężna aplikacja, rozbudowana, łączyć się z wieloma systemami, to tak jak Maybach, będziemy musieli za nią zapłacić milion złotych, czy milion dolarów, czy nawet więcej. Faktycznie część firm zapragnęło zrobić aplikację po kosztach, no i to nie zawsze źle się skończyło, to znaczy znam aplikacje w Polsce, które mają 2 miliony pobrań, których wytworzenie kosztowało niedużo pieniędzy. Ponieważ ich wartość jest ogromna, wartość użytkowa. Jak popatrzysz na wiele aplikacji, jeżeli one niosą wartość i zmieniają nawyki, to mogą być bardzo wartościowe, nawet jeżeli technologicznie nie są rozbudowane. Popatrz na aplikację Yanosik, czy ta aplikacja jakoś powala nas niesamowitym designem? Wixem?

 

Z posiadaniem aplikacji jest tak, jak z posiadaniem dobrego samochodu. 

 

Nie, nie.

 

Nie, ale ona spełnia swoją funkcję. Nie chcemy płacić mandatów, a dużo osób w Polsce chce jeździć niezgodnie z przepisami. Aplikacja Qpony? Jest wiele aplikacji, które po prostu ściągamy ze względów użytkowych bardziej, niż technologicznych. Natomiast faktycznie klienci wiedzą coraz częściej, że nie jest łatwo przekonać klienta do pobrania aplikacji. Jest bardzo duża konkurencja. Jeśli popatrzysz na krajobraz aplikacji retailowych, masz aplikację Biedronki, Lidla, Żabki, Rossmanna, Intermarche, Carrefour, Tesco-każda z tych sieci sklepów ma w tej chwili swoją aplikację. No i jeżeli otworzysz je wszystkie na telefonie, to zobaczysz drastyczną różnicę, aplikacja Biedronka jest oceniana na 1,6, właściwie nie wiadomo czemu ona służy, wygląda jak biedny kuzyn weba, wygląda dużo gorzej, niż ich strona internetowa. Sam często się zastanawiam, czemu tak robią. Może to jest forma skuszenia Ciebie, że tak bardzo oszczędziliśmy na aplikacji, że dzięki temu kupisz tanio swoje produkty [śmiech] i zdarzają się takie sytuacje. Natomiast, jeżeli popatrzymy na inne porządne aplikacje, właśnie choćby wspomnianego Lidla, czy Rossmanna, to widać, że ktoś zainwestował, że to jest dopieszczone, że to jest zgodne ze wszystkimi standardami. Te standardy są dość dobrze opisane, są pewne standardy wielkości przycisku, są standardy jak zrobić wyraziście zdjęcia, czy nawet pozycjonować aplikacje w App store, czy Google Play, tak żeby klienci mogli je łatwo znaleźć. Także widać, że te dobre aplikacje przestrzegają tych wszystkich zasad i nie ma tu jakieś specjalnej filozofii, jak zrobić dobrą aplikację mobilną. To jest kwestia tylko tego budżetu, który przypomnę, jest mniej więcej odpowiedni budżetowi, zakupowi samochodu, albo chcemy Fiata Tipo, albo chcemy BMW. Oczywiście inna będzie aplikacja, która ma bardzo szybko działać, inna będzie, jeśli ma być przede wszystkim komfortowa w użytkowaniu. Tak jak różnią się między sobą samochody. Natomiast kluczowa jest właśnie użyteczność aplikacji. I tu można powiedzieć, że technologie aplikacyjne bardzo ewoluują, to znaczy jeszcze 3 lata temu tworzono aplikacje, to wszyscy mówili-trzeba robić je natywnie. I faktycznie wszystkie dobre aplikacje robione są technologiami natywnymi, czyli w iOS to był C#, teraz jest Swift, a w przypadku Androida to jest po prostu SDK Androidowe oparte na Javie, teraz Kotlin. Natomiast są już w tej chwili dobre frameworki, dobre języki jak Flater, czyli native,, które pozwalają na całkiem niezłe osiąganie wydajności aplikacji, pisząc tylko jeden raz aplikację, ewentualnie dopisując jakieś drobne elementy. Z React Native korzysta Facebook i nie widzimy, żeby ta aplikacja jakoś gorzej działała, niż aplikacje natywne. Także ta technologia cały czas ewoluuje, oczywiście pewne języki, czy frameworki, które jeszcze 2-3 lata temu wydawały się jakoś obiecujące, jak choćby Ionic, czy Xamarin, troszeczkę spadają, ale to się cały czas zmiania. No i wreszcie jest kwestia PWA, czyli Progressive Web Applications, czyli coś, co niektóre firmy sprzedają jako nowe aplikacje, a tak naprawdę to jest po prostu bardzo dobrze zrobiona strona internetowa. Myślę, że chwilę później o tym opowiemy w szczegółach, bo to nie jest wszystko takie proste, ale chcę powiedzieć, że technologie tworzenia aplikacji ewoluują, można to robić coraz taniej, natomiast jednocześnie coraz trudniej jest namówić klienta na pobranie aplikacji, ponieważ jest ich już tak dużo. W Google Store to jest 2,5 miliona aplikacji, w iStore to będzie około 2 milionów aplikacji, no i niestety większość z nich nie przebije 2,5 tysiąca pobrań, a pamiętajmy, że wiele aplikacji, jakby większość czasu użytkownicy korzystają z Facebooka, z Massengera, czy WhatsApp, więc konkurencja jest po prostu bardzo duża.

 

Jasne. To o czym powiedziałeś, to jest taka droga, kiedy zgłasza się do Was klient, który posiada już jakiś biznes, być może stronę, być może jakieś produkty i próbuje do tego dołożyć aplikację mobilną, która w jakiś sposób da takie dodatkowy kanał…na przykład kontaktu, sprzedaży, czy jakiś innych interakcji. Z drugiej strony możemy mieć też takie podejście Mobile First, kiedy wszystko rozpoczyna się od tej aplikacji mobilnej, dajmy na to Instagram, to jest de facto aplikacja, która powstała z takim podejściem Mobile First, czyli na początku tylko i wyłącznie aplikacja mobilna. Czy często spotykasz się z tego typu aplikacjami, czy to raczej jest taki trend, o którym mógłbyś powiedzieć, że jest wznoszący, czy raczej nie ma to jakiegoś szczególnego przełożenia na rynek?

 

Na pewno łatwiej jest wykołować aplikację istniejącemu produktowi. Weźmy banki, prawie każdy z nas ma w telefonie swoją aplikację, swojego banku. Masz konto w PKO, no to pewnie masz aplikację PKO. Statystyki są takie, że 4 miliony osób w Polsce ma aplikację PKO. Masz konto w Santanderze? Masz aplikację Santandera. Oczywiście dużo łatwiej jest przekonać klienta, żeby ściągnął aplikację, jeśli już korzysta z jakieś gamy produktów. Jeśli tankujemy często na Orlenie, prawdopodobnie będziemy chcieli skorzystać z aplikacji Orlen Mobile, gdzie możemy tankować i zapłacić za tankowanie bez podchodzenia do kasy, bo będzie to dla nas przykładowo wygodniejsze. Jeśli pijemy kawę w Starbucksie, ściągniemy sobie aplikację Starbucks. Natomiast, żeby być Uberem, Instagramem, Whatsappem, trzeba po prostu gigantycznych nakładów marketingowych. Są oczywiście aplikacje, które są które właśnie są Mobile first, bo na przykład towarzyszą jakiemuś fizycznemu produktowi. Weźmy rowery miejskie. Warszawa, Wrocław to jest Nextbike, Veturilo, a co macie w Poznaniu w tym momencie?

 

Łatwiej jest zrobić aplikację dla istniejącego produktu. Każdy bank ma swoją aplikację

 

Też chyba jakiś Nextbike, powiem szczerze, że nie korzystam, ale też są miejskie jakieś rowery…

 

Chyba Nextbike ma w wielu miastach. Mewo, jest w Trójmieście. No, to jeśli chcemy z tych rowerów korzystać, musimy sobie ściągnąć aplikację. Jest Carsharing, w Warszawie jest Panek, Innogy, 4mobility…musimy pobrać aplikację, więc tutaj jakby Mobile First narzuca się. Mamy coś, co konieczne będzie pobranie tej aplikacji i też będzie relatywnie łatwo coś takiego wypromować. Tam, gdzie korzystamy z natywnych funkcji telefonu, choćby z GPS. Wczoraj pobrałem śmieszną aplikację, która cały czas w tle korzysta z twojej lokalizacji i blokuje się, kiedy jedziesz samochodem, wykrywa to. Aplikacja, która promuje to, żebyś nie korzystał z telefonu w czasie jazdy samochodem. To też z racji wykorzystania GPS będzie aplikacja, która głównie będzie opierać się o wykorzystanie telefonu, czyli będzie Mobile First. Na pewno, mając produkty webowe, czy mając produkty fizyczne, łatwiej zacząć. Jeżeli ich nie mamy, to jest bardzo trudno zacząć od mobile, żeby w ogóle ludziom powiedzieć, że mamy taką innowacyjną aplikację. Na pewno bardzo dobre są w to gry, które mocno korzystają z kanałów sprzedażowych, tak jak Youtube, czy Facebook, które chcą nas przekonać, żebyśmy ściągnęli tę grę zazwyczaj. Ona jest początkowo za darmo, potem trzeba zapłacić za jakieś dodatkowe przedmioty, levele i tak dalej. Natomiast, żeby zapłacić dzisiaj za ruch, za pobranie aplikacji, po prostu z racji, że jest duża konkurencja, jeżeli nie mamy jakichś elementów, które wypromują nasze aplikacje, choćby w Carrefourze, Rossmannie, ktoś Cię przy kasie zapyta, czy masz aplikację i czy chcesz z niej skorzystać, no to jest automatycznie reklama, zachęta, taka Just in Time, w odpowiednim czasie realizowana. Natomiast, jeżeli masz przykładowo aplikację do rezerwowania wizyt, taką jak aplikacja Booksy, czy Znany lekarz, no to faktycznie musisz wyłożyć bardzo dużo energii, żeby ludzie dowiedzieli się o Twojej aplikacji.

 

To teraz z punktu widzenia Software House, który prowadzisz, gdybyś mógł powiedzieć, jak wyglądają takie podstawowe etapy tworzenia aplikacji mobilnych. Powiedzmy, kiedy zgłasza się do Was klient, po finalny produkt, który można później ściągnąć sobie z jakiegoś Store. Też interesuje mnie to, czy znaczenie jakiekolwiek ma tutaj, czy ta aplikacja ma być docelowo na Androida, czy iOS, czy jakieś inne platformy, czy też podchodzi się do tego w ten sam sposób i to jest jakiś tam szczegół implementacyjny?

 

Powiedziałeś Androida, iOS, czy inne mniejsze platformy, to jeszcze jaka jest platforma?

 

[śmiech] już teraz Microsoft już pewnie nie istnieje tak de facto, Blackberry w Polsce raczej w ogóle…chyba de facto można mówić o tych dwóch.

 

Tak, w tej chwili się uprościło. Może się to zmienić dlatego, że pewnie słuchacze słyszeli, Ty na pewno słyszałeś o tym, co się wydarzyło wokół Huawei, że Donald Trump i Ameryka bardzo nie chcą takiego sukcesu Chińskiej firmy. Czy skojarzenia są prawdziwe, czy nie, pewnie ten temat historia oceni. Natomiast Huawei ogłosił, że będzie robił swój system operacyjny, a że robi to dla gospodarki Chińskiej, zrobi to na pewno bardzo szybko i bardzo skutecznie, więc być może faktycznie, choć nie ma już Windows Phone, będziemy musieli robić jeszcze na system, który wytwarza Huawei. Póki co mamy Android i iOS i faktycznie zdarzało się, że robiliśmy dla próby na przykład…najpierw aplikację dla iOS, jeżeli odniosła sukces, to robiliśmy Androidową lub vice versa. W tej chwili praktycznie w procesie developmentu stosujemy takie podejście, że zazwyczaj troszeczkę nadganiamy jedną platformę, a potem drugą. W tej chwili właśnie kończymy w tym tygodniu taką aplikację dla dużej sieci sklepów i tam faktycznie Android…był gotowy już 2 miesiące temu, natknęliśmy się na pewne problemy, nauczyliśmy się pewnych rzeczy, w związku z tym nadgoniliśmy iOS, dzięki temu klient oszczędził troszeczkę pieniędzy, my oszczędziliśmy trochę czasu w trakcie developmentu. Natomiast standardowo robi się w tej chwili na oba te systemy, jeżeli nie ma jakieś wyraźnej dyspozycji, to zawsze idą one równolegle. Szczególnie tak jak wspomniałem, jeżeli wykorzystujemy technologię taką jak Flater, jak Native, czy Xamarin, no to jakby dzieje się to w sposób automatyczny. Na końcu po prostu czary-mary i mamy już dwa systemy gotowe. Także te dwa systemy praktycznie zawsze idą w tej chwili równolegle lub w niewielkim odstępie czasu. Jak wygląda proces tworzenia aplikacji mobilnej? Ja stosuję zasadę, którą nazywam zasadę świętej trójcy. Czyli, żeby rozpocząć projekt, potrzebne są 3 dokumenty. Zespół wymagań biznesowych (BRD), zespół wymagań funkcjonalnych (FRD) i zespół wymagań technologicznych (TRD). Biznesowe, funkcjonalne i technologiczne wymagania.

 

Aby rozpocząć projekt potrzebne są 3 dokumenty – zespół wymagań biznesowych, zespół wymagań funkcjonalnych i zespół wymagań technologicznych

 

 Zazwyczaj nad biznesowymi pracuję ja i analityk, czyli dogadujemy się z klientem, co właściwie chce osiągnąć, czyli jeśli robimy aplikację, która jest…tak jak robiliśmy nie tak dawno aplikację promującą picie wody, dla grupy Żywiec, no to dogadujemy się, co chcemy osiągnąć, chcemy promować picie wody, chcemy gdzieś przemycać produkt, chcemy wykorzystać jakie animowane ludziki, kojarzące się z danym brandem. Dalej, co chcemy osiągnąć w sposób funkcjonalny? Czy to ma być bardziej gra? Czy to mają być jakieś ekrany? Czy to ma być jakiś system administracyjny? Tak jakby to można szczegółowo opisać, zazwyczaj pojawia się jakiś zespół ekranów, mock-upów, gdzie ustalamy, co właściwie ta aplikacja ma robić, już pokazując ekrany i opisy tych ekranów. No i na końcu mamy zespół wymagań technologicznych, czyli ustalamy, z jakim systemem będziemy się łączyć, czy jeżeli aplikacja jest złożona, to trzeba podopinać różne systemy do tego, po podłączać jakieś API i ustalić w jakiej technologii będziemy robić, czy będą to technologie natywne, czy technologie hybrydowe. I to znajduje się też w dokumencie technologicznym. Jeśli mamy wymagania biznesowe, funkcjonalne i technologiczne, możemy startować dopiero z projektem. Oczywiście, nie zawsze klient jest gotowy, często przychodzi z briefem kilkustronicowym, albo nawet półstronicowym i ma pewną koncepcję aplikacji. Wówczas spotykamy się na warsztaty i dopracowujemy w ciągu 1-2, czasami tygodniowych warsztatów, to, co faktycznie chcemy osiągnąć. Jakie cele biznesowe, jakie cele funkcjonalne, zaczynając oczywiście w tej kolejności, ponieważ nie ma co rozmawiać o technologii, o wyborze frameworku, czy doborze bibliotek, jeśli nie wiemy, co chcemy zrobić, to jest kluczowe. Większość klientów, którzy zamawiają, to są klienci biznesowi. Zdarzają się oczywiście zamówienia stricte technologiczne, w tej chwili pracujemy nad takim bardzo zaawansowanym projektem, który jest alternatywną dla przeglądarki Chrome. Bazuje na pewnych silnikach tam, ale ma wiele odstępstw i tam odpowiadamy za część Androidową, to jest bardzo technologiczny projekt, gdzie samo zadanie, które musieliśmy zrobić, żeby wejść do tego projektu, to jest projekt międzynarodowy, gdzie wiele centrów nad tym pracuje. No to musieliśmy się sporo namęczyć, chyba z 2 tygodnie rozwiązywaliśmy zadania, żeby się zakwalifikować do tego projektu. Wtedy akurat założenia biznesowe mniej nas interesowały, niż technologiczne, ale można powiedzieć, że to był wyjątek potwierdzający regułę. Zazwyczaj, kiedy przychodzi korporacja, taka jak Żywiec, Coca Cola, Bank Santander, chce ona określić, co chce osiągnąć biznesowo, potem bardzo szybko jest dogrywane, co ma być osiągnięte funkcjonalnie i zazwyczaj już na nas zdaje się jakie technologie do tego trzeba zastosować. Oczywiście, jeżeli to jest bank, to ma swoje wymagania związane z bezpieczeństwem, z zastosowaniem pewnych bibliotek i wtedy oczywiście trzeba uwspólnić wersję, żeby nie naruszyć tego, co klient stosuje. Lub też ma już jakieś wytworzone dotychczas kody, ma doświadczenie w tym zakresie i ma pewne preferencje. Na przykład, żeby to był Xamarin, ponieważ cały projekt jest Dotnecie, będzie troszeczkę bliżej technologicznie, będzie bliższy stack technologiczny, więc ustalamy, że akurat tą aplikację chcemy w Xamarinie.

 

Później jak rozumiem, kiedy takie dokumenty są już ustalone, jest podpisana umowa, dochodzi do etapu developmentu, tutaj domyślam się, że wygląda to podobnie jak w każdym innych Software House, etapy testowania, być może jakieś scrumowego, mniej lub bardziej agilowego podejścia – w momencie, kiedy taka aplikacja jako produkt, jako kod jest gotowa, to dochodzi do etapu publikacji, tak?

 

Dokładnie, to znaczy my bardzo chętnie pracujemy w metodykach zwinnych, ponieważ to po prostu usprawnia komunikację. Nawet jeśli projekt jest na określonej cenie, bo bardzo ważnym do wyboru klienta jest czy chce pracować na określonej cenie, tzw. Fix Price, czy chce pracować na podstawie rozliczenia czasowego. Jeśli rozliczamy się czasowo, to faktycznie mogę być bardziej elastyczny w zakresie określenia szczegółowo, czym jest projekt. I faktycznie, jeżeli projekt jest nie do końca określony, to wtedy lepiej rozliczać się na podstawie czasu. Zachęcamy zawsze klientów, żeby dość szybko szli na rynek i testowali go. Oczywiście nie można za szybko, bo pamiętajmy, że jesteśmy oceniani i nie chcemy dostać jednej gwiazdki za nieskończony projekt, tylko chcemy dostać od razu 5. Tutaj trzeba dobrze wyważyć i takim dobrym podejściem jest faktycznie to, które znamy ze start upów, to znaczy z metodyki line start up-Minimum Viable Product, czyli dane wartości dla klienta. Przykładowo Google Maps ma w tej chwili dość sporo funkcjonalności, z wielu z nich nie korzystamy, choćby pobieranie map offline, czy jakieś wyznaczanie tras wieloetapowych, ale tak naprawdę 99% zastosowań to zabranie osoby z punktu A do B najszybszą drogą. To jest   dla mnie ta najważniejsza funkcja, która obejmuje 99/100 przypadków. Oczywiście w miarę używania pojawiają się dodatkowe pomysły, choćby zabranie nas drogą alternatywną, bo akurat taka będzie preferencja użytkownika, zapisanie mapy online, wieloetapowe drogi i tak dalej…unikanie na przykład opłat za autostrady. Natomiast kluczowe jest to, żeby znaleźć coś, co klienci docenią, co nawet będzie wiadomo w przyszłości rozbudowywane, ale już działa stabilnie i funkcjonalnie.

 

Jasne. Wspomniałeś, że uczestniczysz w takich rozmowach biznesowych, na tym pierwszy etapie, kiedy trzeba się dowiedzieć, po co tak naprawdę klient chce daną aplikację stworzyć. Później jest ten etap ustalania jakieś zakresu funkcjonalnego. Domyślam się, że obydwa te etapy mogą korzystać z różnego typu powiedzmy, prototypowania takiej aplikacji, po to, żeby oddać w jakiś sposób ten pomysł lepiej, niż właśnie tak jak powiedziałeś pół kartki opisu. Pewnie lepiej jest w jakiś sposób pokazać, czy Wy też korzystacie z jakiś takich narzędzi, rozwiązań, które umożliwiają zrobienie w miarę szybko prototypu i później bazowania na tym prototypie w dalszych rozmowach z klientem?

 

Prototypowanie aplikacji jest bardzo ważnym etapem. Mimo że stanowi tylko 10%, to jeśli nawalimy tutaj, to ciężko to odkręcić

 

Tak, prototypujemy też aplikacje i to jest bardzo ważny etap. Chociaż on stanowi tak naprawdę w cenie wytworzenia aplikacji, czy czasochłonności, można powiedzieć, że oko 10%, to jest prototypowanie, około 70% kosztu to jest koszt pracy developerów, 10% to koszt zarządzania projektem komunikacji i 10% to testowanie. Faktycznie te pierwsze 10% jest o tyle ważne, że jeżeli nawalimy tutaj, schrzanimy robotę i coś źle zaprototypujemy, to potem coraz trudniej to odkręcić. To znaczy koszt odkręcenia na etapie testów, w porównaniu z kosztem odkręcenia na etapie prototypowania są dramatycznie różne. Na pewno każdy z nas zna ten obrazek z huśtawką-co zamówił klient, a co dostał, co architekt widział…to się naprawdę często zdarza, nawet kiedy wydaje nam się, że pracujemy zwinnie, że się cały czas sprawnie komunikujemy. Faktycznie zdarzają się projekty, mamy w tej chwili też taki projekt bardzo złożony, do wyliczania jakichś aspektów finansowych, ryzyk kredytowych, gdzie właściwie przez 4 miesiące uswspólnialiśmy z klientem, to jest taki Londyński fundusz inwestycyjny. Co właściwie ten fundusz ma na myśli? Okazało się, że oni te same rzeczy definiowali na różne sposoby, pewnych rzeczy w ogóle nie definiowali. I pierwszy etapem projektu było napisanie słownika, co znaczy co. I tu nie mam na myśli słownika, że nie rozumieliśmy po angielsku, tylko co klient ma na myśli. Klient sam nazywał rzeczy w różny sposób albo właśnie nie potrafił pewnych rzeczy zdefiniować i klient czasami sam musi popracować, żeby dojść do tego, co dokładnie miał na myśli. Ponieważ wiemy, jak działa programowanie, że ono musi być bardzo algorytmiczne, musi korzystać ze szczegółowych zasad, musi być zero jedynkowe, to o ile człowiek się czasami domyśli, to komputer nie do końca. Oczywiście mamy sztuczną inteligencję i chcielibyśmy wierzyć, że ona wkrótce będzie się domyślała, co pomyślimy, to zakoduje, ale póki co jeszcze musimy się trochę pomęczyć [śmiech] Także faktycznie ustalenie czego klient chce, uważam za taki trudny etap, bardzo ważny etap. Robimy warsztaty dla klientów we własnym zakresie jako Escola, pracujemy z klientami, zapraszamy ich najczęściej do Gdańska, gdzie jest nasze główne centrum deweloperskie, gdzie są nasze osoby, które zajmują się designem, ale w przypadku trudnych projektów, bardzo złożonych, chętnie korzystamy też z zewnętrznych firm, z którymi współpracujemy. Prowadziliśmy dla Innogy jakiś czas temu warsztaty razem z Centrum Nauki Kopernik, dla takiego tam projektu, gdzie firma nam pomagała w prowadzeniu tego warsztatu. Także chętnie zapraszamy też firmy wyspecjalizowane, jeżeli jest duży projekt. No bo my jesteśmy Software House, gdzie ten proces UX-owy traktujemy jako wspomagającą, ale kiedy nasze kompetencje się kończą, zapraszamy już tutaj super ekspertów z tego zakresu.

 

Jasne. Ustaliliśmy już, że mamy dwie takie królujące platformy-Androida i iOS, przynajmniej na tą chwilę. Czy Wasi klienci zawsze wybierają obydwa rozwiązania? W sensie obydwie platformy, kiedy zgłaszają się z chęcią stworzenia aplikacji, czy też może różnie to bywa i nie zawsze jest taka wręcz konieczność, żeby decydować się na te komplementarne rozwiązania?

 

Może ja powiem tak, nie wszyscy wiedzą, pewnie część naszych słuchaczy korzysta z iPhone’ów, część korzysta z Androidów i przez to nie wiemy, jak działa drugi system. Jednak są pewne różnice zarówno w designie, jak i w tym, jak działają biznesowo te platformy. iPhone’y to jest około 10% rynku, a mimo to ich użytkownicy wydają około połowę kwoty, jaka w ogóle jest wydawana w mobile. Czyli jest to klient, dla którego mówiąc wprost, dobrze się pracuje. Drugi aspekt, dla którego dobrze się pracuje w iOS, to jest to, że Androidów mamy tysiące modeli, naprawdę tych telefonów, producentów jest cała masa i cały czas powstają nowe realizacje. Android jest platformą otwartą, natomiast iPhonów, mimo że też zrobiła się pewna gama, tak? Mamy od 4-calowych iPhone’ów, po te X…teraz jest 11 Pro Max, czyli 6,5-calowy iPhone. Jest trochę tych typów, nie mniej jednak dalej proporcje rozdzielczości są zachowane w ramach tej gamy, co wiele ułatwia designerom. Z Androidami jest gorzej, bo różnią się rozdzielczości, różnią się wersje systemów. Jeżeli chodzi o Apple, to ponad 90% użytkowników ma najnowszy system, natomiast zdarza się często, że kupimy świetny telefon Sony, Samsung, Huawei, no i potem okazuje się, że wychodzi Android w wersji 10, ale nasz telefon zatrzymał się na wersji 7 i już nie ma aktualizacji dla naszego modelu. Co oznacza w praktyce, że tworząc aplikację dla Androida, musimy dużo więcej wstecznych wersji uwzględnić, czyli na iPhone zazwyczaj produkujemy aktualny system, minus 1, a na Androida trzeba projektować aktualny system, minus 4, standardowo. I to oznacza, że też nie wszystkie iPhony, dla których będziesz produkował tą aplikację, będą takie płynnie działające telefony. O tym też trzeba pamiętać, oczywiście jest jakaś granica. Jak wytwarzamy oprogramowanie, to mówimy ok, to jest Android aktualna wersja, minus 4. Czy jeżeli jest bardziej zaawansowana, złożona to minus 3 na przykład. Niestety o tym też trzeba pamiętać, że nie jest możliwe zaprojektowanie na wszystkie telefony. Szczególnie jeśli jest to jakieś złożone oprogramowanie.

 

Czy wobec tego Wasi klienci mają jakieś preferencje, bazując na tym, co powiedziałeś jak wygląda rynek, jakie wersje są używane? Co jest takim głównym kryterium wyboru dla Waszych klientów? Czy oni generalnie chcą mieć aplikację mobilną, która będzie działać na większości platform? Czy też chcą ze względów prestiżowych być na iOS? Co mógłbyś wskazać jako takie główne preferencje?

 

Praktycznie zawsze klienci chcą być na obu platformach. Natomiast zawsze negocjujemy zasięg versus performance. Zasięg versus wydajność. Jeśli zależy nam na dużym zasięgu, to nie możemy tam zrobić jakiś super bajerów. Jeśli zależy nam na niesamowitej wydajności tej aplikacji, to niestety musimy się pożegnać z możliwością tego, że ta aplikacja będzie miała duży zasięg.

 

Wspomniałeś też o Xamarinie, React Native. Czy próbowaliście takich hybrydowych rozwiązań? Czy to jest coś, co widzisz, że rośnie, jeśli chodzi o rynek? Jakbyś to mógł ocenić?

 

Rośnie niesamowicie. Powiedziałbym, że React Native teraz jest najczęstszym frameworkiem hybrydowym, który stosujemy, ale nawet nie wiem, czy określenie hybrydowym jest dobre, dlatego, że React Native produkuje nam faktycznie natywne aplikacje. Jeśli na tym dobrze piszemy, to jesteśmy w stanie zaoszczędzić sporo czasu, sporo pieniędzy dla klienta. Xamarin, też robiliśmy w tym projekty, nie jesteśmy do końca fanami tego frameworku, tego języka, z jednego powodu, takiego dla mnie biznesowo strategicznego, jest to rozwiązanie Microsoftowe. Microsoft niestety nie wykazał się, szczególnie jeśli chodzi o mobile i faktycznie nie jestem pewien, czy utrzymanie tego Xamarina, będzie w długim okresie korzystne dla klientów. Bo jeżeli patrzę na środowisko Facebooka, Whatsapp, Instagrama, to jest firma, która żyje z mobile, rozwija własnego React Nativa i cały czas pracuje nad tym. Przez pewien czas nawet rozwijała swój tzw. fork ten projekt, czyli rozwijali swoją wersję tego React Nativa, ale to już się połączyło. Także jakby dobrze dla wszystkich. Facebook pracuje dla wszystkich, także dla Escoli, rozwijając ten język. Na pewno jeszcze ciekawym i takim rosnącym językiem jest Flater. Flater jest oparty o język Dart, Googlowe rozwiązanie. Flater bardzo mocno chce też jakby konkurować z React Native. Jest to relatywnie jeszcze nowy język i nie jestem pewien czy warto w to wchodzić, natomiast też przymierzamy się do projektu.

 

Całkiem sporo się właśnie ostatnio o Flaterze mówi, głównie w środowiskach IT. Głownie od strony technicznej odpowiedzielanej za realizację aplikacji mobilnych. Też jestem ciekaw. Myślę, że dobrze, że mamy alternatywy, bo to też właśnie mobilizuje rynek…

 

Za dużo alternatyw, to nie jest dobrze, natomiast konkurencja jest zdrowa. Choćby konkurencja Android, iOS jest zdrowa. Uważam, że konkurencja React Native, Flater…co w ogóle jest dla mnie ciekawe jako obserwatora tego rynku, jest to, jak niesamowicie upodabniają się do siebie języki. To znaczy Swift 5, opiera się na tym, że ma być taki wyczuwalny, lekki, obiektowy i okazuje się, że Google wypuszcza Flatera, i jaki jest Flater? Lekki, wizualny, bardzo obiektowy, ma nawet podobną składnię [śmiech] Okazuje się, że dobre praktyki są powielane, tak jak korzystając z metafory samochodowej. Jeżeli został wprowadzony ABS, czy pasy, no to wszystkie inne marki będą powielały to dobre rozwiązanie z korzyścią dla klientów, żeby pozostać konkurencyjnym. I podobnie jest w językach programowania.

 

Wspomniałeś o tej mnogości platform sprzętowych, konfiguracyjnych, konfiguracji sprzętu, głównie tutaj myślę o rozwiązaniach Androidowych, czy telefonach, które opierają się na Androidzie. Ale ten line up, jeżeli chodzi o mobile, też rośnie, coraz więcej modeli równolegle działających na rynku jest. Zastanawiam się wobec tego, w jaki sposób Wy podchodzicie do testowania swoich aplikacji, jeśli taka szeroka gama sprzętu potencjalnego jest do sprawdzenia?

Zadaniem naszych dwóch testerek jest chwycenie telefonów i manualne testowanie aplikacji. Muszą ją przeklikać.

 

Jest to zmora, przyznam z mojej perspektywy, jako osoby, która kupuje te sprzęty. Jak w tym momencie nagrywamy ten podcast i siedzę tutaj przy biurku, to połowa tego biurka jest zajęta przez telefony. Różne, leży tu kilka modeli iPhone’ów i kilkanaście modeli Androidów. Zadaniem naszych dwóch testerek jest to, żeby chwycić takie telefony i realnie, manualnie ściągnąć aplikację i przeklikać. Jest coś takiego, jak pre sklep, czyli można wrzucić aplikację jak do sklepu, ona przechodzi takie uproszczone View i można wtedy ją testować jak zwykłą aplikację lub pobranie. Czyli można dać wtedy klientowi, żeby potestował no i po prostu testujemy te aplikacje na wszystkie możliwe sposoby. Oczywiście są też testy automatyczne, zaszywamy pewne testy w kodzie do najbardziej takich popularnych i koniecznych funkcji. Natomiast koniec końców, naprawdę świat potrafi zaskoczyć, jak zima drogowców i faktycznie w tym roku zaskoczył nas iOS 13, który naprawdę zawierał sporo zmian, przestała działać połowa aplikacji, z takich co znacie-OLX, H&M, wyświetlały, sorry, ale nie działamy, naprawiamy [śmiech] albo nie działała najważniejsza funkcja, na przykład w OLX w aplikacji przestała działać opcja wystawiania przedmiotów na sprzedać, taka dosyć korowa na OLX. My akurat supportujemy jedną z aplikacji dla banku i przyznam, że był to bardzo, bardzo gorący czas dla zespołu deweloperskiego, który się tym zajmuje, ponieważ aplikacja dla banku nie może przestać działać. A jeżeli faktycznie przestanie działać, nie z naszej winy, bo pewnych rzeczy nie dało się przewidzieć, no to trzeba dzień i noc pracować, żeby zaczęła jak najszybciej działać w pewnej funkcjonalności. Tam akurat była kwestia problemu, że aplikacja wylogowywała użytkowników, trzeba było się ponownie zalogować w trakcie korzystania, zbyt często. Co nie było jakimś tak krytyczne dla bezpieczeństwa, ale było po prostu irytujące. Klienci dzwonili do banku, pytali “ej, co się dzieje? Tyle lat korzystam i nie było z tym problemu” Szukaliśmy i w końcu znaleźliśmy rozwiązanie, ale było to kilka ciężkich nocy pracy dla nas, żeby to naprawić.

 

Jasne. A tak jeszcze sobie przypomniałem, jak mówiłeś właśnie o iOS, że nie raz zdarzają się takie zmiany drastyczne. Apple ma generalnie taką politykę, że raczej mobilizuje łagodnie rzecz mówiąc deweloperów, żeby używali tych zaszytych, najświeższych wersji. Ale też co powiedziałeś, że takie szybkie przyjęcie nowych wersji iOS na telefonach, powoduje, że jak gdyby mogą sobie na to pozwolić, ale to jest jak gdyby temat osobny…

 

To jest czasem tak, że ja doceniam za to Apple, że oni wymuszają pewne zmiany na rynku. Co mam na myśli? Od 10 lat mówi się, że powinna być architektura aplikacji 64-bitowa. Powinna być 64-bitowa, bo jest lepsza. I nadal jest aplikacja Photoshop, która ma całą architekturę 64-bitową, ale ma pewne komponenty 32-bitowe. Apple od wersji swojego systemu 10-15, to jest chyba Kotlina? Mówi, ok nie będą działały aplikacje, które są 32-bitowe [śmiech]. No i po prostu krótkie nie, mówiliśmy o tym od 10 lat i basta. No i okazuje się, że Photoshop nie działa, co jest super irytujące dla klientów, ale z drugiej strony ma na tyle silną markę, ma na tyle duży wpływ na rynek, że ten Photoshop i wszystkie inne aplikacje będą musiały tutaj nadrobić. Wielka szkoda, bo choćby Wiedźmin, w którego grałem, też przestał działać i na pewno Wiedźmin (mam na myśli tę drugą część) nie będzie już nadrobiona, bo po prostu nie będzie się to opłacało. Oczywiście są pewne tego skutki. Inny przykład, jesteśmy przyzwyczajeni do standardu USB, teraz już 3.0, ale nie oszukujmy się, że standard USB C, jeżeli chodzi o kształt, wydajność, performance i wygodę jest po prostu dużo lepszy. Chociaż jest to dla użytkowników irytujące, to widać trend w telefonach, że też przechodzą na USB C. I jest to dobry kierunek, który jest wymuszany, ale Apple ma możliwość wymuszać takie rzeczy, także wymuszać pewne rzeczy w mobile, jeśli chodzi o design. Przypomnij sobie w Facebooku, jeszcze parę lat temu na Androidzie, był taki system menu, czy to z Hamburgerem, czy na górze było menu, co było po prostu super niewygodne, bo kciuk mamy na dole i nim głównie operujemy i chcemy mieć wybieranie funkcji na dole. I Google długo się upierał, że na górze, a Apple mówił-na dole. I z czasem oczywiście ten standard, który był po prostu wygodniejszy, zwyciężył i bardzo dobrze.

 

Trochę powiedziałeś o utrzymaniu, o tym, że w momencie, kiedy pojawia się jakiś problem związany z nową wersją…powiedzmy systemu operacyjnego i aplikacja przestaje działać, no to trzeba w jakiś sposób sprawić, żeby ponownie zaczęła działać. To utrzymanie jest często krytyczne dla firmy, która zamawia aplikację. Jestem ciekawy, jak to u Was wygląda? Jakie praktyki stosujecie? Ile wersji wstecz obligujecie się przed klientem, że będziecie utrzymywać? I na ile takie bieżące utrzymanie aplikacji stanowi istotną część Waszego biznesu?

 

Uważam, że klient, który podpisuje umowę wsparcia, jest klientem świadomym. Mam sporo problemów, jeśli klient się uprze, że faktycznie nie chce usługi utrzymania, bo ten klient prędzej czy później i tak wraca i musimy ponownie wykonać wszystkie negocjacje, odkopać ten projekt, wgryźć się w niego, za co często klient zapłaci więcej. Domyślnie, jeśli kwota wytworzenia projektu to było przyjmijmy 10 tysięcy złotych, to 1% z tego miesięcznie wynosi Maintenance. Czyli dla 10 tysięcy złotych to będzie 100 złotych miesięcznie, to jest tak bardzo przybliżona kwota Maintenance. Czyli podnoszenia wersji, jak wchodzi nowa wersja systemu. Nie obejmuje to nowych funkcjonalności. To nie jest tak dużo-12% w skali roku, a klient zyskuje spokój. Zyskuje pewność, że to będzie działać o każdej porze dnia i nocy, a wszystkie problemy będą szybko eliminowane. Także uważam, że Maintenance powinien być takim podstawowym, obowiązkowym oczywiście, jeśli wchodzą tam jakieś kwestie rozwojowe, to wtedy się ustala taki pakiet Maintenance SLA i tak dalej. Tak jak z resztą w każdym innym oprogramowaniu.

 

Ok, czyli warto o tym też myśleć od samego początku. Wspomniałeś, że ilość aplikacji w tych wszystkich storach rośnie dramatycznie, w związku z tym pewnie trudno jest się po prostu przebić z jakąś swoją aplikacją, nawet jeśli jest ona wartościowa dla użytkowników, więc trzeba pomyśleć o czymś takim jak marketing aplikacji mobilnych. Zadbanie o to, żebyśmy byli dobrze oceniani, żebyśmy byli wysoko w rankingach jako aplikacja, czy takimi działaniami też się zajmujecie? Na czym polega ten zakres działań, które można nazwać marketingiem aplikacji mobilnych?

 

Marketing aplikacji mobilnych to jest nowe zjawisko, które wynika z tej różnicy między tym tak dużo jest aplikacji, a tym, że klienci ściągają coraz ostrożniej. Jeszcze 5-6 lat temu ludzie sobie chodzili po tym Google Storze, czy App Storze i patrzyli co by tu ściągnąć, bawili się tymi telefonami, szukali jakichś pomysłów. Ściągali jakieś absurdalne aplikacje typu I’m rich, gdzie mogłeś za 990 dolarów sobie po prostu ściągnąć tapetę, która mówiła, że jesteś bogaty, że stać Cię na głupoty, czy bardziej taką polską wersję, czyli kumpel do picia, która mówiła “chluśniem, bo uśniem”, albo “wypijmy” poprzez klikanie w ekran, mogłeś robić jakieś zabawne rzeczy. Teraz ludzie nie ściągają takich rzeczy, starają się teraz koncentrować na wartości, jaką daje aplikacja. 

 

Trzeba dbać o dobre umieszczenie aplikacji w sklepie. 

 

W związku z tym faktycznie trzeba dbać o dobre umieszczenie aplikacji sklepie. Naprawdę zdziwiłbyś się jak mało aplikacji w sklepach, które wydaje się 100, 200, 300 tysięcy na ich wytworzenie, ktoś nie poświęca ani grama uwagi, żeby zrobić ładnej grafiki do tego, a nie po prostu screenshoty, żeby zrobić dobry opis-co ta aplikacja robi, żeby zrobić dobre meta tagi do tego. Nadal 50% wyszukań to jest to chodzenie sobie po Google Store, czy App Store, żeby mógł po prostu znaleźć aplikację, którą z takim trudem i przy takich kosztach wytworzyłeś. Dla mnie to czasami jest niewiarygodne, świetna aplikacja, widać, że spory budżet poszedł i nie jest opisana w sposób należyty. Robiliśmy takie porównanie różnych aplikacji sklepów detalicznych. Inter Marche, Lidle, Carrefoury...te aplikacje naprawdę sporo kosztowały, a czasami są opisane tak jakby, to zrobił jakiś student. To jest pierwsza rzecz- dobre opisanie aplikacji, dobre tagi, dobre grafiki. Taką wzorową na pewno aplikacją jest choćby Rossmann, tam widać, że zostało wszystko dopieszczone i to się przekłada na to, jak ludzie pobierają tą aplikację. Ona ma ponad 10 milionów pobrań w Polsce i 4 miliony aktywnych użytkowników. Wokół tego są różne działania, można kupować też takie płatne, znam Adwordsy z weba, można kupować płatne reklamy aplikacji, można powiedzieć, że koszt pobrania aplikacji, w  zależności od efektywności tej kampanii to będzie o 1 zł do kilku złotych, jeżeli jest jakiś bardzo złożony temat. Zdarza się to zoptymalizować poniżej złotówki, znam takie przykłady. Także, jak widzisz, nie jest to tanie, jeżeli chcemy mieć 10 tysięcy pobrań aplikacji, wydamy 10 tysięcy złotych, jest to trochę gorsza. Oczywiście te czynniki są bardziej złożone, bo też jeśli ktoś pobierze, to ma szansę polecić swoim znajomym, jeżeli aplikacja jest dobra, więc tu można troszeczkę poprawić te współczynniki. Tak samo, jak można korzystać z różnych kampanii, czy na Facebooku, czy na Youtube, my wspieramy przede wszystkim w zakresie tej optymalizacji, tego ASO, to się nazywa App Store Optimization, czyli wrzucenia dobrych screenów, dobrych opisów, dobrych meta tagów. Natomiast takie szczegółowe kwestie marketingowe, podobnie jak w kwestii UX-a, zostawiamy super ekspertom. Współpracujemy z firmą Spicy Mobile i z firmą App&More, które są świetne w pozycjonowaniu, robią to od lat, wydają świetne raporty. Ostatnie 2 miesiące wyszedł świetny raport App&More na temat pozycjonowania aplikacji mobilnych, też bardzo polecam. I z Spicy Mobile wyszło też niedawno, też polecam, świetny raport o aplikacjach mobilnych, gdzie miałem przyjemność napisać rozdział o tym, jak wygląda proces tworzenia aplikacji, dobry brief na aplikację mobilną.

 

Obecnie bardzo się dużo mówi, o Machine Learning, o rzeczywiści rozszerzonej. Wirtualne rzeczywistości, to są takie tematy, które wkraczają właśnie w świat mobile, z tego, co obserwuję. Czy dla Ciebie jest to na razie taka ciekawostka? Coś, co dopiero się rozwinie? Czy może macie z tym w Escola do czynienia? Myślisz, że to są takie tematy, z którymi będziemy mieli coraz częściej do czynienia w świecie mobile?

 

Ta rozszerzona rzeczywistość, wirtualna rzeczywistość, to jest coś, co mnie osobiście fascynuje, dużo na ten temat prowadzę wykładów na różnych konferencjach. Natomiast to jest temat złożony. Po pierwsze rzeczywistość wirtualna, to jest zupełnie odrębny temat w kontekście mobile, od rzeczywistości rozszerzonej. No i jest jeszcze mieszana rzeczywistość. Czyli po kolei, jeżeli chodzi o wirtualną rzeczywistość, na pewno prym tutaj wiedzie Facebook i firma Oculus, która w sumie chce zabrać to z telefonów, które też mają aplikacje wirtualnej rzeczywistości i żeby było takie Stand Alone, takie urządzenie, które zakładasz, nie potrzebuje komputera, są tam i głośniki i ekran wysokiej rozdzielczości i jest to właściwie taki mini komputer, czy komórka na sterydach, która sprawi, że świetnie możemy zanurzyć się w tej wirtualnej rzeczywistości. Jeżeli chodzi o telefony i wirtualną rzeczywistość, jest jeden problem, powiadomienia. Grasz sobie w grę w wirtualnej rzeczywistości, masz ogromny, 6,5-calowy ekran, jedziesz sobie rollercoasterem i chodzisz przez jakiś dom strachów i nagle wyskakuje Ci Whatsapp “Co dzisiaj na obiad?” [śmiech] i czar prysł…także to jest moim zdaniem jeden z bardziej praktycznych powodów , przez które wirtualna rzeczywistość na telefony się nie przyjmie. Jeśli chodzi o rozszerzoną rzeczywistość, to faktycznie jest tutaj ogromnie dużo aplikacji. Śmieszna aplikacja, którą często pokazuje, to jest aplikacja Ikei, która może rozpoznawać poprzez liczenie maszynowe zarówno mebel i jesteś w stanie pokazać, co ma w ofercie Ikei podobnego. Czyli nakierując aparatem, poznajemy, że to jest krzesło, no to Ikea mówi Ci, to może takie krzesło byś chciał? Druga rzecz to jest w stanie pokazać Ci to samo krzesło ustawione w Twoim pokoju, czyli rozszerzyć rzeczywistość w aparacie o to krzesło, obrócić się, powiększyć, pomniejszyć. Mam dosyć sporo nagrań, jak to robię, jak się bawię tymi narzędziami. Google ma teraz fajne narzędzie, jeżeli chodzi o Street View, gdzie możemy nakierować na budynki i on Ci pokaże, co w tych budynkach się znajduje, tu bank, tu apteka, gdzie chcesz pójść? W sumie to takie marzenie, żebyśmy mieli…w Google Glasses pokazywali okulary, że rozglądam się po ulicy, tu jest apteka, tu jest bank, o! Właśnie szukałem tego banku. A jeszcze Google pewnie będzie chciał nam dokładać reklamy, że jeszcze idź do tego banku, załóż konto, dostaniesz 100 złotych [śmiech].

 

Jasne, bankowo…

 

Także rozszerzona rzeczywistość jak najbardziej tak, wirtualna rzeczywistość-nie predykuję tu wielkiego rozwoju, jeśli chodzi o mobile. Natomiast jeśli chodzi o przykładowo o inny trend, czyli uczenie maszynowe, to jest ogromny temat, bo tu zarówno mamy głos, który cały czas uczy się maszynowo dzięki różnym asystentom Google. Google asystent jest teraz dostępny po Polski, także naprawdę … Aż boję się powiedzieć Ok Google, bo wszystkim słuchaczom się zaraz uruchomi asystent Google [śmiech], więc naprawdę działa to bardzo fajnie. Na razie to są początki, też trzeba powiedzieć, testuję sobie te rozwiązania głosowe, one są na razie takie dość idiotyczne, ale jak pomyślimy o tym…wyjdźmy do takiej praktyki, po co nam te rozwiązania głosowe? Chodzę na te różne konferencje i tam opowiadają specjaliści na temat oferty bankowej, czy jakiś innych asystentów przy E-commerce, ale na Boga, jeździmy wszyscy praktycznie samochodami, co czwarty wypadek jest spowodowany tym, że kierowca w tym czasie pisał SMS lub rozmawiał…co czwarty wypadek na świecie. Co to oznacza? To oznacza, że jesteśmy w stanie uratować ¼ osób, sprawiając, żeby ludzie robili to głosowo, nie klikali, ograniczyli rozmowy i asystenci głosowi powinni właśnie w tym pomagać. Napisz SMS do Pawła, że się spóźnię, a nie dzwonić, nie klikać i rozpraszać. I ludzie naprawdę powinni coraz szerzej z tego korzystać, choćby ze względu na swoje bezpieczeństwo. Jestem pewien też, że obecna młodzież, czyli Ci, którzy są po millenialsach, mówimy dużo o tych millenialsach, którzy wchodzą na rynek pracy, ale po millenialsach jest też kolejne pokolenie i kolejne po nich i te właśnie pokolenia, jestem przekonany o tym, nie będą już pisać wypracowań, klikając po klawiaturze, bo jest to po prostu wolniejsze, niż podyktowanie i poprawienie i już za parę lat, ta technologia będzie na tyle dobra, że będzie to po prostu szybsze i wygodniejsze. Także zmienia się to bardzo pozytywnie w moim przekonaniu, przetwarzaniu tekstu speech, ale oczywiście wiele innych zastosowań jest też, tego uczenia maszynowego i do czego kanałem jest też telefon.

 

OK, czyli wygląda na to, że perspektywy są szerokie, tych aplikacji będzie powstawało coraz więcej, takie coraz trafniejsze zastosowania na rynku mobile będziemy jeszcze odnajdywać. Chciałem Cię jeszcze na koniec zapytać, ponieważ większość słuchaczy tego podcastu, to są programiści. Czy uważasz, że dla programisty jest to perspektywiczny kierunek? Powiedzmy, rozwoju kariery, jeśli ktoś myśli obecnie o jakieś specjalizacji, chciałby sobie wybrać jakąś technologię, którą chciałby się zająć, to uważasz, że pójście właśnie w technologie mobilne, to jest dobry wybór?

 

Ja myślę, że technologie mobilowe są ciekawe, o tyle, że trudno wejść do tego młodym programistom i tu uprzedzam, że na pewno młodym programistom łatwiej będzie wejść w technologie frontendowe, niż nauczyć się Javy i potem na podstawie Javy nauczyć się jak pracować w Androidzie. Oczywiście te technologie trochę ewoluują, mamy Swifta, mamy Flatera, który jest się troszeczkę prostszy dla zrozumienia dla młodych programistów, nie mniej my właściwie nie mamy w Escoli żadnych programistów na stopniu Juniorskim, nawet niewielu mamy takich na stopniu Midowym. Może to jest też specyfika projektów, jakie robimy. Robimy projekty bankowe, z branży paliwowej, czy kopie Chrome, to są bardzo zaawansowane technologicznie projekty i młodym programistom trudniej na pewno się w tym odnaleźć. Na pewno też, patrząc z perspektywy Software House, no to widać jak zaczynaliśmy rok, to mieliśmy głównie klientów polskich, teraz już mamy przewagę klientów zagranicznych. Po prostu ten rynek, co myślę, też jest wskazówką dla programistów, jeżeli dobrze znasz angielski, czy niemiecki, czy jakikolwiek inny język, to warto rozglądać się za pracą dla zagranicznych firm, czy w zagranicznych projektach poprzez firmy w Polsce.

 

Krzysztof ja Ci wobec tego dziękuję bardzo za rozmowę. Fajnie było usłyszeć o Twoich doświadczeniach, słyszeć też Twoje opinie, jak Ty ten rynek widzisz, będąc jednak bardzo blisko rozwoju aplikacji mobilnych. Cieszę się, że znaleźliśmy czas, żeby o tym porozmawiać. Myślę, że wielu słuchaczom ta rozmowa bardziej pokaże, jak rynek aplikacji mobilnych wygląda, jak się rozwija. Być może ktoś się zainspiruje i właśnie w tym kierunku pójdzie. Także jeszcze raz dzięki za rozmowę i powiedz proszę, gdzie Cię można znaleźć w internecie?

 

Ja bardzo zapraszam do kontaktu ze mną poprzez Facebooka, który wiem, że wszyscy już teraz chcą w LinkedIn do kontaktów zawodowych, natomiast prawda jest taka, że na co dzień z LinkedIn korzysta w Polsce około miliona osób, a z Facebooka 15 milionów, więc cały czas uważam, że na Facebooku trzeba być obecnym też w kontekście biznesowym. Ja prowadzę swojego Facebooka w kontekście biznesowym. Można mnie znaleźć na FacebookuKrzysztof Wojewodzic albo na LinkedinKrzysztof Wojewodzic, mam też swoją stronę krzysztof-wojewodzic.com, także nie jest trudno mnie znaleźć. Zapraszam serdecznie do kontaktu, czy byście mieli pomysł na aplikację, która zrewolucjonizuje świat, to napiszcie. Chętnie skonsultuję Wasz pomysł. Możemy o tym porozmawiać, czy będziecie szukali wskazówek, jeśli chodzi o karierę programistyczną, to na pewno też postaram się pomóc. No i bardzo zachęcam do zainteresowania się światem mobile, bo jest to cały czas rosnący rynek, niezmiennie.

 

Super, też zachęcam. Jeszcze raz Ci bardzo dziękuję, do usłyszenia, cześć.

I to tyle z tego, co przygotowałem dla Ciebie na dzisiaj. Mam nadzieję, że teraz już lepiej rozumiesz, jak wygląda proces wytwarzania proces aplikacji mobilnych. Jeśli chciałbyś dowiedzieć się więcej, zapraszam Cię do podcastu prowadzonego przez Krzysztofa i Jędrzeja Paulusa o nazwie Escola Mobile

 

Jeśli spodobał Ci się ten odcinek, podeślij go komuś, kto działa w branży aplikacji mobilnych. Myślę, że może z niego wiele wyciągnąć. Dziękuję. Jeśli masz jakieś pytania, pisz śmiało na krzysztof@porozmawiajmyoit.pl. Ja się nazywam Krzysztof Kempiński, a to był odcinek podcastu Porozmawiajmy o IT, o tworzeniu aplikacji mobilnych. Zapraszam do kolejnego odcinka, już za 2 tygodnie. Cześć!

mm
Krzysztof Kempiński
krzysztof@porozmawiajmyoit.pl

Jestem ekspertem w branży IT, w której działam od 2005 roku. Zawodowo zajmuję się web-developmentem i zarządzaniem działami IT. Dodatkowo prowadzę podcast, kanał na YouTube i blog programistyczny. Moją misją jest inspirowanie ludzi do poszerzania swoich horyzontów poprzez publikowanie wywiadów o trendach, technologiach i zjawiskach występujących w IT.