from __future__ import katryo

カリフォルニア州マウンテンビュー在住のソフトウェアエンジニアがいろいろ書きます。

スノーボード体験

一月と二月の頭に、都合二回、会社の同僚とスノーボードに行ってきた。

スノーボードに挑戦するのは初めてだったわけだけど、よくあんな不安定な遊びを楽しめたなと振り返って思う。

10974522_833331203400247_1677825360691680851_o

ゲレンデで、いかにも上手そうな人があっさり転ぶのを何度も目にしてきた。スノボはスキーに比べると明らかに転びやすいスポーツで、転倒に対する意識というか価値観を変えないと楽しめない。

楽しくはあったけど、スキーのほうがよかったかなー転ばなくても進めるしなー、と後悔せざるを得なかった。

あと、滑った翌日は筋肉痛に苦しんだ。足じゃなくて、肩と背中と腹筋が痛くなった。どうしてそうなるかというと、起き上がるのに上半身の筋肉を使ったからだ。五十回くらい転んだから、全身をかなり鍛えられた。

10498461_833331306733570_2485997482673953514_o

ちなみに、男だけで行ってきた。

夕食のあとに酒とお菓子を買い込んで宴会をしたのだけど、夜が深まるにつれノリがどんどん男子校になってきていた。具体的な内容は書けないのだが、あの場に集った面々は中学生並みの知能指数になっていた。

社会人とはなんだったのか。

サイコパス劇場版を観にいった。

なお鹿矛囲桐斗の事件とはまったく関係のないエピソードだった。二期とはなんだったのか。

続編がいくらでも作れるシステムになってたので、次のTVシリーズは月村了衛さんとかがシリーズ構成をすればいいんじゃないですかね……。

年末年始で読んだ本まとめ

年末年始で読み終えた本の感想を端的に書く。☆は5点満点での評価。

読んだ本

のうりん

☆☆☆☆


本気で笑えた。

最初から最後までパロディ尽くしだった。自分はだいぶわかるけど、これ、元ネタ知らない人は面白いんだろうか。

当然ながら、自分でも気づかなかったパロディが多数ある。元ネタが気になった人はのうりん元ネタwikiで確認しよう。

ケモノガリ 2

☆☆☆☆☆

楽しい。

とにかく、速い。不自然さや強引さにつっこむ暇を与えず、とてつもない勢いで物語が展開される。

1作目は映画「ホステル」のノリだったけど、本作では拷問も少なめで暴力描写が苦手な人にもおすすめできる。うそ。できない。

丘ルトロジック

☆☆☆

ちょっと退屈。

高校の部活で、オカルトと殺人鬼に挑む話。予想以上にテンプレ構成のチームだった。

もうちょいびっくりしたかったな。

USJのジェットコースターはなぜ後ろ向きに走ったのか?

☆☆☆☆

感想はこっちに書いた

関数プログラミング実践入門

☆☆☆

俺、この連休が終わったらHaskellを始めるんだ……。

gihyoの電子書籍版

臨機巧緻のディープ・ブルー

☆☆☆

こんだけ設定を積み上げておいて、続編なしですか!?

小川一水さんに直接サインをもらった本なので、思い入れはあるのだけど……。1巻だけでは、浸りきれなかった。

感想を書いての感想

これらのほとんどは、読みかけのまま、実家に置いていたものだ。せっかく帰ってきたのだからと、まとめてこうして読み終えた。

本は、読みかけのまま放置するとよくない。内容を忘れて、読み直したときに続きを楽しみにくくなる。読み切っていない本の記憶が、なんというか、自分の人生におけるノイズになっていると感じる。

今年は、読みかけの本みたいに、これまでやり残したことを整理していく年にしたい。

それと。ひとつまえの記事でやり忘れていたけれど。

明けましておめでとうございます!

「USJのコースターはジェットコースターはなぜ後ろ向きに走ったのか?」感想

USJのコースターはジェットコースターはなぜ後ろ向きに走ったのか?」を読んだ(どうでもいいことだけど、業績悪化した遊園地を立て直す話なので甘城ブリリアントパークを思い出して脳内でAKINOの歌声が流れ続けていた)。

新書でおなじみの「なぜ」タイトルでウッと身構えてしまうが、内容はだいぶよかった。実例を、しかも実際にうまくいったケースを見せてくれるので、机上の空論かもという不安なしに読み進んでいける。

本の内容

簡単にまとめる。

USJで実現したアイディアの、作成の中心にあるのがイノベーションフレームワークだ。ドヤ感ある命名だけど、著者がそう書いてるので受け入れよう。

イノベーションフレームワークとは

イノベーションフレームワークは四つの柱で成り立っている。

  1. フレームワーク
  2. リアプライ
  3. ストック
  4. コミットメント

1のフレームワークが核にあると考えていい。フレームワークのなかにフレームワークがあるのは気持ち悪いけど受け入れよう。

アイディアを練る際に重要なのは、以下の二つをしっかり考えて決めることだ。

  • どんな条件を満たしているべきかを決める
  • どこに着眼点をおくかを決める

これはTDD(テスト駆動開発)のようなものだ。マーケターは、まずspecを考えねばならない。最終的な目的を達成するために、成り立たねばならない条件(spec)を定める。

着眼点を決めるのは、必要条件を決めてからだ。条件をきちんと定め、的を射たものと確信できていないと、アイディアを練るときに見当違いの領域に立ち入ってしまい、無駄に時間を費やしかねない。

条件と着眼点を決める際の手法には複数あるが、戦略的フレームワークが最も汎用的に使える。

戦略的フレームワークとは

まず、何を目的にして、どんな条件を満たせばよいかをはっきりさせる。で、その条件を満たすためにどんな戦略をとるかを決める。そして、その戦略で進めたとき、必要な条件を満たすための戦術を考える。

目的のspec => 戦略のspec => 具体的なアイディアと、トップダウンにspecを考える。

このように、段階的にブレイクダウンしていくことで、何をすべきかを決めていく。

あとはすごい頑張れば勝つ確率が高められる。

「すごい頑張る」の部分についても本書では書かれているがそのへんは省略する。

感想

フレームワークを使っても、あくまで確率が高められるだけで、確実に勝てるわけではない」と率直に告げている点に好印象を抱いた。


エンジニア的に問題に取り組むと、どう解決するかにいきなりフォーカスしてしまいがちだ。最初の目的設定と、specへの落とし込みが、特に怠りやすい点だと思う。細部にフォーカスして行動する際に迷いを持たないためにも、満たすべき必要条件をきちんと決められるようにしたい。

2014年振り返り

来年の生き方を考えるために、今年を振り返る。

月ごとのまとめ

1月

修士課程を修了できないという危機感がどんどん強くなっていた。

2月

修了できた。

3月

新生活の準備をしていたら終わった。引っ越し先を探したり、京都で行きそびれている場所を探して巡ったりしていた。

4月

入社と研修。ネットワークとかクライアントとサーバの関係とか、現在の実践的なWeb技術の基礎を学んだりしていた。

5月

研修続き。長崎に旅行した旅先で2万5000円の部屋に泊まったりした

エンボディチェアを買ったり、ドラム式洗濯乾燥機を買ったりして、QOLを高めた。

6月

まだ研修。

7月

研修の最終段階。WebアプリケーションをAmon2で作った。

それまではWebアプリケーション開発に対してRailsウェーイな姿勢で接していたが、研修を経た結果、言語やフレームワークではなくメンテナブルな設計を保つことが重要だと考えを入れ替えた。だがPerlはノイズが多すぎて嫌い。

新生活を始めてから買ったものをまとめたりした

8月

研修を終えた。crontabでのバッチ処理とか、MySQLのチューニングとか、枯れているけどしっかり作ると手間がかかる開発手法を身につけた。

YAPC::Asiaに参加して、エンジニアネットワークを体感した。

9月

職場でのキャッチアップ。Webアプリケーションを作るのが自分の責務になった。

情報科学若手の会に参加した。

サイエンスとエンジニアリングの境界面を確認し、自分の立ち位置と学ぶ方向を決めた。

10月

Railsについて、自分の経験を話した。Webアプリケーションを構成するコンポーネント群とどう付き合うか、考えをまとめた。

Railsでできることは、まだRailsに任せてよい。でも、分割できることは分割して、小さな領域にフォーカスしたほうがいい。余計な部分を消して、部品の目的に集中できるから。

あとFate/stay nightクリアした。

11月

ビジネスの観点からみたプロジェクト開発がわかってきた。プログラミングをしていると個々の小さな目的にフォーカスしてしまいがちだけど、それではビジネスにならない。プロジェクトの目的を忘れず、常に頭の中の20%くらいはプロジェクトの目的を考えておく、それくらいがいい。

あとDenkinovelの機能追加をした

月末に、さくらインターネット石狩データセンター見学に参加した

12月

忘年会の準備が大変だった。

魔法使いの夜、エンディングまでプレイした。後日譚だけまだやってない。

振り返ってみて

技術に関して

ミドルウェアからクライアントまで、Webアプリケーション開発はできるようになった。ひとまずなにかを作れる自信は持てた。いうなれば、防具が揃った状態だ(皮の鎧くらいだけど)。

ここから先は武器がほしい。

とりあえず、コンピュータサイエンスをある程度は身につけておきたい。年末に始めたアンダースタンディング・コンピュテーションを続けて、コンピュテーションをアンダースタンディングすることでその第一ステップとする。

それと、関数型プログラミングくらい「できる」と胸を張りたい。目前の課題として、業務で一番使える可能性の高いScalaをします……。

加えて、実務で直接使える知識として、OSやミドルウェアの動きなども説明できるようになりたい。だいぶ前に買ったなるほどUnixプロセスで順を追ってコードを実行することで基本を理解しておいて、ISUCONの過去問で実際のソフトウェアをどう動かすかの感覚を身につけるつもりでいる。

まとめると、来年は、専門分野を持つための発射台を作るフェーズにしたい。広い分野の知識を土台に固めておいて、いつでもキャッチアップできる体勢を整える。

文章に関して

アナテマ・フィジクスと、とある原作付きのノベルゲーム開発を再開したい。ゲームエンジンに何を採用するかは決めきれていないけれど、マルチデバイス対応を考えて、WebView上で動かすノベルスフィアのO2エンジンか、Adobe AIRVMとして使うAIRNovelのどちらかを採用するつもりでいる。

Denkinovel、12月にiOS版を出すつもりだったのに進んでない。Swift情報がいまいち出揃っていないことと、よりモチベーションが湧くもの(CSとかFateとか魔法使いの夜とか)を優先したのが原因。積んだゲームと本を崩し切るまで1か月くらいかかるけども、それからiOS向けアプリをきちんと作りたい。

来年の抱負

※(恥ずかしいので削除しました)

ホビット 決戦のゆくえでHFRをおすすめしない理由

ホビット 決戦のゆくえを見てきた。平和な村にオークが攻めてくるとかエルフは歳を取らないとかの話はしない。言いたいことはひとつ。

HFR(High Frame Rate)はおすすめしない

なぜHFRはダメなのか

  • 明るくて
  • なめらかだから

以上二点について説明していく。

明るい

HFRは明るい。本当に明るい。これまでの3D映画体験を覆すような明るさだった。あれほど鮮烈な光のなかで映画を見ると、どうなってしまうのか?

あの荘厳な中つ国がニュージーランドの観光地になる。城砦はセットになり、ドラゴンがCGになる。

かなりまずい。

従来の映画では、適度な暗さがリアリティを担保してくれている。ところがHFRの強すぎる光は、不自然さを白日に晒してしまうのだ。

現代劇だとそれでもよさそうだけど、ホビットみたいな架空の世界が舞台だとちょっときつかった。

なめらか

HFRは1秒間に48コマを再生できる。なるほど。なめらかだ。

HFRで、本物の世界により近づいた表現ができるピーター・ジャクソンは自信を持って語っている。

で、その結果、TVドラマみたいになった。

本編が始まった瞬間「あっ、映画じゃない」と感じた。どうしてそうなったのか理由はよくわからないのだけど、これまでの経験から、映画とは24コマで動くもの、と脳が記憶してしまっていたのだと思う。なめらかすぎる絵の動きを認識した脳が、目の前の映像を映画と呼ぶことを拒絶してしまった。

そして僕は、アニメにCG表現が使われ出した頃のことを思い出した。

ちょっと脱線。アニメのコマ数の話

映画は1秒間に24コマが映される(24fps)が、アニメは基本的に1秒間に8コマが再生される(8fps)。これは手塚治虫鉄腕アトムをTVシリーズとして制作するために始めたもので、自然に見えるぎりぎりのコマ数らしい。手描きのアニメだと、動画の作成に人手間がかかるため、コマ数は少ないほうが時間と制作費が節約できる。対して、3DCGはコマ数を増やしてもそんなに手間が変わらない。そのため、1秒間に24コマまるまる使ってもかまわない。

で、昔(といっても20年前とかそのへん)のアニメは、無邪気にも手描きの作画と3DCGを同じ画面で動かしていた。8fpsに24fpsでのCGが入り交じって、かなりの違和感が生まれていた(んだったと思う。そんな記憶がある。間違ってたらごめん)。異様になめらかに動くので、別世界のオブジェクトだと一目でわかってしまうのだ。

コマ数を揃えると、違和感はほぼなくなる。CLANNADの幻想世界とか、作画もCGも1コマにしていたけど、そのシーン内では自然に見えた。(他の3コマのシーンとつなげると際だって違うアニメーションになり、異世界だと一瞬でわかる効果はあった。が、これは別の話)。

今のCGは、作画にあわせて8fpsに揃えている作品が多い。宇宙戦艦とか大量の兵士とか、けっこう自然に動いている。(また話が逸れるが、自然に見える理由はほかにもある。最近のアニメのCGは、1コマずつCGアニメーターが調整して、動き自体をアニメっぽくデフォルメしている)。

閑話休題、HFRから感じる印象

「映画じゃない」と感じるのは、ちょっとつらい。映像技術的にはより高レベルなはずなのに、安っぽく思えてしまうのだ。もしかしたら、将来、すべての映画がHFRになって、24コマの映像が消滅して……という時代になったら印象も変わるのかもしれない。でも少なくとも今は、まだ、違和感が強すぎて、consが大きい。

まとめ

HFR、よくない。

#石狩DC 第3回石狩DC見学ツアー行ってきた報告

さくらインターネット石狩データセンター見学に行ってきた

北海道に一泊二日とかこわいなーどうなるんだろう、と思ってたけど知ってる人けっこういた。

IMG_4526

立地

データセンターは石狩の謎の地域にある。詳細は書けないのだけど、だいぶ人工都市というかSFめいた立地だった。使徒に攻撃されたときはきっと戦略自衛隊があそこに集結すると思う。

DC内部

印象的なのがサーバの冷却システムで、そのときその場で一番効率的なシステムを見極めるため、実験的に、冷却システムをエリアごとに変えているとのこと。

社長

一番驚いたのがさくらインターネット社長の言葉。「仮想化とかないよねー時代はベアメタルだよねー」とか言ってた。まじか。あれだけ仮想化の長所を謳っていたというのに、オーバーヘッドには勝てないと今さら言い出すのか……。

まとめ

今回の見学で、さくらインターネットのインフラが、大規模で、かつきちんとした施設で運用されていることがわかった。サーバ管理の物理的イメージを得ることができたのは価値ある体験だった。

あと、さくらのクラウドクーポン1万円分をもらったのでDockerを入れて実験して遊びたい。

抽選

そういえば、参加するには応募、抽選を経ないといけないのだけど、この抽選は完全にランダムらしい。連続当選のリピーターもいれば、僕みたいに初めての応募で当選した人もいる。

応募時に、質問したいことを書く欄を埋める必要があるのだけど、データセンターにまったく興味の無い冷やかしを選別するのに利用しているだけで、応募者の肩書ほか属性は気にしないのだとか。なので、見学してみたい人は来年以降もどんどん応募するといいです。

写真

石狩DCの設備のカッチョイイ写真はこのへんで見られます。

http://knowledge.sakura.ad.jp/event/2826/

http://ksakuma.hatenablog.jp/entry/2014/12/14/202906

食事

一日目の夕食、だいぶ豪勢だった。

IMG_4548

IMG_4547

こういうのが出た。

IMG_4532

会場がホテルの教会(みたいなホール)で、厳かな空間のなか、鮭とばをつまみにワインと日本酒を飲んだ。こういうところに予算使って大丈夫なのさくらインターネットどうしたの、と不安な気持ちになりながらも、LTでDenkinovelを紹介したりした。

沿岸バス

空港からデータセンター、ホテルへの移動はほぼすべて沿岸バスを使わせてもらった。

萌えキャラでラッピングした車体が有名なバス会社。

IMG_4528

羊に挟まれた子が白浜ひばり。

沿岸バスの萌えキャラ、なんと20人もいる

キャラクター一覧のページを見ると、キャラクターデザインの佐倉はなつみさんの絵柄の変遷がわかって感慨深い。