SQLポリモーフィック関連、indexの貼り方、Vue.jsの話題が上がった。Vue.jsは全くわからないので割愛。ポリモーフィック関連はコントローラでは使わないのか。コントローラではほとんど使わない。便利だからとポリモーフィック関連を作ってはいけない。ポリモーフィック関連は便利にするための仕組みではない。ActiveStorage等gemはあえて使っている面もある。ついているモデルによって挙動が変わるような場合はポリモーフィック関連にすべきではない。みたいなコードを生んでしまうと後々つらい。インターフェースが同じものにだけ使う。ポリモーフィック関連はSQLアンチパターンにも載っている。Railsはフレームワークとしてサポートしているので使ってもいい。SQLアンチパターンはわりと「フレームワークがサポートしてるならOK」というパターンがあるらしい。Qiitaindexの話indexとは?索引。あると検索が早くなる。つけすぎるとindexを更新する作業自体が重くなってしまう。大体のサイトはReadの方が多いのでWriteの重さはそれほど気にしなくてもいいのでは、という意見もあった。遅いクエリをどうやって見つけるか?監視ツールexplain(実行計画)index最初からつける?運用始まってからつける?意見A:運用始まってから付けたほうが効率のいいindexを付けられる。意見B:レスポンスは徐々に悪くなることが多い。なってからindex付け直すのはやりづらいので最初から付けておいた方がいい。意見C:サイトの規模が大きいとDBアクセス止められない場合がある。indexがオンラインでDB停止させずに付けることができたとしても、作成中は遅くなるはずなのでそれを許容できないかも。感想ポリモーフィック関連を「DRYに書く仕組み」だと大きな勘違いをしており、その誤った認識を正すことができて本当に良かった。indexは最初からつけておいたほうがいいのではないかと思った。複合indexは順番が重要だと分かった。速度が重要なDB設計するときは意識しようと思った。