Zamknij reklame

Od powiadomienie o piaskownicy w przypadku aplikacji w sklepie Mac App Store toczyły się gorące dyskusje na temat tego, jak Apple utrudnia pracę programistom. Jednak dopiero pierwsze ofiary i konsekwencje pokazały, jak dużym problemem jest to posunięcie i co może oznaczać dla deweloperów w przyszłości. Jeżeli sandboxing nic Ci nie mówi, to w skrócie oznacza ograniczenie dostępu do danych systemowych. Aplikacje w iOS działają w ten sam sposób - praktycznie nie mogą integrować się z systemem i wpływać na jego działanie ani dodawać do niego nowych funkcji.

Oczywiście ten krok ma również swoje uzasadnienie. Przede wszystkim chodzi o bezpieczeństwo – teoretycznie taka aplikacja nie może wpłynąć na stabilność czy wydajność systemu, ani uruchomić złośliwego kodu, gdyby coś takiego umknęło zespołowi zatwierdzającemu aplikację dla App Store. Drugim powodem jest uproszczenie całego procesu zatwierdzania. Wnioski są łatwiej weryfikowane i recenzowane, dzięki czemu zespół daje zielone światło dla większej liczby nowych aplikacji i aktualizacji dziennie, co jest logicznym krokiem, gdy wniosków jest od tysięcy do dziesiątek tysięcy.

Jednak w przypadku niektórych aplikacji i ich twórców sandboxing może oznaczać ogromną ilość pracy, którą w przeciwnym razie można by poświęcić na dalszy rozwój. Zamiast tego muszą spędzać długie dni i tygodnie, czasami zmieniając całą architekturę aplikacji, tylko po to, by zostać zjedzonym przez wilka. Oczywiście sytuacja różni się w zależności od programisty, dla niektórych oznacza to po prostu odznaczenie kilku pól w Xcode. Inni będą jednak musieli szczegółowo zastanowić się, jak obejść te ograniczenia, aby istniejące funkcje mogły nadal działać, albo z bólem serca będą musieli usunąć funkcje, ponieważ nie są kompatybilne z piaskownicą.

Deweloperzy stają zatem przed trudną decyzją: albo opuścić Mac App Store i w ten sposób stracić znaczną część zysków związanych z marketingiem odbywającym się w sklepie, jednocześnie zrezygnować z integracji z iCloud czy centrum powiadomień i kontynuować aby rozwijać aplikację bez ograniczeń, lub pochyl głowę, zainwestuj czas i pieniądze w przeprojektowanie aplikacji i uchroń się przed krytyką ze strony użytkowników, którzy przegapią niektóre funkcje, z których często korzystali, ale musiały zostać usunięte ze względu na piaskownicę. „To po prostu dużo pracy. Wymaga to ogromnych, często wymagających zmian w architekturze niektórych aplikacji, a w niektórych przypadkach nawet usunięcia funkcjonalności. Ta walka pomiędzy bezpieczeństwem a komfortem nigdy nie jest łatwa.” mówi David Chartier, programista 1Password.

[do action="quote"]Dla większości tych klientów App Store nie jest już niezawodnym miejscem zakupu oprogramowania.[/do]

Jeśli programiści ostatecznie zdecydują się opuścić App Store, stworzy to nieprzyjemną sytuację dla użytkowników. Ci, którzy kupili aplikację poza Mac App Store, będą nadal otrzymywać aktualizacje, ale wersja Mac App Store stanie się oprogramowaniem porzuconym, które będzie otrzymywać co najwyżej poprawki błędów ze względu na ograniczenia Apple. O ile dotychczas użytkownicy woleli dokonywać zakupów w Mac App Store ze względu na gwarancję bezpieczeństwa, ujednolicony system bezpłatnych aktualizacji i łatwy dostęp, o tyle zjawisko to może spowodować gwałtowny spadek zaufania do App Store, co będzie miało daleko idące konsekwencje dla zarówno użytkownicy, jak i Apple. Marco Arment, twórca Instapaper i współzałożyciel Tumblrskomentował sytuację w następujący sposób:

„Następnym razem, gdy będę kupować aplikację dostępną w App Store i na stronie dewelopera, prawdopodobnie kupię ją bezpośrednio od dewelopera. I prawie wszyscy, których irytuje banowanie aplikacji z powodu piaskownicy – ​​nie tylko programiści, których to dotyczy, ale wszyscy ich klienci – zrobią to samo w przypadku swoich przyszłych zakupów. Dla większości tych klientów App Store nie jest już niezawodnym miejscem zakupu oprogramowania. Zagraża to przyjętemu celowi strategicznemu, jakim jest przeniesienie jak największej liczby zakupów oprogramowania do Mac App Store.”

Jedną z pierwszych ofiar sandboxingu stała się aplikacja TextExpander, która umożliwia tworzenie skrótów tekstowych, które następnie aplikacja zamienia na całe frazy lub zdania w całym systemie. Gdyby programiści byli zmuszeni zastosować Sanboxing, skróty działałyby tylko w tej aplikacji, a nie w kliencie pocztowym. Chociaż aplikacja jest nadal dostępna w sklepie Mac App Store, nie będzie już otrzymywać żadnych nowych aktualizacji. Podobny los spotkał aplikację Postbox, gdzie twórcy postanowili nie udostępniać nowej wersji w Mac App Store, gdy ukazała się trzecia wersja. Ze względu na sanboxing musieliby usunąć kilka funkcji, np. integrację z iCal i iPhoto. Wskazali także na inne mankamenty Mac App Store, takie jak brak możliwości wypróbowania aplikacji, brak możliwości zaoferowania obniżonej ceny dla użytkowników starszych wersji i inne.

Twórcy Postboxa musieliby stworzyć specjalną wersję swojej aplikacji dla Mac App Store, aby zachować zgodność z ograniczeniami narzuconymi przez wytyczne Apple, co dla większości programistów jest niemożliwe. Zatem jedyną główną zaletą oferowania aplikacji w Mac App Store jest wyłącznie marketing i łatwość dystrybucji. „Krótko mówiąc, Mac App Store pozwala programistom spędzić więcej czasu na tworzeniu świetnych aplikacji, a mniej na budowaniu infrastruktury własnego sklepu internetowego” dodaje Sherman Dickman, dyrektor generalny Postbox.

Odpływ programistów z Mac App Store może mieć także długoterminowe konsekwencje dla Apple. Może na przykład zagrozić raczkującej platformie iCloud, z której nie mogą korzystać programiści spoza tego kanału dystrybucji. „Tylko aplikacje w App Store mogą korzystać z iCloud, ale wielu programistów komputerów Mac nie będzie tego robić lub nie będzie w stanie tego zrobić ze względu na niestabilność polityczną App Store” twierdzi deweloper Marco Arment.

Jak na ironię, choć ograniczenia nałożone na iOS App Store z czasem stały się bardziej korzystne i na przykład programiści mogą tworzyć aplikacje, które bezpośrednio konkurują z natywnymi aplikacjami na iOS, w przypadku Mac App Store jest odwrotnie. Gdy Apple zaprosił programistów do Mac App Store, postawił pewne bariery, których aplikacje musiały przestrzegać (zobacz artykuł Mac App Store – tutaj także programistom nie będzie łatwo), ale ograniczenia nie były tak krytyczne jak obecne piaskownice.

[do action="quote"]Zachowanie Apple wobec programistów ma długą historię na samym iOS i świadczy o arogancji firmy wobec tych, którzy mają największy wpływ na sukces danej platformy.[/do]

Jako użytkownicy możemy się cieszyć, że w przeciwieństwie do iOS, na Macu możemy instalować aplikacje także z innych źródeł, jednak świetny pomysł centralnego repozytorium oprogramowania Mac zostaje totalnie powalony ze względu na coraz większe ograniczenia. Zamiast rozwijać się i zapewniać programistom niektóre opcje, o które od dawna zabiegali, takie jak opcje demonstracyjne, bardziej przejrzysty model roszczeń lub obniżone ceny dla użytkowników starszych wersji aplikacji, Mac App Store zamiast tego ogranicza je i dodaje niepotrzebne dodatkową pracę, powodując porzucanie oprogramowania i tym samym frustrując nawet użytkowników, którzy kupili oprogramowanie.

Sposób, w jaki Apple traktuje programistów, ma długą historię tylko w przypadku systemu iOS i świadczy o arogancji firmy wobec osób, które mają duży wpływ na sukces platformy. Częste odrzucanie aplikacji bez powodu bez późniejszego wyjaśnienia, bardzo skąpa komunikacja ze strony Apple, wielu programistów musi sobie z tym wszystkim poradzić. Apple zaoferowało świetną platformę, ale także podejście „pomóż sobie” i „jeśli ci się nie podoba, to odejdź”. Czy Apple w końcu stał się bratem i spełnił ironiczną przepowiednię z 1984 roku? Odpowiedzmy sobie na każde z nich sami.

Źródła: TheVerge.com, Marco.org, Postbox-inc.com
.