2014年05月14日

プログラマは酵母菌じゃないんだよ

オープンソースという言葉が一般化して、多くの人が使うようになってきたというのは感慨深いものです。ただ、同床異夢というというか、オープンソースというものに対していろいろな誤解とか先入観があるように感じます。僕もまだ業務としてプロダクトを作ってオープンソース化したことはないので(パッチとかpull requestはよく送っている)、至らぬところもあるかもしれませんが、そのようなものがあればTwitter等で補足してもらえればと思います。

手間を減らすために、公開すればいいじゃんという誤解

今あるコードをgithubにgit commit, git pushすればすべてがバラ色、というのがよく言われることです。公開するのはコストゼロというのは本当なんでしょうか?少なくとも僕が知る限りではそうではありません。ざっと考えてこのぐらいの項目のコストがかかるかなぁ、と考えています。

  • 社内の特許などの技術に関わるコードがないか、調査したり書き換えるコスト
  • 外部ベンダー製のコードがあれば、書き換えるもしくは契約を結びなおすなどのコスト
  • 社内のビルド環境に特化した部分などを書き換えるためのコスト
  • ドキュメント整備のためのコスト
  • ソフトウェアの資産=人件費の減価償却が終わってなければその精算

Windows規模ともなると、コードの調査だけで億の単位でお金がかかるんじゃないかな、と思います。マイクロソフトの場合は、互換性のためにバイナリバージョンを厳しく保持しているので、ビルドシステムも特殊かと思いますし、コンシューマOS、サーバとの共通コンポーネントなどもあって、必要なものを切り出してビルドできるようにするのも一苦労だと思います。公開したら即make worldコマンド一発でヒャッハーというわけにはいかないと思います。

企業内でもう使うことがないプロダクトか、そうじゃないかにもよって多少は変わってきます。企業で今後も使っていく場合には、開発の主体・意思決定を内部に持ったまま、外にだすことになります。当然、外部のユーザから来た要望に対して、企業の方針とすりあわせて方針を決定したり、変更が許容できない場合は今ある機能でどうやってそれを実現していくのかを説明するコストが必要となります。カスタマーサポート的なコストですね。エンジニアを数人張り付きで提供するならそれだけで数千万の費用になったりしますよね。それ以外にも法務のチェックとか、いろいろな部署に協力をお願いすることになるんじゃないでしょうか。

これらのコストをマイクロソフトが負担した上で公開しろ、というのは交渉としては成り立つ要素はゼロですよね。Blenderみたいにコミュニティで必要なお金を寄付で集めて、企業から買い取るという形で実現した例もあるので、お金を用意できればプロダクトによっては可能性はゼロではありません。Windows XPの場合にそれができるかというと、有料で延長サポートというのを行っているし、組み込み向けのWindows XPはまだ使われているので、マイクロソフトとしては「まだ生きている」という扱いなので門前払いじゃないですかね。

あと、すでにマイクロソフトはカーネルのコード等は契約を結んだところには公開しているみたいです。シェアードソースイニシアチブとかでぐぐると出てきます。ただ、問題はカーネルだけではないでしょうし、ネットワーク系のところとか、ブラウザとか多岐に渡りますし、そのすべてのコンポーネントのコードを公開しているかどうかは不明です。

コミュニティのためのコスト

続きを読む
posted by @shibukawa at 05:01 | TrackBack(0) | 日記 はてなブックマーク - プログラマは酵母菌じゃないんだよ
検索ボックス

Twitter

www.flickr.com
This is a Flickr badge showing public photos and videos from shibukawa.yoshiki. Make your own badge here.
<< 2014年05月 >>
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
最近の記事
カテゴリ
過去ログ
Powered by さくらのブログ