Hatena::ブログ(Diary)

yvsu pron. yas このページをアンテナに追加 RSSフィード

2009-02-01

進化し続けることはオープンソースにとって必須なわけではない

「毎日毎日動きを続けていると、適切な大きさの問題がつぎからつぎに生まれる」

「それさえ生まれれば、インターネット上にはそれを解決する人が現れる。新聞クロスワードパズルが載っていたらそれを解く人がいるように、それをみんなが解いていく」

それがオープンソースなんだと。

Tomatoさんのコメント

出展はこちら。

http://www.1101.com/umeda_iwata/2008-11-18.html

もともとは、Matzともっちーの対談から生まれたものですね。見たことある人も多いでしょう。目からうろこが落ちた人は少ないかもしれないけど。


Rubyについていえば、上記のことは正しいと思います。Rubyが成功しているのが一番の証拠。ただし、それがオープンソースのすべてなわけではない。オープンソースは、そんな一言で語れるものではない。


別に俺が正解を知っているわけじゃないけど、機能が足りないうちは、いろんな人にその問題を解いてもらうというのは有効だと思う。でも、ある程度機能が足りた後でも、適切な大きさの問題を提供するということは、常に機能を追加していく(もしかしたらバグも追加されるかもしれない)ということだから、コミッタをひきつける意味はあるけど、ユーザにとって余りうれしいことではない。

ユーザは、安定性を求めるものです。特にマジョリティーな人たちはそう。


コミッタというのは、オープンソースの中でもトップクラス重要なものですが、それ以上に重要なのは、実際に使ってくれるユーザです。どんなに良いプロダクトを作っていても、使う人がいなければ意味はない。


で、Seasar2冒険しないことによって、適切な大きさの問題は生まれなくなり、開発者が離れ、Seasar関連プロダクトが生まれなくなり、Seasarユーザも離れていく。使われないSeasarからさらに開発者が離れていく。

こういうスパイラルが発生するかもしれないことについては、どう考えますか?

Tomatoさんのコメント

もう開発するものがないなら、開発者は離れて言って良い。一つのプロダクトに開発者を囲い込むべきではない。離れていくというよりも卒業する感じかな。

例えば、DBFluteは、0.9.0のバージョンから、S2Dao(Seasar2)に依存しないようになりました。

http://d.hatena.ne.jp/jflute/20090201/1233414219

これは、私自身の願いでもあります。

DBFluteはそろそろS2Daoに依存しないほうがいいんじゃないかな - yvsu pron. yas


Seasarプロジェクトコミッタたちが、どんどん卒業していくのは、良いことだと思っています。そのほうが、オープンソースの発展に役に立つ。

開発するものがないなら、人も少なくていいのだから、コミッタは、どんどん卒業したほうがいい。


オープンソースは、コミッタを維持・増やしていくために存在するわけではない。ユーザを維持・増やしていくためにあるのです。だから、あるオープンソースプロジェクトが、もう十分な機能を備えたら、それ以上、無理に機能を増やす必要はない。それが、マジョリティーのユーザにとっては重要なのです。


開発者が少なくなるから、ユーザが離れていくわけではない。プロジェクトを維持していくために、必要な人数が確保されているなら、絶対的な人数の多さは、ユーザにとって関係ないのです。


一般的に職業としてのシステム屋というのは、冒険することが難しいです。

会社やその先の顧客に対し、そのリスクを負うことを要求しなければならないので。

#みんなが冒険好きというわけでは無い

開発者としては、冒険する、というか、最新技術に取り組んでいくということは理想ですが、現実的には、業務では実績のある枯れた技術採用される傾向が強いように思います。

ななしさんのコメント

こう思うユーザが多いと思いますよ。

Seasar大好きSeasar大好き 2009/02/01 13:05 S3でやることをS2でやろうとすると互換性がなくなるとおっしゃってましたが、そういう互換性の問題も考えつつユーザを不安にさせないように進化していくのがオープソースの重要な役割だと思うのですが・・・。

S2はとても気に入ってますが、一開発者が気に入ったところで会社にS2への移行をプッシュするのはなかなか大変です。特にJavaの世界では新しい技術へ移行の敷居が高いです。生産性の高さを実際に実演したとしても渋い顔をする人間もいます。
それにS2よりもSpringの方が圧倒的に寿命が長そうに見えますし、HotdeployのためにS2覚えるの?Javarebelが普及して無料で使えるようになっちゃったらS2に移行したコスト意味なくない?とか言われると正直言葉につまります。
JavaRebelは今でこそ有料で敷居が高いですが、様々なプロダクトがJavaRebelへの対応をしてきています。近い将来、S2なしでHotdeployが無料で普通にできるようになってもおかしくないような気がします。そのときにS2、S3は生き残れるのでしょうか?今からJavaRebelのノウハウをためといた方が後々得になるってことにはならないでしょうか?

Hotdeployの実装は、JavaRebelとS2では大きく違いますが、S2またはS3のHotdeployは無料であるということ以外に何か優位性はあるのでしょうか?

ひがさんが思っているよりユーザは不安ですよ。

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証