Batman v Superman。かっこいいんだけどねえ……

IMG_20160403_104125

世間の評判どおり、うーん、て感じでしたね。

ザック・スナイダー先生はたいていいつも、画面はむちゃくちゃかっこいいんですが、話のほうがどうにも、なんだかよくわからない感じになってしまっている。これもそんな感じ。

なんでこんな話なんだっけ? なんでこんな展開なんだっけ? という疑問が多すぎでは。長い話なのに、キャラの動機付けなどが今ひとつよくわからなくて、どうしてこういう展開になったのか、この時点でなんでこのキャラはこういう行動だったのか、などがもう一つよくわからない。

そもそも今回の悪役、レックス・ルーサーは何がしたかったのかよくわからないし、ブルース・ウェインのほうも、なぜレックス・ルーサーと協力しないのかとか、でないにしても両者の違いが明らかになるようなくだりはなかったような。ワンダーウーマンが参戦する流れも、なんでなんだかよくわからない。途中の白昼夢もさあ、ああいう絵面はみんな好きだと思うし俺も好きだけど、でもいらないよなあ。

でも映像はとにかくかっこいいんだよね。こういう映画においてかっこよさは正しさではある。とくにベン・アフレックのバットマンのかっこよさ(とフランク・ミラーの描くバットマンぽい感じ)はかなりよかった。アルフレッドとのコンビもいい感じ。

Screenshot 2016-04-03 at 17.04.12
“frank miller batman” の検索結果。顎の角ばった感じがよい

でもなあ、それだけじゃなあ、って思うんだよな。もうちょっとこう、あるだろう。なにか。

Charlie Jane Anders “All the birds in the sky”

51vukwwcsul-_sl250_

Charlie Jane Anders “All the birds in the sky

なんというかこう、面白かった。全体的に。

現代アメリカを舞台に、主人公の少女、パトリシアは幼い頃に森や鳥たちと会話するという不思議な体験をし、やがて魔女になるという夢を抱く。いっぽうもう一人の主人公となる少年、ローレンスは科学オタクで、いろんなものを自分で作るエンジニアになりたいと思っている。ふつうの生活から少し外れたふたりは、中学校の仲間はずれ同士として出会う。ふたりは道を分かち、やがて時は流れ……。

第一部は幼少期、第二部が中学生編、三部以降が現代っていう感じなんだけど、第二部が面白い。二人のささやかな交流、作った機械や魔法の話、どれも魅力的。魔術と科学という相容れない世界が不思議に面白いかたちで融合していると思う。こういうの好きだってのもあるなあ。ほんとうは二部までは伏線で本番のストーリーが炸裂するのは三部以降というのが著者の意図だとは思うけれど。

基本的なおもむきはファンタジー。現代社会に魔女たちの秘密組織があるような話だし。でも、この手のファンタジーによくあるような、自然を称揚するような単純なものでもない。その逆に、科学が魔法を解き明かすようなSFでもない。魔法と科学が融合するようなかっこよさも、べつにない。ただ単に両者が併存していて、でも基本的には両者は相容れない……けれども、主人公二人の関係性を通して両者が不思議な交わりを見せる。

派手さはないけど、良いものでした。

Performance@Scale雑感

少し前、なぜかPerformance@ScaleというFacebook主催のカンファレンスのinvitationをゲットできたので、行って聴講してきた。直接の仕事にはあんまり関係ないけど、どうやって高いパフォーマンスを実現できるのか、測定できるのか、といったテーマの話で、なかなか面白い話が多かった。

動画などが https://code.facebook.com/posts/997355933686556/performance-scale-2016-recap/ でまとめられているから見ると面白いと思う。

個人的に面白いと思ったのはパフォーマンスリグレッションの特定の話(Automatic regression triaging at Facebook)。実際のサーバについて様々な性能(応答時間とか)をグラフ化しておくと、まあ実際にはガタガタしているわけだけれども、うまいこと定義を作ればパフォーマンスが悪化したタイミングを捕まえることができる。これはまあ普通。で、その悪化したタイミングに変更を行った人にアラートを送って直してね、っていう。これもまあ普通だよね。

で、面白いのは、このスピーカーはfacebookの人なわけだけど、現実にはプッシュのタイミングは1日1回とか数回に限られるので、悪化したタイミングと言っても数百、数千といった変更が候補になってしまって、意味がないと。なのでこれをどう自動的に絞り込むかが鍵となる。でどうするかというと、悪化したパターンのコールスタックを取り、コールグラフからパフォーマンスに影響のある関数を特定して、その関数やコールスタックに影響のある変更に絞り込んで云々、というもので、なるほど面白い。まあこの問題がだいじになる世界というのはそれほど多くはないだろうけれど。

もうひとつ、Facebookのウェブパフォーマンスの話で、ストーリー自体は基本を押さえたものだと思うけれど、Facebook内のコードスニペットがとても面白かった。

というのは、PHPではなくてHackのコードスニペットな訳だけど、Hackこんなんなのか!というので驚いた。PHPに型注釈をつけたもの、というのが私の荒い理解だったのだけれど、さすがに荒すぎであった。

  • async/awaitなんてあるんかい
  • Awaitable<>のようなパラメトリック型
  • ScalaのようにHTMLの断片をコードに直接書けて、これがReactと統合されててReact DOMのオブジェクトになるらしい

などなど……Hack思ったより遥かに進化しているし、FacebookはもうPHPじゃないのかもなあと思ったのだった。

Facebook以外だと冒頭のBrendan Greggの話や、Chromiumのヒストグラムを解説するJim Roskindなどは面白かった。

Brendan Greggはかつてdtraceを開発していた筋金入りのパフォーマンスエンジニアで、話も面白かったのだが、「10年前もdtraceの話をして……それからキャンパスはだいぶ変わったけれど、トピックや解析の内容は変わっていない」っていう冒頭のつかみ、あとで雑談していて気づいたけど、Brendanはまさにそのころ、会場のFacebookキャンパスのあった場所にあったSUNで働いていてdtraceを開発していたっていう話だったのだなあ。時の流れに思いを馳せたりした。

ズートピアみてきた

ディズニー映画のZootopiaみてきました。

いやあ面白いしよくできている。ありとあらゆる動物が共存して暮らしている大都市ズートピアでウサギとしてはじめて警官となった主人公のジュディ、という子供向けのような設定と、体格も食生も違う動物たちがともに暮らすということによるダイバーシティ(多様性)を核に据えたテーマがうまく一致している。

映像的にも、冒頭の雨の降るシーンのような鮮やかな映像もすばらしいし、動物たちに合わせた都市デザインの面白さもあってよい。動物もそれぞれユニークに描けていて面白い。擬人的ではあるけれども動物らしさもあるディズニーらしい良さがあるなあ。Mr. Bigの椅子の手すりがかわいいとか細部も良いよ。

まあ一番笑ったのは全員ナマケモノのDMVのシーンで、だいたいトレイラーでカバーされてますけども。

アメリカの囲碁

ちょうどたまたま会社のski tripがあったので、僕はTahoeのホテルにいた。

ざっくりski tripと呼ばれていたけれどもスキーだけをするわけじゃなくて、ホテルの一室が解放されて、皆がゲームを持ち込んだりしていて遊ぶ部屋になっていたのだけど、囲碁を持ち込んでいる人がいて、軽く遊んだりして(僕はまあ7-8級程度なので教えてもらう立場ですが)、そこでAlphaGoの話が出てきた。今日初戦ですよ、ということで、じゃあみんなでみようよ、ということになった。

残念ながら大きなモニタもないし、ホテルのWiFiは腐っているので、携帯電話の小さい画面でみんなで視聴した。碁盤があるので、試合が進むごとにそこに碁石を並べる方式にした。他にもゲームをやってるグループが多数いるので、騒音で解説は全く聞き取れなかったが、その場にいる人たちとあれこれ話し合いながら見るのはかなり楽しいものだった。

それにしても、意外と囲碁人口って多いんだな、と改めて実感したものである。

もちろん中国系や韓国系、私のような日系の人々もいるけれど、そういう東アジアの人々以外のプレイヤーもかなりいる。集中して観戦していたのは私を含めて5-6人といったところ、周辺全部を足すと10人以上は見ていたか。だが東アジアの人々の割合は半分くらいだったろうか。また観戦する中で一番強い人は白人の人だった。

囲碁は確かにルールもシンプルだし東アジア特有のものというのもない。やりたい、という人がいればできない理由はどこにもない。それにしてもと思うのだった。もちろんエンジニアみたいな職種であるとか技術系の会社であるといった理由から、こういう変なゲームも嗜んでいる人というのが多いというのはあるわけで、全米で平均的にそこまで普及しているなどというのは幻想ではあるけれども、にしてもここまでかー、などと思ったりした(ちなみに日本人の同僚が将棋セットを持ち込んでいたけれども、こちらはあまり興味を示されていなかったようである)。

もう一つ面白いと思ったのは、囲碁用語だ。囲碁というのは中国が発祥なわけだけれども、英語圏における囲碁の用語はかなり日本由来である。コミ(komi)やコウ(ko)、定石(joseki)のような用語もそうだし、情勢について語られる用語であるコスミ(kosumi)、カカリ(kakari)、見合い(miai)、先手と後手(sente、gote)などの単語も全部日本語由来だった。一部訳されている語もあって目はeyesだし、受けに相当する語がanswerだということは今回初めて知ったけれども、まあともあれ、全般的には日本語由来がめちゃくちゃ多い。正直、解説を聞いていてもそこだけでちょっと面白い。

英語版の公式ストリーミングで解説していたのがマイケル・レドモンドというカリフォルニア出身ながら日本でプロ棋士になった人だから、かというとそうでもなく、わりと一般的に囲碁用語は日本語由来のものが多いようだ。どうも英語圏に囲碁が伝来した過程が透けて見えるようで面白い。

アメリカンドッグを作ろう

アメリカンドッグという食い物があります。ソーセージのまわりに衣がついたやつで、まあ駄菓子ですな。コンビニとかによく売ってますが、たまに食べたくなる。

なおアメリカではcorn dog(コーンドッグ)といいます。

そんな「なきゃないでべつに困ることもないが、そういやなんとなく食べたくなる瞬間もある」食い物のアメリカンドッグですが(しかしこの名前はどこから来たのだろう?)、家庭で作れると知って「それは作ってみなくては」と思ってはや数ヶ月。

作ってみた。

IMG_20160213_155553
うーんひどい見た目

手順(http://cookpad.com/recipe/408665 を参考に)。

  1. スーパーで適当なソーセージと串を買ってくる
  2. ソーセージはナマのやつだったら中まで火を通す。そんで小麦粉をまぶす
  3. ホットケーキミックスと牛乳で衣を作り、串を刺したソーセージにころもをつけ、揚げる
  4. 揚がったら出来上がり

揚げたりするし、意外と衣がうまくつかないので(写真の事例は牛乳が少なく、やや粘度が高すぎた)、綺麗に作るのはもう少し練習が必要かも。

味はまあ油と炭水化物と肉の味なので間違いはない。しかも自作の場合、ソーセージや肉の味の存在感が強い(ふつうのアメリカンドッグはやや淡白なソーセージがなかに入ることが多いと思いますが、自作の場合自分で決められるので……)。見た目はイマイチですが、正直これはどうやってもウマくなる味だなと思って、なかなか良いとは思いました。

難点はかなり不健康そうというところでしょうか。あとソーセージとかホットケーキミックスとかが余るんだよな。

『デッドプール』みてきた

IMG_20160213_135406

まあ面白かった。前情報を調べなさすぎており、X-MEN世界だということすら知らなかったレベルですが。

# 詳しくない方のために:マーベルコミックスのアメコミヒーローは原作では一つの世界観を共有していてクロスオーバーするんですが、映画は概ねアヴェンジャーズの世界とX-MENの世界のふたつに分かれていて、このふたつはとりあえずクロスオーバーしていません。アメイジングスパイダーマンは独立世界だったんだけどアヴェンジャーズに合流する予定のようす。

デッドプールはアメコミヒーローものとされているんですが、なかなかひどい設定で、映画もなかなかにグロかつひどい感じに仕上がっていて、R指定ということになってます(そのわりに子連れで見てる人いたけども、ダメだろそれ)。

ならず者だった主人公が末期がんに侵され、治るかもしれないという言葉にさそわれて人体実験を受けてひどい目にあい、そのなかで超常的な再生能力を身に付ける、というのが基本設定。

で、その能力のために死ぬことがほぼないデッドプールさんは、自分をひどい目に合わせた人体実験の人たちに復讐を誓い、施設を脱出した後で全員皆殺しにしようと画策するのですが、X-MENの人たちがそれを止めてデッドプールをヒーローとして迎えようとするのでしたが……というストーリー。

なのでデッドプールさんは基本的にならず者のままで、他人をガンガン殺しまくるわけです。銃とか刀とかで。敵の親玉はミュータントという設定なんですが、正直ヒーローらしさはない映画ですし、いわゆるアメコミヒーロー的な精神はまったく欠如しているわけです。まあそういう映画ではないので。

ただの殺し合いだと凄惨な映画になっちゃうんですが、そこはデッドプールの不思議な軽口とか、全体に漂う謎なユーモアで笑う感じになっていて。それとデッドプールさんにはもう一つ超常能力として「第四の壁を越える」能力というのを持っており、これは何かというと視聴者におもいっきり話しかけるんですね。こういうのもあって、グロメインというよりは、笑う感じに仕上げている……ような感じはある。唐突に視聴者に「ねえところで『127時間』みた? まだの人にはネタバレだけど……」って言うシーンはよかった。

ただ悲しいかな、自分の英語能力の関係で、デッドプールの軽口などはあまり理解できていないシーンもあり、そこでちょっとスポイルされているのかもしれない。あとやっぱアメリカ人の笑いどころはちょっとわからんこともあるな。

青崎有吾『図書館の殺人』

青崎有吾『図書館の殺人

体育館の殺人』、『水族館の殺人』に続くシリーズ3冊目。

今回も論理展開は面白かったんだけど、たださすがにパワーダウンという印象は否めない。個人的な好みの問題かもしれないけれど、ううーん、動機というか心理面での補足があったほうがいいんじゃないか。そういうのをあとで付け足したところで論理展開がそこなわれるわけじゃないのだし、と思ったりした。

それに、警察が裏染に捜査を依頼するといった展開や、柚乃が事件に関わる過程などはさすがに雑すぎるのでは……という感は少しある。キャラは増えて、裏染の設定などキャラものとしての展開を考えているのかな。

読んでいて「あれ」と思ったのは、作中世界がまだ2012年ぽいあたり。第1作の『体育館の殺人』が2012年という設定で、主要登場人物が高校生である関係で作中時間をあまり動かせないからだろうが、さすがにいかんともしがたくなってきていないか。ことにキャラ設定の都合上、作中にふんだんに出てくるヲタネタがだんだん鮮度を落としてしまっているあたりのつらさは、まだ感じないけれども予兆はある。あまり長引かせると少し悲惨なことになりかねないんじゃないかなぁ。

個人的には前2作はわりと楽しめたけど、今回はまあそこまででも。

田中哲『APIデザインケーススタディ』面白くはあるのだが……

田中哲『APIデザインケーススタディ』を読んだ。

まず、書かれている内容は面白い話ばかりだった。ぼくは著者のファンなのでという贔屓目はあるかもしれないが。だが、本としてはどうだろうか……?と思った。

本のなかみとしては、プログラミング言語RubyにおけるさまざまなライブラリのAPIを実際に設計した著者が、どのような経緯の末にこのような設計になっているかを解説している。

この本のウリは、その内容の詳細さと丁寧さにあると思う。こういうクラスにこういうAPIが用意されている、それはなぜかというと……といった話がほぼすべてなのだが、世の中というのはそうそう簡単にいくわけではない。他のプログラミング言語ではどのように振る舞うのか、挙動はわかりやすいのか、Rubyでとくに発生するほかの問題とはどうすり合わせるのか……。二律背反する状況では、実際にどのように使われることが多いかも加味して決めなければならない。ときには複雑かつ歴史的な事情を知る必要もある。

こうした複雑な事情が手際よく説明され、そうした個別の場面でどのような指針をたてて先に進んだのか、ということが提示されているのがこの本の価値だ。ここが面白いというのは確かだし、複雑な事情は普遍的なもので、Rubyというプログラミング言語と切り離しても技術エッセイとして面白く読める。

が……あまりにもケーススタディの列挙でしかないところが本書のつらいところでもある。

著者もこの点は認識しており、じっさいにあとがきでも指摘している。プログラミング言語やAPIに冠する良いデザインというものに対する適切な指標というものを人類はまだ手にしていない。だからこそ、さまざまな試行錯誤の結果をケーススタディとして提示することに意味がある。また、一般論や原則のようなものをあまり強く打ち出さずにケーススタディで踏みとどまっているのは、著者の誠実さのあらわれでもある。

がしかし、と思ってしまう。

たとえば本の構成。この本はIO、ソケット、時刻、といった機能ごとに章立てがされている。これを「わかりやすい名前をつける」「隠れたモードを持たない」といった、課題となっているものごとにシャッフルしたほうが、あるいは良かったのかもしれない。そうすることで、読者には良いデザインへの指針がおぼろげながら提示されるような空気が醸成できたのかもしれない。

まあ読みづらくなるだけかもしれないし、なんとも言えないのだけれど。

芝村裕吏『セルフ・クラフト・ワールド1』

612ir9pr6kl-_sl250_芝村裕吏『セルフ・クラフト・ワールド1

これは面白かった!

オンラインゲームのゲーム内世界が舞台。このゲームではモンスターに人工生命的なアプローチが組み込まれており、いつしか人間の想像を超えた独自の進化を遂げた生態系を構成している。この生態系を学術目的で調査しているところに陰謀が……というのが主なあらすじ。

ユニークで良いなと思うのは、視点人物にゲーム内のNPCである村人の娘としているところ。主人公は調査のために訪問した男 GENZ とたまたま遭遇し、その調査と謀略に巻き込まれてしまうという設定になっている。そのため視点人物は外の世界のことはまったくわかっていなくて、すべてをゲーム内の事象との対比によって理解しようとすることになるし、ゲーム外のことがいっさい語られないことによってディティールを省きつつ手際よく世界観が提示できている。

非常によく書けていてよいと思うし、ありそうだが意外となかった設定、オチのそれかという感じ、なによりゲーム畑である著者らしさがいい具合に出ているところなど、とてもよいと思う。 GENZ のかなりネトゲ廃人らしいところなど、そういう方面への目配せも効いていて面白い(し著者らしいところ)。この著者のハヤカワでの著作では一番だろうな。

三部作シリーズらしいので続編も楽しみ。