一般公開「藤本裕之のプログラミング夜話」
(MOSADeN Onlineでは、掲載日から180日を経過した記事を一般公開しています。)- 藤本裕之のプログラミング夜話 #239(2014/03/13:掲載)
- 藤本裕之のプログラミング夜話 #238(2014/01/14:掲載)
- 藤本裕之のプログラミング夜話 #237(2013/11/12:掲載)
- 藤本裕之のプログラミング夜話 #236(2013/09/12:掲載)
- 藤本裕之のプログラミング夜話 #235(2013/07/09:掲載)
- 藤本裕之のプログラミング夜話 #234(2013/05/07:掲載)
- 藤本裕之のプログラミング夜話 #233(2013/03/26:掲載)
- 藤本裕之のプログラミング夜話 #232(2013/01/29:掲載)
- 藤本裕之のプログラミング夜話 #231(2012/11/27:掲載)
- 藤本裕之のプログラミング夜話 #230(2012/05/15:掲載)
- 藤本裕之のプログラミング夜話 #229(2012/04/24:掲載)
- 藤本裕之のプログラミング夜話 #228(2012/04/10:掲載)
- 藤本裕之のプログラミング夜話 #227(2012/03/27:掲載)
- 藤本裕之のプログラミング夜話 #226(2012/03/13:掲載)
- 藤本裕之のプログラミング夜話 #225(2012/02/28:掲載)
- 藤本裕之のプログラミング夜話 #224(2012/02/14:掲載)
- 藤本裕之のプログラミング夜話 #223(2012/01/31:掲載)
- 藤本裕之のプログラミング夜話 #222(2012/01/17:掲載)
- 藤本裕之のプログラミング夜話 #221(2011/12/27:掲載)
- 藤本裕之のプログラミング夜話 #220(2011/12/13:掲載)
- 藤本裕之のプログラミング夜話 #219(2011/11/29:掲載)
- 藤本裕之のプログラミング夜話 #218(2011/11/15:掲載)
- 藤本裕之のプログラミング夜話 #217(2011/10/25:掲載)
- 藤本裕之のプログラミング夜話 #216(2011/10/11:掲載)
- 藤本裕之のプログラミング夜話 #215(2011/09/27:掲載)
- 藤本裕之のプログラミング夜話 #214(2011/09/13:掲載)
- 藤本裕之のプログラミング夜話 #213(2011/08/30:掲載)
- 藤本裕之のプログラミング夜話 #212(2011/08/16:掲載)
- 藤本裕之のプログラミング夜話 #211(2011/07/26:掲載)
- 藤本裕之のプログラミング夜話 #210(2011/07/12:掲載)
-
藤本裕之のプログラミング夜話 #239
この記事は、2014年03月13日に掲載されました。一応最終回なので,できればいままでの総括みたいな話を書いてまとめたいところなのだが,とてもそんな風にまとまる連載ではなかったし,ここ数回続けているウェアラブル・コンピュータに絡む話が終わっていないのでそれを続けたい。
前回,最後のほうで頭にくっつけたヘッドギアで脳波の状態・遷移を読み取り,それを指示としてコンピュータを動かすという技術について紹介した。もちろんコンピュータがユーザーの「ココロを読む」わけではない。我々が iOSアプリのViewにのっけるジェスチャーレコグナイザーと同様に,脳波がこういうパタンになったよ,というインプットをなんらかの処理のトリガーにするだけだ。
で,思ったのだが例えば「ウインドウを開け」と思う時の脳波というのはどのくらい共通するもんなんだろうか。あ,意味が見えにくいかしら。たとえば iOSのジェスチャーでも「パン」と「スワップ」の境目てのは結構個人差があると思うのだ。こっちに「オレはこのくらいの早さならまだスワイプと認識して欲しい」「いや,そんだけゆっくりだったらもうパンでしょ」みたいにね。
子供の頃誕生日のプレゼントに貰ったヴァン・ゴッホの伝記本(少年少女向けのもの。ちうかゴッホに関してオトナ向けの伝記本なんかないか)に…今思えばあんまり事実とは思われないのだが,少年時代友人と遊んでいて夕暮れになり,皆が「真っ赤な夕日だね」というのに対しゴッホだけが「何を言ってる,あれは黄色だ」と言い張ったというエピソードがあった。コトの真偽はともかく,同じ波長の光を受け取ってもそれを何色と呼ぶかには個人差が生じる,ということにはガッテンしていただけると思う。
波長と言えば世の中には「絶対音感」というものがある。いや,あるらしい。あると聞いているのだが,オレのようにそれが無いものにとってそれはどっちかというと「目撃者の多いネス湖の恐竜」みたいなもんだ。信じてないわけぢゃないが,実感はできない。あれと対比すると面白いのだが,コンピュータ(あるいはOS)がそのインプット装置として備えているのは基本,この種の「絶対☆感」装置だよね。カラオケ審査のプログラムなんかで音程をチェックしてるイメージ。
同じように光もデジタイズされているので,やろうと思えば「絶対色感」てなものを鍛えられるはずだ(少なくとも理論上は)。すなわちRGBで言えば1.0,0.0,0.0 ,波長で言えば685nm(一般に可視光の「赤」は650nm〜750nmと言われているので真ん中をとってみました)の光こそ「絶対赤」。ほんでそこらに「この赤はそれより10nmだけ橙に近い,オレにはわかるのだ」みたいな…。ほんで芸大美術部の入試面接とかで「キミは『絶対色感』ないの? それぢゃ入学してから苦労するよ」とか言われちゃうの。嫌だなそれは。
もちろんコンピュータに対するインプット,ユーザーインタフェースを考えればコトは逆にファジーというか,幅を持たせる方向に進む。お絵描きソフトに「赤い丸をもっと右に」みたいな指示を口頭でできるようにするには,「赤」と呼ばれる可視光の範囲をある程度限定しなければならない。そのうえでゴッホのようなヒトに対応するためには,そのユーザーが(ユーザー自身にはそういう知識がなくても)何nmから何nmくらいまでの可視光を「赤」と表現するのか,を学習する。
普段我々はあまりそのことを意識しないが,我々の使う自然言語はそれが発生した地域の環境を色濃く反映している。よく例に引かれるのが魚の名前,四方を海に囲まれ昔から魚を食って来たニッポン人の使う日本語は英語に比べてこれでもかこれでもかと魚・海産物を区別する。昔ボストンで入ったシーフードレストラン(クラムチャウダーでアワードを穫った店だった)で,メニューに「シルバーフィッシュ」とあるのでこれは何だと聞いたら「シルバーフィッシュはシルバーフィッシュだ」と言われた。
そんな,イワシだかアジだかサンマだかサバだかフナだかわからんもの食えるか,と思って注文しなかった(確か食ったのはシイラだ,これも英語では呼び名のない魚でマウイ語の「マヒマヒ」というのがそのまま英語として通じるようになってる)が,コンピュータに対するインプットをインプルーブしていくにはこういうことが問題になるはずだ。あるユーザーは橙から紅まで全部「赤」と呼ぶが,「朱」や「丹」「鉛丹」などを区別したいヒトもいるだろう。細かく言うとキリがない。
脳波による操作の例でもそうだったが,それを解決するのはヒトとプログラムの相互フィードバックだ。まずは多くのベータテスターに「ウインドウを動かそう」と思って貰う。その時の脳波のデータから最大公約数的なパタンを抽出し,そのパタンにはまったら実際にウインドウが開くようにする。次のベータテスターたちはそれを使って脳波によって「ウインドウを開く」ことの成功体験を得る。つまり「コツをつかむ」。プログラム側もさらに「ウインドウを開く脳波パタン」認識の制度をあげていく…。
バラ色の未来のように聞こえます?
ウェアラブル・コンピュータ,あるいはユビキタス・コンピューティングてのは確かに来るべきイノベーションかも知れぬし(しかしカタカナが多くて嫌になるな),ワレワレも今後そういうのをメシの種にしていかなければならないんだろうけど,ワタシはちょっと嫌なことを連想しちゃってる。
1997年に亡くなった星新一のショート・ショートに,世界最高のコンピュータに何をさせる? って話があった。せっかくのコンピュータだ,つまらないことに使ってはもったいないというわけで,世界中から「神」の概念を集めることにする。OOP的な用語を使えば人智を集めて「神」という「クラス」を定義しようとしたわけ。
いわく「神は見ている」「神は万能だ」「神は公平」「神は悪を許さない」「神は罰をくだす」…で,どうなったかというとホントに「いつでも皆を見てて悪いことをするヤツを罰する絶対の神」が産まれちゃうw まぁ,もちろんそれは小説的飛躍だけど,「ウインドウを開く」にはこう考える,「★△◎■を☆▼したければこう言えばいい」ってな訓練を重ねるニンゲンたちの中からはもうMacやiPhoneを発想するヒトは出てこないように思うんだよねワタシは。
ではまたどっかで。
-
藤本裕之のプログラミング夜話 #238
この記事は、2014年01月14日に掲載されました。前回の話をもそっと広げて,ウェアラブル・コンピュータという「概念」について考えてみる。
ウェアラブルはwearable,すなわち「着用できる,身につけられる」という意味の英語である。してみるとこれは,パーソナル(個人の),ポータブル(持ち歩き可能な),ラップトップ(膝の上に置ける),ハンドヘルド(手で持てる)てな流れのなかにあるもんだ。そのココロは「いつでもどこでもコンピュータを使えます,いつでもどこでも使いたいよね?」だろ。
でもこの「いつでもどこでも」論から言えば,事実上スマートフォンはそれを完璧に実現している。言い方を変えれば,スマートフォンからコンピュータ内蔵眼鏡やコンピュータ内蔵腕時計(こいつらをひとくくりにして呼ぶ一般名詞ってあるの?)までの距離は,その形態ほど遠くない。眼鏡や腕時計になれば置き忘れたり盗まれる可能性は有意に減じるかも知れないが,それはコンピューティングに関係ない。単にケータイと眼鏡,腕時計の差だ。
コンピュータの黎明期,それこそENIACの昔から,コンピュータと人間とがその情報をやりとりするプロトコルは変わっていない。主に人間側のハードウェアの制約により,それは視覚と聴覚,それに触覚に依存している。言ってることわかりますか? つまり今のとこニンゲンは,コンピュータがどんな格好をしていようと,見たり聞いたりして情報を引き出し,喋りかけたり,あるいはなんらかのデバイスを指などで操作したりして情報を入れないとこれを利用できないのである。
昨今ウェアラブル端末として取沙汰されているいくつかのデバイスを見ると,どうもここんとこをちゃんと理解していないヒトが企画しているような気がする,ウェアラブルであること自体が大事になって,それがコンピュータとして満足に機能できるかどうかってトコをないがしろにしている気がするんだよね。
例えば眼鏡。眼鏡にコンピュータがつけば視覚情報は(本来眼鏡はそれを通して外界を見るもんなのでそこに情報を投影するのは多少危ないような気もするがそこは置くとして)OKかも知れないが,入力はどうよ,と思う。Siriにするように喋る? まぁ今から30年前には電話で喋りながら道を歩くヒトなんて想像つかなかったから,そのうちそれが普通になるのかも知れぬが,画面があればタップで済む操作を「口でやる」ってのは結構まどろっこしいと思う。思いません?
腕時計の方が少しはましか? こちらは画面の小ささに視覚情報が制限されるだろ。その狭い画面を指で触るなどして操作する? オレくらいの年齢になると,ヒトが腕時計に向かって話すと聞けば思い出すのは「スーパージェッター」(「ウルトラセブン」にもそういう場面があったがあれは単なる通信機だからな)である。でもあのマンガでは,時計は単なる入力端末で,命令を受け取ってフィードバックを返すのは流星号というクルマ(型コンピュータ)だった。でしょ?
こっから若干夢みたいな話になるが,この連載もこれを含めてあと2回なんで,ちょっと未来に向けての話をする。
ウェアラブルに限らず(あとユビキタスてなのもそうだと思う),コンピュータの次なる飛躍は上にも書いた,人体というハードウェアに起因する入出力上の制限をなんとかする,ということにかかっている。具体的に言えば,視覚における網膜,聴覚における鼓膜を省いての情報把握が,音声や運動(タップやクリック,あるいはキータイプなど)を介さないコンピュータ操作が可能になるかどうか,である。
そんなSF,と思うかもしれないが,既にある程度脳波によってコンピュータを操作するデバイスというのは開発されている。興味のあるひとは www.emotiv.com にあるビデオ(TEDGlobal2010での発表)を見ていただきたいが,頭に脳波を測定するためのヘッドギア様の機械を装着し,その脳波の変化によってコンピュータに意思を伝えることが可能なのだ。既に売ってるし,SDKもある(ビデオの中でデモに使ってるのはMacBookだ!)。
ビデオを見れば分かることなのだが,このデバイスは脳波を意味ある情報として扱ってはいない(そこが実にプラグマティックでいいとこなんだけど)。喋ってる彼女によれば,ある動作をする際の脳波の動きは個人によって(一卵性双生児でも)全然違う。だからこのデバイスは脳波の意味など解釈せず,装着した人の脳波と,あらかじめ用意されたコンピュータの動きをひも付けする。ウインドウを閉じるという操作を「⌘W」というキーアサインの代わりに「こういう脳波の動き」に割当てるわけ。
なんだ,それぢゃ脳の中身を情報化できるわけぢゃないのか,と思いました? 逆である。脳の中身を情報化するわけぢゃないからこの技術は有望なのだ。これが普及すれば,例えばさきほどの「ウィンドウを閉じる」という動作について,世界中の人たちの脳波のパタンを収集できる。現在のSiriやその他の音声認識プログラムが声に対してやってることが,脳波で行えるようになれば,言語の違いを超えるコミュニケーション・ツールを構築できるかもしれない。村上春樹が書いてたように「文明とは伝達である」のだから。
-
藤本裕之のプログラミング夜話 #237
この記事は、2013年11月12日に掲載されました。二ヶ月は長いが「承前」とさせていただく。前回の最後にちょっと触れた,所謂「iWatch」について書こうと思ってるのだ。結論をまず申し述べると,ワタシはこの「iWatch」のみならず,あのGoogleの「Google Glasses」も含めて言うところのWearable Computerというものに否定的である。あ,失敗するとか予想してるんぢゃないよ。オレは欲しくない,と言ってるの。
江戸の話を長崎から始めるが,実はワタクシ,この夏遂に観念して(と,言うか遂にいろいろ支障が生じてきて我慢できなくなり)眼鏡を遠近両用というヤツにしたのである。
遠近両用眼鏡と聞くと,オレ辺りの年代の人間はあの大洋ホエールズの監督をしていた別当薫さんがCMに出ていたHOYAバリラックス(と記憶してるんだが正しいかしら?)を思い出す。すなわち,レンズのなかに小窓のように別のレンズが嵌まっているのを想像していたのだが違った。今のは外見まったく境目はわからない。
その境目の辺りの技術はよくわからないが(ただ線形に滑らかになっているわけではなさそうである),要は通常の姿勢で前方を観れば従来と同様に近眼用のレンズを通して世界を見ることになり,本を読むような下向きの視線の際には老眼用の遠視用のレンズを通すことになる,わけだ。眼鏡屋のオジサンは「最初は遠視用の部分が狭くて違和感あるかも知れませんが直に慣れますよ」と言っていた。
慣れないんですねこれが。いや,正しくは慣れないんぢゃなくて,14歳の時から眼鏡を使っているワタシは,あまりに眼鏡を通して世界を観るのが当たり前になり過ぎていて,つまりどんな姿勢でも本を読もうとするしTVの字幕を読もうとするしコンピュータの画面の文字を読もうとしちゃうんだよね。
もっと具体的に言うと,遠近両用眼鏡にしてからベッドに寝転がるとTVで字幕付きの映画がとても見にくい。本を読むのも一苦労。もちろん,正しい姿勢でピンポイントに老眼レンズを使えてるときは従来よりすげえ快適なんだけど,問題はその姿勢,その角度をあんまり長い間維持していられないのだよな。
で,結果どうしてるかと言うと,会社で椅子に座ってマシンに向かい仕事をしてる時間が大部分である日中は遠近両用眼鏡をしてるんだが,家に帰ってから料理をしたりTVを観たり……なんとこうやって原稿を書いたりしてるときは以前使っていた近眼だけの眼鏡なのだ。正直言うとこの方が疲れない。なにを観るからこの辺を使う,とかの制約がないから。
話は長崎から船に乗って神戸に着くが,あの,ストップウォッチだの電卓だの,果ては簡単なインベーダゲームみたいのまで内蔵された液晶の腕時計が出たのっていつごろだっけ。
売り出されたときこそ「鳴り物入り」だったデジタル・ウォッチも相当製造単価が下がっていたのだろうな。なんだかやたらそういう機能がゴテゴテと付いた,ヘビーデューティ(つう言葉が流行ってたのだそう言えば)を貰ったのは1990年代のいつか,ニフティのシスオペ・サミットのお土産だった,と思う。
なんだか結構大仰な使い方の説明書というのもついていたのだが,結局「時刻を知る」用途以外には使わなかった。だってねぇ,人間普通の人生を送っていてなかなか「ああ,今ここにストップウォッチがあったら!」なんてシチュエーションなんてないよ。増して何が悲しうて腕時計の液晶でピコピコパーピコピコビーとインベーダ撃ち落とさねばならんのだ。あほか,と。
思うに iPhone …というか,携帯電話が現在のような「いつも手元に持って歩ける情報端末」になったのは,もともとセルラーフォンというものにそういう機能があったことが理由として大きい。iPhone発表のときにスティーブが言ったように,彼は「携帯電話を再定義」したのであって,「情報端末を再定義」したんぢゃないんだよね。
つまり,iWatchにしてもGoogle Glassにしても,ホントに成功したいのなら「腕時計」を,「眼鏡」を再定義しなくちゃならないんぢゃないのか? 単に iPhoneの機能の一部を腕時計や眼鏡に移したって,そんなの「多少なくしにくくなるだけ」と違うか?
と,こんなこと書いてるが,もしホントにiWatchが発売され,商業的に成功してそれ向けのアプリを作りなさいという仕事が来たらオレも買うことになるわけなんだが……でも正直欲しくありませんよそれ。
-
藤本裕之のプログラミング夜話 #236
この記事は、2013年09月12日に掲載されました。こんなタイトルをつけているが、実際のところワタシの日常は早寝早起きである。仕事で徹夜とかしないし(経験から言ってあれはあんまり効率よくないと思う。昼間寝て夜仕事するというサイクルをずっと続けられるなら話は別だが……それでも人間には日照というものが必要だしね)。だから年に何度か、日本時間で夜中になるアップルのイベントを実時間で「観よう!」と思った時しかこの原稿はホントの「夜話」にならない。今回はその珍しいケースである。
現地時間9月10日、すなわち日本時間で本日11日の未明。アップルそのイベントイベント「Apple Special Event September 2013」で、iPhoneの新機種2種類を発表した。ボディにポリカーボネイトを使った廉価版($99〜)の iPhone 5c(このラウンドレクトの中に「c」の文字が入ってるグリフ、すぐにどっかが作るかな?)とハイエンドの iPhone 5s。
今後も拡大するであろう中国市場を当て込んだ廉価版投入の是非や、(日本では大きな話題となっている)NTTドコモの参入など、株価面、ビジネス面からの賛否両論かまびすしいが、正直なところそのテの話はオレの守備範囲ではないし、ついでに言えば興味もない。あ、いや、ドコモの参入によって月々の維持費が現在より下がるのなら興味はあるけど。
どっちかと言うとオレの興味は iPhone 5s に搭載された「Touch ID」と称する指紋認証システムにある。
おっと興味があると言っても、あれがどのくらい正確かつ堅牢かとか、記憶させておいた指にケガをしたらどうなるのか、これまでなら iPhone を盗むだけだった泥棒がついでに指まで切り落としていく強盗になりゃせんかとか……この最後のやつはいくらなんでも考えすぎだろうと思ったが、あるヒトに「そうぢゃないクニもありますフジモトさんと言われた。そういう話ぢゃない。
デモフィルムには指紋認証技術に関する簡単な解説もふくまれていたが(「CSI:科学捜査班」を観てるみたいだったねw)、それでもなくて「それって昔ガラケーにあったぢゃん」という話である。あまりに昔の話なのではっきり時期は憶えていないのだが、少なくとも iPhoneの発売前、それでも21世紀に入ってからかなぁ。仕事上の必要から2月ほど会社に持たされていたドコモの携帯電話にそういうのがあったのだ。
あれ、あのあと急速に廃れた……いや廃れてないのかも知れないけど話題にはならなくなったよね。
試しに「ガラケー 指紋認証」でググってみたが結果は 約79,600件。これが「アップル 指紋認証」だと、なんと約794,000件。一瞬桁数を見間違えたかと思ったが、「スマートフォン 指紋認証」でも 約474,000件。ざっくり言って「指紋認証システム」それ自体が話題を集め、ヒットするサイトの数を増やしているのではなくて、アップルがそれを採用した(採用する)ことがそういう状況を現出させている、と思った方が妥当だろ、これ。
うーん。どうなんだろ。考えてみれば、現在スマートフォン各機種で標準となっている機能で iPhone がその先鞭をつけたものってあんまりない。アイディア、機能としては他者のスマートフォンや、それ以前のガラケーにもあったものを、アップルが iPhoneに採用するに当たってアップルの美学にあうよう磨き上げたってな感じ?
1年か2年後、iPhone のみならず Android や Windows Phone (これはNokiaなのかな?)まで、こぞって指紋認証システムを採用しているんだろうか。少なくとも上に書いたドコモのガラケーでの経験から言うとそれはあんまりありそうにない未来のような気がするんだけど。アップルのお手並み拝見というところでしょうか。……あ、そうそう iWatch についてはなぁんの話も出さなかったみたいだけど、それは正解だとワタシは思いますね。この話は別の機会に。
-
藤本裕之のプログラミング夜話 #235
この記事は、2013年07月09日に掲載されました。故あって永年勤務した有限会社パムリンクを退職することになり,来月8月からフリーランス……というと格好いいが,早い話が絵に描いたような中高年失業者である。フリーでやっていけるだけの仕事をいただけるか,それともスーツを調達して(何を隠そう持ってないw)就職活動を始めるか,そもそも52歳のプログラマに求人なんかあるのかいな。
と,いうわけでものは試し。いわゆる「技術者の転職支援サイト」というのをいくつか覗いてみた。え,そういう体験ルポなのかよ,オレには関係ねぇぜとおっしゃる方も多いか知れぬがそこはニンゲン一寸先は闇,明日は我が身と思ってしばしおつきあい下され。というか,結構いろいろ考えさせられますよこれ。
オレ,会社だけならこれまで5社を経験してる勘定になるのだが,最初の転職からクチコミというか「今の会社辞めるから入れてくれない?」「いいよ」みたいな感じ。こういうマトモ……というかフォーマルな求職活動ってつまり新卒だった30年前以来である。それだけの長い間この業界でメシを食ってきた者としていささか驚いたのは,技術者,エンジニア,プログラマなどに対する求人のありようの激変……ではなくて変化のなさですね。
もちろん全部が全部そうではないのだが,大きな企業ほど中途採用(転職サイトだから)にも関わらず,エンジニアとしてのスキル,経験などより先に大卒・大学院卒という学歴要素や情報処理技術者資格などがまず問われる。エンジニアとしてのスキルはほぼ,「使ったことのある言語」や「使ったことのあるOS」にチェックマークを入れるだけ。
そこに自分のやってきた言語がなく(まぁ「C」とか「C++」がねぇってこたぁないか),そのうえ「その他」がなかったりすると,LISPとかの経験は「ない」ことになる。いや「LISP」どころか「Ruby」も「Objective-C」も選択肢にないサイトまであったけど,それでいいのかね。つうかエンジニアってそんなに言語にディペンドする存在なのかね。業界的には?
ここの読者諸兄には首肯していただけると思うが,実はプログラミング・スキルの優劣は使用言語と相関がない。好き嫌いはあるかも知れぬが,FOTRANで素晴らしいプログラムを書ける人間がC++でからっきし,ということはほとんどないし,Rubyは自由自在だけどPythonは駄目というヒトがいたら,まずその「自由自在」の方を怪しんだ方がいい。スキルの優劣は言語を横断して存在する。昔,村松友視さんがプロレスについて言ってたのと同じだ。
ともあれ,この不景気で求人は買い手市場だ。雇って欲しい側のこんな異論なんて文字通り引かれ者の小唄なわけだが,こっからちょっと構造的な話に向かう。上にみたような「Cでプログラム書いたことありまーす」「Perlやってましたー」みたいなあやふやなものの代わりに我々がそのスキルの証明として提示できるもの,というのがあるだろうか,という話である。
ああしたサイトには「業務履歴」というのを書き込むところがあり,オレのように30年近く業界にいるとそこをマジメに書くだけでほぼ1日仕事になるわけだが,オレがそこに「1983年 ★△◎■社業務用ワードプロセッサ」とか「1984年 ◎★△■社パソコン用統計視覚化システム」と書いても(伏せ字の部分をホントの名前書いても),もうそのプログラムはどこにも残ってないし,動作するマシンもなかったりするぢゃないか。当時のクライアントや同僚がいまどうしてるかも解らないし。
それでもオレは比較的恵まれている方かも知れぬ。Mac用の辞書ソフトのハシリ「rSTONE」と言えば古手のMacユーザーの方は憶えていて下さったりするし,pippin atmarkにバンドルしてたワープロを開発しましたと言えば使ったことはなくても(たいがいのヒトは使ったことないはずだw)それなりに頷いていただける。アルプス社の「ProAtlas for Mac」なども多くのユーザーに使っていただいた。
でもこれら,もうどれも動かない。動いているところを見せられないんぢゃやっぱりもうひとつ説得力がない。この,プログラマというのものが思いのほか自分の過去の実績を提示しづらいという問題,プログラミング仕事が業界内部のクチコミめいたつながりでしか回らず,異業種クライアントからの仕事はどうしても有名企業,大企業を経由しての下請け・孫請け・曾孫請けという形になってしまうことの遠因になっているのではないか。
実は今回求職サービスをいろいろ回ったなかに,facebookのアカウントでジョインできる forkwelljobsというサイトがあって,ここがやってるココロミがちょっと面白い。エンジニアが自分のプロダクトやGitHubなどに公開したソース,著書やブログなどを自分の「実績」としてエントリーし,開示できるのである。ワタシもとりあえず現在 iTunes Storeからダウンロード可能な iOSアプリ数本と一番最近(つうてももう4年も経つが)の本を登録した。もちろんWeb上にも影も形もない昔の「実績」はエントリーできないが,こういうココロミからエンジニアのスキルに対する世間の見方が少しずつでも変わっていけばと思う。難しいかな?
あ,それとは別に仕事探してるのはツリでもマクラでもなくホントなので,何卒よろしくお願いいたします。
-
藤本裕之のプログラミング夜話 #234
この記事は、2013年05月07日に掲載されました。唐突だけど「クイズ$ミリオネア」という番組をご記憶だろうか。イギリスで放送されてたクイズ番組「Who Wants to Be a Millionaire?」の日本版。みのもんたのもったいつけた司会ぶりがハナについて好きではなかったが,よく行ってた飲み屋(もう,ない)のテレビで結構な回数視聴した。
出場者(挑戦者と呼ぶべきか?)は難易度の低い問題から始め,正解するとより難しい,賞金額の高い問題に進むことができる。全部で何問答えればいいのかわからないが,とにかく最後の問題に正解すると1千万円獲得できたはずだ。番組が始まった頃は一般視聴者が挑戦していたが,いつのころからか芸能人しか出なくなった。理由はわからん。興奮した素人が四文字言葉でも連発したのかしら。
いや,別にその辺の真相はどうなのよ,という話ではないんだけどね。
出題はすべて四択,つまり四つの正解候補のなかから一つを選ぶ方式で,挑戦者には正解するための……ライフラインって呼んでたっけ? 特殊な3種類のオプションが与えられている。
1つ目はフィフティ・フィフティ。四つある選択肢を二つに減らす……つまり四択を二択にできる。2つ目はテレフォン。予め決めておいた仲間(家族だったり友人だったりMAX4人,ただしスピーカフォンは禁止)に電話をかけ,問題を読み上げて意見を聞ける。3つ目はオーディエンス。会場に来ている観客に対して「どれが正解だと思いますか」と投票してもらえる……。
もちろんすべての問題の正解を自分が知っている,確信をもって推理できればこれらライフラインを使う必要はまったくない。でもワタシが観てた限りにおいてそんな出演者は皆無だったし,ワタシ自身も誰かが1千万円獲得するまでの問題を全部正解できることはなかった。いや,あの席に坐ればどうかわかんないが,テレビ桟敷でリラックスしながらだと結構いいセン行くんだけどさ。
とにかく飲み屋でテレビを観ていて,挑戦者たちはなんてこのライフラインの使い方が下手なんだろ,と思ってたのね。上に書いたようにもはや一般視聴者の参加はないみたいだし,番組の放送自体も改編期の谷間に思い出したように制作される特番のみになっている状況で,ここでこんな戦略論を論じてもなぁんにもならんのだが,当時ワタシは山芋磯辺揚げをツマミにハイサワー飲みながら以下のように考えていた(あくまで自分がわかんない問題で使うという前提だからね)。
あの番組で出題されるクイズのジャンルで,ワタシがもっとも苦手とするのは芸能ネタだった。だいたい3〜4問目くらいに出る。たとえば「次の4人のうち『モーニング娘。』の出身でないのは誰でしょう?」みたいなやつ。これが皆目見当がつかない。ここで「オレだったらオーディエンスを使うな」と。それから最後までの間にテレフォン,フィフティ・フィフティの順で使えばなんとか1千万取れるぜ,と(あくまで酔っ払いですから)。
さて皆さん,この3つのオプションの信頼度,ワタシは上のようにオーディエンス→テレフォン→フィフティ・フィフティの順だと思っていたのだけど,実際のところどうだと思います? もちろんテレフォンで頼りにする友人知人が誰かとか,変数が多すぎて一概に比べられるもんではないのだが,先日読んだ西垣通先生の「集合知とは何か」という本によれば,期待値として一番高いのはなんとオーディエンスらしいのである。
まずフィフティ・フィフティから検討しよう。挑戦者がその問題についてまったくの白紙,知識ゼロである場合(まぁまったくゼロということは却って珍しい気もするんだが),このライフラインはあてずっぽうが当たる確率を2倍にしてくれる。ABCDと選択肢があって,正解がAかBのどちらかだと判っている場合にこのオプションでたとえばBとCが消えてくれれば万万歳だが,AとBが残されると「ただ無駄にライフラインを消費した」ことになる。
次にテレフォン,実際にテレビで観ていた限り,ワタシに正解がわからない難問(芸能ネタを除く)でこのオプションが功を奏した場面に憶えがない。大抵の場合,電話口,口頭で問題を伝えなければならないというルールがネックになって時間切れ。もう少し賢いトモダチはいないのか,と思う時も多々あった。問題読み上げ・聞き取りの練習をしておけば伝達スピードは向上するだろうが……。
で,最後がオーディエンス。ワタシはこれについて「苦手な芸能ネタを教えてもらえれば」くらいに見くびっていたのだが,西垣先生の計算ではこれが最も信頼できるのだ。つまり観客が100人いたとして彼らが全員問題について白紙だとすると投票は25人ずつになる。100人のうち1人……では難しいが,10人が正解を知っているとすると,10人は正解に投票し,残りの90人が22〜23人にバラける。すると正解の得票だけが32〜33票になる,というリクツ。
なるほどなぁと思ったでしょ? で,結局何を言いたいかというと,これがわかったからにはもう一度「クイズ$ミリオネア」が復活し一般視聴者から出演者を募ってくれないかなぁという話……ではなくて,西垣先生の「集合知とは何か ネット時代の『知』のゆくえ」と言う本はプログラマにとってもお勧めですよ読んでみなさいということなんであるがね。
-
藤本裕之のプログラミング夜話 #233
この記事は、2013年03月26日に掲載されました。オレの原稿には珍しいんだが,今回はちょっとあるアプリケーションをご紹介したい。昨年アメリカに行ったスズキバスケ君が facebookで紹介していた開発者向けのブログで見つけたもので,xScopeという。プログラマ向けというよりどっちかと言えばデザイナー向けのツールだが,プログラマには時としてデザイナーの真似事が必要となる。
スタートアップスクリーンとか画面上のアイテムとか,ちゃんとデザインされた画像はあとから専門家が作ったものに差し替えるにしても,とりあえずビルドして機能を確認するためだけに寸法だけは正しいアテの画像が欲しいとか,あるでしょ? そんなときテキトーな写真とかをWebから持ってきて切り取って使ってたらそれの方がデザイナーが上げてきたやつよりセンスがよかった(でももちろん版権とかあるから使えない)とか。
デザインとまでいかなくても,たとえばiPhoneの画面で文字入力するさいに下からせり上がってくるキーボード,入力フィールドをあれがせり上がってきても隠れない位置に置くために,上から何ピクセルくらいのところに配置すればいい? オレなど何度やっても「あ,隠れちゃった,もうちょっと上だ」みたいなことをやっている。iOSデバイス,特に iPhone,iPod touchは画面が狭いからその辺シビアだよね。
そこでこの xScope が役に立つんですよ奥さん。
ちょっと縮小したが上の図を見て欲しい。これは「Screens」という機能で,普通の iPhoneの画面サイズを,今この原稿を書いている Evernoteの画面に重ねたところ。これを画像の上に置けば画角が簡単にわかる。そのうえで右側のチェックボックス……図では「Status Bar」と「Sfari Keyboard」がオンになってるが,をいじくることで画面上のどのアイテムがオーバーラップされるかもわかる。オレなど普通のKeyboardの他にSafari Keyboardがあることさえ意識してなかったよ。
ありそうでなかった便利ツールが現在のマウスポインタからなにかのオブジェクトにぶつかるまでの縦横のピクセル数を表示してくれるという「Dimensions」。言葉で書くと伝わりにくいな。これも図で示すと下のような感じ。Evernoteのこんな場所のピクセル数を数えても益はないけどそこは例ということで。でもこれが知りたいときって結構あるんだよね。
同じようで違うのが「Ruler」。思い起こせば MacOSがまだ8.0くらいのころ,同じようなアプリがシェアウェアであってお金を払って使ってた。なんで OS Xになってから誰も書かないのかなと(実は一度自分で作ろうとしたんだがやってみると意外と面倒なんでやめた経緯がw)。
iOSプログラミングに不可欠……とは言わないが相当重宝しそうなのが,Macの画面のある部分をスパっと切り取って iOSデバイスに表示する(iOSデバイス側のアプリは無料)「Mirror」。なんというか実際問題として,iOSアプリって MacアプリやWebアプリと違ってモックアップでの仕様確認がとっても難しいではないの。Macアプリだったら,Macの画面上にお絵描きソフトとかでアプリの画面イメージを置き,それを遷移させて「こんなもんですかねぇ」というのが簡単にできるが,iOSアプリの場合それをやるのにきっちりアプリ一個書かなくちゃならない。
ところがこれがあれば,とりあえずモックアップはMacで作ればいいので楽。Mac上に数多(数多はないか)あるツールで iOSデバイス上に構築される(であろう)画面を作り,その部分だけ iOSデバイスに投影して見せられる。地味だけど,これで節約できる無駄な時間って相当でかいと思う。
こんなあれこれ機能があってお値段は $29.00,AppStoreにはまだアベノミクスは波及してないので日本円で 2,600円である。迷ってるうちに為替が見直されて買値が上がると悔しいので速攻で買いました。URLはこちら。https://itunes.apple.com/jp/app/xscope/id447661441?mt=12
-
藤本裕之のプログラミング夜話 #232
この記事は、2013年01月29日に掲載されました。さすがに2月空くと読者諸兄もオレが前回どんな話をしていたのか忘れちゃったことと思う。
これで植木等だったら(彼は子供のころオレの憧れのヒトだった)「オレも忘れたから心配すんな」とか言って青い空と白い雲の話を始めるところなのだが,人生50有余年,いろいろ努力はしたけれども遂に植木等になれなかったオレはしょうがないのでオブジェクト指向の話の続きをするのである。あれそんな話してたんだっけと思う方は申し訳ないが前回の原稿を読み返してくだされ。
我々が仕事で使っている「プログラミング言語」,「言語」と名乗り…別に名乗ってないか,呼ばれ,まるで日本語や英語,ヒンドゥ語スワヒリ語タガログ語の仲間であるかのようであるが,これには実は「命令文」しかない。なにしろその祖は「インストラクション・セット」というくらいである。今「インストラクションって何だっけ?」と思ったヒト,辞書を引く手間を省いてあげる。これはまんま「命令・指示」であります。
その辺りの事情はこいつがCPUのインストラクションと一対一対応であったアセンブリ言語の時代から,可読性をたかめた高水準言語(High Level Language – これを「高級言語」と約すと中村正三郎に叱られる)になってもなにも変わらなかった。モノの本ではこの可読性の改善を「より自然言語に近いものにして」などと解説しているがどんなもんか。いくら言い回しが自然になっても基本「あれやれこれやれ」だけのもののどこが「高水準」なんだよ,と。
が,月満ち星は流れムーアの法則よろしくCPUは速くなりメモリは潤沢,ユーザーは贅沢になって,プログラマが「あれやれこれやれと逐一指示」しててはいつまで経っても実現できないような複雑な処理が必要になってきた(実際のところは「当然なってくるであろうとハシコイ誰かが予測した」んだろうけど)。言うまでもなくプログラマというのはそういう「つまんないことをチマチマチマチマと飽きもせずやってればいつかは終わるだから今日もチマチマチマチマがんばろう」というような考え方をする人たちではない。
このチマチマチマチマをせめてチマチマくらいにする方法はないもんか,ちょっと中途半端だがチマチマチくらいでもいい,と試行錯誤が繰り返され,やがて考案されたのが「オブジェクト指向型プログラム言語」である。これ,簡単に言えば会社組織みたいなもんで,社長は「儲けろ」とだけ命令し,それを「営業」や「企画」や「開発」や「販売」や「人事」や「総務」がそれぞれにとって「儲ける」に値する命令に置き換えて実行するてなこと。
ただ,例によって(ここで言う「例」というのは「たがが命令セットに過ぎないものをプログラミング『言語』などと僭称した」ということだが)この名称もいまヒトツ実態を正確に伝えておらず,そのせいで(ばかりでもなかろうが),C++やJavaあるいはObjective-Cと言った言語を使いながら,当初のチマチマチマチマをチマチマチマチくらいにしか短縮できていない,いやことによるとチマチマチマチマチマチマチと逆に伸長してしまっているようなコーディングさえ散見される。いや確かにわかりにくいのだ。この呼称では。
分かりにくさの理由をさっきの会社組織に当てはめて言うと,社長の側からみると各部署は「オブジェクト(対象)」だけど,そオブジェクトおのおのは命令を実行する「サブジェクト(主体)」だから。つまり図に書くとこういう構造になる。
上がオブジェクト指向以前。簡単だよね。人間が機械に「ああせいこうせい」命令する。その命令が青い矢印。この矢印の部分を記述するために使うのがプログラミング言語で,その記述がプログラムコードである。ところが下のオブジェクト指向言語の模式図は事情が違う。
いや,実は「人間」にとっては同じなのだ。人間は相手が機械であろうとオブジェクトであろうと相変わらず「ああせいこうせい」命令する。ところがプログラマはプログラミングをする課程で一時的に自らを「人間に命令されるオブジェクト」の位置に仮託しなければならない。なぜなら概念上の「オブジェクト」は,CPU(や他のオブジェクト)に対しては上の図における人間の役を演じる必要があるからである。
上にも書いたように純粋なユーザや設計者にとってはオブジェクトは最初から最後まで機械となんら区別のないものだが(だから「オブジェクト指向」と呼ぶが),それを使うプログラマにとってそれはしばしば「サブジェクト」と考えないと開発のしづらいシロモノなのである。このギャップを(言葉として理解しなくても)頭の内に飲み込んでいないプログラマのコードはどうやってもオブジェクト指向にならない。いや,だからこの「オブジェクト指向」って名前がいけないんだけどさ。
-
藤本裕之のプログラミング夜話 #231
この記事は、2012年11月27日に掲載されました。いろいろあってとっても久しぶりのMOSADeNである。
せっかくなのでちょっと毛色の違う話題を取り上げたい(今までも毛色は違ってたって?)。どこまで追求できるかわからないが,ここでひとつ「プログラミング言語」ちうものについてそのベースの部分から考えてみたいな,と。
そう思ったのは先日読んだ「英語にも主語はなかった」(金谷武洋著)という本。どんな本か,という……なんつか概説的な部分はブログに書いたブックレビューの繰り返しになるのでそっちを読んでいただきたいのだが,その金谷先生のなかなかにカゲキな主張とは全然関係ないところでワタシがハタと気がついたのはこれなのである。太字にするね。
プログラミング言語って基本,命令文しかねえんぢゃん?
そんなの当たり前ではないか,と思いました? いや気がついてみればワタシも当たり前だとは思うけれど,なんかずいぶん長いこと忘れていたような気がするのであるこのことを。
振り返ればワタシが最初に触れたプログラミング言語は1983年に新入社員研修で教わった日立HITACのアセンブラであった。アセンブラとしてはプライマルというか,便利なマクロとかも全然なくて,いくつかの8ビットレジスタを使ってひたすら文字列を比較し,なんかのデータをソートするプログラムを書いた。
その後一度も仕事で使う機会はなくニーモニックもほとんど忘れたが,日本語で書けばつまりこんな感じだ。
Aレジスタに1文字読みこめ(いや,もちろん1文字しか読めないんだけどね)
Aレジスタの中身をBレジスタの中身と比べろ
Aのほうが大きかったらBといれかえろ
Aレジスタの中身を文字として吐き出せ気がつきました? プログラミング言語って基本,命令文しかないから「主語がない」のである。「プログラミング言語にも主語はなかった」って本が書ける(?)。
いや今でもすべて命令文だなんだから主語なんかないぢゃないかって? そうなのである。プログラミング言語にはオブジェクトはあるがサブジェクトはない。憶えてます? 英文法の授業「SVO」の「O」がオブジェクトで日本語で目的語,「S」がサブジェクトで主語……と習った,はずである。最近は「9 ÷ 0 = 0」とか教えてる学校があるらしいので油断はできないが。
で,以下はワタシが昨日仕事で書いた,あるプログラムのソースの一部をいろんなことが特定できないように書き直したモノであります。言語は Javascript。
var parameter = parameterString.valueOf();
var urlStr = "/myHostProgram/function";
if (parameter == 0) {
new Ajax.Request(urlStr, { method:'get' , parameters: "?data=0" }
}何をやってるか,はどーでもよくて(だいたいちゃんと動くんかこれ?),言いたいのはこのシーケンスをざっと見て「parameterString」とか「Ajax」をオブジェクト(目的語)って呼ぶの,ちょっとどーなのよ? ということなんである。英文法では命令文は「VO」である。でもこれぢゃ「OV」やんけ。
ネイティブのプログラマが頭のなかでこの辺りをどう処理しているのかはわからんが,日本人プログラマであるワタシの頭のなかでは,これらはオブジェクトというよりはサブジェクト,しかも「主語」ではなく「主題」として捉えられているように思う。で,そこんとこを整理すると所謂「オブジェクト指向プログラミング」というものを理解するのがうんと容易になるんぢゃないかと……。
(2012/11/27)
-
藤本裕之のプログラミング夜話 #230
この記事は、2012年05月15日に掲載されました。前回の原稿を書いた直後,Slashdotに「『プログラマのキャリアは40歳で終了』説」という記事が掲載された。オレがこの業界に入ったころには「プログラマは30歳で定年」という話があったから30年で10歳寿命が伸びた勘定になる。51歳現役プログラマとしてはちっとも嬉しくないが。
実はこの記事,プログラマは40歳になるともう新しいコトに手を出すのが嫌になるとか,新しい技術についていけなくなるとか,かつての「30歳定年説」を40歳に読み替えただけの話ではなくてね,よく読むととっても面白いというか…面白がってる場合ぢゃないというか,身につまされるというかあまりおおっぴらには言及されない我らが職能の抱える問題点を突いている。
たとえばここに,意気軒高にして意欲満々,気力充実,精力絶倫,勇気凛々瑠璃の色(それぢゃ少年探偵団だ),とにかく「プログラマは40歳が限界だなんてオレには関係ないぜ」というような45歳のプログラマ,星新一先生にあやかって借りにエヌ氏という人物がいると思いなさい。
エヌ氏のスキルの高さ勉強熱心さは一緒に働くエンジニアの誰もが認めるところ。人柄もよくヒトにものを教えるのもじょうずなのでペイペイの若い新人のみならず,30代の中堅,ヴェテラン・プログラマも,技術的に困ったことがあると彼に相談に来る。専門以外の知識も豊富で飲みに行って雑談するだけで勉強になる。
え? そんなヤツどこにもいないって? オレもちょっとスーパーマンにしすぎたかと思うがたとえ話なのでそういうことにしておいてくだされ。
ところがこのエヌ氏にも悩みがある。根っからのエンジニアである彼は他人を管理するのが苦手,というより嫌い。そして彼の会社では…多くの会社がそうなのだが,他人を管理するポジションに就かないと,どんなに技術があっても収入は頭打ち。それどころか,経営者には技術者コミュニティの中での彼の価値は見えないため「安く使える若手に代替可能な中年リストラ要員」と思われているらしい……。
まさかそんな,と思いますか? 自分で書いててオレだって10年前,自分が40歳のときにこれを読んだらそう言ったろうと思うよ。でもこれね,40代の半ばから50の声を聴く辺りでひょっとするとそうかな,信じたくないけどそうなんだよなと認めざるを得なくなってきた事実なのだ。
はっきり言ってしまうと,コンピュータエンジニアのスキルがエンジニア以外のヒトに正当に評価されることは非常に稀だ,ということだ。ヒトは結局,自分に読める目盛りのついたモノサシしか信じない。だから上述,Slashdotの記事には,法学部新卒者やMBA取得者にコンピューター・サイエンス専攻新卒者の倍近い給料を払う大手テクノロジー企業もあると指摘されている。
エヌ氏にはわかっている。こうした状況を打開するには技術者のスキルをきちんと評価できる人間,たとえば自分のような人間が管理職になり経営に参画するようになる必要がある。でももう一つ大事なことも分かってる。自分はいい管理職にはなれないし,経営者としての資質もほとんどない,と。
そこまで考えてエヌ氏はある論理的帰結に愕然とする。テクノロジー企業の経営者として成功するための要件のひとつが,働くエンジニアのスキルを正しく評価しない(できない)こと,だったらどうしよう,と。ね,皆さん,もしそうだったらどうしましょう?
(2012/05/13)
-
藤本裕之のプログラミング夜話 #229
この記事は、2012年04月24日に掲載されました。今月初め,Macintosh をターゲットにする「Flashback」というマルウェア…つうかトロージャンホースが猛威を振るっている,というニュースが流れた。
なんかこのテのニュースって,事実を報じるついでに「今後はMac/Appleも今までのようにのほほんとしていられないぞ(ざまみろ)」だとか,「だからウチの会社の(あるいはワタシの推薦する)★△◎■というセキュリティソフトを使いなさい」的な…いわゆるステマ的雑音がまじってるものが多くて閉口するんだが,いろんなトコに書かれた情報をかいつまんでまとめてみるとー。
(1)こいつはOracle社が開発し,Mac OS X上で稼働している Javaのシステムの脆弱性を利用している。
(2)木馬はAdobe Flash Playerのアップデートを装って出現,OKをクリックすると「インストール」される。
(3)Oracle はこの脆弱性について2月に報告。
(4)それを受けて Apple がセキュリティ・パッチを公開したのは4月3日。
(5)4月6日,ロシアのウィルス対策ベンダー,Dr. Web が「全世界で60万台のMacが感染してるぜ」と発表して大騒ぎになった。
このニュースに触れて,まぁ普通のヒトが考えることは1つだ。ボクのワタシのMacは大丈夫かしら? 今このコラムでFlashbackのことを初めて知った,というようなヒト,さすがに MOSADeN Online の読者には少なかろうと思うが一応その調べ方…というか調べられるツールが以下のURLからダウンロードできるのでお知らせしておく。
https://github.com/jils/FlashbackChecker/wiki
で,それはいいんだが,オレこのニュースを読んでもうひとつ疑問に思ったことがあるのだ。なんだかわかりますか? そう。このDr. Webちう会社は,どうやって「世界中で感染しているMac」を数えたの? ということ。少なくともオレが見た翻訳記事でそのことに触れたものはひとつもなかった。
4月20日にはアメリカのシマンテックも「我々の統計によると,この16日の時点でいまだに約14万台のMacが感染している」と発表。だからその「我々の統計」ってのはどうやって取ってんだっての? それが解んないままその数字をそうですかと信じるほどオレはおめでたくないぞ,と。
iPhone,iPadの勢いに乗ってMacも売れており,2012年第2四半期の出荷台数は過去最高の520万台。1984年からこれまでのMac累計出荷台数が約6300万台と聞けば,60万台という感染台数がハンパなもんではないことはわかる。わかるが,まさかそれって「今実際に動いてるMacが1000万台くらいだとして,調べた100台のうち6台が感染してたから60万台ってとこか」ってな数字ぢゃないよね?
で、探し回ったら見つかりましたその根拠とやら。オレの英文解釈が正しければこのFlashbackってヤツ,感染したMacのユニークID(シリアルとかMACアドレスみたいなものなのかは不明)を感染サーバー群が構築しているボットネットに流すんだと。で,Dr.Webでは自分ちに一台感染サーバを用意し,そこを流れるトラフィクを監視して感染台数を弾き出したと。
おおそうか,なるほどなぁと思ったあとでままままてよとなった。つまりそれって,自分で木馬作らなくても感染サーバを用意してそこで待ってれば木馬が盗み出した個人情報とかがダラダラそこに流れ込んでくるって図式なの?
そういう泥棒の上前をハネるみたいなコトをしていいのか? いや泥棒の側でもそういうことをされないように独自に暗号化をほどこして個人情報とかを流してるのか,いや別に観られたからって情報が減るわけぢゃないからそんなことはしないのか?
なんだかなぁ。ゴジラもモスラもビルや道路を壊すけど,モスラは正義の怪獣だからゴジラろは違うって言われてなんか割り切れぬ思いを胸に抱いた少年の日を思い出します春の午後。
(2012/04/22) -
藤本裕之のプログラミング夜話 #228
この記事は、2012年04月10日に掲載されました。Googleの検索フィールドには,既に入力された文字を手掛かりにして「あなたがこれから入力したい文字列はこれでしょ? これでしょ? これ探すつもりなんでしょ?」と候補をだしてくるという,なんつか周りより頭のいいつもりの小学6年生のマセたガキみたいな小賢しい機能がある。
もちろん実際に入力された文字列の統計から割り出しているんで根拠はある。一時ここに「夫」と入れてスペースを押すと「大嫌い」とか「離婚」とかその手の単語がずらずら並ぶってんで話題になった(現在はもう違ってる。ちなみに「妻」とやると「プレゼント」とか「誕生日プレゼント」とかが出ました。コメントは差し控えますが)。
今回,遅ればせながらオレも Siri についての原稿を書こうと思い,Siriってばあれだよな,と「Knowledge Navigator」と打ってスペースを入れたら,ちゃんと続いて「Siri」が候補にあがるのではないの。
なんだ,そんなにみんな書いてるならよしておこうかと思ったが,ざっと読んでみると「SiriによってAppleはあのKnowledge Navigatorに随分近づいた」みたいな印象批評的記事が多く(つうかそういうんばっかりで),みんなあんまりちゃんと比べてない。ったく非プログラマはこーだからいけないw
つうわけで箇条書きにしてみた。
1. まず起動されるとKnowledge Navigatorのエージェント(長いので以下KNと略)は教授(ユーザー)宛に3本の伝言があることを告げる。録音を再生するのでも文字を読み上げるのでもなく,伝言の内容を要約して伝えてるが,ま,そこは演出。Siriもユーザー宛のメッセージを読み上げてくれる。
2. 次にKNはその日の予定を教えてくれる。ビデオでは何も聞かないのに予定を並べ始めるが……それは却ってうるさいだろw Siriもワタシのカレンダーにアクセスして予定を表示してくれる。
3. そして教授が午後に予定されている講義のための資料を探すのを手伝う。なにしろこのビデオは1987年,CERN)のティム・バーナーズ=リーがNeXTを使ってWWWを開発する以前のものなのでここらのイメージは曖昧。Siriならネットを検索して……まぁビデオのように簡単に目的のモノにたどり着けるとは思えないが,可能だよね。
4. KNが友人の書いた関連論文を見つけると,教授はその著者に電話を掛けるように頼む。これはSiriにもできるけど,出ない場合のメッセージは自分で喋らなくちゃならない。……つか,留守電にSiriの声でたとえば「こちらは誰某のiPhoneです。折り返し電話ください」みたいなメッセージが入ってたらちょっとムカつくかも知れないよね。
5. 次に教授はうろ覚えの名前を挙げてその論文を探させる。曖昧検索はSiriではなく検索エンジンの領分だと考えればこれは3と同じ。
6. そうこうしてる間にさっき伝言を残した友人から電話がかかってくる。KNは「電話です」と言うが,これは単に呼び出し音が鳴ればいいので Siriは介在しない。顔を見ながらの通話はFaceTimeで実現されてる。
7. この通話中,教授がついたちょっとしたウソをKNが暴いてしまう,という笑えるシーンがあるが,これは講義の予定についての会話に「反応」しただけであり,KNにユーモラスな性格づけがされているわけではない。この辺はけっこう冗談にも答えてくれるSiriの方が上か。
8. 最後,KNは教授が友人と会話している間に,母親から電話があったことをその内容と共に伝える。これは現実には留守番電話サービスがやることなので Siriは介在できない。また,する必要もないわな。
どーです? 近づいたどころか超えてると言っていいんぢゃないの? これでiPadからも電話がかけられるようになり(Skypeあれば要らないか)Siriが動けばもう完成である。……あとは各種施設のインタフェースが統一されて,Siriやドコモの iコンシェルからアクセス可能な形になれば声で指示するだけでホテルや交通機関の予約,コンサートなどのチケット確保とかが可能になれば万々歳。遂に21世紀が来ましたよw
でもここで現実的なワタシはひとつ悲観的な予言をしとく。どーせそーゆーサービスって「ナントカホテルがドコモと提携してiコンシェルからだけ予約できるサービスを開始」とかの囲い込み合戦になるんだよね。そんなことしたって「それがつかえるからそのケータイにする」とか「それで予約できるからそのホテルに泊まる」なんてヒト増えるわけないだろってこと分かんないヒトが多いんだ,不思議なことに。
(2012/04/07)
-
藤本裕之のプログラミング夜話 #227
この記事は、2012年03月27日に掲載されました。いきなりあさっての方から話を始める。twitterで有名人……それもTVタレントではなくて,いわゆる言論人とかジャーナリスト,コラムニストをフォローしてると,たまに面白いもの(ご本人にとっては笑いごとぢゃねーよ,なんだろうが)を読める。なんてんですか,匿名の素人さん(匿名だから素人かどうか確言はできないが,あきらかに日常的に文章を書き慣れていない人ね)がオレがフォローしてる玄人さんにあいさつもヘチマもなくいちゃもんをつけるというか,議論をふっかけるわけ。
この原稿を書いているのは3月25日午後1時ちょい前。昨日辺りからあの小田島隆さん(一度だけお会いしてるがまだ酒を飲んでたころなのでたぶん憶えてらっしゃらんだろうな)がそういう類いの人にえんえんメンションされてる。相当閉口してるようにも読めるが,ああいう芸風なので油断はならない。もしかすると次の日経のコラムでこいつのこと書いたろ,とか「取材」してるかも知れぬ。つかその方がオレは楽しみだが。
いやしかし本稿の主役はオダジマさんではなくていちゃんもんつけてくる匿名さんのほうである。あ,それも違うか,かの匿名さんをして twitterで見かけただけのオダジマさんにメンションさせてしまう力場というか,現実歪曲フィールドを問題にしたいのね。
なんつか「ソーシャルメディア」というものの持つ双方向性が,社会を世間にしたというか,世界を町内にしたというか,とにかくそういうヒト達の頭の中で現実を歪めて,知己どころか面識もない誰かに向けて名乗りもせずに「おまえの書いてるものつまんないよ」と話しかけ,まともに取り合わないと激高するなんて行動を取らせちゃうわけである。で,この想像はたぶん当たってると思うけど,生で逢ったら別に変人でもなんでもないんだよこの匿名さんも。
この話題の最初の方でオレは30年以上前の喫茶店のインベーダゲームを引き合いに出して,その程度のゆるやかな人的ネットワークの中の勝った負けたでエンケファリンだのβエンドルフィンだのという脳内麻薬が分泌されどうにもとまらない山本リンダ状態になることなんて考えられないだろ,と書いた。あの時点ではそう思ってたし,今でも,少なくともオレの脳みそでは今でもそうなのだ。
でもほら,違うぢゃん。
今や世界はワタシの iPhoneの中にあるぢゃん。気に入らないヤツも好きなヤツも名前も知らないけど癪に障ってしょうがないヤツも。で,そこでゲームの勝者になれば,文字通り世界中から羨望のまなざしで見られるわけぢゃん。称賛の的ぢゃん。気持ち良いぢゃん。そろそろこの頭の悪いお笑い芸人のネタみたいな口調疲れてきたぢゃん。
端から見れば落語の「だくだく」(壁に家具の絵を描いて暮らしてる貧乏人のところに洒落のわかる泥棒が入って「つもり」合戦を繰り広げる噺)なんだが,自分の脳がそう認識すれば自分にとってそれはまごうことなき真実なので,脳内麻薬出まくりになるというわけ。で,ソーシャルゲームというのはその麻薬性を利用して莫大な利益を上げている。野球チームだって買えるほど。でもこれってまともな商売なのかなー。
……と,ここまで書いて筆を置こうとしたら結構有名なブログ書きの永江一石というヒトが
http://www.landerblue.co.jp/blog/?p=2451
ここの文章で「そもそもモバゲーもグリーもソーシャル詐欺師も宝くじも、頭のいい人たちが情報弱者(情弱)から金を巻き上げるということで成立しているビジネスだと思う」とはっきり書いちゃってるのを見つけてしまった。うーん,情報弱者と言えばそうかも知れぬがどっちかというと脳内麻薬中毒者なわけで,シャブの売人みたいなもんだ。……でもオレたち(開発屋)がそう言うと負け惜しみだと思われちゃうんだよな,ビジネス的には。
(2012/03/25)
-
藤本裕之のプログラミング夜話 #226
この記事は、2012年03月13日に掲載されました。承前。iOS5.1とかXcode4.3.1とか新しい iPadtとか逸れたいワキ道は山のようにあるが,そういうのは他のヒトに譲ってソーシャルゲームの話を続きをしよう。あ,一個だけ,iOSデバイスのアップデートが永久ループに陥ってしまう(ことがある)件の詳細は以下のサイトの説明が詳細でだ。もしこれが正解なら(オレにはそう思われる。まぁ正直な話通信方面は詳しくないんだがね)原因は iOSやデバイスにはなく,環境によっては次のときも同じ憂き目を見る可能性がある,と。
http://www.e-ontap.com/blog/20120309.html#p01
で,あらためてソーシャルゲームの話の続き。前回の本コラムの最後でオレは「パチンコのように金銭的見返りが期待できる(コトもある……稀にだけどw)わけでもないソーシャルゲームなぞに1,000円,2,000円ならともかく,1万円とか10万円とか突っ込んでしまうユーザー心理ってどっから来るのか」と書いた。
こう言ったらなんだけど,パチンコだって毎回数万も使ってりゃ依存症が疑われる。つまり病気です,病気。そんな大げさなとおっしゃるカタがいるかも知れぬが大王製紙の御曹司の例もあるとおり,ギャンブル中毒はアル中とかシャブ中,ニコチン中毒と同じれっきとした病気なのね。
え,アルコールやシャブ,ニコチンはわかるがギャンブルなんて飲んだり吸ったりチューシャしたりするわけでもないのになんで中毒になるのかって? ギャンブルの場合,依存症の原因となるのはいわゆる脳内麻薬である。パチンコ,パチスロなどのヤクモノが揃うと,β-エンドルフィンなどの脳内伝達物質がドバっと分泌され,これがもたらす多幸感がヤミツキになって最終的にはやめられないとまらないのエビせん体質……もとい中毒になってしまうわけですな。
ではなんで大当たりすると脳内麻薬が分泌されるのか。これまでその理由は大当たりによってもたらされる金銭的利益,ひらたく言えば玉がたくさん出て金が儲かるという事実であるちうふうに理解されてきた。だから警察は「あんまり射幸心を煽ってはイケない」「大当たりの出玉数のはこんだけまで」「大当たりの出る確率はこれこれこんだけでなければならない」などの規制を……あんまり効果はないとか,警察の天下り団体の権益を確保するためだとかのワルクチはあるものの,実施している。
ところがソーシャルゲームの場合,ガチャに当たって最強のアイテムだのEXILEメンバーのカードだのがゲットできてもパチンコのような金銭的利益はないわけだ(前回紹介した日経の記事にあったみたいな「システムの穴をみつけてレアアイテムを複製してヤフオクで売る」とかいうのは別ね。ここでは逆に高い金出してああいうのを買っちゃうヒトの方を問題にしてる)。ないのに射幸心が刺激され,脳内麻薬が分泌されギャンブル依存症と酷似した症状を呈する。
たちが悪いのはこれがギャンブルではないために警察の規制の対象にもならず,だから利用者が欲しがるレアアイテムをゲットできる確率に関してなぁんの規制もタガもないことだ。すべてはゲーム提供会社の恣意であり,それがゲームバランス上適当であるなら(あると考えていますと言えるなら),年末ジャンボ宝くじの一等当選率(これは1人のアメリカ人が今後1年間にカミナリに撃たれて死ぬくらいの確率である)より低くしたって構わない。だれに文句を言われるスジアイもないんですな。
ま,それはともかくここでオレが興味があるのはこういうゲームが警察の規制の対象にならないことではなくて(もちろんそれはそれで問題だとは思うけどさ),金銭的利益ではない何がゲーマーのどたまに脳内麻薬を出させるのか,である。たとえばね,トランプゲームのクロンダイクみたいなもんでもそりゃクリアできれば気持ちはいい。けど「10円出せばこれクリアさせてやるけど」みたいなメッセージがでて「うん」と言うか? 言わんだろう?
それに「うん」と言わせてしまうのがどーも「ソーシャル」らしいのだ。
(2012_03_11)
※ギャンブル依存症に興味のあるヒトは以下をどーぞ。
「『パチンコ依存症』からの脱却―パチンコへの誤解と恐ろしい病にあなたは蝕まれている!」
「ギャンブル依存症」 -
藤本裕之のプログラミング夜話 #225
この記事は、2012年02月28日に掲載されました。突然(誰か予想してました?)Mac用の次期OS「Mountain Lion」が発表され,しかもそれが手持ちのMacBook Air(初代)では動作しないと判明,買って4年目(こいつは2008年のWWDCのときにサンフランシスコのApple Storeで買ったもの)だからしかたないかと諦めつつも,従来のスケジュールだったら次期OSは来年やないのもう1年もったやないのないのないのと脳内駄々をこねてみた2月もそろそろおしまいである。
で,その脳内駄々……ぢゃない,脳内麻薬の話。
ジョブズが亡くなる前なのでなんだかとんでもなく昔の話のような気がするが,このコラムでAppleが「Game Center」への登録に AppleIDを要求するのは「Gameに特化したソーシャル・メディアの構築」という能書きに逆行するんと違うか,と書いたのは昨年9月のどたまであった。
あの時「Gameに特化したソーシャル・メディア」としてオレの頭のなかにあったのは「互いに顔も名前も知らないが,同じ喫茶店のスペースインベーダーの機械でハイスコアを競い合ってるライバル同士」みたいな,店の親父さんに聞くとか伝言を頼むとかすれば簡単にその正体を知ることができもしかしたらリアルな友人関係を築けるかもしれないが,別にそうまでして知りあいたいとは思わない程度のゆるやかな人的ネットワーク,だった。
その程度の人間関係であれば,そいつの出したハイスコアを塗り替えられなくても「キーくやしいもう100円!」となるなんてことないし,逆に塗り替えられたときの嬉しさにしても,店を出て職場に戻り午後の仕事が始まればすぐに忘れてしまうくらいのものだろう。間違ってもハイスコアを出した瞬間に脳内にエンケファリンだのβエンドルフィンだのが溢れて多幸感につつまれ,それが気持ちよくなってやめられないとまらないのエビせん体質になってしまうなんてこたぁない,と。
すまん,オレが甘かった。
現在流行のいわゆる「ソーシャル・ゲーム」の「ソーシャル」,フィジカル面では上にオレが想定したものと大差ない。自分が協力している,あるいは競っている相手との間に文字通り「社会的な」関係を築く必要もない。そんな中でゲームに「勝つ」ことにどれほどの意味があるのか。パチンコみたいに(ま,あれはあれで別の問題山積なんだけど)実利にむすびつくわけでもない。
こんな言い方したら失礼か知らんけど「やったぞ,勝ったぞ!」とガッツポーズをとるときの多幸感だけのために……徹夜くらいなら,オレも昔rougueとかでやったが,勝つためのアイテムを1,000円とか2,000円とかで買う? 最強のアイテムがひけるまで10万円以上もガチャとかいうルーレットみたいなもんを回し続ける? あり得ないだろ,そんなん……と思ってた。
あり得たのである。吃驚仰天。しかもそれをワタシ,かなり微妙なアングルから知ったのね。日本経済新聞の以下の記事(日経の記事の寿命がわかんない。リンク切れてたらすいません)。
要は人気ソーシャル・ゲーム(TVでTOKIOがCMしてるやつ,CM自体は観てたがこーいうもんだとは知らなかった)「探検ドリランド」に入手難易度が高いアイテムを複製できるバグがあって,これを利用して複製したアイテムをヤフオクとかで売ってるヤツがおり,これが即決5万円とかで売れてるんだが,それは真っ当な手段で手に入れようとすると5万どころか15万払ってもダメなことがあるからだというんである。もちろんiOS版であれば,その代金はあの「in App Purchase」を使って回収されるわけだ。
冒頭にも書いたようにこの夏までには MacBook Airの新調資金を捻出せねばならぬオレとしては,どういう仕組みでゲームユーザーにそんな不合理な散財を強いるコトができているのか,というトコロにとても興味がある。もちろんミイラ取りがミイラになっては元もコもないので自分でそれをプレイせずに考察したい。虎穴に入らずに虎児を得ようというムシのいい目論みではあるが,これから数回のシリーズにおつきあい願いたい。
(2012_02_26)
-
藤本裕之のプログラミング夜話 #224
この記事は、2012年02月14日に掲載されました。2月2日,Mac OS X Lion 10.7.3がリリースされた。朝起きてマシンを立ち上げたらそういう知らせが来てたので,早速私も3台のMacをアップデート。サーバーが混んでるらしく3台全部終わるのには半日近くかかってしまった。これってさ,3台それぞれでアップデータをダウンロードさせられるよか保存可能なpkgとかの形で配ってくれた方が嬉しいんだけど……まぁほとんどのエンドユーザーには関わりのない話か。
ところがアップデートが完了した直後から,twitterなどに10.7.3にしたらなんとかが動かなくなったとか,かんとかが落ちるようになった,システムが不安定になった,というような報告が相次いでポストされたんだよね。それを読んでワタクシも,あやや,もう少し様子を見てからにしておくんだったかなと後悔,皆が書いているようなトラブルを食らうことを覚悟した。しました。
……のだが,結果から言うとなぜかウチではトラブルは皆無。どころか最も非力な MacBook Airなどアップデートによって有意に安定し,かつわけわかめにビーチボールが回り続けるという事態に遭遇することが減りました(まったくなくなったわけぢゃない),結構快適。……ま,考えてみれば普通ソフトウェアのアップデートというのはそのようにモノゴトを改善することが目的なわけで,「オレんとこは良くなったぜ」と驚くのは失礼だと言えば失礼な話だけども。
ただ一点,これまたエンドユーザーには関わりのないことでござんすが,Xcode + iTunes Connect 関係でちとトラブったのでご紹介しておく。
2月の6日,リリース目前の……正確に言うと1月下旬にリリース候補のビルドをクライアントに提出して所謂検収待ちになっていたプロダクトについて,使用しているグラフィックの一部を差し替えてくれと連絡が入り,送られてきたファイルを使って再ビルドを行った。コードはそのままだが,見てくれに関することなので実機(iPhone 4S)をMacに繋げて動作チェックも行った。あとはArchiveをおこない,クライアント側の動作確認のためのAdHoc版と,リリース用のAppStore版を吐き出してあちらに送付すればいい。
はずだったんだが,問題はこのArchiveの時に発生した。以下のようなWarningが表示されて消せなくなったんである。
Phone/iPod Touch: Icon.png: icon dimensions (0 x 0) don’t meet the size requirements. The icon file must be 57×57 pixels, in .png format (-19014)
おいおい,今回差し替えたのはアイコンぢゃないよ。それにアイコンファイルはちゃんと 57 x 57のにしてありますがな。これ,意味不明やわ。……つうわけで,以下はやってみた対策。
その1。プロジェクトのバイナリ全部をクリアしてみた。ダメ。
その2。アイコンファイルを一度GraphicConverterで開き,ちゃんとサイズがあるのを確認して別名で保存。そのファイルの名称をIcon.png\に変更してプロジェクトに追加し直してみた。ダメ。
その3。info.plistからアイコンファイルの指定を削除してみた。やったWarningが消えた……が,当然ながらこれでは納品できない。そこで思いついた。ひょっとすると誰かオレと同じ目に遭ってないか。困ったときのGoogle頼み。上のWarningの文章をそのままコピーしてGoogleのサーチフィールドにペーストしてみた。いましたいました。
オレはArchive段階でのWarningでひっかかったが(つうかこのプロダクトの場合,AppStoreへのアップロードはクライアントの領域だからオレはやらない),なぁにErrorではなくてWarningではないか,そもそもプログラムは動作してんだし,と無視してValidationにいくと同じ文言が表示されて先に進ませてくれないらしい。いやオレもそうしてたらと思うとちとゾっとしますな。
どうもこれ,Mac OS X LIon10.7.3とApplication Loaderの間の齟齬で,解決するには iTunesConnectのページから最新版 をダウンロードしてインストール。而してプロジェクトをクリアしビルドしなおせばいい,と。
オレとしてはどこがどう齟齬ったらこういう間抜けな事態になるのかそこの辺りも知りたいところだが上のページもオフィシャルなAppleのページではないし,この件に関してオフィシャルなページは見つからなかった(2月11日現在)。
で,今回の文句と教訓。
まず文句から。基本的に「Warning」というのはその内容が理解でき,影響を類推できるヒトであれば読んで無視しても大過ない程度の問題について出すべきであり,今回のこの「Warning」は二重の意味でひどい。第一に解決した今に至っても依然その意味が不明であり,しかもその問題はアプリの動作時ではなくアプリをリリースしようとする手続きに当たって致命的となる。勘弁してくださいよ。
次に教訓。……とこんな具合に文句を言ったからと言って今後このようなことがなくなるなんて僥倖は期待できないので,開発に際しては「Warningだから大丈夫」と無視して進めることはやめるべきである。Warningと言えどもErrorと同じように扱ったほうが怪我がない……少なくともその中身を完全に理解できていない限りはね。
(2012_02_11)
-
藤本裕之のプログラミング夜話 #223
この記事は、2012年01月31日に掲載されました。うーん,みなさん。それにしても55億である。何の話かって? この不景気に忙しいのはいいことだがニュースくらいチェックしなさいよ。特許庁が24日に中断を決定した新たな……これがどうも中国の特許出願状況を調べられるようにしてより国際的な特許権管理に使えるようになるはずのものだったらしいんだが,特許情報システムに関してこれまでに出費された予算の総額である。
もう少し漢字がすくなげな説明をすると,要は早口言葉のネタにもなってる東京特許許可局の親玉役所である特許庁が6年前に発注,再来年2014年に完成予定だったシステムが,納期まであと2年となったが全然進んでないので,どーゆーわけでそんなまぬけなことになっているのか調べてみた。
そしたらそもそもの設計から「だめぢゃん」「あきまへん」ってことが判明。こんごどうするかについて検証委員会つうのをつくって検討を重ねてきた結果,発注総額99億円の半分以上,55億円をすでに使ってしまったけど,このまま99億円かけてもできる見込みはまったくないのでやんぴします,という結論に達した,と。
当然「55億円も国民の金を無駄にしたんか」「いや特許庁は出願料とかの収入があるから独立採算制,だからこの金も税金ぢゃない」「そんなこたぁ問題ぢゃなかろ。税金ぢゃないから55億円ドブに捨ててもいいっていうのか」「そうは言ってない,それに55億全部が水の泡ってわけぢゃなくて,ちゃんと検証して使えるところは無駄なく使っていくと言ってる」とネットはかまびすしいわけである。
が,正直に申し上げてだ。同じコンピュータを使うシステム,しかもその主たるファンクショナリティはつまりデータベースと通信のシステム……のはずなんだが,55億,いやさ総額では99億のシステムと聞くと,どこの何がどんだけ複雑でそんだけの金と8年の歳月がかかるのか,そんだけの金をかけたもんでありながら「やっぱ駄目ぢゃん」てな設計が工期残り1/4になるまで露見しないマネジメントってどんなもんなのか,という辺りについてオレにはちょっと想像がつかない。
印刷すると100ページくらいになる「データレコードフォーマット仕様書」とか150ページくらいある「通信プロトコル仕様書」とかのpdfがあって,そのそれぞれが頻繁に変更されるのでgitとかで管理されていて,当然プログラムソースやリソースもそうなってて,ある日チームの一人がキレて山手線を遅延させるような挙に出た場合には誰も彼がやっていた部分を引き継げなくて……てな状況だろうか,これぢゃ全然55億円に匹敵する規模ぢゃないような気もするが。
とにかくそういうわけでこれまで何が問題だったのかはよくわからないんだが,そんなオレでもこれはわかる,これはまずいだろというトコがこいつに関する一連の報道にはある。Twitter辺りでも取りざたされてた(なのでちょこっと上にも引用した)ように,特許庁が「55億全部が水の泡ってわけぢゃなくて,ちゃんと検証して使えるところは無駄なく使っていく」と言ってるらしいことである。
あのね,55億円どころか1億円規模の仕事もしたことないが,それでもこの業界で30年近く飯食ってる経験から言って,これまでいくら金かかってようと,いったん「駄目ぢゃん」となったシステムに「使えるトコ」なんてないよ。つか,それをやるとどーなるかというと,その「ここは使える」となったトコに合わせるために新しく作るシステムが制約を受ける。有り体に言えば「ダメ」な方向に一歩近づく。気がつけば次の55億円が無駄になってる,つうことになる。いやかなりの確率でそうなるってば。
「刑事コロンボ」のシリーズに「大脱走」で目の悪い偽造屋を演じたドナルド・プレザンスが犯人を演じる「別れのワイン」って名作があってさ。ワインに関するうんちくを勉強中のコロンボが行きつけの(あの彼がいつもチリを食ってる)レストランのオヤジに「オヤジ,いいワインってどんなワインだかわかるか?」と訊く。するとオヤジがすかさず「高いワインがいいワインだ」と答えてコロンボがあの表情でクビを振る。そう,ワインもシステムもそう単純なもんぢゃないんだよね。
(2012_02_29)
-
藤本裕之のプログラミング夜話 #222
この記事は、2012年01月17日に掲載されました。あけましておめでとうござる。……てか書いている本人はあんまりおめでたくなくて,何を隠そう一昨日,奇しくも13日の金曜日,俗に言う「魔女の一撃」つまりぎっくり腰を食らってどうにも動けません状態なんだけどね。
それでも原稿は書かねばならぬ,つか手元にある MacBook Air ではそれ以上の仕事ができない……なにしろ開発マシンのところに行ってあれを起動し進行中のプロジェクトを Air にコピーしてくるというミッションがトム・クルーズの任務みたいに思えるのでしょうがない。それに不幸中の幸いというか一応週末だし。
まぁそういうオレの事情はともかく読者諸兄におかれましては健やかな正月を迎えられたことと思う。
……つうかオレだって13日の金曜日まではまぁ穏やかに年を越し,5日には初台オペラシティで山下洋輔プロデュースのニューイヤー・ジャズ・コンサート(ジャズと銘打ちながらメインはアン・アキコ・マイヤーズと東京フィルハーモニー交響楽団でモーツァルトw)を聴いたりとそれなりに平凡な日々だったわけだけど。
そうそう,それで思い出した。読みました? NYフィルのコンサート最中に最前列に座っていたおじさんが iPhone のアラーム音を鳴らしてしまい,コンサートが中断しちゃったという事件。よりによってマーラーの9番,第4楽章の終わり近くのとにかくやたら音が小さくなるところですよ。そこであの「マリンバ」が鳴り響いた。
しかもである。当のおじさんが「ワシはちゃんとマナーモードにしてるんけん」てなもんでしばらく自分が発信源だと思わなかった。で,指揮を執ってたアラン・ギルバートは演奏を中断,件のおじさんのところに行って「解決」を待ち,おもむろに「少し巻き戻して」演奏を再開したってんですけどね。
その後もこのおじさんが iPhone を持ったばかりでその操作に習熟してなかったとか,そもそも マナーモードでもアラームは鳴るという Apple の仕様は正しいのかとかいろいろかまびすしいコトになってるんだが……。ぢゃコンサートとかのときにアラームが鳴らないようにする正しい方法は? と探すと見つからないんだよねこれが。
ちなみにワタシはどーしてるか。たとえば先日のオペラシティでのコンサート,着席したらすぐに「設定」の機内モードをオンにした。これで通信は遮断されるから着信は来ないしFacebookとかからの通知もない。Bluetoothのヘッドフォンも使えなくなるんだけど,まぁ開演までの30分弱くらい音楽なしでいいぢゃないか,と。
でも,カレンダーやリマインダーからの通知は来る,……つうか鳴り出すんだよね。NYフィルのときのおじさんもどうやらこれらしいんだけど,これを鳴らなくするには同じ設定の「サウンド」を開いて「カレンダーの通知音」と「リマインダーの通知音」を「なし」に設定する……。そんなこといちいちやってられねぇよなw。
実はワタシもこれを食らったことがある。ワタシの場合コンサートの開場時間のアラーム設定だったから鳴ったのは列に並んでる時でコトナキを得たわけだが,こういうことがあるんだなと認識。以降カレンダーやリマインダーのアラームは全部朝8時くらいに設定するという方針で対処してる。
こう言ったらなんだけど,売れっ子時代のピンクレディぢゃあるまいし,実際に分刻みとかのスケジュールで動いてるヒトってのはそれほどいないと思う。少なくともオレはその日の朝に「今日は3時からこれだかんね」と出てくれればその後それを忘れちゃったらそれはiPhoneでなくて自分が悪いと思いますよ。
もちろん,それはそれとして「これをこーするだけで一切 iPhoneから音は出ません出しません」って設定が簡単にできるならその方がええとは思うわけだけど,ね。
(2012_01_15)
-
藤本裕之のプログラミング夜話 #221
この記事は、2011年12月27日に掲載されました。やれやれ,この年末……というか何を隠そうこれを書いているのはクリスマスイブの晩ですよ,お父さん。いかにオレが敬虔きわまりない本願寺門徒だからって(多少の誇張はあります),寺で育ったせいで十代の半ばまでクリスマスケーキを食ったことがなかったからって,これはちょっと可哀想ではないかと。
しかもまたここんとここの原稿のネタにするような話が転がってない。
Winnyの作者が裁判で勝った(でもオレはファイル交換ソフトには縁がない)とか,NTTドコモのメールシステムが世にも稀なるすっとこどっこいで出したメールが他人に届いた(でもオレのケータイはSoftBankの iPhone)とか,東野圭吾,弘兼憲史といったお歴々が自炊代行業者を訴えた(みんなiPadとかで本を読むのが好きみたいだけどオレは基本紙の本を読むのが好き)とか,かすってはいるのだけれどオレが自分の問題として考察しのみならずその結論をここに提示してそやないですかみなさんと「どや顔」をしてみせたくなるような話題ではない。
ちうわけで,ネタのないときの恒例,コード噺を一席。
iPhoneを使ってて思うのは,Appleの作ったアプリには「機能的にはなぁんの意味もないんだけど,そいつがあるためにユーザーの好感度がいや増す」みたいな「動作」がある。例えばホーム画面でアイコンを長押ししてるとみんながブルブル震え出したりとか。
あれなんか,なにも震えたりしなくても,肩に出てくる「ⓧ」バッヂだけで「いまこのアイコンは動かせます,ほんで「ⓧ」をタップすると削除もできます」って情報は充分ユーザーに伝わると思うんだが,わざわざ CPUタイムを使って震えさせることで「機能」の範疇には治まらない「親しみやすさ」とか「使いやすさ」みたいなものを演出してる。「User Experience」というのはこーゆートコで培われる。
で,あれってどーやるんだろ,と思ったわけ。ま,自分のコードの中でボタンとかを震えさせてどうこうという局面はないのだけど,いわゆるバウンス,跳ね返りというのは使えるよね,と。
まずは View …… UIImageVIewとかでいいが,にユーザーのドラッグにあわせて移動するコードを書いてみる……って煩雑だからココには書かないけど,touchesBegan:touches:withEvent: で最初の位置を記憶し, touchesMove:touches:withEvent: で移動した分 Viewのframeを動かし,そしてtouchesEnded:touches:withEvent: で最後の位置に動かして終わりってなコードになるよね。
その最後のトコで superViewのboundsとのインターセクションをとって,もしそれが自分のframeとイコールでなかったらどっかはみ出してるわけだ。以下のようなコードを書く。枠からはみ出た分だけ戻すんぢゃなくて,はみ出た長さの半分だけ余計に戻す。たくさんはみ出るとたくさん跳ね返るリクツ。
CGRect iR = CGRectIntersection(self.superview.bounds, self.frame); if (CGRectEqualToRect(iR, self.frame) == NO) { CGFloat xD = (iR.origin.x == 0.0f) ? 1.0f:-1.0f; CGFloat yD = (iR.origin.y == 0.0f) ? 1.0f:-1.0f; CGRect eR = CGRectOffset(self.frame, (self.frame.size.width - iR.size.width) * xD, (self.frame.size.height - iR.size.height) * yD); CGRect bR = CGRectOffset(eR, (self.frame.size.width - iR.size.width) * xD * 0.5f, (self.frame.size.height - iR.size.height) * yD * 0.5f); CGContextRef context = UIGraphicsGetCurrentContext(); [UIView beginAnimations:nil context:context]; [UIView setAnimationCurve:UIViewAnimationCurveEaseOut]; [UIView setAnimationDuration:0.1f]; self.frame = bR; [UIView commitAnimations]; [self performSelector:@selector(moveToLastPosition:) withObject:[NSValue valueWithCGRect:eR] afterDelay:0.1f]; }
で,このアニメーションが終わる 0.1秒後に,本来の位置に戻るアニメーションを始める(上で performSelector:withObject:afterDelay: に渡してるメソッドね)。前のより短い距離だけどちょっとゆっくりの方がそれっぽい。
-(void) moveToLastPosition:(NSValue *)lastPosition { CGContextRef context = UIGraphicsGetCurrentContext(); [UIView beginAnimations:nil context:context]; [UIView setAnimationCurve:UIViewAnimationCurveEaseIn]; [UIView setAnimationDuration:0.2f]; self.frame = [lastPosition CGRectValue];; [UIView commitAnimations]; }
もうお分かりと思うがこんなコードを繰り返すことでアプリのアイコンはぶるぶる震えるわけである。いやぁそのせいぢゃないが寒くなってきました。ほんではみなさん,よいお年を。
(2011_12_24)
-
藤本裕之のプログラミング夜話 #220
この記事は、2011年12月13日に掲載されました。ジョブズの伝記は発売10日で100万部売れたそうな,しかも日本だけで。すげえなぁ。とあるブログ(なので真偽は不明)によれば,これはあの村上春樹の「1Q84」Book1と2 よりも2日はやい記録だそうで「聖書」とまで表現してるブログもあった。ったくなにが聖書だ,このスカタンと思わんでもない。
かく言うワタクシは例のMSMのおり,北海道からいらしたタカハシさんが丁度会場で読み終わったばかりの「Ⅰ(このローマ数字の1が「かわせみ」で「ろーま1」と打って変換できることを最近知った,嬉しくてよく使ってる)」をお借りし,先日ようやく読了した。
通常こういう2巻本は,やはり2巻読み終えてから感想を言うなりレビューを書くのがほんとだと思うしこれまで例外なくそうしてきた。んだが,この本の場合「Ⅱ(「ろーま2」と打って変換,嬉しい嬉しい)」をいつ読めるか,誰かに借りることができるのかそれとも自分で「Ⅱ」だけ買うのかさえ未定なので……ちょっと書かせてもらっちゃおうかな,と。あ,でも今思いついたけどこんだけ売れればそろそろ BOOK OFFに安くでてるかも。
※
生前から有名だったジョブズの言葉に「ユーザーは自分が何が欲しいかなんて知っちゃいない」というのがある。いや,知ってただけぢゃなくてこれ,好きな言葉でね。オレももうこの業界で30年,ソフトウェアという製品作りに関わってきたわけだが,ホントにこの言葉通りだと思う。これは至言ですある意味。
パッケージソフトは言うを待たず,そのソフトウェアが実現しなくてはならない機能について一番詳しいのはユーザーそのヒトであるはずの業務用システムでも,ユーザーのほとんどは自分が欲しいものがどんなものであるか表現できない。できるのはそこに持ってこられたモノを見て「こーぢゃない」ということだけである。
ほんぢゃどうしたらいいか。ジョブズのやり方は明解だった。ユーザーは何が欲しいかわからない。だからオレが素晴らしいものを作ってみせてやる……言い替えればオレの価値観がユーザーの価値観だ,となり,そういう言い方をすると実に傲慢に聞こえるわけだ。
だが,ほんぢゃ上にオレが書いたような自分の業務についてまともな仕様書も書けない(書いてくれない)クライアントに対してオレが(そしてたぶん皆さんが)普段行ってることがジョブズとどんだけ違うかというと……言い方が傲慢ぢゃないだけで実質大して変わらんのである。いやオレたちはなんか問題があれば直すって? ジョブズだってたまには直したさ。
実はオレ一時,この本を読むよりこの本を読んだヒトがネットのブログとかで書いている文を読む方に嵌まってしまった。なかでも面白かったのが,ビジネス紙・誌とかで権威ある記事を書いてる偉い……とは思わぬが,少なくともオレより高い原稿料を貰ってるだろうヒトたちがジョブズを賞賛してる記事ね。
だって彼を褒めたその舌の根も乾かないウチに「iPhoneに追いつけない日本の企業はちゃんとマーケティングをしてるのか」とか〆るんだぜ。いくらマーケティング的な分析が自分の飯の種だって,そういうのを否定して成功したヒトを賞賛した文章の末尾をそうまとめられるという鉄面皮というか,歩く牽強付会と言うか……。
しかしならその論理的破綻を笑うオレ自身,いざ iPhoneのアプリの企画をたてるとか言う段になると,まずマーケティングが大事だとか,ユーザーが何を求めているかとか……誰かが言うと頷いたりしてるのである。頷いたそばからバカバカしいとも思うんだけどさ,やっぱりそうは言えないのよね。
かのジョン・レノンの言葉にこういうのがある。「本来的な才能とは,自分に何ができる,と信じる能力のことだ」。つまるところジョブズとオレたちの違いってのは彼がいつも「絶対に自分が正しい」と思ってる(ように見える)のに対して,オレたちはいつも「いやもしかしたらワタシが間違ってるかも知れないんですけどそんときは言ってくださいね」的な態度を取ってるってことなんだな。
それは謙虚さかも知れぬが自信のなさでもある。そして才能のなさなんだろ。
(2011_12_10)
-
藤本裕之のプログラミング夜話 #219
この記事は、2011年11月29日に掲載されました。前回書いた「ダッシュボード」についてMOSA会員の……ってこれを読んでるのはみんなそうだからわざわざ断る必要はないのか,コジマさんからアドバイスがあった。システム環境設定の「Mission Control」にある「Dashboard を操作スペースとして表示」というチェックボックスをオフにすれば,以前のように計算機や辞書などが現在の画面の上に現れるようになる……なった,なりました。早速クライアントに報せてあげました。ありがとう。
でもこれ,これにて一件落着とはいかない。微妙だけど「Appleは Mac OS X Lionの初期値を,なんでわざわざ今までと違うほうにしたのか」というトコロにこそオレが指摘した問題があると思うから,である。
もう一度確認しておきたい。Mac OS X Lionは,そのユーザ・インターフェイスにおいて,かなり大幅に従来の……Aquaから,というべきなのかな? から iOS に似た方向にシフトしたものになっている。スクロールの向きは逆になったし全画面表示サポートされた。
が,正直そこまでMacを iOSに合わせる必要があるのかね。
当初はオレなどもタッチパッドでスクロール操作をしたときにその向きの逆転に戸惑ったし,前回の話に出てきたクライアントは,メールを使っててなんかの拍子に「全画面表示」になってしまい,どうやってもどせばいいのか悪戦苦闘したと言ってた(これはなんとか自力で解決した。小一時間かかったらしい)。
1984年に最初の Macintoshを発表したとき, Jobs が選んだキャッチのひとつに「The Computer For The Rest Of Us」というのがあった。その意味するところについて解説が必要なヒトはこれを読んでないと思うが,この Jobs の意気込みに反して,Macによってコンピュータが利用できるようになったヒトはそれほど多くなかった,と言えるでしょ。
Jobs自身がそう考えていたかどうか知らないが,そういうわけで,iPhone や iPadなどの iOSデヴァイスにはつまり「The Computer For The Rest Of Us Vol.2」みたいな意味合いがある。いやこれはもうコンピュータリゼーションという潮流を歴史的に俯瞰して間違いなくそうだと思う。なんつか今後この世界は加速度的に「For The Rest Of Rest Of …」って GNU的リカージョンへ突入して行くのかも知れない。
書物はグーテンベルクによって「羊皮紙を買えないヒトビトのモノ」になったけれども,それでも「字が読めないヒトビトのもの」ではなかった。識字率,つまり字の読めるヒトの割合ってのはグーテンベルク(15世紀)以降すぐに上昇したわけぢゃなく,19世紀初頭のイギリス大都市圏でようやく20〜25%程度なんだが,でもそれがあの産業革命を産んだのである。
このインターネット時代に,コンピュータリゼーションの度合いを国別に考えるのは愚だとすれば,全世界人口70億人としてITリテラシーを持つ割合は現在どのくらいか。そういう統計,調査結果を寡聞にして聞かないが,iPhoneやAndroidなどのスマフォ,あるいはiPadのようなタブレット端末が急速にその数値を引き上げていることは間違いあるまい。ほんで,それはもしかしたら(もしかしたら,だよ)かつての産業革命のように,新たな人類発展の揺籃となるのかも知れない。
でもね,だからって今まで縦書きだった同じ本を「はい,今日から全部横書きでしか見せないからね」とか,しなくてもええんとちゃうの,と思うのである。ワタシは。
(2011_11_27)
-
藤本裕之のプログラミング夜話 #218
この記事は、2011年11月15日に掲載されました。いやいや皆さん,MSM2011は楽しうございましたね。え,オレは参加していない? それは惜しいことをしました。今回は……とてもここには書けない★△◎■なことがあったし,★◎■△なんていう他では聞けない話や△★◎※みたいなそうかそうだったのか話もあってとっても有意義な催しでしたのに。次回は是非,参加を検討いただけますよう(多少誇張も入ってますがCMなのでご寛恕くだされ)。
で,話は変わるがMSMの数日後,ワタシはとあるクライアントと酒を飲みに行ったのである。あ,これでは酒を飲みに行っただけみたいだな。違うからね……正確にはとあるクライアントのところに仕事に行って,仕事あがりにご苦労様ということでそのお客さんとビールを飲みに行ったわけ。創業昭和9年のライオン銀座七丁目店のビアホールへ,ね。
そこで琥珀エビス(最近これが気に入ってるのだ)の中ジョッキなど傾けながら原発事故を憂い,TPPについて語り,Steve Jobsの冥福を祈ったりしたのち,お客さんが「そういえば自宅で使ってる Mac のOSを Lion にバージョンアップしたんだけどなんだか格段に使いにくくなった」という話を始めたのである。
この会社のためにオレがやってる仕事はファイルメーカーのDB構築とメンテ。事務所にある数台の Snow Leopard マシンで顧客データなどを共有してる。セキュリティのためネットには繋いでおらず,Lionにバージョンアップする予定もないんだが,個人使いのマシンのほうを先日 Lion にしてみた。が,使いにくい。あれなんとかならんかとおっしゃる。
そうですか? そんなに使いにくいかなぁ。確かに指でやるスクロールの向きが iPhoneとかに合わせて逆転されたりとかあるけど……あれなら環境設定で昔と同じに戻せますよ?
いやいやそういうことぢゃないのよフヂモトさん,ここにはマシンがないからこれがこれがって言えないけど,なんていうか Lion って,Macのくせに iPhoneとか iPad みたいにそんとき使ってるアプリが画面全部を占有するでしょ? いやしないモードにも出来るのは知ってるんだけど,占有させたほうが便利でしょ,みたいな「思想」が根底に流れてるでしょ?
はぁ。……そう言えば「インタフェースの単純化」ちうのは iOS発表以来のなんつか「Appleの方向性」ではある。死んだ Steve がそういう言葉を使ってたかどうか定かではないが,「多くのヒトにとってコンピュータがワケワカメなのはやたらあれやこれやあれやこれや画面に出てくるからである」というのは一面の真理だし,ほとんどのユーザーはその方が迷わないとオレも思う。ほんで,この「1画面1アプリの思想」は,iPhone,iPadの使いやすさの根幹でもある。が,だ。
例えばねフヂモトさん,あの電卓とか時計とか出てくる「ダッシュボード」ってヤツがあるぢゃない? 前の Snow Leopard のときはなんか書類見てて必要になってあれで電卓を出すと,ちょっと暗くはなるけど電卓の下に書類が見えてたわけ。で,そこに見えてる数字をポチポチってやって計算できた。なのに Lionになったら,電卓が出てきた瞬間に背景もあのよくわかんないポツポツ模様になっちゃってさ,あれぢゃ計算する数を全部そらんじてからでないと電卓呼び出せないぢゃないの?
おおっ! そうでした。つかそうなのである。オレも Lion 導入以来,あのダッシュボードを呼び出すたび(オレの場合はあれの英和辞典を使うことが多いんだが),なんか苛立つなぁと思っていたのである。思っていたのだけど,電卓の数字みたいに直接的なものではないので気がつかなかったのだな。あの苛立ちは,ダッシュボードの機能を使うために過去には必要なかった短期記憶を強いられることへの反応だったわけか。
言われてみればその通り,MacはMacであってiPhoneぢゃなく,電卓だの辞書くらい出しとく余地は充分あるんだからあんなとこまで変に徹底しなくていいんである。過ぎたるは及ばざるがごとし。足まで描いたらヘビではない。ありませんね。こう言ったらなんだが,この電卓の使い勝手はデスクアクセサリー時代のそれ以下ではないですか。
え,だからダッシュボードの代わりにアプリの「計算機」や「辞書」を使えばいいんだって? そりゃそうなんだけど,ほんぢゃ初期状態でファンクションキーに割り当てられてるダッシュボードってなんのために存在しているの?
(2011_11_12) -
藤本裕之のプログラミング夜話 #217
この記事は、2011年10月25日に掲載されました。うーん,イマイチこの原稿向きのネタがない。
なんつか,とてもそうは思えないヒトも多いかもしれないが,これでもオレの中では MOSADeN Online で書くべき内容とそうでない……いやこれは「書くべきではない」という意味ではなくて,「オレが書かなくても誰か他のヒトが書くだろ」つか,「ひょっとすると誰かの原稿とカブるかも知れないからオレはやめとこ」って類いなんだけどね。
で,今回はいよいよネタがなくて切羽詰まったのでその禁を破ります。以下の話,既に誰かが紹介していたり(確認してる時間がない),たまさか今週,あるいは来週あたりに書くつもりだった執筆者がいたら申し訳ない……と,言い訳をしておいて,と。
自作の iPhoneアプリで画面の方向を限定するのは簡単である。XcodeでView Controller ベースのスケルトンを作るだけで,そこには
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation;
てなメソッドが用意されて,こいつに渡された方向をチェックして可否を返すだけで横向き縦向き天地無用,自由自在(たって4方向しかないけどさ)に「限定」できる。
でも,こないだあるクライアントに言われたんだけどこれって他力本願なんだよね,南無阿弥陀仏。アプリとしてはなんでもいいからその向きにして欲しいんだけど,ユーザーにその気がないとビューは永久にその向きにならない。
具体的にどんなアプリのどんなシチュエーションで必要になったか,というのは業務にかかわる秘密なので書けないが,例えば普段は横向き,ランドスケープ方向で使ってもらうアプリなんだけど,設定ボタンをタップされたときだけレイアウトの都合上ポートレイト状態にしたいてな場合。
どうするか考えた。
まずは UIDevice に setInterfaceOrientation:animated: ちゅなメソッドがないのかと。……ない。つかあればみんな使ってるだろうからないことは予想してたんだけど,ひょっとして iOS5から追加されてないかと。……なかった。
その代わり……代わりでもないんだが,「UIInterfaceOrientation」で検索してて,UIApplication に setStatusBarOrientation:animated: つうのがあるのをみっけ。ViewControllerに,あるボタンをタップするとこれを呼ぶような以下のようなコードを書いてみたら,ちゃんとステータスバーは思う方向に移動してくれるではないか。
- (void)forceOrientationChange:(UIInterfaceOrientation)newOrientation { if ([[UIApplication sharedApplication] statusBarOrientation] != newOrientation) { [[UIApplication sharedApplication] setStatusBarOrientation:newOrientation animated:YES]; } }
こりゃしめた。あとは自分が管理してるViewだけなんだからなんとかなりそうである。試行錯誤の結果,以下のメソッドでムリクリ方向をぶんまわすことに成功。
- (void)forceOrientationChange:(UIInterfaceOrientation)newOrientation { if ([[UIApplication sharedApplication] statusBarOrientation] != newOrientation) { [UIView beginAnimations:@"spin" context:NULL]; [UIView setAnimationDelegate:self]; [UIView setAnimationDidStopSelector:nil]; [[UIApplication sharedApplication] setStatusBarOrientation:newOrientation animated:YES]; if(newOrientation == UIInterfaceOrientationLandscapeLeft){ self.view.transform = CGAffineTransformMakeRotation(M_PI / 2 * 3); }else if (newOrientation == UIInterfaceOrientationPortraitUpsideDown) { self.view.transform = CGAffineTransformMakeRotation(M_PI); }else if(newOrientation == UIInterfaceOrientationLandscapeRight){ self.view.transform = CGAffineTransformMakeRotation(M_PI / 2); }else{ self.view.transform = CGAffineTransformMakeRotation(0); } [UIView commitAnimations]; } }
こんなの必要とするヒト少ないかもしれないけど, 機会があれば使ってくだされ。
(2011_10_23) -
藤本裕之のプログラミング夜話 #216
この記事は、2011年10月11日に掲載されました。「三国志」に「死せる孔明,生ける仲達を走らす」という言葉がある。蜀の軍師として名高い諸葛孔明が,自らの死を利用して対峙中の敵・魏軍の大将軍司馬仲達をたばかって疑心暗鬼に陥れ,結果まんまと自軍を不利な戦場から無事に退却させたという話。
この言葉だけだと,単に孔明がとっても賢くて仲達がマヌケだったみたいに思うヒトがいるかも知れぬが,この2人は共になんつか中国史上5本の指に入れてもおかしくないくらいの天才なんだよね。だからその駆け引きは言ってみれば囲碁や将棋の名人戦みたいなもの,仲達は自分の才能ゆえ,そして相手孔明の才能を知るゆえに死に瀕した孔明のとるであろう作戦を深読みしてしくじるのである。
それにしくじったといってもこれをイタチの最後っ屁にして孔明は世を去り,蜀政権は瓦解する。主人である劉備は死に際して孔明に「もし息子たちが愚かだったらそなたが王朝を簒奪してよい」と言ったそうなんだが(で,実際彼の息子たちはバカばっかなんだが),孔明はその道は選ばず,この主君に義理を立ててあかんと判っている蜀のために死ぬまで働いた。
ところで真偽は不明だが,この「死せる孔明……」という言葉を流布させ,人口に膾炙させたのは実は仲達自身だという説がある。上の件ではしてやられたとは言え,孔明を失った蜀が魏の軍門に降るのは時間の問題。と,なると「狡兎死して走狗煮らる」の喩えもある。仲達は主君(この時の魏帝は曹操の孫・明帝)の猜疑を恐れ「自分は孔明の罠にまんまとはまる程度のニンゲンです」とネコをかぶったんだ,というんですな。結局十数年後,仲達は魏朝の内紛に乗じてクーデターを敢行。王朝の実験を握るものの自ら帝位は求めず,73歳で死んだ。司馬氏がその王朝,晋を立てるのは彼の孫・司馬炎の代で,その際に高祖宣帝と追号されたが,本人は死ぬ時「謀反人にならずに済んだ」と言ったと伝えられる。この辺,孔明と似通った価値観を持っていたんでしょうか……。
余談が長くなった(余談だったんです)。
Steve Jobsが亡くなり,涙に暮れたり茫然自失となったり手持ちのApple製品全部に火を入れたりApple Storeに喧嘩しに……喧嘩しには行かない,献花しに行ったりするヒトがいる一方で,Appleはその先進的なアイディアの牽引車を失った,業界の勢力地図は塗り変わる,と,別に Jobsがいなくなっただけで他の会社(ソニーとか?)に Jobs みたいなヤツが現れたわけぢゃないのに(そもそも採用しないだろ)当たるも八卦的ビジネス展望みたいなことを書き散らかしてるヒトもいて百鬼夜行。
まぁヒトが何を言ってクチに糊しようが知ったことぢゃないんだが,その中に「なぁにJobsのことだ,20年,30年先を見越した Apple の事業計画を後継者たちに残してるはず(だからAppleは安泰だ)」という散見されたのには笑ってしまった。
だってそうでしょ? 有名なスタンダード卒業式でのスピーチ(彼の死によって YouTubeでの閲覧数は文字通りバクハツしてた)で彼は何と言ってた? 繋がる点は繋がってみないとわからない。他人がなんと言おうと自分の信念を信じろ,自分で考えろ。ほんで最後は「Stay Hungry, Stay Foolish」だよ(この最後のはあの「全地球カタログ」からの引用だけどさ)。そう言って死んだ彼が死後20年,30年先まで「こうやってけば間違いない」なんて作戦残したとしたら,それこそヤキがまわったってもんぢゃないか(ま,その可能性もないわけぢゃないけどさ)。
この世の中「死せるJobsの幻影を観て走るようなヤツ」や「自分で考えろって言葉を後生大事にメモしておいてことあるごとに読み返してるようなヤツ」ばっかりなんか。え,司馬仲達みたいに「ボクは死せる Jobs に走らされる程度のヤツなんです」とネコかぶってるんです? ……とてもそうは見えませんけど。
(2011_10_08) -
藤本裕之のプログラミング夜話 #215
この記事は、2011年09月27日に掲載されました。日本に住む我々にとってはある意味 Jobs の引退より大きな意味を持つかも知れぬニュースが飛び込んできた。9月22日付けの日本経済新聞によれば,au すなわち KDDI が2012年初頭から iPhone の発売を開始する,というのだ。
2007年の発売以来,iPhoneを扱わせる通信会社は一国一社という方針をとってきた Apple 社。が,今年2月にその方針を転換,本国アメリカで AT&Tに加えてベライゾン・コミュニケーションズにもデバイスの供給を開始した。当然ながら早晩,日本でも複数の会社が iPhone の販売権を獲得するんだろと思われてた。だからそのこと自体はさして意外ではない。
意外だったのはそれが iPhone 日本上陸時からとかく噂のあったNTTドコモではなく KDDI であったことかも知れぬ。いやオレはもともとそういうビジネス向きの話題には関心が薄いんで,一部の詳しいヒトにとっては意外でもなんでもなかったのかもとも思うけどもさ,正直 KDDI の名前を聞いた時は George Harrison の「Dark Horse」が頭の中で鳴り響きましたよ。
とにかくこのニュースを受けて KDDI の株価は急上昇,対してソフトバンク株は急落。ネットには「これで孫もおしまいだザマミロ」という孫さん嫌いのヘイトメッセージから「これまで繋がりにくかったオレの地域でも iPhone が使える,やったぁ」というヨロコビの声,果ては「KDDI に問い合わせたら『何も発表できません。記事を書いた日経さんに聞いてください』と言われた。ひょっとして仕手戦ぢゃねぇの?」みたいな陰謀説までありとあらゆる言説が飛び交った……ようである。
こないだも書いたが今オレはちょっとしたデスマーチ的状況(自分が工程を管理できない仕事を受けると天罰テキメン……ってもここまでキツイのは10数年ぶりですよ,旦那)に陥っていて,そのテのアーティクルを体系的かつ網羅的に読んで解釈して総括するなんてことをやってるヒマもズク(松本地方の方言で「気力・根性」の意)もなかったのだが,ちょっと気になったことがあって……。
それはなんつか「ソフトバンクは日本の iOSアプリ・デベロッパーに結構良くしてくれてたよ」というコトなのね。
これを読んでるヒトの中にも出席したヒトがいると思うが,昨年3月には汐留のビルにデベロッパーを集めて交流会&パーティをやってくれたり,オレの関わった仕事だけど期間限定の展覧会場での貸し出し用に iPhone(通話は不能・この展覧会場のナビゲーションアプリをオレが書いた)を無償でレンタルしてくれたり。
孫さんのビジネス手法について毀誉褒貶あるのはわかるけど,彼は少なくともアプリの供給者を「いくらでも代わりがいる下請け」みたいに思ってないし,扱っては来なかった。果たしてKDDIはこうした方面でもソフトバンクと競ってくれるのだろうか? ちうか今まで KDDIやドコモは Android アプリのデベロッパーに対してどんな風だったのかな? 誰か教えてくれませんか?
よく言われること,ソフトバンクのケータイが先行2社(NTTドコモとKDDI)に比べて繋がりにくいというのは,地方へのアンテナ設置が間に合ってないというよりは新規参入故にプラチナバンド(UHF帯)に帯域を割り当てられてないってのが大きい。テレビの地上波が地デジに移行したことで空いた 900MHz帯の割当はこの秋に決まる(同じように空いた700MHz帯の割当は来年夏以降になるらしい。なんでかは知らない。総務省に訊いてね)。
これに今までプラチナバンドを持ってなかったソフトバンク,イーアクセスだけでなく,既に800 MHz帯を持ってる ドコモと au も手を挙げており,需要の大きさからみてソフトバンクが有力だとは言われているものの例によって「予断は許されない」情勢らしい。そういうことの観測でメシを食ってるヒトたちは「ケータイ各社の消耗戦が始まる」とか言ってればいいので楽でいいが,オレたちはそうはいかぬ。なんにせよ「リーズナブル」なトコロに決着してほしいもんである。
(2011_09_25) -
藤本裕之のプログラミング夜話 #214
この記事は、2011年09月13日に掲載されました。一回飛んで(前回は Jobsの引退話を臨時に挟んだので)の承前。なんで Apple の iOS用ゲーム振興ネットワークシステム「Game Center」はこんなに人気がないんだろうか,ということを考えてかれこれ5回めになる。
で,どこまで行ったんだっけ?
そそ,Game Center の「お友達を招待する」機能を使い,オレのゲームのベータテスターをやってくれたヤマ……Y君に招待状を送ったけど彼は参加せず,逢った時に訊いてみると招待状なんか知らないという。
調べてみると,そもそもこの招待状ちうのが「既にGameCenterに参加してるヒトの間だけで飛び交うモン」らしく,「iPhoneは使ってるけどその,GameCenterってアイコン,一度もタップしたことないっす」とか「使ってみようと思ったらApple ID要求するやないすか,あれ,なんか嫌で」とかそういうヒトには永遠に届かないようなのだ,つうあたりまでか。
なんで Apple はここに「Apple ID」なんか要求するのかね。
こんなこと言ったらなんだけど,iPhoneのゲームの Leaderboard なんて,載ってるヒトの国籍こそ世界規模かも知れぬが意味としては,ターミナル駅近くの小便臭い繁華街や,田舎の国道沿いのゲーセンのハイスコア表示と変わらんのだぞ。そんなもんに mixi だの facebook 並みのサブアカ封じ(しかもこいつらだって成功してないし)講じる意味なんかあるのか?
前々回の終わりにちらっと書いたが,Appleは当初,この「Game Center」のことをゲームに特化したSNSみたいな言い方をしていたと思う(今はどうか知らぬ,今年はWWDCにも行かなかったし)。そう聞いた時には1年後に自分がゲームを作るなんて思ってなかったんで,へえそんなもんですかと聞き流してたんだけど。
考えてみれば世界中に散らばる iPhone や iPad のユーザーが,同じゲームで点数を競うってのと,オトモダチになって「社会的関係網(つまりソーシャルネットワークだ)」を形成するってのは全然違う話である。そうでしょ?
あのスペース・インベーダーが日本中を席捲していたころ,バイト先の近所の喫茶店に昼飯を食いに行くと,必ず100円だけあれをやるヤツがいた。そう親しいわけでもなかったので名前も忘れてしまったがこれがなかなかのプレイヤーで,例の「名古屋撃ち」とかいうのを初めて見せられた時は魔法かと思いましたな。
とにかくその店のインベーダーゲームのハイスコアのトップはほぼいつも彼のもんだったわけだ。なんて署名してたかも憶えてないし,そもそも毎晩閉店時に電源切られるたびにリセットされたもんなのかどうかも定かでないんだがね。
ある時,バイト仲間とは別のヤツと,昼飯ではなく晩飯を食いにその店に行ったことがあってね。そしたらそこで高校生くらいの一団が例のゲーム卓を囲んでて,クチグチにその「いつもトップに名前の載ってる謎の人物」について喋ってるわけだ。「おっさんだよな」「おっさんだよ,きっと」「仕事サボってやってんのかな」「いくらくらい使うんだろ」「1000円くらいかな」
そこでオレがすっくと立ち上がり,そのガキどもに,いやいやまだハタチ程度の若造で,バイトの昼飯のときに100円だけやってそのスコアをたたき出しているんだよそいつは……みたいなことを懇切丁寧コトコマカに教えてやったら,オレは単なる変なヒトでしょ?
オリンピックやってんぢゃないんだから,ゲームのハイスコアを競う者同士にとってお互いがどこのだれであるとか,トモダチになれるとかはどーでもいいのである。Game Centerももっとルーズな管理にすりゃいいぢゃん,と思うんだけど。
(2011_09_12) -
藤本裕之のプログラミング夜話 #213
この記事は、2011年08月30日に掲載されました。今回は予定を変更して(どうせ予定だのテーマだのあってないような与太話だと言うなかれ,これでも書いているほうはそれなりの脈絡を辿っているつもりなんである),一番ホットな話題である「Steve Jobs の Apple CEO引退」について書いておきたい。こういう旬な話題は乗り遅れると(もういいかげん乗り遅れぎみだが)あとになってから書きにくいからね。
まず,これを読んでるヒトのなかにそんなヒトは滅多にいないと思うが上を読んで「え,Jobs,やめたの?」と吃驚したヒトのために事実関係を……去る8月24日Appleは,かねてより病気療養中の最高経営責任者(CEO)が同日付けで会長に退き,後任にTim Cooke (それまでの肩書きは COO)氏が昇格したと発表した。早い話,もうカラダがえらくてCEOは勤まらんと自分で判断したらしい。
同時に公開された本人からの書簡には「私はこの先,Appleの輝かしく革新にあふれた日々が待っていることを信じている」としたためられていたが,市場はそんな彼の思いを一顧だにせず,世界のビジネス界でおそらく現在最高のカリスマを持つ人物の引退を受けて容赦なくAppleの株価を急落させた。
ネットを観てても……あ,白状すると今オレ,とってもとってもとっても忙しいので「ネットを観てても」と言っても日本語の,ごく限られた範囲だけである。もっと包括的かつ網羅的に英語日本語仏語たまには中国語スワヒリ語あたりのサイトまでサーフしていて「フジモト,それは違うよ」と思う方もおられるかも知れぬが,できれば「ああフジモトは貧乏暇なしで大変なのだな」と同情してそっとしておいていただけるとありがたい。忙しくなくても仏語中国語スワヒリ語のサイトは読めないけど。
仕切り直し。ネットを観ててもヒトビトの関心の的,核心は「Jobs,何年か前に手術したすい臓ガンが再発したのかしら,」でも「だからやっぱり菜食主義は身体に悪いよ,少しは肉も食わなくちゃ」でもなく,「JobsがいなくなったAppleはどうなるんだろ」という方である。ま,Jobsは親戚のおじさんぢゃないし,カネがカタキの世の中だし,これからオレが書くのも前者かったら後者なんだけど。
さてどんな分野でも(つか,ビジネスみたいな分野でそういう栄華盛衰みたいなものが取り沙汰されるようになったのは極最近だからね)こういうカリスマ溢れる人物が一線を退くと,後継のヒトたちは悪く言われるもんである。身近な例を挙げれば,ガンコ親父が引退した蕎麦屋や寿司屋は必ず「味が落ちる」ようなものだ。
ある蕎麦屋の親父さんが書いた本に「親父が死んだ時,店の常連たちは口を揃えて味が落ちたと言いました。実際にはその4、5年前から親父はなにもしてなかった,毎日ワタシがひいたダシを舐めて「いいよ」と言ってただけなんですが」というくだりがあったっけ。
Jobsのいなかった90年代の低迷期を引き合いに出すヒトもいるが,それはタメにする議論だよね。だって Jobsが Appleを退社してNeXTを設立したのは 85年のこと。Macintoshの最初の商業的成功は彼ではなく彼を追放したJphn Sculley の業績である。実際にApple が傾き出すのはSculleyと,当時技術担当重役だった Jean-Louis Gasséeとの対立が表面化した90年くらいからだ。
90年代半ば,Jobs復帰による AppleのV字回復の起爆剤になった iMac にしても,あれが Gil Amelio の企画だったらあそこまでの成功を収められたとは思えない。いやもちろん Gilには「もうフロッピーディスクなんて要らねぇぢゃん」なんて決断はできなかっただろうけど,そんなふうに悪しきことがすべてその不在のせいにされ,良きことすべてがその存在のタマモノとされていくのがカリスマというものではある。
そう考えると,Jobsの最大の功績はiMacでもiPodでもiPhoneでもなく「追放からの帰還」というまるでギリシャ神話やシェイクスピアみたいな物語をつかって自らのカリスマ性をそこまで高めたこと,とも言える。まぁオレなんかは,親父の名前がここまででっかくなっちまうと,却って跡継ぎは好きにやれる(どうせ良くは言われないんだから)というあたりを期待してますけど。
(2011_08_28)
-
藤本裕之のプログラミング夜話 #212
この記事は、2011年08月16日に掲載されました。承前。なんで Apple の iOS用ゲーム振興ネットワークシステム「Game Center」はこんなに人気がないんだろうか,ということを考える第4回である。
前回書いたように,この「Game Center」を利用する機能……具体的には「世界中のプレイヤーからゲームで得た得点の記録を集めてハイスコア表を作り,それをそのメンバーたちにフィードバックする」というのを自作のゲームにインプリメントしたワタシは,これをみんなに使ってもらおうと,これまた「Game Center」のウリのひとつである「トモダチを招待」機能を使って iPhoneを持ってる友人知人知己知己バンバンに招待状を差し上げた。
しかるに……トモダチ甲斐がないというかなんというか,誰一人として(敢えて愚痴っちゃうけどこのゲームで収益があがれば嬉しいはずのウチのボスすら,である。これにはトモダチ甲斐とは別に本人のやる気というか,勤労姿勢というか,ちょっと別のところに問題がありと思うな。正直言うとあんまり期待もしてなかったけど)招待に応じてくれなかった。
で,ともかくそのボス以外で「招待したにも関わらずそれに応じてくれなかったニンゲンのヒトリ」であるY君に逢う機会があったので,以下のごとく問いただしてみたのである。
ワタシ「キミはワタシがこのゲームを開発していることを知らないどころがベータテスターの一人ではないか。スナップショットによるチーティングの防止などキミのおかげで実装できた機能もある。なのにそのキミがなんでワタシの『Game Centerへの招待』に応じてくれないのか?」
Y君「え,『Game Centerへの招待』ってなんすか?」
ワタシ「だから,こないだのバージョンから『Game Center』の機能を使って世界中のプレイヤーとハイスコアを競えるようにしたぢゃないか,あれのおまけみたいなもんで,プレイヤーの中に友達グループを形成してそのウチワだけで競うこともできるようになってんだよね。で,キミにその友達グループへの招待状を贈ったはずなんだけど……」
Y君「えっと,そんなの来てないです。つかフジモトさん,それってメールかなんかで来るんですか?」
ワタシ「(ぐっと詰まって……なにしろ出したことはあっても自分で招待状を受け取ったことはないので確かなことがわからない)いや,想像だけど『Mail』と同じように『Game Center』のアイコンのトコに赤いバッヂとかが出るんぢゃないかな? 出てない?」
Y君「出てないっす……。(しばらくいじくって),フジモトさんもしかしてそれって,相手が『Game Center』自体に登録というか,入会してないと送っても出ないんぢゃないすかね? ボク,まだ『Game Center』に登録してないです」
ワタシ「(あ,きっとそれだ,と思いつつ)しかしなぁ,あの『友達を招待』って機能,ニックネームかメールアドレスで送れるんだよな。ニックネームってのは確かに『Game Center』内のモンだと思うけど,メールアドレス入れるんだからその外側に送れてもいいと思うが」
Y君「つか,この『Game Center』ってApple IDとパスワードを要求するぢゃないですか。あれでちょっと……まぁなんつうか怖いってほどぢゃないんだけど,別に入らなくてもいいか,と思うとこありますよね」
この意見には頷かざるを得なかった。内部的には単に他人と区別するために使ってるだけのようなのだが「Apple ID」と要求されると iTunes Storeとかでお金を払う時にも使ってるモノだけに(別にあれと同じである必要はないし,クレジットカード番号とかも訊かれないんだけど)躊躇はあるだろ。オレもあった。
記憶によればAppleはこの「Game Center」のことを当初,ゲームに特化したSNSみたいな言い方をしていたと思うんだが,こんなものSNSと呼ぶ必要も,それっぽくする必要もないんだよね,考えてみれば。
(2011_08_11)
-
藤本裕之のプログラミング夜話 #211
この記事は、2011年07月26日に掲載されました。承前。なんで Apple の iOS用ゲーム振興ネットワークシステム「Game Center」はこんなに人気がないんだろうか,ということを考える第3回である。
前回の考察により,「Game Center をサポートするゲームアプリは全体の半分程度,でもその理由は別にこいつのインプリメントが技術的に難しいからだとは思われない」ということがわかった……いや厳密に言うとわかったわけぢゃないけど,まぁそう考えるのが妥当であろうということで執筆者であるワタシと第1号読者であるところのワタシは同意をみた,と。
そんぢゃなんでか。もっとも単純な説明がもっとも正しいオッカムのカミソリ的に考えれば「Game Center サポートしたからって別に売り上げ上がらないんだもん」ということになるのではないか。
なんつかこういうのは歴史上の出来事と同じで実験ができない(同じゲームの Game Cneter サポート版と非サポート版をつくって同時にリリースしどっちがより多くダウンロードされるか試す,という実験を厳密に行うためには多元宇宙が必要になる)ので状況証拠を元に類推するしかない。面倒くさかったが,以下のようなリサーチをした。
もし「Game Center に対応したゲームがそうでないゲームに対して相対的にユーザー獲得のアドバンテージを持っているのであれば,App Store で表示される人気ランキング1〜200位のうち,上の方ほど Game Center サポート比率が高いのではないだろうかブログ旅……あ,ブログ旅ぢゃないか」というわけで,目をシバシバさせながら数えましたがな(数値は2011年7月23日現在のもの)。
順位 有料 無料 合計 1位〜20位 8 9 17 21位〜40位 13 4 17 41位〜60位 7 7 14 61位〜80位 8 12 20 81位〜100位 6 8 14 101位〜120位 9 10 19 121位〜140位 6 7 13 141位〜160位 7 6 13 161位〜180位 7 7 14 181位〜200位 7 6 13 どっすか? 確かに100位までより101〜200位のほうが Game Center対応ソフトの絶対数は減っているものの,統計的に有意な違いとも思えない。つまり,だ。多くのユーザーにとってそのアプリが Game Center に対応しているかどうかはそいつをダウンロードするかどうかのデシジョンに影響しないのではないかというウタガイが沸き起こる。もっとはっきり言えば Game Centerを使ってないのはデベロッパよりもまずユーザーなんですよ,Appleの皆さんw
実を言うとお調子者のワタクシは,自分のアプリの Game Center 対応版をリリースした直後,Game Centerの「招待機能」を使って,まずこのアプリの制作に関わったヒトビト,その他 iPhoneを持ってることを知ってる友人でゲームをやりそうなヒトなどを「Game Center に招待」申し上げた。
でね。誰もその招待に応じてくれなかった。いやもちろんその理由はお前の人望ではないか,借りた金を返してないのではないか,このまえ逢った時そのヒトが愛するムスメから父の日に貰ったネクタイをそれとは知らず「なにその★△◎■なネクタイ」とか言っちゃったんだぢゃないか,という疑念にも根拠はある。が,それにしても誰も来ないつうのは酷いぢゃないか。
で,ある日そのうちの一人に逢う機会があったので問いただしてみたのである(……とにわかに小説みたいな展開になって次回に続く)。
(2011_07_23)
-
藤本裕之のプログラミング夜話 #210
この記事は、2011年07月12日に掲載されました。承前。なんで Apple の iOS用ゲーム振興ネットワークシステム「Game Center」はこんなに人気がないんだろうか,ということを考える第2回である。
いやそうは言うがホントに人気がないのだよ。前回はその人気のなさの証左として,ワールドワイドの人気ランキングの結構上位に位置しているゲームでも,Game Center に登録してそれをプレイしているヒトは1万人に満たない,という話をしたが,今回はもっと直截な話を出す。
この原稿を書いている2011年7月11日(すいません,ホントは昨日書こうと思ってたんですけどイロイロありまして)現在,App Storeのゲーム部門にアクセスしてランキングを閲覧してみた。
有料部門での1位は「ゆけむり温泉郷」。どうも仮想の温泉旅館を経営して成功を目指すという……「シム温泉旅館ゲーム」らしい。2位が「北斗の拳フリック奥義 百裂拳」。3位が「THE KING OF FIGHTERS-i」……。
ゲームタイトルだけ書き写して原稿を書いたことにする気か,と言われそうなので(しかもそのサボリアイディアが一瞬頭をかすめたのも事実だったりするので)この辺にしておくが,50位までみていって Game Center に対応してるアプリは21。つまり半数に満たない。無料のランクも見たが同じく50位までで20なので,有料・無料による差はないと言ってよかろう。
なんでプログラマー,いやゲームのプランナー,あるいはプロデューサーたちは Game Center に対応しようとせんのだろうか。めんどくさい? いや全然めんどくさくないよ。オレのもそうだが,一般的なゲームのハイスコアを他のメンバーと比べるだけの機能なら:
1)GameKit.frameworkをプロジェクトに追加し,必要なソースファイルに, インポートする
2)起動時(つかメインとなる ViewController の ViewDidLoad で),ユーザのGame Center の登録状況を調べる。登録してなきゃ関係リソースを処分して単なるローカルゲームとして動作すればいい
3)ユーザが Game Center に報告すべき成績(かどうかはゲームの側が決める。オレは0点以外なら報告してる)を修めたら専用の API でそれを報告する。
4)Game Center の ハイスコア表(Leaderboard)を呼びだすUI(ボタンなど)を用意しておいてユーザの閲覧要求に応える。この表の見てくれはアプリ側でカスタマイズすることも可能。……と,まぁこんだけである。 それなりの経験のあるプログラマならまぁどうこじれても2日はかからない(と,思う。なんか最近「経験のあるプログラマ」って言葉が指し示す実体がオレがそう思ってるモノから乖離してる現象が続出してんだけど,でもまぁ3日はかかんないだろ)。
と,いうことは多くのゲームが Game Centerに対応しないのはそのインプリメントが難しいとかそういうテクニカルな理由ではない。ないでしょ? ではなんで流行らない? テクニカルではない理由ってなんだ?
営業的な理由でもないと思うのだ。わずかそのくらいのテマで AppStoreに並ぶアプリのアイコンの横に,他のにはない(現在のところ2つに1つはついてない)「Game Center」のマークを付加してもらえるのである。営業的にもプラスになりこそすれ,マイナスにはならんと思うのよな。しょうがないので地道に調べることにする。
(2011_07_11)