LIFULL Creators Blog

LIFULL Creators Blogとは、株式会社LIFULLの社員が記事を共有するブログです。自分の役立つ経験や知識を広めることで世界をもっとFULLにしていきます。

薄氷の上のSteve Jobs

Apple原理主義者であることを公言している大坪と申します。

少し昔話をしましょう。今から7年前、2007年1月9日の早朝、私は寝ぼけ眼でAppleのサイトを開きました。この日はMacWorldの初日。数時間前にSteve Jobsがキーノートスピーチを行ったはず。そしてそこでは新しい携帯電話が発表されると噂されていたからです。

Appleのサイトをあれこれクリックするうち動画があることに気が付きます。それを見た瞬間眠気はどこかに吹き飛びました。なんだこれは。動揺しつつも自分に言い聞かせます。

「いや、これはデモに違いない。実機でこんなするする動くわけがない」

そう思いながらキーノートスピーチの動画を見続ける。信じ難いことですが、Appleのサイトに載っていた「動き」がそのまま実機で-小さい携帯電話上で-動いている。(動画

観ているうち、頭の中に一つの考えがぐるぐる回りだしました。

「これはドレッドノートだ」

そう考えたのは私だけではないようです。Androidの父、Andy Rubinはその時Las Vegasで会議のため移動中でした。しかしJobsが発表したものを知ると、車を止めさせwebcastに見入ったといいます。そして言った言葉が

“Holy crap,” he said to one of his colleagues in the car. “I guess we’re not going to ship that phone.”
引用元:The Day Google Had to 'Start Over' on Android - Fred Vogelstein - The Atlantic

「なんということだ。」彼は車の中で言った。「(今開発中の)あの携帯電話を出すわけにはいかないな」

Googleは2005年からAndroidを開発していました。その時プロジェクトメンバーは一週間に60-80時間働き(はい、そこで皮肉な笑みを浮かべないように)その年の終わりまでに製品として発表する予定だったのですが。

同じくGoogleのChris DeSalvoはこう言ったそうです。

“As a consumer I was blown away. I wanted one immediately. But as a Google engineer, I thought ‘We’re going to have to start over.’”

一消費者としは、ぶっ飛ばされた思いだ。すぐにでも手に入れたい。しかしGoogleのエンジニアとしては”全部やり直しだ”

                  • -

さて時は戻って2013年。Steve Jobsの命日の前日にNYタイムスにこの日のプレゼンテーションの内幕を語った記事が公開されました。かなり前に発表されてますし、日本語訳もいくつかあるのですが、あまりに面白いので紹介せずにはいられない。これを読むと、私も含めた多くの人(Andy Rubinを含む)が「ぶっとぶ程の衝撃」を受けたiPhoneのデモが薄氷を踏むようなものだったことがわかります。そしてデモを支えたエンジニア達の気持ちが少し想像できるように思います。

すばらしい日本語訳はオリジナル iPhone のデビューは大きな賭けだった — iPhone 開発秘話 | maclalala2
にあります。ここでは私が特に興味を惹かれた点だけを訳します。

Jobs had been practicing for five days, yet even on the last day of rehearsals the iPhone was still randomly dropping calls, losing its Internet connection, freezing or simply shutting down.

Jobsは五日間に渡ってプレゼンのリハーサルをしていた。しかし最終日でさえiPhoneは通話を受け損なったり、ネットへの接続が切れたり、フリーズしたり単に異常終了していた。

まずここで驚くべきは、あのプレゼンのリハーサルは五日間にも渡って行われていた、ということ。良いプレゼンを行う「秘訣」についてはいろいろな議論がありますが、ある方が書いた言葉が一番真実に近いのかもしれません。

「結局練習じゃないか」

It worked fine if you sent an e-mail and then surfed the Web. If you did those things in reverse, however, it might not. Hours of trial and error had helped the iPhone team develop what engineers called “the golden path,” a specific set of tasks, performed in a specific way and order, that made the phone look as if it worked.

メールを送ってその後にWebを見る場合はちゃんと動いた、しかし順序を変えると動かない。何時間にもわたる試行錯誤の末、iPhoneチームは「ゴールデンパス」を発見した。指定されたタスクを指定された順番で動かした場合だけ、iPhoneはちゃんと動作した。

ソフトウェアエンジニアであれば、この「ゴールデンパス」がどんなものか想像できると思います。そうなんですよね。なぜか順番を変えると動く。落ちる。何故だ。

Jobs wanted the demo phones he would use onstage to have their screens mirrored on the big screen behind him.
(中略)
So he had Apple engineers spend weeks fitting extra circuit boards and video cables onto the backs of the iPhones he would have onstage.
(中略)
But making the setup work flawlessly, given the iPhone’s other major problems, seemed hard to justify at the time.

Jobsは使っているiPhoneの画面をそのままスクリーンに映し出したがった。そのため、Appleのエンジニアは数週間に渡って追加の基板とビデオケーブルをiPhoneに追加した。しかし他に問題が多数存在していることを考えると、スクリーンへの投影をうまく行う努力をする価値があるかどうかは疑問だった。


この日のデモを見て、Jobsが実際に使っているiPhoneの画面をスクリーンに投影したときは正直驚きました。仮にiPhoneが現在のように完成度が高いものであっても、そうした「余分な回路+機能」をつけてデモをすることは度胸のいることです。ましてやiPhone自身がバグだらけだった当時において「なんでこんな事をしなくちゃいけないんだ。カメラで操作画面写せばいいじゃないか」とエンジニアは呪ったのではないか、、と想像します。私がその立場なら間違いなくそう言って荒れます。(そしてクビになります)

And audience members had to be prevented from getting on the frequency being used. “Even if the base station’s ID was hidden” — that is, not showing up when laptops scanned for Wi-Fi signals — “you had 5,000 nerds in the audience,” Grignon says. “They would have figured out how to hack into the signal.” The solution, he says, was to tweak the AirPort software so that it seemed to be operating in Japan instead of the United States. Japanese Wi-Fi uses some frequencies that are not permitted in the U.S.

観客が無線LANの周波数を使うのを防がなくてはならない。「無線LANのIDは隠されているが-PCからただWifiを検索しただけでは表示されない-観客の中には5000人のコンピュータオタクがいる。無線LANがハックされない、という保証はない」そのため、無線LANの周波数を米国ではなく、日本で使われているものにした。日本向けの周波数は米国では使用が禁じられている。

確かにデモをしているiPhoneが無線LANを使用していると知った瞬間(あるいはそうでなくても)無線LANを利用しようと「何か」を始める人は観客の中にたくさんいたに違いありません。しかしそこまで気を使うか?また米国内で使用が禁止されている周波数を使うとは問題では無いのか?
Appleはそこまで配慮しました。彼らにとってはデモの成功が全てであり「いや、観客にそこまでする人がいるとは想定外でした」などという言い訳が通じる状況ではなかったのでしょう。

同じような「細心の注意」は次のパラグラフにも現れます。

Then, with Jobs’s approval, they preprogrammed the phone’s display to always show five bars of signal strength regardless of its true strength. The chances of the radio’s crashing during the few minutes that Jobs would use it to make a call were small, but the chances of its crashing at some point during the 90-minute presentation were high. “If the radio crashed and restarted, as we suspected it might, we didn’t want people in the audience to see that,” Grignon says. “So we just hard-coded it to always show five bars.”

ジョブスの許可を得て、実際の電波強度に関係なく電波強度バーが常に5本出るようにプログラムした。ジョブスが電話をする数分の間に無線モジュールがクラッシュする確率は少なかったが、90分のプレゼンの間一度もクラッシュしないとは思えなかった。Grignonはこう語っている「無線モジュールがクラッシュして再起動しても、それを観客に悟られたくはなかった。そのため常に5本バーが表示されるようにプログラムした」

エンジニアであれば一度はこういう「無理やり正常表示」をやった経験があるのではないでしょうか。もちろんクラッシュしないように改善するのがいいのだけど追い詰められるとそうも言っていられなくなる。しかしこうした「捏造」の行き着く先は、「全部嘘の全編ムービー再生」であり、どこかで歯止めをかける必要があります。

さて、Demo専用のビデオ出力、表示プログラムまで装備したiPhoneのデモが始まります。Jobsはメールを送り、メッセージを送り、いくつかのwebサイトをSafariで開いてみせる。Iveにその場で電話をかけたり、スターバックスに「持ち帰りでラテを4000。おっと番号違いだ」と冗談で電話をしたりします。

この日のJobsは自信に満ちており、自分が素晴らしい製品を発表できる喜びに満ちているように見えました。しかし彼が手順を一つ間違えただけで、iphoneはクラッシュし、未完成な製品であることが世界中に「披露」されていたはずです。

そうした「裏の事情」を知っていたエンジニア達は、このプレゼンテーションをどのように見守っていたのか。

By the end, Grignon wasn’t just relieved; he was drunk. He’d brought a flask of Scotch to calm his nerves. “And so there we were in the fifth row or something — engineers, managers, all of us — doing shots of Scotch after every segment of the demo. There were about five or six of us, and after each piece of the demo, the person who was responsible for that portion did a shot. When the finale came — and it worked along with everything before it, we all just drained the flask. It was the best demo any of us had ever seen. And the rest of the day turned out to be just a [expletive] for the entire iPhone team. We just spent the entire rest of the day drinking in the city. It was just a mess, but it was great.”

最後にはGignonはただホッとしただけではく、酔っ払っていた。彼は神経を鎮めるためスコッチを持ち込んでいた「関わったエンジニア、マネージャーはみんな5列目あたりにいた。デモの部分部分が終わる度にスコッチを飲んでいた。5−6人いたかな?自分が担当している部分のデモが終わる度にスコッチを一気飲み。デモが終わる頃ボトルも空になっていた。あれは今まで観た中で最高のデモだった。その日はiPhoneチームにとって最高だった。街にでて飲みまくった。めちゃくちゃだったが、素晴らしい日だった。」

                        • -

最近行われたApple-サムソンの裁判で、フィル・シラーはこう言ったと伝えられています。

"There were huge risks [with the first iPhone]," he said. "We had a saying inside the company that it was a 'bet the company' product..
引用元:
Apple's Schiller: iPhone was a 'bet the company' product | Apple - CNET News

最初のiPhoneは大きな賭けだった。社内では「これは会社自体を賭ける製品だ」と言っていた。

素晴らしくはあるが、まだ未完成の製品を使って、あのプレゼンテーションをしたSteve Jobsはやはり並みの人間ではなかった。私なら処理待ちを示すインジケーター(あのくるくる回る奴です)が一回回るごとに寿命が縮んでいたことでしょう。少し表示が遅ければ、その瞬間動揺を隠せなかったでしょう。

プレゼンの後半、Jobsが「発売は6月」と言ったところで失望の声が上がりました。Jobsはその声に対して「6月に発売する製品をなぜ今日発表するか?これからFCCの認可を得なくてはならないが、FCCから情報が漏れるより自分たちで発表したかったからだ」

それを聞いた私は「6月まで待たなくちゃならないのか。まったく時間のかかる手続きには困ったものだ」と思いました。しかしエンジニア達の本当の戦いはおそらくここから始まったのではないか。この時のiPhoneの完成度がどの程度のものであったのか、当時書かれた別の記事を引用します。

MacworldのAppleブースに展示された2台のiPhoneは、ケースを取り囲む来場者の視線にさらされながら、のんきにぐるぐる回っている。そう、特別な人でなければ触ることはできない。
ちなみに2台しかないにもかかわらず10日昼過ぎ(現地時間)には1台がハングアップして画面が暗くなってしまっている。
引用元:
Macworld Conference & Expo2007:ショウケースに守られた「iPhone」、実際の使い心地は? - ITmedia PC USER

手順を固定したり、いざとなればニセの表示を行うことでデモは(ヒヤヒヤながら)乗り切ることができる。しかし製品はそうした言い訳をまったく考慮しない人たちの手に渡るのです。たった6ヶ月でそこまで製品の完成度を上げ、量産しなくてはならない。

「それからの6ヶ月の物語」が語られることがあるのかないのかわかりません。今はただその苦闘を想像していましょう。それとともに苦闘が素晴らしい製品に結実したエンジニアたちの幸運(苦闘と製品の質の間には不幸なことに常に相関関係があるわけではありません)をうらやましく思いながら。