YAPC::Asia Tokyo 2015に行ってきた #yapcasia

YAPCに参加してきたので感想を書く。

会社がスポンサーやっていたのでスポンサー枠で行けそうだったけど、例年あえて自腹でチケット買ってTシャツもらっている。 今年は、ラストのYAPCってことでトークがやらたらと豪華というか幅が広いというか面白いものが多かった。

観たやつ並べる。

8/21

  • メリークリスマス! (60 分) Larry Wall
  • 世界展開する大規模ウェブサービスのデプロイを支える技術 (60 分) aereal
  • TBD (60 分) Yukihiro "Matz" Matsumoto
  • Perlの上にも三年 〜 ずっとイケてるサービスを作り続ける技術 〜 (60 分) 趣味はマリンスポーツです
  • Yet Another Perl Cooking (30 分) moznion
  • 大規模でも小中規模サービスでも捗る microservices な Web サービスのつくりかた (30 分) Kazuhiro Osawa
  • Lightning Talks Day 1 (60 分) Daisuke Maki

8/22

  • ISUCONの勝ち方 (60 分) Masahiro Nagano
  • Perl 5.22 and You (60 分) Ricardo Signes
  • Adventures in Refactoring (60 分) Ben Lavender
  • Posture for Engineers (30 分) Marylou Lenhart
  • Perlがメインじゃない現場でもPerlを使う(AdTech現場編) (30 分) Masaru Hoshino
  • Lightning Talks Day 2 (60 分) Daisuke Maki

今年は、トーク数が多くてかぶってて観に行けないやつや、どうせ人数殺到しまくって入れんでしょ〜って感じで見に行かなかった奴が多い。 業務に役立つかどうかあまり考えずに、普段聞けなさそうな話題重視という方針で観てきた。

Yet Another Perl Cookingとか、Posture for EngineersとかYAPCじゃなけりゃ聴けない話しだったような気がする。 Nomiku欲しくなったし、Cooking for Geekも読んでみたい。 デジタルな技術を活用することで可能な料理もあるんだなぁっていうのは人生において大きな収穫だった気がする。

姿勢の話(Posture for Engineers)は、全体的にはあんまりまとまりのない話だったけど、 頭が脊髄の上に乗っかって、耳が肩の上のラインに来るような姿勢が良いということがわかったのでこれから少し意識して仕事してみる。

Perl5.22、ではついにHashのSliceが便利にできるようになったので最高って感じだけど、 もうPerlを業務で書いてないので使うことがない。↓な感じ。

これまでだと、Hashのスライスは値の配列でしか受け取れなかったのが・・・

use strict;
use warnings;
use 5.016;

my %hash = (a => 1, b => 2, c => 3);
my @sliced = @hash{'a', 'c'};

say @sliced; #=> 13

こんなかんじでキーバリューでちゃんと受け取れるようになった。

use strict;
use warnings;
use 5.022;

my %hash = (a => 1, b => 2, c => 3);
my %sliced = %hash{'a', 'c'};

say %sliced; #=> a1c3

この処理、Webアプリとか作ってたら使い道無限にあるのでPerl書いてる時に欲しかったよまじで。 Perl5は、1年に1回のリリースでじわじわ良くなってきて最近のPerlらしい堅実なアップデートぽかった。

他にもいろいろ不思議な挙動をするコードを消したとか言ってたけど、その説明が面白かった。 「新しい狂ったコードを入れるために、古い狂ったコードをたくさん消したよ」 Crazyの直訳だと狂っただけど、Coolみたいな意味も込められているんだと思う。 Postfix Dereferencesも正式採用されていた。

Adventures in Refactoringも面白かった。Githubの中の社内向けのDeployツールを管理している人の話だった。 リファクタリングをする理由とか心構えとか話してくれたのだけど、中でもGithubらしいと思ったのが、 リファクタリングの成功を示すための指標として、Pull Requestのdiff statsをみているらしく、 コードの削除が追加を上まった時に成功として、?(:hocho:)の絵文字を使って祝っているらしい。

全体でコードが10行だったものが3行になれば、 実質バグが生まれる可能性がある箇所が10箇所だったのが3箇所に減らすことが出来て 目に見えて良くなったことが分かる。なるほど感があった。

なるほど感といえば、元同僚の先輩のPerlがメインじゃない現場でもPerlを使う(AdTech現場編)という話もそうで、 職場が変わっても現場で必要となることはそうは変わらないってことを示してくれたので、 自分が転職しても今までやってきたことは必ず役立つってのは分かったので、 如何に、それらのテクニックを出来るだけOSSやらブログなどにアウトプットして 使いまわせるようにしておくようにしておけるかという部分にかかってきていると思った。 頑張りたい。

去年から今まで自分は新規のスマホアプリを開発するプロジェクトにいてずっとiOS/Android/Rails/AWSなどの基礎知識みたいなのを 貯めこむ期間が長かったけど、YAPCを見てそろそろ外に向けて何か発表したい気持ちになった。 今年の後半はどんどん発表していくぞ。