ノウハウや知見を共有

国内初のRails関連イベントが開催

2010/11/25

 日本国内初のRuby on Rails関連イベント「RailsDevCon2010」(Rails Developers Conference)が2010年11月21日に、コミュニティ主導で開かれた。会場となった東京・青山の日本オラクル本社オフィスには100人を超える開発者が集まり、運用ノウハウや、開発プロジェクトの進め方に関する知見の共有を行った。

photo01.jpg 当初80人の予定で参加を募ったところ、初日で予定人数を超え、参加枠を120人に拡大したという

 Railsの普及を受け、海外ではRailsConfがRubyConfを規模の点では凌(しの)ぐと言われいる。一方、日本国内では、これまでRuby関連イベントとしては「日本Ruby会議」や「RubyWorld Conference」など、Ruby全体をテーマとしたものは存在したが、Ruby on Railsに特化したものはなかった。

大規模なソーシャルアプリでもRails

 最初の発表は、日本のRails界で知られた増井雄一郎氏による「渡米して感じたこと」。自身の1年間の渡米体験から得られた日米のエンジニアの働き方の違い、言語の壁、給与相場、ビザ取得の難しい面などについて語った。印象的だったのは、米国では会社との勤務条件など働き方について交渉の余地の幅が大きいということと、Rails開発者でGit、Cucumber、NoSQLなどが普通に使えるエンジニアであれば、シリコンバレーでは10万〜17万5000ドル程度(1ドル83円として830万円〜1400万円)の給与が相場であるということ。増井氏は、ちょうど帰国したばかりだったものの、エンジニアとして再び米国に職を得て、渡米予定という。

 ドリコムでソーシャルゲーム開発デザイン部に所属する大仲能史氏は、「とあるソーシャルアプリの開発運用」(資料へのリンク)と題して発表。リリース後1カ月で10〜30万利用者に届くことすらあるというソーシャルゲーム開発の裏話は、Rails案件といって想像する一般的な業務アプリなどと大きく規模が異なる。使っているプラグインも、HTTPレベルのトラフィック監視のための「net-http-spy」、マスタ・スレーブのDBを扱うための「masochism」、分散環境でログを集約する「scribe」など、聞き慣れないものが多かった。

 Ruby on Railsといえば、処理速度やスケーラビリティに課題があると言われることが多いが、大仲氏の講演を聞くと、むしろDBやキャッシュなどのミドルウェアをどうシステムとして構成するかが重要で、言語やWAF(Web Application Framework)自体は問題ではないことが分かる。そして、Ruby on Railsでも、こうした際に必要となるプラグインは多く存在し、そのノウハウをドリコムが蓄積しているという事実が多くの聴講者の関心を引いたようだ。RailsのORMを使いながらも、可用性やスケーラビリティを保つために、結局、MySQLもRDBMSの“リレーショナル”な使い方をしなくなり、だんだんとGoogle App Engineのように進化しているという。大仲氏は、ソーシャルアプリを作るようになってみて、GAEの制限の意味がよく分かるようになったといい、自分たちのシステムがGoogleのものに似てきてるということは、正しい方向性なのだろうとコメントしていたのが印象的だ。

“技術的負債”を貯めこむな!

 フリーランスプログラマの赤松祐希氏は、「Railsプロジェクトを成功させるために現場ができること」(資料へのリンク)と題して講演。コードは動くだけではダメで、品質の低いコードは借金のようなものだと指摘。これがプロジェクトが進む中で順次、“返済”されないのは危険な状態だと語った。同様に使われない機能の実装や、納期に追われる中でついテストを書かずに実装だけ進めたケースも、「技術的負債」が蓄積している状態で、「後で返そうと思っても、そのときはたいてい別のタスクに追われている」と、赤松氏は現場のエンジニアらしい洞察を語った。

 こうした負債を抱え込まないために、週の20%の時間を返済に当てる、バージョン管理システムを使う、TDD(Test-Driven Development)を取り入れて、「息を吸うようにリファクタリングをする」などの解決案を提示した。

 さらに、赤松氏は「Railsらしさ」をチーム全員が理解することの重要性も指摘する。Railsらしく書くことで、重複やムダが減るからだ。例えば、本来モデルに書くべきロジックがコントローラにどんどん追加されてしまい、テストが書きづらく実行しづらい状況になる例など、Railsらしさを守ることで未然に防げる負債もあるだろうと話した。

テストや外部サービス連携のノウハウも

 永和システムマネジメントの諸橋恭介氏は、「現実の世界で “はじめる!Cucumber”」(資料へのリンク)と題して講演。Cucumber(キューカンバ)は、自然言語に近い形で振る舞いを記述できるRails向けのテスティングフレームワーク。ユニットテストを記述するRSpecなどに対して、Cucumberによるテスト記述は、人間が読み書きする仕様書に近く、受け入れテストにも使えるものとして注目されている。国内では日本語による情報不足などから広く普及していない面もあり、諸橋氏の講演は実用的ノウハウとして聴衆が聞き入っていた。

 TISの社内ベンチャーカンパニー、SonicGardenの松村章弘氏は、「Rails Add-onsで楽々開発 - youRoomを題材に -」と題して講演(資料へリンク)。同社が運用するグループ向け情報共有サービス「youRoom」の開発経験を元に、Railsで便利に使えるSaaSサービスを紹介。Railsはプラグインによる拡張が容易で、豊富に揃っているが、それだけでなく、最近ではAPIベースの利用を前提とした「Add-ons」と呼ばれるサービスも増えているという。Railsアプリのホスティングサービスとして知られる「Heroku」でも、Amazon RDSやWebsolr、Redis、Pusherといったミドルウェアに近いサービスがAdd-onsとして提供されるなど、直接プロジェクトにファイルを加える従来のプラグインと違う機能連携の仕組みとして、APIベースのWebサービスは注目かもしれない。

 RailsDevConは、現場エンジニアたちによるノウハウの共有という目的が大きかったようだが、最後のセッション「初めてがRuby」は、Rubyと教育というテーマでパネルディスカッション形式で行われた。実際に新人教育を行っているフリーランスの松田明氏とEY-Officeの吉田裕美氏が、教え子らと対談した。

 この記事を書いている記者(@ITの西村賢)も、「Rails情報源の歩き方」と題して30分の発表をさせていただいた。英語圏ではRails関連の情報は多すぎるぐらいだが、なかなかどこを見たら良いのか分かりづらい面もある。そこで、定番の情報源やプラグインの探し方、良質のスクリーンキャストを中心に、サイト情報をまとめてみたものだ。これは近いうちにリンク集の記事としてまとめて掲載したい。

関連リンク

(@IT 西村賢)

情報をお寄せください:

Coding Edge フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

キャリアアップ

- PR -

注目のテーマ

ソリューションFLASH

「ITmedia マーケティング」新着記事

TikTokは若者よりむしろ大人にこそ向いているかもしれないと考えられる理由
TikTok For Businessが「X世代白書〜理由が必要なX世代へ、架け橋を。〜」を発表。若者向...

2021年の国内動画広告市場は前年比142.3%の成長、コロナ禍の落ち込みから反転――サイバーエージェント調査
インターネットを通して配信される動画広告の年間広告出稿額推計とこれからの市場規模推...

対Amazon包囲網も? ポストCookieにおけるCriteoの勝算
Criteoが3億8000万ドルでIPONWEBを買収する。サードパーティーCookie廃止はアドテク企業...