Ruby anywhere 〜Ruby普及のためにアプリケーションができること

Rubyという言語を普及させるための話を,キラーアプリケーションであるtDiaryの実例をふまえながら話されていた.ここでもいかに「普通の人」が重要だということが強調されていて,機能の洗練さよりも,敷居の低さの方が重要だという.tDiaryプラグインを引き合いに出されていた.
この話を聞いていて,Javaのライブラリを思い出してしまった.Swingのあの洗練された構造はあきらかに「普通の人」を拒絶している.(.Netではない)VisualBasicのあのブラックボックスが多いがとりあえず作れてしまう構造は,多くをプログラムに割きたくない「普通の人」にとってはいいということ.それが,普及に大きな差をわけていることを考えた.
ただ,だからといって,こういう構造は大きく複雑なプログラムを作るには向かない.そういうVプログラムを「普通の人」が作ってしまうこの業界の現状も同時に思った.

Amrita2 の紹介

発表はもんたメソッド.テンプレートエンジンというものを初めて知ったため,前半の思想的な部分のプレゼンテーションが全く理解できなかった.しかし,実例が出てきたあたりから面白さがわかってきた.構造化された文書,ようするにXMLなのだが,これの構造だけを記述し,データを埋め込みたい部分にid属性を設定しておく.あとは,データをRubyのハッシュに格納し,このテンプレートとidと結びつけることで,文章を作ってしまうというもの.表組みをつくるときに見通しのよいXMLが記述できそうだ.
ハッシュの中身を配列にすると,繰り返し適用される.その配列の中をハッシュにすることもできるため,これで,構造化された文書に対してうまく適合するデータを記述できる.
おもしろいと思うが,idで関連づけるのではなくて,XPathで要素を特定できるようにしてもらえたり,文字列に対してgsub!が実行できたりすると$1とか$2などの無粋な引数を使わなくてもいいような気が.そんなことをすると遅くなるのかな?

ActiveRecord を詳しく

午後のセッションはRailsばかりで困ってしまったのだが,このセッションはおもしろかったし,with_scopeによるプログラムの簡略化と,それにつながるacts_as_viewは,私の興味を十分に引くもので,Railsをやってみたくなった.
ViewのようなものがRailsで書けるようになるということは,一つのテーブルに登録されているデータを,別のテーブルに持って行く場合や,逆に,別のテーブルから持ってきていたものを同じテーブルにまとめてしまう場合など,テーブルの配置をアプリケーション側に影響をさせることなく変更することができる.
ようするに,設計後の変更が楽になるわけで,STI(継承関係のテーブル)の階層を新たに作ったり,逆に継承関係を断ち切って,別のテーブルにしてしまうこともできる.(union allクエリーは書けないかもしれないから別のテーブルにするのは難しいのかな?)