W szale i uniesieniu wczorajszego Apple keynotes w San Francisco, dotychczasowi klienci firmy z logiem jabłuszka zostali tak oczarowani, że zapomnieli o wszystkich bolączkach produktów i oprogramowania, które Apple już na rynek wypuściło. W szale spowodowanym przez iPad na drugą bądź trzecią pozycję spadł temat ważny dla kilku milionów klientów Apple: iPhone OS 4.

Takie problemy jak brak wielozadaniowości czy brak możliwości modyfikacji ekranu “domowego” komórek spod znaku jabłka to duża uciążliwość (nie wspominając o upierdliwości posiadania drogiego Maka by zainstalować iPhone SDK). Wielozadaniowość była dostępna od czasów, gdy moi rodzice byli jeszcze w podstawówce (źródło), a popularność tej technologii rozprzestrzeniła się na komputerach osobistych wraz z systemami Windows (Windows 3.0, Windows NT) (źródło).

Jak na ironię, w 2010 roku Apple ogłasza światu cudo, które wciąż tej wielozadaniowości nie ma (źródło). Być może jest to cudowna maszynka do rozmnażania pieniędzy, ale dopóki nie jestem akcjonariuszem Apple, mało mnie to interesuje. Za to cisną mi się do ust trzy słowa: WTF?!

Napisałbyś aplikację na komórkę? Jeśli tak, to na jaką platformę?

Aplikacje na komórki z roku na rok stają się coraz bardziej popularne. Wraz z większą dostępnością telefonów takich jak iPhone, Blackberry, czy tych opartych na Google Android i Windows Mobile rośnie popyt i dostępność aplikacji pisanych pod te platformy.

Patrząc kiedyś na ilość i różnorodność komórek w moim domu zacząłem się zastanawiać nad ich wykorzystaniem do czegoś nowego – programowania aplikacji mobilnych. Na chwilę obecną u mnie w domu mam dostępne następujące platformy:

  • Symbian 9.1 – Nokia E65
  • iPhone OS 3.1.2 – Apple iPhone 3Gs
  • Windows Mobile 6.1 – HTC TyTN II
  • Android 1.6 (Donut) – HTC Magic
  • Blackberry OS 4.6 – Blackberry Bold 9000
  • Blackberry OS 4.5 – Blackberry Curve 8320
  • ?? – Motorola RAZR V3xx

Zasięgnąwszy trochę literatury odkryłem, że byłbym w stanie (w rozumieniu: osiągalne z technicznego punktu widzenia) pisać aplikacje na 4 z wymienionych powyżej platform. A to z racji posiadania odpowiednich narzędzi by:

  1. aplikację napisać i przetestować dzięki udostępnionym SDK
  2. aplikację dystrybuować dzięki wsparciu producentów komórek

Sklepów, czy też miejsc gdzie użytkownicy komórek mogą zaopatrzyć się w nowe aplikacje, jest kilka. Są to także miejsca, gdzie programiści mogą sprzedawać swoje programy.

  • Android Market – Google, 20 tyś aplikacji, 1 milion potencjalnych klientów (dane na czerwiec 2009)
  • App Store – Apple, 115 tyś aplikacji, 50 milionów potencjalnych klientów (dane na wrzesień 2009)
  • App World – RIM, 2 tyś aplikacji, 8 milionów klientów (dane na marzec 2007)
  • Windows Marketplace for Mobile – Microsoft, 376 aplikacji, niewiadoma ilość potencjalnych klientów

Jednak, aby skorzystać z dobrodziejstw bycia autorem popularnych aplikacji często trzeba ponieść dość spore koszty:

  • Android Market – 25$; Google zatrzymuje sobie 30% przychodów z aplikacji; Android SDK za darmo
  • App Store – 99$/rok; SDK za darmo dostępne tylko na Mac OS X; Apple zatrzymuje sobie 30% przychodów z aplikacji
  • App World – 200$; RIM zatrzymuje sobie 20% przychodów z aplikacji; Blackberry SDK za darmo
  • Windows Marketplace for Mobile – 99$/rok, później $99/aplikację po pierwszym roku (studenci nie płacą); Windows Mobile SDK za darmo, Visual Studio płatne

Jeśli każda z platform wydaje się mieć wady i zalety. Która zatem wg. Ciebie platforma jest najlepsza dla Twojej aplikacji i Twojego sukcesu?

Dostałem dzisiaj paczkę z kupionym na eBay HTC Magic. Telefon ten działa pod systemem Android. Jest to obok iPhone mój drugi telefon (nie wliczam HTC TyTN II, jako że ten kurzy się w piwnicy), który posiada dotykowy ekran, klienta email i przeglądarkę.

Mam zamiar przyjrzeć się Androidowi z bliska i porównać go z iPhone. To będzie bardzo subiektywne porównanie, wsparte być może kilkoma zrzutami ekranu czy filmami na YouTube.

HTC nie jest moim podstawowym telefonem, dlatego będę mógł dość swobodnie modyfikować jego zawartość i oprogramowanie, na którym pracuje.

Z deweloperskiego punktu widzenia, prościej mi będzie (próbować) pisać soft na Android niż na iPhone, którego SDK wymaga MacOS.

Więcej o HTC Magic i o Android:

Zostałem niedawno zaskoczony dość niepozorną aplikacją na iPhone rodem z Amazon: “Amazon Mobile for iPhone“. Jest to aplikacja, która nie tylko pozwala na wyszukiwanie i kupowanie artykułów ze sklepu Amazon, ale posiada jeszcze jedną, bardzo ciekawą funkcję, zwaną Amazon Remembers.

Zasada działania tej funkcji programu Amazon Mobile jest bardzo prosta. Użytkownik robi zdjęcie produktowi, który chce kupić. Zdjęcie jest wysyłane do Amazon. Następnie użytkownik jest informowany o znalezieniu produktu odpowiadającemu zrobionemu zdjęciu, oczywiście z możliwością zakupu na stronie sklepu Amazon.

Zasadę działania bardzo dobrze oddaje instrukcja na stronie sklepu (kliknij by powiększyć):

Zrobiłem dwa testy tego programu i mam bardzo mieszane uczucia, co do jego poprawnej funkcjonalności. Zrobiłem i wysłałem do Amazon dwa zdjęcia, jedno przedstawiało szufladowy wkład na sztućce, a drugi telefon Motoroli V3xx. Jeśli dla pierwszej opcji dostałem bardzo zbliżoną do oczekiwanej odpowiedzi, tak w drugim przypadku otrzymałem propozycję zakupu miernej podróbki iPhone o nazwie Sciphone (więcej tutaj).

Czy niepoprawność drugiej odpowiedzi wynikała z błędnej logiki oprogramowania analizującego obrazy w Amazon? Ale czy aby na pewno za małą aplikacją Amazon dla iPhone stoją bezduszne maszyny i tysiące linii kodu?

Aby odpowiedzieć na to pytanie wsparłem się zasobami wyszukiwarki Google i szybko znalazłem odpowiedź, której się spodziewałem.

Odpowiedzi na Amazon Remembers nie pochodzą z automatycznej wyszukiwarki działającej w rozproszonych systemach AWS, ale od uczestników programu Amazon Mechanical Turk. Nie trudno mi sobie wyobrazić, że obie odpowiedzi mogły pochodzić od ludzi z zupełnie różnych krajów, kontynentów czy kultur, którzy z takiej czy innej przyczyny mogli stwierdzić, że skoro posiadam już Motorolę, to mogę też kupić Sciphone. Bo niby dlaczego nie? Ostatecznie Amazon płaci im kilka centów za każdą odpowiedź, bez znaczenia jakiej jest jakości.

Na tej stonie można zobaczyć listę “hitów”, które wciąż czekają na właściwą “odpowiedź”.

Amazon dokonał czegoś niezwykłego, stworzył, jak sam to zresztą nazywa, sztuczną sztuczną inteligencję.

Ewolucja

20 Sierpień 2009

Równo 10 lat temu, bodajże na początku 1999 roku nabyłem swój pierwszy telefon komórkowy – Ericsson SH888. Ciemno-szary aparat z odstającą antenką, “właściwą” wagą i 3 liniowym wyświetlaczem monochromatycznym nie pozwalał na dużo, a kosztował niemało. Były to czasy, kiedy posiadanie telefonu komórkowego wśród młodzieży było czymś rzadkim, a telefony służyły co najwyżej do dzwonienia do rodziców czy do wysyłania innym kolegom- czy koleżankom-szczęśliwcom SMS’ów. Ta pierwsza, jak i ta druga przyjemność kosztowały wtedy bardzo dużo (jak na dzisiejsze realia SMS’a za kilka groszy bądź za darmo).

To była magia, XXI-wiek w solidnym kawałku plastiku i olbrzymi szpan telefonu zawieszonego u boku na pasku. Praktyczne znaczenie tego wynalazku przyszło mi odkryć dopiero kilka miesięcy później – na studiach, w niejednej nagłej potrzebie telefonu do rodziców.

Później przyszedł czas na niezliczone telefony z logiem Nokii, m.in. niezastąpione i niezawodne Nokia 6210 i 6310. Ten ostatni służył mi przez dwa, bądź trzy lata a jedynym problemem była bateria, która wykorzystana przez 5-10 godzin na rozmowy dziennie i praktycznie non-stop ładowana, wymagała częstej wymiany. Od tamtych dni Nokia kojarzy mi się z niezawodnością i solidnym partnerem. Na tym telefonie mogłem polegać, a za brak naładowanej baterii mogłem winić tylko siebie.

Wraz z wyjazdem z Polski zacząłem zabawę z raczkującą technologią sieci komórkowych trzeciej generacji (3G). Telefon stał się nie tylko narzędziem do porozumiewania się z innymi ludźmi za pomocą głosu i wiadomości tekstowych do 160 znaków, ale także za pomocą emaili, video czy zdjęć. To wtedy po raz pierwszy mój telefon miał możliwość porozumiewania się z innymi urządzeniami za wykorzystaniem protokołu IP.

Choć było to prawie jak rewolucja, oglądanie kiepskiej jakości telewizji na bardzo małym ekranie z trudem mogłem nazwać prawdziwie multimedialnym przeżyciem. Ale to wtedy, dzięki możliwości sprawdzania emaila na telefonie moja skrzynka pocztowa stałą się jednym z głównych kanałów komunikacji do porozumiewania się ze światem. Email nie był już medium, które wykorzystywałem do pisania do znajomego w Meksyku czy w Kalifornii. Email stał się tanim, pozbawionym limitu 160 znaków środkiem przekazu do porozumiewania się z kolegami z pracy, spoza pracy, z rodziną. Po raz pierwszy poczułem, że miałem prawdziwy przenośny komputer w kieszeni.

Ale tak jak nie ma róży bez kolców, tak ten piękny świat multimedialnej bajki nie był pozbawiony problemów. Moja multimedialna komórka wymagała restartów, przestawała odpowiadać bądź wyraźnie zwalniała wraz z ilością otwartych aplikacji.

Kiedy przyszedłem do Microsoftu po raz pierwszy zetknąłem się z Windows Mobile. Moja komórka stała się częścią firmowej sieci, 24/7/365 online, z dostępem do kalendarza, firmowego intranetu i setek darmowych, firmowych aplikacji. To właśnie dzięki tym aplikacjom mój prawdziwy, przenośny komputer w kieszeni otrzymał dodatkowy atrybut: rozszerzalność. Na WM mogłem zainstalować dziesiątki czy setki aplikacji, które były mniej lub bardziej przydatne w pracy (na spotkaniach!) czy w domu.

Tak jak poprzednio, także przy WM, restarty komórki były częste (często nie pomagało nic innego jak wyjęcie baterii), a podstawowa funkcjonalność telefonu, czyli wykonywanie połączeń głosowych, jakby odsunięta na bok. Niezliczone zerwane połączenia, bardzo słaba bateria czy zawieszony aparat w trakcie połączenia głosowego były powodem, dla którego odstawiłem mój wysłużony HTC TyTN II na bok i wróciłem do starej Motoroli RAZR V3xx.

Po 10 latach od początku mojej prywatnej ewolucji w technologii telefonów przenośnych dołączyłem do Apple mainstream i wyposażyłem się w iPhone 3Gs. Czarny model wyposażony w 16GB pamięci flash skupia wszystko to, co dały mi moje poprzednie telefony i na dzień dzisiejszy jest tym, czego od telefonu oczekuję.

Czas pokaże czy za rok będę zmieniał iPhone na inne urządzenie, tak jak czyniłem to już kilka razy przez okres poprzedniej dekady, bo będzie wykazywał wady podobne do swoich poprzedników, bądź nie będzie miał funkcjonalności, której od “przenośnego komputera” będę oczekiwał.

Dodatek do WordPress’a zapewniający bardzo sprawne renderowanie stron dla urządzeń mobilnych o nazwie MobilePress zapewnia sprawną obsługę blogów praktycznie na każdej komórce, czy innych urządzeniach przenośnych, jak choćby iPod Touch. Jest jednak jeden mały problem z tą wtyczką, który wynika bezpośrednio z jej funkcjonalności: motywy.

Każdy motyw używany w MobilePress korzysta z różnych plików składowych strony – header.php, page.php, footer.php. A co za tym idzie, by dołączyć np. skrypt Google Analytics trzeba edytować plik każdego motywu. Na szczęście domyślnie dostarczane są tylko dwa.

Aby dodać skrypt Google Analytics, wyedytuj dwa pliki:

  • /wp-content/plugins/mobilepress/themes/default/footer.php
  • /wp-content/plugins/mobilepress/themes/iphone/footer.php

i dodaj przed znacznik zamknięcia body skypt GA.

Dzięki temu prostemu zabiegowi zapewnisz sobie zliczanie wejść klientów komórkowych na swojego bloga.

Moje zdjęcie po raz drugi zostało wykorzystane przez inne osoby do stworzenia czegoś nowego. I to wszystko legalnie, w ramach licencji Creative Commons. Za pierwszym razem zdjęcie z Co. Donegal z Irlandii zostało wykorzystane na pierwszej stronie firmy z USA (więcej).

Dzięki statystykom z Flickr.com odkryłem, że moje zdjęcie czołgu Sherman, jakie zrobiłem w Normandii w lipcu 2008 zostało wykorzystane do stworzenia tła dla iPhone.

Oryginał:

Wersja dla iPhone:

Moja dzisiejsza implementacja modułu do wyświetlania bloga na urządzeniach mobilnych nie była udana, bo nikomu z odwiedzających mój blog nie wyświetlił się tak jak miał się wyświetlić na urządzeniu mobilnym.

Tomek Topa podsunął mi bardzo dobre, alternatywne rozwiązanie – MobilePress. Po zainstalowaniu i skonfigurowaniu, dodatek ten działa po prostu wyśmienicie.

IE6 na Windows Mobile 6.0 na HTC TyTN II:

Opera 9 na Windows Mobile 6.0 na HTC TyTN II:

Dziękuję wszystkim za testy. Mam nadzieję, że z nowym dodatkiem będziecie mogli czytać mojego bloga z komórek tak samo wygodnie, jak na komputerze.

Zainstalowałem dzisiaj wtyczkę do mojego silnika blogowego o nazwie WordPress Mobile Edition. Jej zadaniem jest wyświetlanie zawartości strony dostosowane do możliwości ekranów urządzeń mobilnych.

W związku z tym mam do Was prośbę. Z Waszej komórki wejdźcie na stronę:

i sprawdzcie, czy strona jest odpowiednio wyświetlana (rozmiar, brak pasków przewijania, etc). Jeśli nie, zajrzyjcie na poniższą stronę:

i prześlijcie mi Wasz user agent string, a dodam go do listy obsługiwanych urządzeń.

Read the rest of this entry »