お使いのブラウザは最新版ではありません。最新のブラウザでご覧ください。

CNET Japan ブログ

オープンソースソフトウェア(OSS)の開発と企業のかかわり

2004/12/02 09:07
  • このエントリーをはてなブックマークに追加

プロフィール

umeda

シリコンバレーで経営コンサルティングを行なう傍ら、ベンチャーキャピタリストとしても活躍する梅田望夫さんが、IT業界の先を読むのに役立つ英文コンテンツを毎日紹介していきます。これを読めば、英語と業界動向を読む力が同時に身に付くはず(このブログの更新は2004年12月30日で終了しました)。
ブログ管理

最近のエントリー


[ゲスト] 吉岡 弘隆 hirotaka yoshioka
12月1日(水)〜12月3日(金)までの間、梅田望夫さんの代わりに吉岡弘隆さんがゲストブロガーとして登板します。
吉岡さんのプロフィール:
ミラクル・リナックス取締役技術本部長兼CTO。日本ディジタル イクイップメント、日本オラクル(米オラクルよりの出向)を経て現在に至る。YLUG(横浜 Linux Users Group)でカーネル読書会を主催。OSDL Japanアドバイザリボードメンバーでもある。

CNET Japanの読者の皆さんはおそらくOSSについても深い理解をしているだろうし、わたしがここで論をかさねても、それほど新しい発見があるかどうか疑わしいが、それでも、あえていくつか記してみたい。

ひとつはわたしがビジネスとしてOSSにかかわっているので、当事者としての視点があるだろうということ。もう1つは歳はとっているものの「ギークあがり」の人間で、そちらからの視点を提供できるかもしれないということ。その2点においていくつかお題を提供したい。

なぜOSSを利用するのか?

純粋にユーザの視点から言えば、OSSであろうが商用ソフトウェアであろうが、何らかの価値を提供しないものは選択されない。その作り方がバザールモデルであろうが、伽藍モデルであろうが関係ない。結果として提供される価値によって選択される。もちろんソフトウェアを選択する時の評価尺度は多次元なので、コストであったり、サポートであったり、あるいは狭義の品質特性(機能性、信頼性、使用性、効率性、保守性、移植性)であったり様々である。

一方、作り手あるいはソフトウェアを提供する立場で言うとまったく違った視点がある。

商用ソフトウェアの場合、作り手は特定の企業であり、その企業が開発に必要な資源(モノ、金、ヒトなど)を調達し、研究開発をして、マーケティング、営業、サポート、コンサルティングその他、様々な価値を提供する。顧客あるいはパートナー企業というのが、ある種のビジネスコミュニティを形成するが、価値を提供するいわゆる開発元というのは特定の企業になる。

一方、OSSの場合、開発元はいわゆる開発コミュニティなのだが特定の組織というよりもコアメンバーと呼ばれる人々を中心に構成されていて、その周辺でビジネスをする、例えばディストリビュータとよばれる会社や、SIerあるいはハードウェアベンダなどが、様々な形でかかわりを持っていて様々な人や組織が価値を提供している。つまりOSSのまわりには、それを利用していろいろな価値を提供しビジネスをしている組織が存在する。

すなわちOSSというのはボランティベースで全てが開発されていて、ここで言うボランティアというのは、自発的意思で行動するという意味ではなく、その開発によって直接的な報酬を得ていないという意味で使っているが、報酬は別の仕事で得るというような古典的なモデルとはちょっと違う開発モデルが見えてくる。

古典的モデルとここで言うのは、夜中にハッカーがしこしこ趣味でOSSを作っているというようなイメージである。

誰がOSSを開発するか?

牧歌的な古典的OSS開発モデルから企業が様々な形でOSS開発に深くコミットしたモデルへ移行しつつある。それはどのようなモデルか?

古典的なOSS開発モデルは、コア開発者が楽しいからプログラムを作る、あるいは、ある問題を解くために自前でプログラムを作って、それを公開したところ少なからづユーザがついて、いろいろ要求をとりいれていくうちに雪ダルマ式に機能が充実していき、ある閾値をこえたところで多くの人に利用されるようになりボランティア開発者が自然発生的につどうようになりバザールモデルがまわるようになる。通常開発者はOSSの開発によって直接的な金銭的報酬は受けない。パッチを書いたところで誰からもお金をうけないという意味である。

古典的なモデルでの「驚き」は、人々が金銭的な報酬を受けないで品質の高いプログラムをなぜ書くのかという一点に集中したような気がする。

多くの人は品質の高いソフトウェアを開発するためにはカネが必要で、それなくては持続的に品質を向上させることは不可能だと信じているように見える。ソフトウェア製品を製造販売している会社は多かれ少なかれその教義を信じているし、ビジネスの世界では非常に判りやすい議論である。

エリック・レイモンドは、人々はなぜプログラムを書くかという問題に対していくつかのヒントを与えたが、それでもわたしは10人プログラマがいれば10通りの答があるとしか言えないと考えている。人それぞれ。人さまざま。

LinuxをはじめとするOSSの「驚き」は、ロードマップもなければプロジェクトマネージャもいない、カネもなければ、資本も組織もないないないづくしのプロジェクトにもかかわらず高品質のソフトウェアを継続して開発しつづけている「事実」である。従来のソフトウェア工学や経済学では説明しきれない現象がそこにあるという「事実」であった。

バザールモデルがうまくまわっているプロジェクトがあるという事実をここでは無条件にうけいれることにする。どのようなメカニズムでそれがうまくまわるかは深いりしない。

この開発モデルは不思議なことに非常に効率よく機能した。そしてビジネスマンがそれを「発見」してオープンソースソフトウェア(OSS)と名付けた。1998年ころの話である。

OSSとビジネスモデルがきってもきれないのは、その生い立ちによる。昔はフリーソフトウェアと呼んでいたのだが、ここではそれについてはふれない。

ネクタイをしめた人達がOSSを発見してビジネスとしてコミットをした時、誰が価値を創造するかという問題は新しい段階にはいったように感じる。

Linuxを例にしてみよう。

ソースコードをfindとgrepというコマンドを利用して検索する。コメントから電子メールのアドレスらしきものを検索し誰がコードを書いたかを見てみる。そうすると、IBMやHPといったハードウェアベンダに属している人々が大量にコードを書いていることを発見する。もちろん古いコードには個人で貢献したコードはあるがカーネル2.6においては大手ハードウェアベンダーやディストリビュータに雇用されているハッカーが書いたコードが多数である。

Linux SymposiumというLinux開発コミュニティでもっとも権威があるシンポジム での発表者で一番多いのもIBMである。

古典的な開発モデルとは違って、少なくともLinuxの開発においては、企業に雇用されたプログラマが仕事としてサラリー(金銭的な報酬)をうけて開発しているのである。

ソフトウェアの開発には金がかかる。OSの開発には途方もない金がかかる。そしてその開発費を回収するのには大変難しい。ひらたく言えばなかなか儲からない。独自OSを開発維持するのは大企業と言えどもしんどいのである。であるならば、今ここにあるオープンソースを利用して開発費を最小化するという戦略は非常にリーズナブルである。付加価値をオープンソースの機能そのものではなく、その上のサポートやコンサルティング、あるいはソリューションというところに見出すという戦略である。

プラットフォームとしてのOSの価値はOSの機能そのものにあるのではなく、その上で動くアプリケーションあるいはソリューションの数である。従って独自OSを提供するというのは市場において圧倒的、独占的なシェアを持っていない限りペイしない。商用Unixの悲劇は各社が独自路線に走った事である。各社が自前でハードウェアを作っていた関係上各社のハードウェアの特長を最大限生かそうとすれば独自化する他なかったのであるが結果として誰にとってのメリットにもならなかった。

Linuxはコモディティハードウェア(PCアーキテクチャ)を前提するという偶然(?)によって分化のワナから逃れられている。それとも企業はUnixの経験から何がしかを学んだのだろうか?GPLというライセンスのおかげか、あるいはリーナスの人柄のおかげか。いづれにせよUnixの悲劇は今のところ繰り替えされていない。

Samba国際化

昨年度IPA(情報処理推進機構)の支援を受けSamba国際化プロジェクトをおこなった。Sambaというのはウィンドウズ互換のファイルサーバ、プリントサーバ機能を提供する定番のOSSである。

うちのような小さい会社の場合、開発費を捻出するのはなかなか大変である。しかしIPAの支援をうけたおかげでバリバリの精鋭プログラマをフルタイムでアサインできた。弊社として考えられるベストのチームを作った。

プロジェクトについては自分の日記に書いたので参照してほしい。

Samba国際化のプロジェクトはオープンソースなので開発した結果は共有財産になる。開発したものがコミュニティで共有されるので、企業とコミュニティは対立するのではなくWin-Winの関係になる。

古典的な開発モデルを持つOSSは今でも多数あるが、LinuxやSambaのようなOSSは古典的なOSS開発モデルから企業が開発にコミットするという開発モデルに徐々に移行しつつあるようにあるように思う。

ビジネスモデル

OSSの場合、ライセンスがフリーなので、ライセンス収入をあげることは極めて難しい。そのため開発費をどう回収するかという問題が常に発生する。

一つの解はデュアルライセンスにしてフリーのライセンスと商用(有償)ライセンスをもうけることである。MySQLなどがその戦略をとっている。

しかしコミュニティベースで開発されたOSSの場合、1つの組織ないし会社が全ての権利を有していないので、そのようなライセンス形態をとることはできない。

Linuxの場合ハードウェアベンダーにおいてはハードウェア売上、サポート売上、SIなどOS単体でなくLinuxビジネス全体で回収するモデルである。

結局、個々のOSSに対する開発モデルは結局のところOSSのライセンス収入ではなくビジネス全体で回収するというモデルである。

開発モデルをより加速し、OSSの価値そのものをより高めるために1つのヒントが、Samba国際化のように政府の支援をあおぐというモデルである。政府がOSSをどのように開発支援するかというモデルについてそろそろ積極的に議論をする時期に来ていると思う。

古典的なモデルであれば、趣味で好きでやっているんだから政府の支援なんてそんなものはいらないおせっかいである。勝手にコードを書くのはいいけどだからといってどーだという話ではない。そしてそのような牧歌的なフェーズを卒業しつつあるのが、Linuxをはじめとする社会的共通資本としてのOSSなのではないかというのが、わたしの設問である。

明日は最後に「社会的共通資本としてのOSS」について考えてみたい。

※このエントリは CNET Japan ブロガーにより投稿されたものです。朝日インタラクティブ および CNET Japan 編集部の見解・意向を示すものではありません。
運営事務局に問題を報告

最新ブログエントリー

個人情報保護方針
利用規約
訂正
広告について
運営会社