Tim O’Reilly, autor, wydawca, inwestor oraz promotor wielu przedsięwzięć biznesowych budowanych wokół projektów Open Source napisał kiedyś o swoich próbach wytłumaczenia matce tego, jak Bill Gates postępuje z konkurentami. Po wysłuchaniu opowieści o praktykach biznesowych Microsoftu starsza pani miała podobno powiedzieć, że jej zdaniem Bill to człowiek, który zaproszony na obiad nakłada na swój na talerz całą zawartość półmiska przeznaczoną do podziału między wszystkich gości i domowników. Obserwując to, co robi Steve Jobs z systemem iPhone OS wydaje się, że to samo można powiedzieć o nim.

Do takich wniosków dochodzę oglądając ostatnią odsłonę transformacji Apple Inc. z walczącej o przetrwanie, innowacyjnej firmy uwielbianej przez myślących inaczej kontestatorów w trzymającą za twarz i duszącą przeciwników wszelkimi dostępnymi środkami korporacyjną odmianę Lorda Vadera z „Gwiezdnych Wojen”. Inaczej bowiem wygląda Apple od strony konsumenta a zupełnie inaczej od strony programisty, który chce pisać oprogramowanie na urządzenia z serii iPhone, iPod Touch czy iPad.

Z konsumentem rozmawia uśmiechnięty, dający się lubić Mac z serii reklam „Get a Mac” (w tej roli Justin Long), z programistą—dr Eldon Tyrell, pan i władca Tyrell Corporation z filmu „Blade Runner”, który sprzedaje swoje produkty pod hasłem „Bardziej ludzki niż człowiek.” (oryg. More human than human.) Porównanie jak najbardziej na miejscu, bo Steve i spółka uważają się za arbitrów dobrego smaku i z wyższością spoglądają na resztę świata. Najlepiej widać to po sposobie w jaki traktują programistów piszących oprogramowanie na iPhone, iPod Touch i iPad.

Na początku, przez rok po premierze pierwszego modelu telefonu iPhone, Jobs i spółka nie chcieli udostępnić programistom narzędzi potrzebnych do tworzenia oprogramowania działające na równych prawach co dostarczane razem z systemem Calculator, Safari czy Mail. Wszelkie narzędzia potrzebne do pisania oprogramowania były dostępne tylko dla programistów pracujących dla Apple. Programistom zewnętrznym polecano pisanie aplikacji w języku JavaScript, który raczej średnio nadaje się do pisania czegokolwiek przypominającego tradycyjne programy znane z komputerów osobistych. Fani firmy wyjaśniali zniecierpliwionym programistom, że to dla ich dobra, bo Apple nie lubi pokazywać technologii lub narzędzi niedokończonych. Kiedy już je pokazali, okazało się, że jest to spełnienie marzeń programisty o raju, z tym że ten raj jest solidnie zaminowany.

Wstęp do raju jest płatny. Programiści muszą wnosić co roku opłaty w wysokości 99 dolarów amerykańskich, co nie jest sumą wygórowaną, zwłaszcza, że dokumentacja i narzędzia potrzebne do pisania oprogramowania są udostępnianie za darmo. No prawie, bo do pisania oprogramowanie potrzebny jest komputer firmy Apple działający pod kontrolą najnowszej wersji systemu Mac OS X, a to wydatek ok. 5000 zł. Programista musi też podpisać liczącą kilkadziesiąt stron umowę, z której kilkanaście to aktualizowana kilka razy w roku lista zakazów. Niektóre z nich są sensowne, np. zabrania się programistom pisania kodu, ktorego celem jest zakłócenie pracy sieci informatycznych, ale większość to wznoszone coraz wyżej płoty między rozrastającym się prywatnym podwórkiem biznesowym Apple a kurczacą się przestrzenią publiczną, w której mogą działać programiści.

Od początku zapisy umowy były bardziej drakońskie niż umowa Twardowskiego z Borutą. O umowie nie można było rozmawiać, nie można było komentować jej zapisów, nie można było rozmiawiać na temat spraw dotyczących pisania oprogramowania. Nawet z innymi programistami, którzy podpisali taką samą umowę. To sprawiło, że programiści zaczęli się buntować, bo czego jak czego ale zabronić programistom swobodnie rozmawiać o swoim fachu jest równie trudno jak wyrzucić polityków z naszych kieszeni.

Zbuntowali się też wydawcy, którzy chcieli opublikować książki uczące pisania oprogramowania na telefony iPhone. Jednym z nich było wydawnictwo O’Reilly, które miało dość szybko dwa gotowe tytuły. Na szczęście dla wszystkich, wydawnictwo to ma pewne specjalne przywileje i możliwośc dotarcia do osób podejmujących decyzje, więc po kilku tygodniach Apple pozwoliło programistom rozmawiać ze sobą. Zanim jednak skończył się jeden problem, pojawił sie drugi—arbitralne podejście Apple do tego co uznają za aplikację godną gościć w sklepie iTunes a co nie.

Pierwszą odrzuconą aplikacją, która uzyskala światowy rozgłos był iFart, pierwsza z serii „pierdziappów” (tak pozwalam sobie nazywać wszystkie aplikacje, których celem istnienia jest dostarczanie dużej dawki radości z wysłuchania niezliczonych odmian odgłosów wydawanych przez nasze ciała po przedawkowaniu grochówki). Był z tym zbukiem poważny problem, bo Apple odrzuciło owo „dzieło” z chęci ochrony swojego wizerunku a nie z powodu złamania któregokolwiek z zapisów umowy. Oczyma wyobraźni widziano zapewne już te żarty ze strony konkurencji na temat „pierdzifonów”. Tymczasem okazało się, że program odniósł spory sukces w segmencie odbiorców żartów niewybrednych, którzy należą do znaczącego odsetka naszej populacji i, przez analogię, populacji użytkowników iPhone’a.

Problemy z rozrywkowymi „prukawkami” Apple ma od dawna, W latach 1991-1995 można było w katalogach oprogramowania na komputery Macintosh znaleźć w dziale Rozrywka dysk z podobnymi odgłosami, które po wgraniu na komputer (najlepiej u kolegi) były odtwarzane przy wyjęciu dyskieki. Ha, ha. Zabawa na cztery fajery. Nic na to nie można było wtedy poradzić. Ale teraz czasy się zmieniły i to czego Apple mogło się po cichu wstydzić można dziś wyrzucić ze sklepu iTunes. I tak się dzieje mniej więcej co miesiąc. Kolejna aplikacja wylatuje stamtąd z hukiem, z powodów wizerunkowych lub, co bardzo niebezpieczne, z powodu zazdrości o to, że ktoś inny ma lepsze pomysły albo o to, że Apple traci kontrolę nad małym skrawkiem swojego księstewka.

Najlepszym przykładem takich działań jest najnowszy zapis o tym, że programiści mogą wykorzystywać do pisania aplikacji na iPhone tylko i wyłącznie narzędzia udostępnione przez Apple. Jest to strzał w kierunku Adobe, które podejmowało próby ułatwienia programistom tworzącym gry w technologii Flash przeniesienie ich na platformę iPhone. Można to robić na wiele sposobów, tradycyjnie robi się to pisząc translator, który przetłumaczy aplikację z formatu Flash na coś, co jest mieszanką obrazków, animacji, plików dźwiękowych oraz kodu w języku C, C++ lub Objective-C. Potem należy taki pakiet danych i kodu skompilować wykorzystując narzędzia Apple i jest po problemie.

Niestety, wielu producentów narzędzi dla programistów idzie na skróty i oferuje hybrydy, które są szkieletem gotowej aplikacji, do którego programiści dodają skrypty modyfikujące zachowanie szkieletu. Takie rozwiązania zostały przez Apple napiętnowane. Z pozoru jest to rozwiązanie sensowne, bo stosowanie skryptów, które działają znacznie wolniej niż programy przygotowane za pomocą narzędzi Apple pochłania dodadtkowe zasoby procesora. Piszę „z pozoru” z premedytacją, ponieważ znakomita większość gier tworzonych na platformę iPhone OS wykorzystuje ten mieszany model. A gry są dla Apple, jak sam Steve Jobs to przyznaje, jedną z najważniejszych kategorii aplikacji w iTunes App Store.

Zakazując publikacji aplikacji zbudowanych z wykorzystaniem narzędzi innych producentów Apple antagonizuje nie tylko Adobe ale przede wszystkim tysiące programistów, którzy korzystają z narzędzi dostarczanych przez Ansca, GarageGames, Unity3D, czy Stonetrip. Zupełnie niepotrzebnie. Jeżeli Apple rzeczywiście ma na uwadze jakość i płynność gry, można stworzyć narzędzia, które zablokują możliwość wysłania aplikacji do publikacji na podstawie raportu o wydajności programu. Ale jeżeli chodzi o to, że korzystanie z narzędzi zewnętrznych otwiera tylne drzwi dla tych, którzy chcą zarabiać na sprzedaży np. dodatkowych etapów gry, omijając sklep Apple, to powinniśmy się zastanowić czy warto współpracować z firmą, która wtrąca się do wszystkiego co robimy tylko dlatego, że chce zatkać mikropory, którymi może potencjalnie uciec parę centów. Szczególnie obrzydliwe jest odbieranie chleba dostawcom narzędzi takich jak Unity3D czy Shiva, ponieważ nie ma w tym postępowaniu nawet wątku zwalczania konkurencji. Apple nie oferuje porównywalnych narzędzi. Zakazują, bo tak! Utrudniają życie programistom, bo tak im się podoba. Oj, panowie?

To co robi Apple jest grą na korzyść Google, którego Android jest aktywowany przez 60 000 nowych użytkowników każdego dnia. I z każdym dniem staje się bardziej atrakcyjny dla programistów.

To co robi Apple jest złe i szkodzi wszystkim. Dyktowanie programiście z jakiego języka ma korzystać to jak dyktowanie pisarzowi jakiego odcienia atramentu ma używać do zapisywania notatek. To nie ma sensu. Atrament od Pelikana nie jest gorszy od atramentu od Parkera a na pewno nie zaszkodzi Umberto Eco i nie pomoże naszej piszącej chętnie i dużo (choć bez sensu) ciotce. Tymczasem Apple, uważa, że można to robić. Niesłusznie. Prędzej czy później programiści odwrócą się od Apple i przejdą do obozu Androida. I co wtedy zrobi Apple? Zakładam się o porcję dobrych lodów, że Steve Jobs zostanie wyproszony z Apple po raz drugi.

zdjęcie ze zbiorów The Blade Runner F.A.Q.