Jakość aplikacji na Android vs iPhone
Przy okazji pojawienia się iPhone’a postanowiłem przejrzeć ofertę aplikacji na urządzenia Apple zestawiając ją z Android Market. Uruchomiłem zaledwie dwie pozycje. Pierwsza to aplikacja realizująca małe studio nagrań w telefonie, drugą była gra 3D. Obie kosztowały po kilka dolarów. Zrobiły na mnie piorunujące wrażenie. Takiej jakości trudno szukać na platformie Android. Co jest przyczyną tej dysproporcji?
Obie platformy oferują podobne środowisko: porównywalny rozmiar rynku, ceny aplikacji i możliwości urządzeń. Różni je w zasadzie jedna dominująca cecha – iOS to zaledwie kilka typów urządzeń, podczas gdy Android cechuje ogromna różnorodność sprzętowa. Najprawdopodobniej ma to decydujący wpływ na jakość oferowanych aplikacji. Zjawisko zostało nazwane terminem fragmentacji.
Różnorodność w Android?zie to między innymi odmienne procesory wpływające na możliwości obliczeniowe. Część urządzeń nie wspiera akceleracji sprzętowej. Telefony posiadają ekrany o rozmaitych rozdzielczościach i gęstościach obrazu. Mnogość wersji systemu to kolejne, frustrujące niuanse w pracy programisty. W efekcie twórca aplikacji na platformę Android musi poświęcić mnóstwo czasu na jej dostosowanie do wielu wariantów sprzętowych. Dopiero przy takim podejściu produkt osiągnie wysoką jakość. Niestety jest to kosztowne. Programiści iOS działają w mniej skomplikowanym środowisku.
Zjawisko jest szczególnie kłopotliwe w przypadku produktów, które pracują na granicy wydajności urządzenia. W przypadku platformy iPhone jest ona dobrze znana. Android?y mocno się od siebie różnią, stąd nie ma jednej, minimalnej konfiguracji sprzętowej. Tu z definicji wydawanie ambitnych produktów wiąże się z dużym ryzykiem niepowodzenia.
Duża fragmentacja wpływa również na charakterystykę grupy odbiorców aplikacji. iPhone dzięki jednolitej platformie mógł dokładnie zdefiniować swoją grupę klientów. W rezultacie strategia rozwoju platformy iOS zakładała promowanie modelu sprzedaży aplikacji płatnych, przyzwyczajając klienta do ?wydawania pieniędzy?. Android, ze względu na mniej precyzyjnie zdefiniowaną grupę docelową, stworzył model, w którym konsument preferuje aplikacje darmowe. Jest to niewygodne rozwiązanie dla twórców aplikacji mobilnych.
Badania wykazały, że 86% programistów aplikacji na Android’a uważa zjawisko fragmentacji za problem, a 26% za problem poważny. Zatem różnorodność sprzętowa wydaje się być niewygodna dla obu stron korzystających z platformy. Konsumenci tracą na jakości, a producenci oprogramowania narzekają na zbyt niską dochodowość i bezużyteczność oferowanych przez platformę narzędzi. Z pewnością Google zdaje sobie sprawę z takiego stanu rzeczy. Jakie kroki podejmuje więc ta korporacja, aby zapobiegać fragmentacji?
Google w zasadzie nie podejmuje żadnych działań. To co dla nas, konsumentów wydaje się problemem, dla tej firmy prawdopodobnie jest powodem sukcesu. Gigant daje dużą swobodę producentom platform sprzętowych. Mają wolną rękę w dostosowywaniu Android?a do własnych potrzeb. Oczywiście istnieją pewne wymagania podstawowej zgodności, ale są mało rygorystyczne. Dzięki temu producenci sprzętu mają szerokie możliwości w poszukiwaniu zastosowań swoich produktów, np.: nawigacja w samochodach, multimedia w samolotach itp. Dodatkowo mogą oni zdobywać również rynki mniej zamożne, wprowadzając tanie urządzenia, które nie znalazłyby odbiorców w krajach bogatszych.
Przed wydaniem wersji 3.0 zaistniała koncepcja jednolitej platformy dla urządzeń Android. Pojawiły się plotki na temat rozmów Google z ARM dotyczących stworzenia platformy dedykowanej dla Android. Jednak ostatecznie Andy Rubin z Google zaprzeczył tym doniesieniom mówiąc, że oficjalnie firma nie zamierza podejmować działań mających na celu zmniejszenie zjawiska fragmentacji. Jego zdaniem nie jest możliwe utworzenie jednej propozycji będącej rozwiązaniem wszystkich problemów. Fragmentacja miała duże znaczenie dla Google tylko w pierwszej wersji systemu. Wówczas priorytetem było zapewnienie wyjątkowego zadowolenia z użytkowania telefonu.
Różnorodność sprzętowa pozwala na wkroczenie Android?a w niemal każdy obszar naszej aktywności. Duża liczba aktywowanych urządzeń odbija się dalszym wzrostem sprzedaży. Andy Rubin twierdzi, iż obecnie aktywowanych jest dziennie ponad 500 tyś. urządzeń i tempo stale rośnie. Gartner szacuje, że już w 2012 roku Android przejmie niemal 50% rynku smartphon?ów. Mamy tu do czynienia z ogromnym sukcesem mimo ostrej krytyki zjawiska fragmentacji ze strony wydawców aplikacji.
Duża różnorodność wydaje się więc być jedną z przyczyn sukcesu Android?a. Jednocześnie rewelacyjnie komponuje się ze strategią firmy Google, która dzięki obecnym uwarunkowaniom zarabia na reklamach, będących źródłem finansowania aplikacji. Zatem w najbliższym czasie priorytetem Android?a będzie utrzymanie tempa sprzedaży i dalsza ekspansja rynku. Podniesienie jakości dostępnego oprogramowania na Android Market schodzi więc na drugi plan.
Powstaje zatem pytanie: jaka czeka nas przyszłość w odniesieniu do aplikacji mobilnych na platformę Android? Zapewne Google będzie starało się zminimalizować negatywny wpływ fragmentacji. W wersji 3.0 wprowadzono wiele mechanizmów, które pomagają rozwiązywać problemy związane z różnicą w wielkościach ekranu. Wersja 4.0 udostępnia narzędzia pozwalające na odwołania do warstwy sprzętowej. Umożliwi to tworzenie nawet takich aplikacji jak studio nagrań. Nadal jednak urządzenia będą się różnić od siebie wydajnością.
W tym obszarze prawdopodobnie powtórzy się historia z PC. Zapewne pojawią się systemy pomiaru wydajności i możliwości sprzętowych. Pomogą one odbiorcy w doborze aplikacji do możliwości urządzeń. Podobna sytuacja miała miejsce w przypadku aplikacji 3dMark na komputery osobiste.
Kierunek i tempo obecnego rozwoju pozwalają mi wierzyć, że niebawem jakość aplikacji na obu platformach się zrówna. Niestety użytkownicy Android?a muszą jeszcze poczekać, aż rynek urządzeń odpowiednio dojrzeje do takiej zmiany. Na szczęście ma to swoje dobre strony. W tej sytuacji zarówno wielcy i mali producenci oprogramowania przystępują do gry na równych zasadach. Obecna jakość jest w zasięgu każdego programisty aplikacji mobilnych. Rynek jest więc nie tylko dostępny dla największych. Obrany model rozwoju platformy ma też pozytywny wpływ na ceny urządzeń. Duża konkurencja wymusza na producentach sprzętu zastosowanie rozsądnych marż.
W tym miejscu dochodzimy do pozornie paradoksalnej sytuacji. Z jednej strony zarówno konsumenci i producenci aplikacji mobilnych odczuwają negatywne skutki fragmentacji w postaci wpływu na jakość produktów. Z drugiej natomiast czerpią wymierne korzyści z takiego stanu rzeczy. Taka sytuacja już wielokrotnie miała miejsce w informatyce. Prawdopodobnie jest nieodzownym etapem rozwoju otwartych produktów o masowym zasięgu. Zatem uzbrójmy się w cierpliwość, bowiem nadchodzą lepsze czasy.
Cezary Buczyłko, niezależny ekspert – Arceo Doradztwo IT
źródło zdjęcia: cio.com.au