このシンプルな考え方がいいですね。複合キーが複雑さの要因であることは、現実を通していやというほど味わってきていますからね。

Railsのマインドセットには「テーブルをオブジェクトと同一構造にし、プライマリーキーにはinteger型のサロゲートキーを設定しておけば、かなり楽になる」というものがある。 Rails道を進めば、ライフ・イズ・イージー。 Rails道を進まないのであれば、別のものを使えばいい。

しかし、レガシーのホスト系システムの考え方をそのまま引き継いでいるようなシステムのDB構造は、複合キーのお化けみたいなのが良くあるよね。構造化されたコード体系がそのまま複合キー化されていたりとかね。
DHHのいいものはいいから俺について来いみたいな感じがいいね。

PragDaveの講演は、さらに深いものだった。彼は、私のようにダイナマイトを扱えない普通の人と多くの時間を過ごしてきた。データ管理グループが運営するデータベースからデータを引き出さなければならないとしたら、しかもそのデータベースが10年間ずっと複合キーで運用されてきたとしたら、ネオのようにクールなサングラスを身に着けることも、制約をダイナマイトで吹き飛ばすこともできないだろう。これに対するひとつの答えはこうだ。「組織を変「え」るか、組織を変「わ」るかだ」。だが、それができない人々は完全に見放されてしまうのだろうか、Rubyに。

ファウラーさん言うところの「組織を変「え」るか、組織を変「わ」るかだ」ですが、たしかによのなか二分化いるような気もしますね。赤いカプセルか青いカプセルか?私のようなおじさんでもあちらの世界へいけますでしょうか?