YAPC::Fukuoka 2017 ライトニングレポート
博多で行われたYAPC::Fukuoka 2017に参加してきました。
前夜祭はヌーラボさんで
前夜祭はヌーラボさんで、uzuraさん司会で、90分間くらいずっと、順番にライトニングトークをやるLTソンというイベントがされました。勢いがあってみな面白かった。アナグラ君、codehex君の沖縄勢が熱い。
本会場はLINE福岡
本会場は株式会社LINEさんのLINE福岡でした。カフェのサービスがあって、ロイヤルミルクティーを頼んだ。
[f:id:perlcodesample:20170701172015j:image]
「未来指向のCPAN開発モジュール開発」のスライド
僕が発表したスライドをアップしておきますね。
[f:id:perlcodesample:20170701140537j:image]
[f:id:perlcodesample:20170701140651j:image]
聞いたトーク
聞いたトークで印象に残ったことを書いておきます。
astjさん
Perl開発環境のバージョンアップについて。大チェッカーという実験的なはてなラボのサービスをPerl 5.26にアップデートして、案外すんなりバージョンアップできたという話が記憶に残った。小さなサービスでまず試すのはやりやすそう。
わいとんさん(Microsoft?)
システム開発は、利益を生み出しているか、コストがかかりすぎていないかということが重要。だから、PaSSで環境まるごと管理してくれるのが楽。Azureのクラウドサービスの紹介をしていた。
fujiwaraさん(kayac)
goで分散ユニークIDを作成するkatsubushiサーバーを開発した話。HTTPごとにユニークIDを付けられて速い。nigixのluaでユニークIDをとってきて、環境変数に設定して、それを、Plackミドルウェアでとるという話が印象深い。
hitode909さん(はてな)
はてなブログの編集画面のコードでreactを使ったり静的解析をしているという話。XRTという静的解析のためのモジュールを紹介していた。github上にある。シールをプレゼントしていたので、もらってきました。こちらです。
[f:id:perlcodesample:20170703233437j:image:w150]
moznionさん
よいエラーメッセージと、悪いエラーメッセージについて。よいエラーメッセージは、簡潔で、対処手段や解決手段が、きちんと書かれていること。悪いエラーメッセージは、読んでもよくわからなかったり、間違った解決策が書かれていたりすること。
tomcha_さん
技術者ではない自分が、プログラムに興味を持って、2011年に大阪のPerl入学式に行って、ついにYAPCに登壇してしまった話。
昔はマイコンで遊んだりしていた。最初はプログラミングに対しては、敷居が高い気がしていたが、勇気を出していくつかのイベントに出席。
Perl入学式では、papixさんに、質問を投げて添削してもらったりできたのが、とてもよかった。独学で学んで、わからないところを手厚くサポートしてもらえるというのがよかった。
Perl入学式のサポートに回ったり、Perl鍋やなにわPerlというイベントにも参加している。
少し不安でも、チャレンジや勇気が大事。
Takatsuguさん
WebAPIの仕様として、JSON + Restの次に、GraphQLの潮流が来ているという話。昔のPRCにどこか感じが似ている。5年くらいごとに、WebAPIの流行りが変わっていっている。
Perlで、GraphQLのライブラリを作っていて、近日公開される予定。CPANに名前空間先にとられたから「GraphGL::Tiny」という名前になるかも。
楽しみです!
YUさん(DNPデジタルソリューションズ)
アプリケーションの国際化と地域化を行うときに、注意することを網羅的に話してくれたのが、興味深かったです。初耳な話が多かった。
タイムゾーンは、データベースよりアプリで変換した方が安心。文字は、折り返し、大きさに気を付ける。はみ出るときはアイコンなどで解決も。
まずは、日本語から英語にするのが基本。そして、英語から、対象の言語。簡単なチェックとして、対象の言語から日本語へ戻したものが見れるとエンジニアとしては安心。
地域によっては、Eメールは、サービスのキーにできないことも。電話番号はほとんど持っているが、メールアドレスはあまり持っていないという国もある。
ネットワーク環境が良くない国もある。そういう国では、ネットワークが頻繁に切れるようなアプリは、作らないほうがよい。
karupaneruraさん(DeNA)
PerlのO/RマッパーAnikiを作成している話。オブジェクトであまりラッピングしなような設計。オブジェクトが多いとメモリ使用量が増える問題と、実際にどんなSQLが発行されているのかが、よくわからないという問題がある。
Aniki 2.0で入れたい機能について。複数DB、複数スレーブ対応。大きなサービスをやっているところでは、シャーディングとトランザクションが必須に感じる。N + 1問題を、自動で検知してくれるような仕組みも欲しい。
AirReaderさん(はてな)
サービスディレクター。Googleのツールを活用して、サービスを分析して、サービスの撤退の判断をしている。
googleのツールを活用すれば、ユーザーがフォーム投稿した情報などを拾ってこれる。
Google TagManagerとGoogle Analyticsを組み合わせると便利。
akiymさん(はてな)
Perl 5.26から標準で導入されたTest2のお話。Test::MoreとTest::Builderの基盤になるようなモジュール。
Test2は、試験結果が、表形式で見やすく出力されるのが、よいと思った。
Test::Depp, Test::Fatal, Test::Mock::Guardに該当する機能も、搭載。
普通に使っている限りではTest::Moreは大丈夫だけど、Test::Builderにモンキーパッチを当てまくっているような場合は、テストが壊れる。
Test2::Suiteという試験用の便利関数が使えるモジュールがある。
macopyさん(kayac)
自動試験の実行時間を短縮する話。kayacで僕らの甲子園ポケットというサービスを作っているが、そのWeb APIの試験を書いている。
リリース前には試験をしたいが、試験に時間がかかると大変。一日にリリースできる時間は4時間しかない。テストが30分かかるので大変。
テスト時間を短縮したい。データベースの試験が遅い。キャッシュ化して、速く。「prove -j 80」で並列化して速く。
ライトニングトーク
codehexさんが、来年は沖縄でYAPCだーと発表。日付は、3/2,3/3。楽しみですね。
スポンサーセッション
LINEさん、DeNAさん、ヌーラボさん人材募集中だそうです。LINEニュースは、Perlでできているそうだ。
農業の分野でgoogleを目指しているというFarmnoteさんも博多で、新しく支店を始めるので、Perlの開発者募集中だそうです。
YAPC協賛企業様のリンクを張っておきまーす。Perlの技術者として働きたい方は、一度メールとかしてみるといいかもです。
今回の反省
懇親会のチケット買い忘れたこと。YAPCの終了時間18時だと思っていたら、19時まであったこと。以上ライトニングレポートでした。