W zeszłym tygodniu (tekst opublikowano 9 marca) Steve Jobs na spotkaniu w Ratuszu Apple’a (Apple Town hall) ogłosił dwie istotne informacje dotyczące iPhone: 1) wparcie dla Microsoft Exchange, oraz 2) iPhone SDK. Wsparcie dla Exchange było raczej niespodziewanym krokiem, ale po chwili namysłu nabiera ono sensu. Aby wysadzić z siodła Blackberry (gracz numer jeden wśród usług bezprzewodowych na rynku USA) Apple potrzebowało wymagającego, ale i medialnego przedsięwzięcia. Ponadto Apple z całą pewnością zdało sobie sprawę z tego, że czasy, kiedy ludzie nosili dwa telefony minęły.
Autor: Alex Iskold
Tekst jest tłumaczeniem “Why Apple Will Dominate Next Gen Computing”
Po zrealizowaniu tego przedsięwzięcia (jakim jest wyprodukowanie jednego telefonu do użytku domowego i biznesowego) iPhone, razem ze swoim odtwarzaczem muzyki, kamerą i przeglądarką internetową, wydaje się mieć na tyle silną pozycję aby stać się “tym jedynym telefonem”.
Niezależnie od wagi, roli oraz tego jak fajna wydaje się pierwsza wiadomość jest ona znacznie mniej istotna od drugiej informacji ogłoszonej przez Steva Jobsa — iPhone SDK. Ta platforma o ogromnych wręcz możliwościach, której Apple używa do tworzenia pięknych aplikacji dla MacOS i iPhone jest teraz zupełnie otwarta. Po dekadzie prac, to oparte na Objective-C, narzędzie jest w pełni wyposażone w interfejsy dla systemów operacyjnych, grafikę, audio, kontrolę ruchu, elementy UI (interfejsu użytkownika) itp. Dostarczane jest ono jest z pełnym symulatorem iPhone, środowiskiem do rozwijania XCode i procesem compile/build/deploy dostępnym pod jednym kliknięciem. Ta platforma z pewnością zmienia układ sił na rynku.
Potwierdzają to działania firmy Kleiner Perkins, przodującej na rynku kapitałów venture (VC). Wysłała ona Johna Doerra aby ogłosił powstanie funduszu iFund w wysokości 100 milionów dolarów. Pan Doerr, który jest jednym z najbardziej poważanych specjalistów na rynku kapitałów venture, uznał wydanie iPhone SDK za wydarzenie historyczne. Twierdzi on nawet, że iPhone przerasta komputery PC. Jak mówi: wyobraźmy sobie urządzenie, które możemy zabrać ze sobą dosłownie wszędzie; urządzenie, które sprawia, że rozmaite aplikacje oraz zasoby informacji z całego świata mamy dostępne pod palcami ręki. Niewątpliwie coś takiego musi robić wrażenie.
Tak naprawdę chodzi o biblioteki!
Postawmy sprawę jasno: tu nie chodzi o język, ale o biblioteki. Za każdym razem, kiedy słyszę deweloperów narzekających na jakiś nowy język programowania kręcę tylko głową. W dzisiejszych realiach nowy język nie będzie w pełni użyteczny, jeśli nie zadbano w odpowiedni sposób o biblioteki. Wzrost poziomu złożoności dzisiejszych aplikacji wymusza taki sam wzrost na bibliotekach. Microsoft nauczył się tego odbierając wiele bolesnych lekcji w trakcie tworzenia platformy .Net. Jeśli Microsoft zdecydowałby się na przyjęcie i zoptymalizowanie Javy byłby dziś całe lata do przodu w porównaniu z obecnym stanem prac.
Apple wybrało inną drogę. Przez ostatnią dekadę zadziwiało tłumy i inwestorów swoimi kolejnymi wdrożeniami. Przy każdym nowym osiągnięciu wydawało się, że już raczej nic go nie przebije. Za każdym razem jednak Jobs i jego współpracownicy wyciągali kolejnego królika z kapelusza. Widać gołym okiem, że Apple można porównać do dobrze naoliwionej maszyny, doskonale przygotowanej do wypuszczania kolejnych produktów. Za tym wszystkim kryje się jeden sekret Apple — oprogramowanie. Podczas gdy inni wymyślali nowe języki programowania, nowe platformy, Apple nie ustawało w doskonaleniu i budowaniu własnego kodu.
Już w początkach działalności firmy, Apple zaadaptowało język programowania nazywany Objective-C — zorientowaną obiektowo wersję znanego języka proceduralnego. Kiedy Jobs wrócił do Apple, jedną z jego pierwszych (i mądrych) decyzji było odejście od starego systemu operacyjnego na rzecz Uniksa. Ten krok ułatwił Apple dostęp do poważnych programistów przy jednoczesnym zachowaniu pięknego i prostego interfejsu użytkownika. Kiedy pojawiła się Java Apple pozostało niewzruszone, ponieważ była ona zbyt wolna. Ogólnie rzecz ujmując Apple ignorowało pojawiające się języki pozostając przy swojej platformie. Mądre, zdyscyplinowane i dojrzałe podejście.
Platforma iPhone
Platforma iPhone ma wiele wspólnego z MacOS. W przemyślny sposób — przystosowując kod do nowego urządzenia — Apple sprawiło, że ich własny system operacyjny działa na iPhone. Jedynym wyjątkiem były tutaj biblioteki UI, które należało zaprojektować specjalnie dla dotykowego ekranu, ruchów, unikalnej grafiki i dźwięków iPhone.
Deweloperzy dostali cały zestaw narzędzi ukryty za solidnym API. XCode stanowi studio (nie jest ono niestety wolne ani darmowe) rozwijania aplikacji. Składa się nań nowoczesny edytor, debugger i integrator kodu źródłowego. Ma również aplikację do tworzenia UI działającą na zasadzie przeciągnij i upuść (zawiera ona wszystkie standardowe elementy UI iPhone). W celu profilowania i diagnostyki iPhone Apple oferuje zestaw nazywany Instruments. Największe wrażenie robi jednak w pełni funkcjonalny symulator iPhone. Deweloperzy mogą pisać i natychmiast testować kod na swoich Makach bez każdorazowego przenoszenia go na iPhone.
Platforma oferowana przez Apple jest na tyle dobra, że grupa firm była w stanie dostarczyć wersje demo swoich aplikacji w przeciągu zaledwie dwóch tygodni. Niektóre z firm wysłały swoich deweloperów, którzy nawet nie znali Objective-C, czyli najważniejszego dla tej platformy języka. Głównym powodem, dla którego platforma ta jest tak łatwa w użyciu i tak dopracowana jest to, że deweloperzy Apple’a sami używają jej do tworzenia aplikacji dla iPhone. Podobnie jak Amazon, który korzysta z własnych Web Services, Apple zdecydowało się na strategię korzystania z własnych aplikacji do codziennej pracy i właśnie zbierają owoce tej decyzji.
Dlaczego ta platforma jest inna
Ostatnimi czasy często słyszeliśmy o platformach i API. Nie czyni to jednak wszystkich platform równymi. Po pierwsze porównajcie platformę Apple’a, z tym co zaoferował Microsoft dla Windows jakiś czas temu. Zagmatwana kombinacja API, COM, OLE i ActiveX nadal sprawia, że deweloperzy kręcą tylko głową. Zamiast promować elegancję i prostotę Microsoft stara się na siłę forsować złożoność. Dlaczego? Ponieważ wymusza to pewnego rodzaju ekskluzywność, zmusza do uczenia się coraz to nowych, dziwniejszych rzeczy i sprawia, że ludzie muszą uzyskiwać coraz to nowe certyfikaty. Kultura Apple tymczasem ugruntowana jest w elegancji i prostocie.
Oferta Apple różni się także od platform takich jak Facebook czy Open Social. Sednem propozycji Facebook jest dostarczenie platformy dla tworzenia aplikacji społecznościowych. Nie może ona jednak równać się z obecną propozycją Apple. PHP, Flash i JavaScript w połączeniu z prymitywnym UI nie umywa się nawet do elegancji iPhone SDK.
Na wiele sposobów aplikacje webowe “grały w berka” z programami na biurko. Dziś, urządzenie przenośne wysunęło się na prowadzenie. Prześciga o wiele lat to, co dostępne jest w nowoczesnych przeglądarkach. Połączone możliwości API Apple’a dla grafiki, ruchu i dźwięku otworzyły drzwi do rzeczy, które wcześniej nie były w internecie możliwe.
INNA droga przed nami
Kiedy w czerwcu zostanie uruchomiony App Store, znajdą się w nim tysiące aplikacji. Firmy prześcigają się w tworzeniu programów przy użyciu tej nowej platformy. Deweloperzy spieszą do sklepów i tworzą książki o Objective-C. Podobnie jak JavaScript pojawił się nagle na rynku, ponieważ stanowił jedyną alternatywę dla nowego medium, tak Objective-C stanowi ją dla tej nowej i potężnej platformy mobilnej.
Apple wykonało ten ruch bezbłędnie. Enterprise i SDK ręka w rękę poprowadzą iPhone do statusu TEGO JEDYNEGO urządzenia przyszłości. Jak na ironię PC otrzymał nokautujący cios nie ze strony MacBooka ale nowego malutkiego komputera. Apple zemścił się w elegancki, konsekwentny i kreatywny sposób. Kolejna era komputeryzacji będzie zdominowana właśnie przez Apple. Czy to dobrze? Prawdopodobnie tak. Na pewno lepiej, niż gdyby miała być zdominowana przez Microsoft.
A teraz puśćcie wodze fantazji i powiedzcie nam jakich aplikacji nie możecie doczekać się na waszych iPhone!
Tłumaczenie: p_lupkowski
Dodaj komentarz