YAPC::Asiaに生まれて初めて行った件について、はてなブログを生まれて初めて書く #yapcasia

金、土とYAPC::Asiaに参加してきました。

「ブログを書くまでがYAPC::Asia」らしいのですが、How to だけ書くようなブログしか持って無かったので、新しくはてなブログを作って感想を書いてみます。 いままでレンタルサーバーWordpressを使っていたので、これが人生初のはてなブログ投稿です!

生まれて初めてのYAPC::Asia、生まれて初めてのはてなブログ

有給0の危機!代休でなんとかYAPC::Asiaに初参加!

私は有給の浪費癖が有るようで、今年はこれまでに、有給を2日取ってde:codeへ行ったり、有給を2日取ってAWS Summitへ行ったり、有給を1.5日とってユビレジさんオフィスへ行って夜通しWWDCを見て翌日1日寝たり...

ともかくふんだんに消化した有給のエネルギーを使って勉強会やカンファレンスに出まくってきた2015年、そのうえ食中毒で1週間寝込んでとうとう有給0になり、燃料切れかに思えた私ですが、休日出勤して蓄えた労働エネルギーを代休エネルギーに変換して1日目よりYAPC::Asiaに参加することが出来ました!(出張で前夜祭はかなわず)

ちなみに、9月始まりなのでもうすぐ有給エネルギーがチャージされます。もう少しの辛抱。。。

YAPCってなに

YAPC = Yet Another Perl Conference

ですが、何の略かわかった所で結局私の英語力では意味はよくわからないし、(いまのところもう一つのパールの祭典?本当のパールの祭典は何処?いつか本体と合体するの?)YAPCを何と呼んだらいいか(ヤップシーらしい)分からない上に私はiOSエンジニアでObjective-Cばっかり使っていてPerlは使ったことがないけど、ともかく参加してきました!

きっと参加したら分かるはず。

Perl、どこ?

参加して思ったのは多様性でした。Perlばっかりじゃない、いや、みんな発表でPerl要素がないことをネタにしてるぐらい。なんだこれは!

でもみんなどこかでPerlを使っていて、ちゃんと使いこなしていて、言語を適材適所に使いわけているだけで、Perlという狭い視野にとどまらず、Perlを軸足に広い視野でエンジニアとしての知見を共有しているっていう感じでした。

レベル高い。

聞いたTalks 1日目!

メリークリスマス!

英語。同時通訳機あり。クリスマスリリースを目指すPerl6のお話。

オープニングがあった部屋が会場で、オープニングから既に入っていた皆さんの分で?同時通訳機が品切れとなっており、少し遅く入った私にとっては、ヒアリング能力が無い英語と触ったことのないPerlというダブル知らない言語の話を聞くという難易度の高いトークだった。

ともかく英語とPerlと、トールキンの"ホビットの冒険"と"指輪物語"は教養として知っておかないと、国際社会をエンジニアとして生きていくことが出来ないという知見を得た。

あるいは、早起きして同時通訳機を手に入れるべきだった。

世界展開する大規模ウェブサービスのデプロイを支える技術

任天堂アバターサービス的な、Miiverseを支える任天堂はてなのエンジニアさんのトーク。

Gitでプロジェクトを管理しながらどのように沢山のサーバーにデプロイするか、これまで経てきた手法をたどりながら紹介。 独自に開発したリポジトリ同期システムや、Capistrano2 と Git を使って 1142秒 かけていたデプロイが Consul + strecher で 29秒 に出来たというお話など。 大規模になってくるとこんなふうになってくるのか、こんなふうに解決できるのか、という勉強になる。

今フロントエンドで何が起こっているのか

speakerdeck.com

なぜAngular.jsが現れ、なぜReact.jsが現れ、GruntだったのにGulpが流行りだしたのなぜ、(表面的な使い方ではない部分で)何が違うの!みたいなことを概観できるとっても素晴らしいお話。 最新の部分になってくると初めて聞くことが増えて理解しきれなかった感があるので復習したい。

Perlの上にも三年 〜 ずっとイケてるサービスを作り続ける技術 〜

speakerdeck.com

今回のベストトーク賞を獲得のトーク。 無性にObject指向について学びたくなり、ドメイン駆動開発を学びたくなってきた。 4冊も教科書が紹介され、購入したい衝動に駆られた。これは新手の催眠商法かもしれない。

[YAPCの発表で紹介した本 - hitode909の日記] (http://hitode909.hatenablog.com/entry/yapc2015books)

もうトーク中に指が勝手にポチポチして2冊購入して、もう2冊ほしい物リストにストックした。 ベストトークの投票もポチったので本当に催眠かもしれない。

Podcastを支える技術、エンジニアのためのWebメディア、そしてCPAN

Rebuild.fmみたいなの、ちょっと自分もやってみたいよね、という人に役に立つ、Podcastを始めるために必要な実践的なノウハウが聞けたトーク。

www.slideshare.net

いつかやってみたい。

懇親会を申し込むのを忘れていた話

懇親会を申し込み忘れていた。

atnd.org

裏番組で産業技術大学院では 第80回InfoTalk ChatWork、再実装の決断と裏側 : ATND が開催されていたので急遽そちらへ参加

ChatWork、再実装の決断と裏側

かつて、Chatwork社の前身であるEC studio社はGoogleAnalyticsと競合するアクセス解析サービスを開発し、GoogleAnalyticsに敗退。社内は、もうWebサービスをやめ、Googleがやらないリアルに絡めたビジネスをしていこう、というムード。

そんな時、現Chatwork社CTOの山本正喜さんはChatworkの構想を思いつき、役員を説得、「一人でやれ」という許可?を兄である社長から得て、今度はGoogle Waveに挑むチャットサービスを社内ツールとして開発。それがUstreamでチラ見せした所話題となり、商品化が決定。

今では広く普及したChatworkも当初はひとりプロジェクトから、社内ライブラリにも依存しながら作っていたり、ともかく普及するまでは結果を出すことに追われて、スケール出来ないテーブル設計だったりしたまま、技術的負債が蓄積していた。

それをリファクタリングによってどこまで解決し、そしてその限界をみて、どうやって周囲を説得して作り直しを決定し、またどのように技術を選定し、Scalaを始めとする新しい技術を採用することになったか、というお話。とても良かった。

もうすぐ新しくなったChatworkがリリースされるらしい。 会社でいつも使っているので楽しみ。

聞いたTalks 2日目!

Mackerel開発におけるScalaとGo、そしてPerl

Mackerel開発におけるScalaとGo、そしてPerl

サーバー監視ツールのMackerelの開発にあたって、どの部分にどの言語を利用しているか、それはなぜか、言語毎の適材適所な活用方法の紹介。 Rakefile、Daikufile、Makefileを肥大化させるのではなく、責務を決めて小さなスクリプトを(Perlで)書いて、それを呼び出しましょうといった設計思想面での話も。

誕生日にお子さんが生まれたとのことで、2日目、最初のトークから大変めでたいお話で素晴らしい。

NASA主催の世界最大級ハッカソンSpaceAppsを運営した話

www.slideshare.net

毎月20日に"ハツカソン"をしたり、世界最大級のハッカソンまで運営するyumu19さんのトーク。 2014年末、私もyumu19さん主催の大晦日ハッカソンに参加させていただき、AppleWatchで妖怪ウォッチアプリを作りました。 ハッカソンを沢山開催しているベテランとあって、どんなノウハウがあるのか是非お聞きしたいと思って聞きに行きました。

協賛企業がどのようにリターンを得られるようにするか、無断欠席をどのように防ぐか、物販はキャッシュフローが悪い&在庫リスクもあるなど、実践的なノウハウ、注意事項を効くことが出来て良かったです。

「是非5回に1回は運営側になってみてください」とのことでした。 今まで参加しかしてない。。 せっかくお話を聞いたので、機会を見てなにかの運営に携わってみたいと思います。

データ分析基盤を支える技術

www.dropbox.com

データ分析基盤の進化の歴史とともに、ここまでならこれで出来る、でもこれではこれが課題になる、それが問題になってくるとこの方法でここまで出来る、、、というように、様々な技術とその必要性・登場の背景を知ることが出来ます。

今現在における最先端っぽいデータ分析基盤の構成も紹介されていて参考になります。 ただ、作ってみたくなったけど、「やりたいことがデータ分析で、そのための基盤の運用ではないなら、分析サービスを使ったほうがいいですよ」とのこと。

HadoopとかFluentdとか言ってるけど結局それぞれ何!どうやって組み合わせるの!とか、かつてからHadoopがいまどう進化したかとか、バズワードの影に隠れたビッグデータの世界の進化と最先端を垣間見ることが出来るトーク。

消える・残る社内サービス

ランチタイムセッションでお昼を食べながら。 株式会社Fusicさんの社内システムのお話。 お弁当オーダーシステムなど。

新卒や中途入社のひとに社内プロジェクトは仮想受託案件として最適であるというお話と、そうやっていろいろ社内システムを作っていたら、人がbotになってしまったという話。 社内システム開発が面白そうで色々作ってみたくなるトーク。

MySQLで2億件のシリアルデータと格闘したチューニングの話

商品とシリアルキーを紐付けるDBを貧弱なPC(?)上のDBで運用しようという挑戦の物語。 負荷テストでは大丈夫だったのに、どうして実データではこんなにかかるの! という事案集とその原因の推察、解決方法についてのトーク。

商品とシリアルキーのヒモ付という、大量の件数だけれども、実行するのは単純な処理、という題材で、 DBに詳しくない人間でも、DBの最適化がどれだけパフォーマンスを左右するのかという問題にフォーカスしてその大切さを学ぶことが出来る良い題材かもしれない。

ソーシャルゲームにおける AWS 移行事例

speakerdeck.com データセンターで運用していたサーバーから、ソーシャルゲームAWSへ移行した時のお話。 MySQLデータ移行の高速化、dump出来ないセカンダリインデックスを作成するSQLを生成できるように作った独自ツールAWS移行時の落とし穴、DBをきちんとFailoverさせるためには?...など、実際のサービスの移行をやってみて分かった様々な課題をどう解決していったかという事例がいっぱい詰まったトーク。

HTTP2 時代の Web

www.slideshare.net

デモのインパクトが大きかった。いますぐHTTP2にしたい。HTTP2になりたい。 HTTP2とはなにか、どう変わるのか、これからどうなっていくのか。 とても深くHTTP2を知り尽くした上で、冗談も効かせて沢山笑いを取りながら、よくまとめてお話下さっていたと感じる素晴らしいトーク。

そのほか、感想

規模がすごかった

以上が私が聞いたトークです。ほかにも沢山のトークが並列で発表されていました。 少し人数は劣るかもしれないですが、複数の大きな部屋でトークが並列で開催されて お昼にお弁当まで出てくるあたり、まるで Microsoft de:code や AWS Summit Tokyo かのようです。

これが、エンジニア有志のカンファレンスだなんて! この規模でイベントが開催されるYAPCPerl界隈、すごいなって思いました。

そして開催地が東京ビッグサイト! 仕事ではEXPO等に何百万という予算をかけて、ここ東京ビッグサイトに出展するわけですが*1、 そこで有志のカンファレンスやっちゃうなんて、ビッグイベント感満載です。

Perlコミュニティはすごい。

そしていつもはEXPO展示会場となる東ホールなどに行くわけですが、YAPCの会場は会議棟。 あの東京ビッグサイトのシンボルの、柱の上に三角が組み合わさってできたあの天空のトライアングルの中です。

f:id:niwatako:20150822203902j:plain ↑YAPC2015が開催された 東京ビッグサイト 会議棟

会議棟(の上の方)に入ったのは生まれてはじめてでした。 それはもう初めてすぎて、上りのエスカレーターを通り越して東ホールで開催中の「建材フェア」に行きかけたぐらい。 今回はいつもと違うちょっと特別なところに入る体験ができた気持ちです。

f:id:niwatako:20150822204041j:plain東京ビッグサイトの上空のあの三角の中にある国際会議場

なのに、今年が最後

というわけで、初めて参加した感想は 「また来年も行きたい!」なのですが、 来年は無い!そうです。

最後...?

主催者さんが最後にスライドに載せたURL、

http://builderscon.io/

http://builderscon.io/post/126983132036/mission-statement

2017年!自分もそこで発表できる何かができたらいいな。

僕のYAPC::Asia2015は終わった

おまけ

はてなブログ使いやすいかも

統合画面のサイドバーからいろいろリッチなコンテンツを挿入できるの、とても書くのが捗りそうで良い。 ただMarkdownモードでMarkdownではなくはてな記法で書くべき箇所が慣れない。。

*1:僕はまだコミケを知らない