本ブログの更新について
本ブログの更新は2016年3月31日をもって終了しました.ありがとうございました.
posted by みっちぃ (管理人)
2011年08月01日
オープンソースソフトウェアを使って商売をすることについて
やっぱり,自分にはいまだに解せないないなぁ.昨日友人と話していたときに,なぜオープンソースソフトウェア(OSS)を使って商売ができるのか,という話を私から出した.私が論点にしたいところは,OSSを使って商売する側(ここでは単にベンダという)がOSSの品質に起因するリスクをどうやって担保できるのかということ.友人のいうように,ある程度の規模が大きいベンダだったら,OSSのバグに起因する事故でも事態を収拾できる能力があるだろうし,OSSのソースのメンテナンスも自社の人員を割り当ててできるかもしれない.でも,そもそも事故が起きてからでは手遅れなのだし,メンテナンス自体にもコストはかかる.そうならないように事前評価するといっても,その評価にも相応のコストがかかるわけで・・・.言い換えると,規模が小さい企業にとっては大きなリスクを抱えることになってしまうのではと思ったのだ.もっと別のメリットを理解する必要があるのではないだろうか.
1つの観点として大事なのは,有償のサポート付きのソフトウェアを使ってベンダが商売しても,その品質に起因するリスクは決してなくならないということ.事故が起きたときには責任を転嫁できるかもしれないが,事故の発生を未然に食い止めることにはならない.むしろ,ソースが開示されている面で,事故の発生を未然に防ぐことが可能になるという考え方をすれば,OSSを使って商売することはよい働き方なのかもしれない.
この議論の結論はリスクとバリューのバランスにあるのだとは思う.しかし,その塩梅はどうやって判断しているのだろうか.どうも,その点がわからない.
1つの観点として大事なのは,有償のサポート付きのソフトウェアを使ってベンダが商売しても,その品質に起因するリスクは決してなくならないということ.事故が起きたときには責任を転嫁できるかもしれないが,事故の発生を未然に食い止めることにはならない.むしろ,ソースが開示されている面で,事故の発生を未然に防ぐことが可能になるという考え方をすれば,OSSを使って商売することはよい働き方なのかもしれない.
この議論の結論はリスクとバリューのバランスにあるのだとは思う.しかし,その塩梅はどうやって判断しているのだろうか.どうも,その点がわからない.
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/47061378
この記事へのトラックバック
http://blog.sakura.ne.jp/tb/47061378
この記事へのトラックバック
これは「むしろ,ソースが開示されている面で,事故の発生を未然に防ぐことが可能になるという考え方をすれば」という点について、あの場での私の回答です。ソースが公開されているため、公開APIを使うだけでなくソースレベルで品質を確認できるという。
また、議論の前提として「メジャーバージョンが1未満」という前提があったこともないと議論がかみ合いません。MySQLをサポート無しで運用している(それなりの)大規模システムは既に多数あるはずですから。
OSSを使っていてバグを踏んだ場合、もちろん障害にはなりますが大抵は回避方法があるので回避します。オフィシャルでの回避方法だったりそれがない場合はそのAPIを使わなかったり。
実際自分が参加したプロジェクトでHibernateのバグを踏みましたが、次期バージョンで直ったもの、うまく動かないので別の方法を使ったもの両方ともありました。
根幹にかかわることでなければさほどのダメージにはなりません。上記のHibernateの問題も、トータルで回避・対策に1日もかかりませんでしたし。
根本的なバグについてはメジャーバージョンにかかわらず利用者が多いOSSは既に報告があげられているのが大半です。また、バージョン番号はプロジェクトによりポリシーが異なるのであまり参考にはなりません。メジャーバージョンが上がると内部実装をごろっとかえるというのは普通にありますし、その場合一から出直しなわけですから。
ん〜.やっぱり,「リスクとバリューのバランス」ですよね.
Hadoopとメジャーバージョンの話は私の疑問を考えるうえでわかりやすい事例(オープンソースだし,メジャーバージョンが1未満)だから出しただけのことで,メジャーバージョンが1未満の事例にこだわっているわけではありません.
Hibernateの事例をあげてくださいましたが、利用者が増え、積極的にソースアップデートが行われ、ノウハウも蓄積されたOSSは、ご指摘の通り問題解決も早くリスクも小さいと思います。Hadoopもメジャーバージョンが1未満の割には完成度が高いといわれていますし。
私の興味は、まだ芽を出していないようなOSSに対する「リスクとバリューのバランス」の見極め法というか判断の仕方です。リスクが大きくても自分の興味や信念で積極的に採用していくこともあると思いますが、事業化しようとすると急に難しくなるのではないかと思います。大手なら思い切って投資出来るものでも、中小には難しいことが多いのではないかと思うのですが、どんなもんでしょうね。