2022年4月11日月曜日

PHPerKaigi2022に参加しました。

 PHPerKaigi2022に参加しました。
オンラインでの参加でしたが、面白かったですね。最近こういうイベント全然参加できてなかったけど、やっぱ久しぶりに参加すると楽しいですね。
今の会社にマジ感謝です。

PHPって自分が普段使っているもの(普段は5系と7系)以上に色々と可能性があって、面白い言語ですね。動的型付け言語なのに、やっぱり型がなくて辛くてそれが言語としてどんどんサポートしてくれてきてるのは嬉しい。8系少し書いてみたいな。

ありがたいことに普段なら絶対に関わりない人に質問拾ってもらったりして、めちゃくちゃ嬉しい一日でした。明日から業務がんばります。

0,1日目はこちら

ISUCON11のPHP実装は、何を考え、どのようにして作られていたのか 

Goで書かれたソフトをPHPに移植した話。静的型付け言語のGoに比べるとどうしてもパット見の情報量が少ないPHPでどうやって工夫したかという話で、非常に参考になった。
ISUCONは練習問題として非常に優秀とのことだったので、ちょっと解いてみようかなという機運が高まっている。(強い人がやるイメージだった。)

プロファイラの話。特にコードに手を入れなくてもプロファイルが使えるのは非常によい。かんたんに入れられそうなので入れてみたい。

今の会社に入って、テストデータをどうすればいいのだろうと迷っていたので、非常に勉強になった。
テストデータの準備には以下の3つのパターンがある。テストデータはインラインセットアップでまずは準備していき、共通化できそうなものを徐々に暗黙的セットアップに寄せていくという方針が自分の中で困っていた(暗黙的セットアップで完璧なテストデータを用意したほうがよいのではないかと思ってた)ので、非常に頭がスッキリした。
  • インラインセットアップ(テスト関数に書く方法)
  • 委譲セットアップ(関数で準備する方法)
  • 暗黙的セットアップ(テストフレームワークで予め用意されている方法で、毎テストごとに自動で呼ばれる)
残念ながらCakePHP Fixture Factoriesは使えないのだが…。

リモートワークでの困りごととそれの解決方法。朝会で困りごとは大体共有されない(顕在化しない)ので、困りごとを気軽に可視化できる仕組みを作っていたことが参考になった。

商品クラス、テーブルの誕生からでかすぎてどうしようもない状態になるまでの成長記録から、どのようにそれを避けていくかという話。
硬直化したソフトウェアは事業の成長を妨げる・止めるので、エンジニアとしてその状況は絶対に避けなければならない。
多角的にオブジェクトを見れる視野を持てる訓練をして、怪物を育てないことが大事。
怪物をどういうふうに手なづけていくかという話も聞きたかった。

HAHAHAHAHA

秘伝のタレ(継ぎ足せない・伝承したものしか作れない)をどうやって解消していくかという話。とりあえず新入りだけど、リファクタするかという勇気が組織を変えた話。


0 件のコメント:

コメントを投稿

WordPressで単体テストをするには、シンボリックリンクを使う必要があるらしい。

WordPressで単体テストをしたい。 最近テストを書くのに開眼して、テストコードをとりあえず書きたくなりました。 WordPressのプラグインを作る上で、テストコードを導入したいと思い探していると、公式で以下の方法で試せばできると書いてありました。 wp-cli...