【レポート】

The 2005 O'Reilly European Open Source Convention - MySQLとRuby on Rails、それぞれの美学を語る

    末岡洋子  [2005/10/21]

    オランダ・アムステルダムで開催されている「The 2005 O'Reilly European Open Source Convention」(主催:米O'Reilly)、3日目を迎えた20日は、誕生1年のプロジェクト「Ruby on Rails」とエンタープライズに進出しつつあるMySQL(スウェーデン)という2つのオープンソースの代表者が基調講演に登壇した。

    プログラマをハッピーにするRuby on Rails

    「ハッピーじゃない開発者にたくさん会ったことも(Railsの)きっかけ」とHeinemeier Hansson氏。26歳

    Ruby on Railsはデンマークの開発者で37 signalsのパートナー、David Heinemeier Hansson氏が作成したRubyによるWebアプリケーションフレームワーク。同氏は今年8月、米GoogleとO'Reillyが催したBest Hackerに選ばれており、会場は拍手とともにHeinemeier Hansson氏を迎えた。

    Heinemeier Hansson氏はまず、「(Ruby on Railsは)プログラマをハッピーにする」と切り出す。「革新的な特徴はない。小さな改善を集めたもの」というRuby on Railsは、新しくないところが親しみやすさにつながり、開発者の人気を集めているようだ。

    Heinemeier Hansson氏がRailsフレームワークをリリースしたのは2004年7月。すでにダウンロードは15万件に達しており、趣味ベースだったRubyは実際の製品に利用されつつある。Ruby on Rails誕生のきっかけとなったHeinemeier Hansson氏のプロジェクト管理ツール「Basecamp」をはじめ、43ThingsのRobot Co-opなどの企業が利用している。現在、世界55カ国から400人を上回るプロの開発者が利用しているという。

    Ruby on Railsが「プログラマをハッピーにする秘密の特徴」は3点ある。まず、1点目は、「Convention Over Configuration(規約は設定に勝る)」。通常のXML設定ファイルによりWebアプリケーションのコンポーネントをまとめ、設定していく方法では時間がかかった。属性の繰り返しは5、6回あり、変更を加えた場合は5、6か所変更することになるが、Ruby on Railsでは単一の規約に沿うことで自動的に反映されるので、一度で済む。これはコード量の短縮、開発時間の大幅な短縮を意味する。

    2点目は、変更がすぐに反映される点。Ruby on Railsではコンパイル、実装、サーバの再スタート、コード生成はない。モデル・ビューに変更を加えると、コントロールスタックがすぐに機能し、アプリケーションに反映される。クラス定義でコードを実行でき、変更して確認する作業がスムーズになる。

    3点目は、Webアプリケーションを稼働させるのに必要なものが完全に揃っている点。モデル、ビュー、コントロール、JavaScriptがパッケージ化されており、コンパイル言語などは必要ない。全部Rubyで実現できる。

    Heinemeier Hansson氏は、「これまでの技術は、まとめる部分に責任を持たなかったから、開発者は細かい作業に多くの時間を割いてきた。われわれは全体に責任を持つ」と述べる。そして、「柔軟性は過大評価されている。その代償は多すぎる」と述べ、機能をたくさん入れていろいろなことを可能にするのではなく、機能をある程度取り込まないことでRailsに沿って開発作業全体を体験できる、とまとめた。

    Ruby on Railsではコードは大幅に短縮される

    オープンソースで収益を得ることを目指して

    オープンソースの代表格、LAMPの"M"にあたるMySQLは、星の数ほどあるオープンソースプロジェクトの中でも先輩格のひとつといえるだろう。同社は現在、ビジネスではエンタープライズ分野を目指しており、経営ではIPOを目指している。同社のコミュニティ担当副社長のKaj Arno氏は、収益を目指す企業としてのMySQLとコミュニティとの関係について語った。

    MySQLは2001年に投資を受けて非公開企業となった。現在約170人の社員を雇い、給与を払っている。ユーザー数は600万人。同社では、オープンソースライセンスと商用ライセンスのデュアルライセンスをとっており、オープンソースのMySQLに共感するコミュニティと付加価値に対価を払う顧客がいる。Arno氏はこのバランスを保ちつつ、収益性を上げることが目標だと語る。

    投資を受ける企業であるMySQLは、投資会社に対してコミュニティを説明する際「テスト、バグの報告、将来の機能につながるフィードバックをもたらすメリットがある」と説明しているのだという。MySQLはその代わりとして、「MySQL Server」「MySQL Cluster」などの製品とチケットシステムのサービス、GUIツールを無償で提供している。有償で提供しているのは、認定・トレーニング、コンサルティングサービス、技術サポート、そして商用製品などだ。

    「最大の目標は、コミュニティを満足させることではない」というArno氏、だが、「最大の目標である収益性は、コミュニティを満足させることなく実現できない」とも続ける。「オープンソースを追求しながら収益を得ることは可能だと示したい」(Arno氏)。

    2001年にMySQLに加わったArno氏

    同社のもう一つのコミュニティへの取り組みが、ソフトウェアのコアバリューだ。具体的には性能、信頼性、使いやすさの3つとなる。たとえば同社では、インストールから起動まで15分というルールを定めているが、「自分たちのルーツに忠実であるため、この3つを犠牲にするのであれば、新しい機能は追加しない」とArno氏は言う。

    現在、顧客:貢献するユーザー:無償で利用するユーザーの割合は1:10:1000で、収益をもたらさず貢献もしないユーザーが圧倒的多数を占めている。「データベースのIKEAを目指す」というArno氏(IKEAは、安価な家具を取り扱う郊外型チェーン店)。収益を得るためには、圧倒的多数を占める層を活用することが必要となるが、今後の課題としては、フォーラムやメーリングリスト、Wikipediaなどを活用し、やりとりに拡張性を持たせること、ドキュメンテーションや翻訳など、周囲の人々が貢献しやすいような仕組みを作ることを考えているという。

    関連記事

    関連サイト

    新着記事

    特設サイトの情報

      人気記事

      一覧

        イチオシ記事

        新着記事

        特別企画

        マイナビニュースマガジン