Appleは誰に発信するか

iPhone 4のアンテナ騒動。
個人的な感想は、iPhone 4購入を考えている身としては、実際使用して問題ないという声が多数(+店頭で触ったが未再現)だから事実については比較的楽観視。そしてジョブズを尊敬し、親Apple的心情を持つ身としては大事なタイミングでやっちまったな、大丈夫かな、という心配があるのみ。
ただ何より不思議というか残念というかつまらん世の中だなあと思うのは、この問題について上のような個人的関心の種がないにも関わらず何故か騒いでいる一般大衆の愚かしい行為について。
わたしは別に騒いでる人々に反論する気はない。反論するべきいわれもないし、何より反論しようにも彼らの論点は根本的にずれていると感じているからだ。だから以下に述べるのは、うんざりするほどの愚かしい行為に対する、親切心半分の忠告である。ただただ、君は残念なことをしているよ、というだけの指摘である。
おおよそ今回のAppleのアンテナ問題について、iPhoneも持たず、Appleの株主でもないような人々が騒ぎ立てる必要はどこにあるのか?
そんなものはない。
簡単に観察結果から言うと、メディアに踊らされているよ、という単純な話である。
大衆はメディアが騒ぐものは一つ残らず「われわれ」の問題であると短絡に結論している節がある。そしてまた、メディアは「われわれの声」を乗せ、また「われわれの声」への反応を伝えてくれるものであると信じている。もちろんそれは誤りである。

Appleは市場に発信する

今回の件について具体的にこのことを説明すると、大衆はアンテナ問題についてAppleとけんかでもしている気分になっている。「われわれの声」がメディアを通してAppleを動かし「われわれへの釈明」をAppleが行った/行うべきとでも考えている。
そんなわけがない。
Appleの発表は誰に向けての何のためのものだったのか? それはAppleのユーザに向けてであり、市場に向けてであり、あるかも知れない訴訟への対策でしかない。どこの誰かも知れない「われわれ」とか「社会への説明責任」とか、あるんだかも分からない対象へ向けての反応ではないのである。結果としてAppleは株価を上げたし、訴訟があった場合の反証準備にもなった。iPhoneの商品価値への影響はない。Appleはこれ以上の説明義務を考えていない。少なくとも、現時点では。
この点が理解出来てない大衆は非常に不幸だ。Appleに「社会への説明責任」を期待し、それが果たせていないからまだまだ「われわれ」は戦えると信じている。「説明になってない」と思うのは「何に対しての説明か」をただ理解していないだけである。Appleは社会に対して説明責任を果たすための説明など最初からしていない。自分に説明責任を求める権利があり、Appleにもそれに対応するべきという義務感があるべきだなどというのは、大衆の思い上がりに過ぎない。
ここまで言っても、まだまだ、納得しないものも居るだろう。
彼らは「Appleに説明責任がないなどというのこそ思い上がりだ」とでも言うのではないだろうか。
しかしそんな責任があるなどというルールはない。ルールもないことを暗黙のルールだ常識だと思い込むのは勝手だが、そんなものを信じて自分一人だけ勝手に縛られているのは単に不幸の元である。ただただ、忠信から、考えを改めることをお勧めするのみである。
Appleはあなたに応えない。

余談

TOEIC600点程度の、所詮日本国内しか視野に入れられないわたしだけども、一体大衆というものは世界の他の国々でもこうなのかと疑問に思って仕方ない。世の殆どの問題に無関係であるにも関わらず、世の殆どの問題に自分が関係していると思い込んでいるような人々。ただのお祭り好きと割り切れているのならまだ健全(とはいえ迷惑千万)だが、正直自分自身何が何やら分からないまま空回りしている様にしか見えない。

やはりこんな勘違い大衆を生むのは、ひとえに日本の社会特有のことかも知れない、と思う。メディアに踊らされた「世論」への「社会的責任」などと称するものに翻弄され、企業が潰れたり総理が潰れたり伝統芸能が潰れかけんとしていたり、人一人犯罪者扱いで闇に葬ったりということが平気で行われる社会である。「社会的責任」論の強さ、ひいては「大衆の強さ」を大衆がこうまで勘違いして受け取ってしまっているのも仕方のないことなのかも知れない。ただただ残念な現実である。

ホームボタンダブルクリックで出て来る例のアレと、iOS 4.0の「マルチタスク」機能に対する誤解。--「マルチタスクとは何か」


今朝未明、iOS 4.0が公開された。iPhoneiPadなどに搭載されているOSの最新バージョンだ。
このiOS 4.0におけるウリの新機能の一つが"Multitasking"と称されるシステムなのだが、iOS 4.0の公開このかた見ていると、この"Multitasking"については、どうも世の中誤解が蔓延しているようだ。あの天才プログラマー小飼弾さんもなんだかちょっと妙ちくりんなことを書いているくらいだ

そんなわけで、本文では、タイトルにあるように、「ホームボタンダブルクリックで出て来るアレ」がなんであるのか、ということを中心にして、iOS 4.0のマルチタスクについての代表的な誤解を解いて行きたいと思う。

話はまず、iPhoneの"Multitasking"が求めるところの「マルチタスク」とは何か、と言うところから始める。iPhoneマルチタスク機能は一般的に想像されるそれとはちょっと違ったものである。それでいてかつ、何よりも本質的なマルチタスク機能であると筆者は考える。この「iPhoneの目指すマルチタスク」に対する不理解が、基本的にはそれぞれ細かな誤解に繋がっているのだ。

"Multitasking"については、具体的には、次のような誤解がよく目につくものだと思う。

  • iOS 4.0の登場によって"Multitasking"が実現したという誤解
  • ホームボタンをダブルクリックすると出て来る例のアレ--タスクスイッチ="Multitasking"という誤解
  • アプリの終了」を求めるという誤解

これらの誤解を解くことが本文の到達点だ。

では、やや観念的な話になるが、まずはマルチタスクとは何か、ということから考えたい。これを考えることが、実は非常に重要なことなのだ。何故と言えば、AppleiPhoneチームが(多分)ここから考えて新OSの開発に取り組んだからだ。

マルチタスクとは何か

マルチタスクとは何か。
多分この問いの答えとして多くの人が「バックグラウンドで他のアプリが動いていること」と考えている。これがすべての誤解の根源にあるものだ。
聞こう。「バックグラウンドで他のアプリが動いている」それの何が嬉しい?
自分が利用してもいない処理の為にデバイスリソースが裂かれる。その何が嬉しい?
無駄な処理にリソースが裂かれることはまったくもって嬉しいことではないのだ。メモリは溢れる電池は減る。良いことなど一つもない
しかしユーザはマルチタスクを求めるマルチタスクには確かに人を引きつける魅力利点がある。
これはどういうことか?
マルチタスクとは、「バックグラウンドで他のアプリが動いていること」ではないのである。正確に言うと、ユーザがマルチタスクを唱えるときそこに求めている利点とは、「バックグラウンドで他のアプリが動いている」点ではないのである。

では、マルチタスクとは何か。ユーザがマルチタスクを唱えるときそこに求めている利点とは何か。考えをこの段階まで純化させて初めて、iOS 4.0の新機能であるところの"Multitasking"が生まれるのだ。
マルチタスクの利点とは何か、結論から言うと、iOSチームはこれを次の点に集約させたと思われる。

  • アプリをまたいで行ったり来たりする作業のシームレスな遷移
  • いくつかのバックグラウンドで動かすべき処理をバックグラウンドで動かす事
  • バックグラウンドの処理からフォアグラウンドへの通知によるこれらの有機的な結合

2番目の文章はちょっとよく読んでいただきたい。「バックグラウンドで必要な『処理』を動かす」これは「バックグラウンドでアプリが動いている」こととは似て非なることだ。

また細かく言うと、このいくつかの『処理』はiPhoneのデバイス的特性を考慮して

  • 音声の入出力
  • GPSによる追跡
  • ダウンロード等の『待ち』を要求する処理

と言ったものに絞られた。蛇足。

以上一言で言うと、「いくつかの必要な処理をバックグラウンドで走らせ、フォアグラウンドではアプリ間をシームレスに遷移する」ことが、iOSチームの出した「マルチタスクとは何か」という問へのなのである。この点をしっかりふまえてもらいたい。すると、以下に上げるよくある理解が何故誤っているのかと言うのが分かっていただけると思う。

iOS 4.0の登場によってマルチタスク機能が実現したという誤解

さて、いよいよ本題の世に蔓延る誤解を一つ一つ解いて行きたいと思う。

iOS 4.0の登場でマルチタスク機能は実現したのか。答えはNOである。
それはちょっと相反するような二つの観点から否定される。

  • OSにバンドルされた基本アプリにおいては既に実現していた
  • サードパーティアプリについては、まだその殆どについて実現されていない

重要なのは後者だ。
マルチタスクとは何か。それはシームレスなタスクスイッチングと処理のバックグラウンド化であることは先に述べた。ではそれらの機能はどのように実現されるのか?
iPhoneにおけるマルチタスク実装APIによってなされている。
これはどういうことかというと、iOS 4.0はマルチタスクの実現のためにAPIを提供するが、そのAPIサードパーティアプリが利用してアプリに組み込んで初めてマルチタスクが本当に実現するのである。
よって、この対応アプリがまだ世にそれほど出回っていない現状では、iOS 4.0が登場してもまだマルチタスク機能は実現していないと言うことになる。まあもちろんこれは時間の問題で解決されることであろうし、Appleもそれを見越して現状を軽く見ているのだと思う。それは多分間違った見通しではないが、まあちょっと今は置いておくことにする。

ホームボタンをダブルクリックすると出て来る例のアレ--タスクスイッチ=マルチタスク機能という誤解

ホームボタンをダブルクリックすると出て来る例のアレを利用すること、すなわちタスクスイッチを利用することは=マルチタスクを利用したと言えるのかNO
上で述べたようにiOS 4.0はマルチタスクの実装のほとんどをAPIという形で提供したが、一つだけ、アプリ間の遷移を実現するためのUIだけはOSの標準機能として用意した。これがタスクスイッチ、ホームボタンのダブルクリックで出てくるアレである。
そう、アレはアプリ間遷移の為のUIに過ぎないマルチタスクに対応していないアプリに用いたところで、ただ単に今までと同じ起動と終了をもって画面遷移を起こすだけマルチタスク機能ではないのである。
「じゃあマルチタスク機能って?」と思われるかも知れない。それは次の項で説明するが、重要なのはマルチタスク必ずしもアプリを終了させずに置くものではないということである。

「アプリの終了」を求めるという誤解

アプリの終了」はいつ行われているのか。
結論から言うとそれはアプリの切り替えの度に常に行われている。上で述べたタスクスイッチはただあるアプリを終了し次のアプリを起動するだけである。
「え?それってマルチタスクなの?」と言われるだろう。ここで思い出して貰いたいのはiOSの出した「マルチタスクとは何か」という問への答だ。それは「必要な処理をバックグラウンドで行い、アプリ間遷移をシームレスに行う」ことだった。
アプリ間のシームレスな遷移に、あるアプリが終了しているとかしていないとか言うことは本質的に無関係だ。重要なのは作業状態の迅速な保存と復帰であり、それを実現するためのAPIだ。
要するにiOSはユーザがフォアグラウンドアプリを切り替えるたびに、必要な処理を残して毎回そのアプリを終了させる。ただし、この終了状態の復帰を迅速に行うためのAPIを提供しているので、ユーザの利便性には全く問題ない、ということなのだ。
アプリの終了はどうするのか、どうなっているのか」と言う問はナンセンスである。それは常に行われているし、実用的には永遠に行われないとも言える。マルチタスクに対応したアプリの場合は。そんなことは本質的ではないし、ユーザが気にするべきことではないのだ。そして、ユーザが気にしないで良いようになっているのが、iPhoneマルチタスクなのである。

終わりに

以上に上げた誤解の存在、そしてその誤解が現実問題として不幸を招きかねないというのは、要するところマルチタスク機能が実際にはまだ機能していない、対応アプリが出そろっていないという理由がなにより大きい。しかしそれは本当にすぐに解消されることだろうと思う。筆者はその時が来るのを今日か明日かと(比喩でもなく)期待している。

余談

iPhoneマルチタスクはユーザが気にしないでよいように出来ている。
なので、今現在の些細な誤解、そこからくるマルチタスクへの不満なんてどうでも良いことなのかも知れない。
どうせそのうち、もう本当に近いうちに、もしかしたら今日にでも殆どのアプリは対応し、マルチタスクは実現する。そうなればもはや本当にマルチタスクが何であるか、内部で何が行われているのかなどということはユーザには関係のないことだ。
ユーザは愚直であればあるほど幸せになれるようになっている。それがAppleの製品だ。しかしながら人は愚かではあってもなかなか愚直にはなれない。そしてそれはもっとも不幸せを招く原因なのではないかと、最近思う。