LT編

Ruby会議では初めてLTでしゃべらせてもらったので、その時の内容を書いておきます。
(当日資料が日本Rubyの会の関西Ruby会議01のページにアップされました-こちら)

技術的な話では全く無くて仕事で使ってる実情の話。当初は導入事例を書きたかったんだけど、大人の事情で整理が間に合わなかったので簡単な経緯だけになったのが残念。

何をしゃべったか以下にまとめました。LTだとこれ以上詳しくというのは時間が足らないですね。

      • -

私の部署でRubyでの開発に着手したのは2001年。2002年に1号システムを本格的に導入。それから7年ほぼRuby専門で開発してます(私はSEなので実際のプログラムはほとんどできませんが...)。当時はRailsも何も無かったのでcgi.rbを使ったライブラリをつくりながら、提案/開発/導入をして、現在稼働してるユーザは、日本全国で270団体強になりました。

どうしてRubyか?と考えてみると当時PHPASPPerlJavaでもそれぞれ開発してみたけれど、規模感にマッチしていて日本語処理が比較的楽な言語がRubyだったということです。図書のシステムとか考えると半角カナが大量に合ったりするのでそうしたものを扱うにも何とかなってよかった事がありました。

あと、erbがいい時期にでテンプレート化しやすくなった事とtDiaryの最初のバージョンがちょうど2001年頃にでていてRubyってなに?というプログラマーと勉強してゆく教材として非常によかったこと、などが初期要因でした(ソースは印刷して一生懸命読みましたね。私はプログラマーではないのでamazonプラグインhnsからの移行バッチを書いた位なんですが)。

最後に最近になってdRubyがシステム間の連携処理で使えるように自分たちがこなれてきています。XML-RPCその他でも連携はしていましたが、dRubyの便利さを説明すると、連携先のシステムもRubyに切り替えるという事まで起きてきています。

いい事ばかりじゃなくて、困ってる事も幾つかあります。

まずRuby1.6。このバージョンで稼働している資産がまだかなりいるので次の移行をどうするか悩やましいところです。

あと、1.8.5から複雑になった本体のメンテナンスも悩ましいです。1.8.5,1.8.6.1.8.7と微妙に互換性が無いものが並列に存在しているので、それぞれいつメンテナンスが停止されて、いつ乗り換えるのかが非常に悩ましい状況です。システムがTestUnitやRSpec等で書かれたテストケースを完全に持っていれば移行テストも楽なのでしょうけれど、なかなかその辺は難しいです。

さらに1.9.1が控えている今となっては、1.8.6は1.9.1又は1.8.8が出たらメンテナンスが停止されるのか?Railsはいまも1.8.6が対応となっているがRailsとの関係は?と悩ましさは増しています。

他にはRails1.X系のシステムの移行も同様に悩ましいところです。

今後としては、全体のシステムをRailsに移行してゆくのか、他のフレームワークになってゆくのかは難しいですが考えていく必要がある所です。機能もありますけど、フレームワークのメンテナンス期間が一つのキーになると思います。

もう1つとしては難読化があります。1.9.Xでいずれ対応されるのかもしれないですが、ソースを提供できない(したくない)ようなシステムの場合、なんらかの手法で難読化できるとさらにRubyの利用範囲が広がるのではないかと思っています。

最後としては、SI会社としては使わせてもらっているばかりではなく、どうしたらコミュニティーに成果をフィードバックできるかを考えながら進めてゆくのが今後大切なのではないかと思っています。

      • -