2013年3月1日金曜日

SQLアンチパターン・レトロスペクティブ - データベース危篤患者の救出 - に参加してきました #sqlap #devlove

SQLアンチパターン・レトロスペクティブ - データベース危篤患者の救出 -
http://devlove.doorkeeper.jp/events/2775

SQLアンチパターン・レトロスペクティブ - データベース危篤患者の救出 - #sqlap #devlove
http://togetter.com/li/462950

はじめに

先月に発売された「SQLアンチパターン」の監訳者お二人による勉強会が開かれるということで、参加してきました。

参加するまでの経緯としては以下の様な感じです。

まず、本自体は出た当初に購入してました。
その後にJUnit実践入門の読書会があり、急遽和田さんが参加されてその時にサインを頂くことが出来ました。


デブサミ2013でも講演をされていたのですが、その時は短いセッションだったので物足りない感じがしてました。

2013/02/15 デブサミ2013【15-B-5】SQLアンチパターン - 開発者を待ち受ける25の落とし穴 #devsumiB
http://togetter.com/li/451569

2/21には、監訳者お二人の刊行記念トークセッションがありましたが、都合がつかず参加することが出来ませんでした。

書籍『SQLアンチパターン』に関するつぶやきまとめ #sqlap
http://togetter.com/li/459889


アンチパターン

私個人が経験したアンチパターンは、以下の項目です。

  • ジェイウォーク(信号無視)
  • キーレスエントリ(外部キー嫌い)
  • EAV(エンティティ・アトリビュート・バリュー)
  • ポリモーフィック関連
  • ファントムファイル
  • フィア・オブ・ジ・アンノウン
  • アンビギュアスグループ


遭遇した当時はベストだと思っていても、後からその代償を払うことになってしまい、いろいろと大変でした。

SQLやDBは言語によらず利用している人が多いためか、SQLアンチパターンに挙げられている事例を経験された方が多かったみたいです。

個人的に26番目のアンチパターンとして挙げるとしたら、コンソールからテストされていないDDL・DMLを実行してしまう行為です。
いい名前が思いつかなかったので、仮に「グレネード・キッカー」とでもしておきます。

おわりに

この本は、過去に行った罪を懺悔し、悔い改めることで現実と折り合いをつける方法を学ぶことが出来るという点で、救いがあるのではないかと思います。
よく聞く「若いうちの苦労は買ってでもしろ」は、先人の失敗や経験はこういった本を買うことで学ぶことが出来るのだから、同じ苦労をなぞるのではなく、その先の未知の領域で苦労をしたほうが良いということでは無いかなと思いました。

終了後、監訳者のもう一人である和田省二さんからサインを頂くことが出来ました。

エンティティを設計したり、仕様変更がテーブルに及ぶときに、この本を片手にどのように対処すればよいのか考えて、バランスのとれた最善の対処が出来るようになりたいと思います。

主催者であるDevLOVEのスタッフの皆様、監訳者お二方、参加者の皆様、会場を提供して下さった株式会社インターネットイニシアティブ様、ありがとうございました。