2012年5月23日水曜日

アスペン旅日記


2012/05/12(土)から05/21(月)の期間、アメリカのコロラド州アスペンで開催されるC++Now!に参加してきました。
初海外旅行でした。これはその旅日記。


なぜアスペンに行くことになったか
2011年11月、Boost.勉強会 #6 札幌にて。その前から話はあったのですが、懇親会で近藤さんからいつものごとく「参加しろー」攻撃を受けて揺れていたのでした。2次会の席に近藤さんはいなかったのですが、私が「お金ないし、会社のお金も使いたくないんですよねぇ」というようなことを言ったらほっとさんとあんどちんさんから「金はあるうちに使え。金は現在価値が一番高いんだ」というようなことを言われ、決め手になりました。


海外旅行準備
co-meeting上で近藤さん、zakさんにアドバイスをもらいつつ準備を進めました。

  1. 見積もりを出して社長のuskzさんに出張費を出してもらい、
  2. 実家に連絡して戸籍謄本を取ってきてもらい、
  3. パスポートを申請し、
  4. 航空券を探すおすすめサイトを教えてもらい(Expediaというとこ)、
  5. 会場近くのホテルを探してもらい(limelight lodge, Hotel Aspen, Moly Gibson Lodge, Tyrolean Lodgeをおすすめされ、Hotel Aspenにした)、
  6. C++Now!に申し込み、
  7. 事前に秋葉原のヨドバシ横にある通過換金所で500ドルほど換金しておき、
  8. iPhoneが使えるかなど相談し(アメリカに降り立つと自動的にAT&Tに切り替わる。1日3,000円ほど)、
  9. パスポートのコピーをとり、
  10. クレジットカードのコピーをとり(紛失時の即停止用)、
  11. アイマスクを購入し(飛行機で寝るときとなりの人がPC付けたりゲームしてたりすると困るという)、
  12. ホテルの住所を印刷(タクシーで連れていってもらうため)
初海外はわからないことだらけなので大変です。アドバイスはほんとに助かりました。


初国際空港
出発当日。
今回、『C++ Templates』の著者がKeynoteするということだったので、自分の本をプレゼントしよう!と思い成田空港に向かう途中で秋葉原のヨドバシに寄って『C++テンプレートテクニック』を購入。自分の本を買うのはへんな気分。日本での最後のご飯なので、秋葉原の味噌汁家でお昼ごはん。日本ぽい。

成田空港に着いた。
チェックインはどこだろうと彷徨ってUNITED(航空会社)の窓口を発見。わざわざ苦情を言いに来たひとが10分くらい話してたせいでだいぶ時間ロス。チェックインの場所はここじゃなかったらしく場所を教えてもらった。
チェックインの場所に着いたときが1時間20分前くらい。それでもギリギリだと言われた。係の人に手伝ってもらい端末にパスポートの情報、宿泊先の住所などを入力・・・最後でエラー発生。
係の人に「ビザはとりましたか?」と聞かれ、
私「え、いやとってないですよ。」
係の人「では、エスタはお持ちですか?」
私「エスタってなんですか?」
エスタというのはビザの代わりに必要なもののようで、それを持ってないとアメリカに入国できないとのこと。「PCで今すぐ申請してください、45分前をきったら搭乗が難しいですよ」と言われPCを借りて申請。ちょうど45分前。なんとか搭乗許可を係の人にとってもらい、「走らなくても大丈夫ですが必ずまっすぐ向かってください」と言われ慌ただしく移動。
なんとか飛行機に乗れたのでした。


2度目の飛行機。ただし道は長い

1度目の飛行機は、昨年末のBoost.勉強会 札幌への国内線でしたが、今回は国際線。
成田空港からサンフランシスコ空港まで8時間かかり、さらにそのあと2回乗り継ぎがあります。

とりあえず、ネットがつながらないとできることが限られるので、オフライン状態のノートPCでcpprefjpサイトの作業。C++11の規格書を開いてGCCでコードを書いて文章にまとめていました。
3関数ほど書いて、これ以上はちょっとネットで調べながらじゃないとしんどい、ということで中断。

PS Vitaを取り出してラグナロクオデッセイ。1時間30分くらいやってました。
おもいっきり飛行機酔いしました。
頭が痛くて吐き気がすごい・・・これはもう寝るしかない。寝ました。


目が覚めて窓の外を見てみたら、ちょうど日の出の時間で、大陸が遥か向こうに見えました。あ、アメリカか!ちょっと感動しました。
再び寝ました。


サンフランシスコ空港にて

サンフランシスコ空港に着きました。アメリカでは最近の法改正によって飛行機が着陸した瞬間から携帯を使ってよくなったというのを聞いていて、実際搭乗してた人がたくさん電話を始めたので、私もさっそくiPhoneの3GをONにしてみました。AT&Tにつながった!ソフトバンクじゃない!
早速Twitterクライアントを立ちあげて「サンフランシスコなう」とつぶやきました。

さて、これから入国審査です。飛行機内で入国審査の紙をもらって、オフラインの辞書で調べながら項目を埋めてありました。
まっすぐ進むと行列。韓国人ぽい方がたくさんいる列の後ろに並んでみました。並ぶこと30分ほど…

怖い顔の警備員「What your purpose?」
私「あわわわ」
怖い顔の警備員「あなたの目的はなんですか?観光?(日本語)」
私「あ、participation to conference」
怖い顔の警備員「xxx(全然聞き取れない) Are you visitor?」
私「え???」
怖い顔の警備員「(向こうを指さして)Bye-bye」

どうやら並ぶ列を間違っていたようです。こっちの列はアメリカに帰ってきた人たちが並ぶところのようです。Visitorの方に並び直し。30分ほど・・・やばい。飛行機の乗り換えがギリギリすぎるぞ。

別な怖い顔の警備員「(入国審査の紙を見ながら) xxx? (全然聞き取れないけど指を指してなんか言ってるので「ほんとにこれで合ってるの?」と言ってるらしい)」
私「(なんだかよくわかんないけど)あ、間違い間違い。」
チェックを書き直し。
別な怖い顔の警備員「Buisiness?」
私「あ、Yes!」
別な怖い顔の警備員「Yes? ... What your purpose」
私「participation to conference」
別な怖い顔の警備員「fm... What your job? あなたの仕事は?(日本語)」
私「ソフトウェアエンジニア」
別な怖い顔の警備員「Oh...fmfm」
別な怖い顔の警備員「xxx (指を指紋認証機に乗せろと言ってるらしい)」
私「Right? (右手?と聞いたつもり)」
別な怖い顔の警備員「...」
私「(全然反応してくれない…まぁいいや)」
指を右手4本、右手親指、左手4本、左手親指の順で乗せ、最後にカメラに顔を向けさせられた。
最後にパスポートにハンコを押してもらって入国審査が無事に終わったらしい。


やっと抜けられたぞー。飛行機の時間がピンチなのでダッシュ!
荷物どこやーと彷徨っていたら女性の警備員の方が「Tokyo?」と聞いてきたので「Yes!」と答えたら荷物が置いてあるところの番号を教えてもらったので一直線にダッシュ。無造作に転がっていました。無用心な…。

そのあとさらに荷物チェック。チェック台に荷物を載せようとしたら、警備員の方に入国審査の紙をつきつけられて「meat!?」と言われ、「(特定の食べ物が食べれるかの宗教的なチェックだと思ってたので)え、肉ダメなの?」というようなよくわからないやりとりをして、私がよくわからなくてチェックを入れたと判断されたらしく、「もう行っていいよ」というような素振りをされたので荷物チェックに進みました。

あとで近藤さんに確認したら、あれは「xxxが食べれるか」じゃなくて「xxxを持ち込んだか」という質問なのだそうです。takeとbringを間違ってた。


荷物チェックを抜けてUNITEDの国内線に向けてダッシュ。荷物の預けなおしのところに来ました。そこの警備員の人が持っていた検査機で「ビー」と音が鳴りなぜか別な列に並ばされました。
いま荷物チェックしたやん・・・。
並ばされた列では係の人がのっそりのっそり1人を相手にするのに5分以上かけて仕事をしてて、このままじゃどう考えても間に合わない、と思い途中で列を抜けて係の人に詰め寄り、
私「(航空券を見せつつ)I'm no time! (時間ないから早くしてくれ!)」
係の人「It's too late」
私「too late!? え、手遅れ!?」
私「What do I? (ぼくはどうすればいいの?と聞いたつもり)」
係の人「stay line! (並べ!)」
私「hai...」

並び直し、10分くらい経ってようやく順番が回って来ました。
これはもう間に合わない・・・さっきとは違う係の人。
私「(航空券を見せつつ) I'm no time, but it's too late (時間ないけど、もう間に合わないって言われた・・・と言いたい)」
係の人「... (航空券を見つつパソコン操作)」
係の人「xxx (聞き取れない) twenteen fifty-four, xxx, arrival Aspen tonight. OK?」
私「tonight? today? OK OK!」

新しい航空券をその場で発行してもらいました。
そして幸か不幸か、新しい航空券の時間と便が、あとからやってくる近藤さんと全く同じだったのでした。

Twitterクライアントを立ちあげ近藤さんに@を送る。

@cpp_akira「@redboltz 入国審査に手間取ってデンバー行きの飛行機間に合いませんでした。幸か不幸か近藤さんと同じ14:54の飛行機に変わりました」
@redboltz 「@cpp_akira まだ空港にいる?」
@redboltz 「@cpp_akira 把握」
@cpp_akira 「@redboltz いますいますGate 60-90のSecurity Checkpointの前にいます。」
@cpp_akira 「近藤さんの入国審査待ちなう。外を眺めてて、「あれ、車が左走ってるぞ」と思ってしばらく見てたら2車線だった。」

そんなこんなをしてると、近藤さんが颯爽と現れたのでした。
助かった。これでもう安心だ!

近藤さんとお昼ごはんを食べつつ、デンバー行きの飛行機に乗り、とくに苦難もなくアスペンにたどり着きました。


アスペン到着!

アスペン空港について3GをONにした。荷物が出てくるのを待ちつつ、実家に電話してみるなど。
(初海外旅行だからかお守りまで送ってきてたので心配してるだろうから)
若干のラグはありつつも「着いたよー」と連絡完了。

荷物がちょうど来て、近藤さんを迎えにきたホテルのシャトルについでに連れていってもらえることに。
(最初はタクシーを拾うつもりでしたが、この空港タクシー全然いない。危なかった)
運転手さんが「Are you c plus plus conference?」と聞いてきた。
近藤さんがいろいろ答えてた。
同じシャトルに乗った外人さんも参加者らしい。ケイナンさん。遺伝子関係のベンチャーで働いているらしく、C++とかHaskellを使ってるらしい。


Hotel Aspenに着いた。
ここでも英語でだいぶ苦戦しつつもなんとかチェックイン。
ホテルのWi-Fiがつながったので、3Gをオフ。近藤さんがTwitterで待ち合わせ場所を連絡してきてくれたのでそこに向かう。
Jimmy'sというバーで晩ごはん。肉肉しい。蛇口からコーラが出てました。


アスペン探検

次の日は16時からC++Now!のRegistrationなので、近藤さんとアスペンを歩きまわることに。
だいたい一周しました。足が痛い。
お昼ごはん。肉肉しい・・・。


C++Now!参戦

技術的な内容ははてなの方に書いてあります。

C++Now! 2012に参加してきました - Faith and Brave - C++で遊ぼう

ここからは時系列的なものではなく、細かい単位でのまとめ。


Ray Fix

今回、近藤さんが前に知り合ったという日本語の話せるアメリカ人Ray Fixと知り合いになれたことが大きかったです。たびたび会話を助けてもらったことはもちろんですが、英語だらけの場所で日本語で話せる安心感はすごいですね。


Jeonggyu Lee

ホテルで朝ごはんを食べていると、「おはようございます」と日本語で声をかけてきてくれた人がいました。C++Now!の参加者だったのですが、話してみるとアメリカ在住の韓国人で、Intelに勤めているそうです。日本語が少し話せるみたいで、その後何度か話す機会がありました。


アスペンの街

リゾート地だけあって治安がいいですね。夜は静かだし。
家は別荘が多く、どれもユニークな装飾が施されているので、歩いていると楽しいです。
でも標高が高いせいか、歩いていると息切れします。
それと、京都のように碁盤の目の街です。C++Now!の会場は隅にあるので、方向だけわかっていればてきとうな道順で行ってもたどり着けます。


ランチブレイク

C++Now!の会場からご飯が食べれるところまでは2kmくらいあるのです。
毎日お昼を食べに2kmくらい歩いて、食べてからまた2kmくらい歩いて会場に戻っていました。
C++Now!のランチブレイクは2時間あります。


ディナーブレイク

C++Now!は朝起きてから夜寝るまで続きます。朝8時から夜22時までです。
なのでディナーブレイクがあります。18:30からディナーブレイクで、20:30から最後のセッションがあります。晩ごはんを食べに2kmくらいまた歩いて、食べてからまた2kmくらい歩いて会場に戻ります。
しかし夜のセッションは人がけっこう少ないです。
私もLibrary in a Weekの作業をしたかったため、移動時間がもったいないから1日だけ夜のセッションをサボりました。


チップ

チップは日本にはない文化なので難関です。
カードで支払うとき、現金で支払うときで払い方が変わります。

あと、チップのために1ドル冊をたくさん使うので、いっぱい用意しておいたほうがいいですね。
毎朝、清掃員さんのために枕元に1ドル置き、朝食のバイキングを食べたあとに1ドル置いてました。
ホテルのロビーで「Can you break a one?」と言えば1ドル冊に両替してくれます。

基本的にカードを使っていたので、チップと、複数人でご飯を食べに行く時だけ現金を使います。


食生活について

肉と甘いものばかりで、途中から体が受け付けませんでした。
アメリカには住めないですね・・・。


英語について

しゃべれなくても意外となんとかなります。同じ人間だもの。



あとは何か思い出したら追記するか別エントリを立てます。

2012年5月7日月曜日

Japanese for Programmers

Japanese for Programmers

「プログラマのための日本語」という記事。英語圏プログラマに日本語を知ってもらうことを目的に書かれた記事です。冒頭の文章を引用し、訳します。


「プログラミングとソフトウェア開発は、非日本人が日本で大きな仕事を見つけることのできる、数少ない領域のひとつです。しかし、日本で働くためには、日本語を学習する必要があります。とくに、働く分野で使用される専門用語を知っていなければなりません(つまりソフトウェア用語!)。

この目的のために私は、実際のビジネスや技術的な会話、電子メール、無数のソフトウェア仕様書などから、日本のモバイルソフトウェア産業で働くことで、4年間ノートを集めました。この記事の全ての資料は、日本人のネイティブスピーカーによる、現実世界の使用法からきています。もちろん私は、このことを企業秘密にならないように編集しました。」


この記事には、多くの方からの好意的なコメントが寄せられています。
私たち日本人は、英語圏から情報を得て日本語圏にフィードバックし、英語圏では英語でコミュニケーションを行いますが、日本語の技術ブログでも英語圏の方が英語でコメントしてくることがあります(日本語ではない!)。こういった記事を参考にしてお互いが歩み寄っていけたら、きっと世界が少しより良くなるんじゃないかという期待がもてます。

デモシーンという開発ジャンル

2012/05/05(土) こどもの日

歯ブラシ解読会に行ってきました。
「歯ブラシ」というのは「farbraush(ファーブラシ)」というデモシーン開発のグループのことで、最近そのエンジンがGitHubで公開されたということもあり、その勉強会が開催されたようです。

公開されてるエンジンには、読み方のよくわからないものがけっこうありますが、ドイツ界隈が主な活動が行われている地域のようです。
デモシーンという開発ジャンルは、この勉強会で初めて知りました。それを専門にしてる会社・部署などもあるようですね。

デモシーン開発にもいくつか種類があり、64KBの制限の中で映像を作るものや、制限なしのメガデモというものがあるようです。私はショートコーディングのような縛りプレイにはあまり興味がないのですが、映像系であれば、たとえばカラオケで流れるムービーのように、何万曲も搭載しなければいけないような場合に、1曲にそんなに容量をかけられない、というようなケースはけっこうありそうだなぁということで理解できます。
64KBにデータを収める技術としては、「データを外部に持たず、プログラム中でデータを作る」というよくある方法や、実行ファイルの圧縮といった技術もあるようです。
最近の3Dゲームでも、ムービーデータを作らずに、ゲームプレイで使用するモデルデータをプログラムで制御してアニメーションさせる、というふうにしてゲームプレイとムービーの境目をなくしたりムービーデータに割く容量を軽減したりしてますね。

それと、デモシーン界隈では、日本でもTokyo Demo Festというイベントを毎年1月に開催しているようです。今度うちのGPUプログラマを一人送り込んでみましょう。

歯ブラシ解読会は、DeNAの会議室で行われました。以前までDeNAは新宿の僻地にあったのですが、最近渋谷にできたヒカリエに引っ越したようで、駅から直結で到着するまではだいぶ楽になりました。ただ、Google並みに入るのがたいへんですね。大きいとこに引っ越すとセキュリティが厳重で不便・・・。


歯ブラシ解読会が17:00ころ終わり、zakさんに「アメリカ行くならスケッチブックを持って行きましょう!絶対役に立つから!」と言われていたのを思いだし、東急ハンズで買ってきました。A4サイズだから十分なはず。

それと、友人に頼まれていたPS Vitaのシェルノサージュを見つけたので買っておきました。
オンラインオンリーだそうなので、私は満足にプレイできる環境がないからしばらくお預け。WiMAXルータは持ってるけど、うちがギリギリ電波が入ったり入らなかったりするので、常時接続プレイはしんどい。引っ越したらネット環境をちゃんと整備しようと考えているのですが、なかなか目処が立たず…。

そんなこんなでゴールデンウィークが過ぎていくのでした。

2012年5月5日土曜日

GRAVITY DAZE

たっかからPS VitaのGRAVITY DAZEを借りてプレイしてました。2日ほどかかってクリアしました。
とても楽しめましたが、操作性が向上できる点がいくつかあったので残しておきます。


1. ナビゲーションが最終目的地を指しているのか中間地点を指しているのかわからない

これはゲーム性に関連するので手を入れるのは微妙な気もしますがいちおう。
このゲームでは、広いステージを360°回転しながら駆け巡るため目的地がわかりにくいです。そのため、目的地の方角と距離を示すナビゲーションが常に表示されています。
これはとても便利なのですが、いくつかのステージでは目的地に到達したと思ったら次の瞬間には次の目的地へのナビゲーションに切り替わり、「いつになったら終わるんだ・・・」と辟易しながらプレイしてました。これは、ダメなアプリケーションのインストーラなどでよく見られる「何度も100%になるプログレスバー」によく似ています。
これに対する改善点として、「中間地点へのナビゲーションを白字で表示し、最終目的地へのナビゲーションは赤字で表示する」という色分けが考えられます。これで、中間地点に到達するたびに終わりじゃなくてがっかりする、といったことが改善できると思います。


2. マップにカーソル表示がほしい

このゲームにはSELECTボタンで表示されるエリアのマップがあり、そのマップはフリック操作でスクロールできます(なぜか左スティックではスクロールできない…これも残念)。このマップは街ごとに用意されているのですが、非常に小さな街(と思っていた)のマップで、まさかスクロールするとは思わなかった遙か遠い位置にイベントポイントが用意されていてだいぶ迷いました。
もちろん、そういうのを謎解き要素とするようなゲームならそういうデザインはありなのですが、これはそういうゲームではありません。
これに対する改善策として考えられるのは、マップに「スクロールできるかどうかがわかるカーソル」を表示することです。あの迷った時間はほんと無駄だった…。


3. 攻撃の補正支援

このゲームの主な攻撃方法は、地上での基本攻撃「キック」と、空中での基本攻撃「重力キック」の2つです。この2つに、以下の問題と改善点が考えられます。

・キック
ジャンプキックがマニュアルすぎて全然当たらない。近接敵の近接コアへのある程度の補正は入れるべきです。

・重力キック
このゲームは360°回転しながらのプレイなので、敵の方向を示すナビゲーションは表示されていますが、それでもまだまだ狙いを定めにくいです。□ボタン長押しで近接敵の近接コアに狙いを定め、□ボタンのアップトリガーで攻撃するようにすべきです。


4. 重力スライド

画面の左端と右端をタッチすることで、スライド走行ができます。これは、タッチ操作にしてみたかっただけなんじゃないか、という気がすごくします。すごく操作しにくいです。タッチ操作は残してもいいからキー操作も入れましょう。Lキー押して準備状態、その状態でRキーを押すと発進でいいんじゃないでしょうか。重力能力の一つなのだし、Rキーを絡めるのは必要だと思います。

あと、重力スライドしながら敵に突っ込むと自動的に発動するスライダーキックは別にいらないですね。今回、使いどころないですよね…。


とりあえず気になったのはこれくらいです。なんか悪いとこばっかり書いてますが、よくできててほんとにおもしろかったです。このゲームをやったあとそのまま寝ようとしたら頭がぐわんぐわん揺れてて酔ってた、というのがあったので、三半規管が弱い人にはきびしいかな、と思いましたが、そういうのが主体のゲームだからマイナスポイントではないです。
あと、このゲームのPVがとてもいいですね。PVで感動したゲームはひさびさでした。





2012年5月2日水曜日

ニコニコ超会議に行ってきた

2012/04/28(土)

13:00くらいに起きて、これから行っても終わりそうだなーと思ったのでニコニコ超会議さぼり。
夜に渋谷でめるぽん、zakさん、kuraさんと日経めるぽん*1の打ち上げ。


2012/04/29(日)

12:00くらいに起きて、これくらいならまだやってる時間に行けそうだぞ、ということで幕張メッセで開催されてるニコニコ超会議に行ってきました。

ニコニコ超会議は無料ブースと有料ブースに分かれていて、その境目にチケットと通行証(リストバンド)の引換所がありました。ちょうど無料ブースに付いたら小室哲哉さんがAvexブースでしゃべってました。無料ブースは、だいたいが企業ブースといった感じでした。
有料ブースはふらっときた参加者でも気軽に参加できるようなブースや討論会、のど自慢や、ニコニコ大百科のようなコミュニティのもくもく作業など、ユーザー参加型という感じがすごい出ていました。東京ゲームショウのような同会場で開かれているイベントが完全な企業から与えられるオンリーなのに対して、ニコニコ超会議は、開かれていてウェルカムな印象がありました。

脳波で動かすねこ耳『nekomimi』が販売されていて、会場にも付けてる人がいっぱいいましたが、7,900円とお高かったので買いませんでした。微妙にほしかった。

全体を見て回ってから、ニコニコ学会の発表を主に聞いていました。ほんとはエンジニアミーティングで知り合いがけっこうしゃべってるようだったから見に来たつもりが、結局どこでやってるのか見つけられず(あとから聞いたらニコニコ学会の隣だったとか…)。
ニコニコ学会はなかなかおもしろい話題で盛り上がっていましたが、突っ込みたいなーと思いつつ質問していいのかどうかよくわからなくてむずむずしてました。
最近私が主催しているBoost.勉強会でも質問スタイルを導入したこともあって、質問のスタイルがどこかに書いてあるといいのかなーと思ったりしました。

帰りは電車がすごい混んでたので、混雑が解消されるまで駅の近くの喫茶店で休憩。
暗黒騎士になったところで満足して中断してたiPadのFFタクティクスをやってました。全クリしたころには19:00。
だいぶ電車もすいてたので乗って、しばらく経ってから「これ逆方向じゃないか」ということに気付いて引き返し。人生二度目の京葉線トラップ・・・。帰るのに結局3時間もかかりました・・・。

ニコニコ超会議はユーザー参加型という印象がとてもよく表れたいいイベントだったと思います。ぜひこれからも続いていってもらいたいですが、今回の参加者の多さを考えると、大きすぎる規模はユーザー参加型という仕組みだと破綻しそうだなーと思ったりしました。来年はやらないということなので、まぁそうだろうなーと思いつつ残念という気持ちもあります。
楽しかった!


*1: 『日経ソフトウエア』でめるぽんが5ヶ月間執筆したC++11連載