YAPC::Fukuoka 参加してきた(当日編)
YAPC::Fukuoka 参加者側としての記事。当日分です。
先日分:http://likk.hatenablog.com/entry/2017/07/04/170842
発表者分:http://likk.hatenablog.com/entry/2017/07/02/092721
オープニングの途中から参加。過去の参加では昼から参加したり、オープニング後から参加したりが多かった。
会場での禁止事項・諸注意などがあるので実は結構重要なんだなと認識しました。でも途中参加。
以下、聞いて印象に残ったトークと感想。
レガシーperl と今
- https://speakerdeck.com/pyama86/regasiperlto-jin-wozu-mihe-wase-kai-fa-woji-sok-sisok-kerufang-fa
- 諸事情で perl.5.8 のまま頑張ってる。
- セキュリティ的な要件がなければ無理に上げる必要はない。
- テストの密結合の場所を減らす
- 外部API要因はmock化
- DB要因はTest::Mysqld を使う
- デプロイ周りで手動でやってた所を https://github.com/capistrano/capistrano を使ってオートメーション化した
どうしてもバージョン固定で動かしたい現場のノウハウ。
とっととバージョン上げたいけど、やんごとなき理由でできない。そういう局面は発生しうるよなーと思いながら聞いた。
最後の「流行りだけではなく、チームマッチングも考えた選択をしよう」というひとことにグッと来た。
稼働中の Web サービスの Perl 処理系バージョンアップをしていく話
https://speakerdeck.com/astj/jia-dong-zhong-false-web-sabisufalse-perl-falsebaziyonwoshang-geteiku
- 上げるのではなく、上げ続けられるようにする体制をつくる
- パッチバージョンはとっととあげよう
- マイナーバジョンは2年経ってもう1年使いたいなら上げる
- どっかの検証環境でバージョン上げて caton insatll おちたら cpan test を見る
- perlのバージョンアップより、CPANのアップの方で挙動変わる可能性が高いので先にCPANあげる
- 一度実績があると二度目は楽
ゴールがバージョン上げる話ではなく、バージョン上げる体制をつくる話なのが素敵。
上げる基準や対象も明確になって、聞く人が着手しやすい状態になってるの凄い。
ウェブセキュリティの最近の話題早分かり
- https://www.slideshare.net/ockeghem/yapcfukuoka2017hakata
- 別人問題(CDNキャッシュ)
- wordpress の脆弱
- Struts2脆弱性事故
- movable type plugin
- Webdav put を許してたゆえの事故
- SSI + XSS
実例を挙げ、再現デモをしながらの説明で非常に理解しやい構成。
設定の不備をなくすのと、アプリケーションの脆弱性を潰すのが大事だそう。
脆弱性をキャッチした時点で、場合によってはサービスを止める勇気も必要だそうです。
ドキュメントよく読もう。必用に応じてテストしよう。
分散ユニークID採番機katsubushiとWebアプリケーションへの応用例
katsubushi を利用するかどうかは別として、nginx に振られた時点で一意の ID 発行して引き回すのは使いたい。
katsubushi では発行された一意の ID を元に時間を知ることができるのも便利だ。
はてなブログ最近の開発テクニックと最新の開発風景のご紹介
移行について「連続的に移行できるか、一般的な概念であるか、失敗したら戻せるか」という観点で観ていてグッと来た。
あと、(非エンジニア環境の)エラーと、deploy 促す slack-bot 欲しい。
Web application good error messages and bad error messages
- https://speakerdeck.com/moznion/web-application-good-error-message-and-bad-error-message
- 良いエラーメッセージと悪いエラーメッセージ
- エラーには次元と方向性がある(情報量と5W1H)
- 短寿命と長寿命がある(姑息対応、根本対応)
- そのエラーメッセージは誰が読むのか
良いエラーメッセージと悪いエラーメッセージの話。
エラーメッセージを出す際は、それは誰が読んでどう対処して欲しいかを考えながら出そう。それができてないのは悪いエラーメッセージと理解した。
時間がないと後者になりがちなので反省している。
cpm
制作過程で一旦立ち止まって、シンプルに機能分解して考えた話を聞けてよかった。
cpm については、そろそろプロダクトで使いたい。少なくとも個人ではガンガン使っていきたい所感。
P6W に基づく Perl6 に於ける Web 開発の基礎となる Crust
perl6触る予定が無いのに聞いてしまった。でも、こういうトークがきけるのもYAPCの醍醐味。
かなり息抜き気分で聞いてしまった。
スペシャルセッション
- 何故、今福岡か。福岡企業の話。
- 開発拠点としての福岡とその魅力
- 5年ぐらい前から徐々に盛り上がってきた
- 技術的なアピールがしやすくなってきた
- 採用難しい/優秀な人に来てもらうしかない/中途採用送り込む
- アジア圏のエンジニアとコンタクトを取る
- ソフトウェアの開発なら場所関係ない
- コミュニティ、母数が少ない代わりに緊密
- 義理堅い/仕事変える人(job-hopper)少ない/人材が硬直化
- 特化した人ほしいけど、中で教育するので特化した無くても良い
- 専門にこだわり過ぎなくていい/フレキシブルに挑戦できるマインドがあればいい
福岡の魅力と、福岡に来て欲しい人材の話と、採用の苦労・課題の話を聞けた。
以外と地方でも給与テーブルが東京都変わらない企業もあるので、環境が許されるならそれもありかな。
新時代のテストフレームワークTest2
- https://speakerdeck.com/akiym/xin-shi-dai-falsetesutohuremuwakutest2
- perl 5.26 から Test2 使える
- Test::Builder を置き換える
- test::builder にモンキーパッチあててるとコケる
- cartonでバージョン固定してない/依存モジュールがTest2に依存
- 急にテストがコケるまえにTest2に移行しよう
- Test2でのテストの書き方と便利情報
Test2でのテストはまだ試してない、Testのバージョン上げた際にコケるところありそうだから事前に例を聞けてよかった。
スキップしていいテスト、スキップしてはいけないテスト
- https://speakerdeck.com/mackee/need-for-speed-of-testing-in-perl5-web-application
- 局所的にスキップではなく、スキップするなら全部
- 現状あるテストの改善/ドメイン特化/perl5のテスト
- テストを書こうという時代はすでに過ぎてる/テストし易い環境の話
- 一日一回はデプロイする/リリース前にフルテスト
- デプロイできるタイミングが限られている
- master データは別でテストする
- マスタデータはキャッシュする
- 時々コケるコード -> 時々コケないように治す
- 差分がなければテストはスキップする
- DBに突っ込まず、CSVのままテストもできる
- 速さのためにテストしたいことがが歪まないように気をつける
- N+1 検知/このメソッドを叩くときは、この prefech が叩かれないといけませんよ。という modifire
- テストだと壊さないので思い切ったことできる
- フローの改善にもなる
割りと近いところがあると思った。心に刺さるものがいくつか合ったので、パクら参考にせてもらいます
LT
- 牛向けウェアラブルデバイス
- 今日のブラウンの帽子はラリー帽子。Perlエンジニア募集中
- バグ報告者への敬意を払う。適切と思う範囲で上限設定
- 次回は YAPC::Okinawa 2018 3/2, 3/3
- ツイートできないエディタはエディタじゃない
- MySQL Blackhole Engine でうけて、各スレーブに分ける
前夜祭のLTとは違って、比較的真面目なLTが多かった。
やっぱり雰囲気が違う。この雰囲気のなかで、前夜祭で発表したLTは出しづらいなーと思った。
(そもそも応募してないし、応募したとしてもリジェクトされてた可能性ある)
keynote
- NTで働く @dragon3 さんの話。
海外で働くことの大変さ。家族・家賃・従業員・チーム体制・求人 など色々な話が聞けてよかった。
海外に拠点を設けるのには、拠点に行く本人だけでなく、施設や給料(日本の給与水準ではNYでは住めない)・現地スタッフ・チーム・含め会社全体のかなりの負担があることを知ることができた。
また、海外で働く苦労の話は、それがそのまま、今、社内で働いている海外出身の従業員に当てはまるということも考えさせられた。
帰路にトータルで20時間かかったらしい。大変だ。東京から福岡遠いとか思ってすいません。
全体を通して
まずは会場提供のLINEさんならびに、運営スタッフの皆様有難うございました。毎回楽しく参加させて頂いています。
とにかく広いスペース(会議室というよりは普段はランチ・カフェスペースなのかな?)。カフェもある。スライド写す箇所が複数ある。
スタンディングしながら聞きやすい場所もある。ほわーラインさんすげーわ。あとテンガロンハットのブラウンかわいい。
フリードリンクサービスとにかく飲みまくった気がする。ごちそうさまでした。
今回、比較的Perlセッション多かったのでYAPCにしては珍しいみたいな変な感想を抱いてしまった。いや全然問題ないんですが。(でもベストトーク賞がperlじゃないのはお約束)
毎回ベストトーク賞のセッションのタイミングで別枠のセッションを聞いてて聞き逃すという自体が発生するのですが、今回は聞くことができてよかった。
次回は沖縄らしい。沖縄行きたい。