ひがやすを blog このページをアンテナに追加 RSSフィード

Information

2009-07-09

そろそろSeasar2のガラパゴス戦略について語っておくか

Slim3ファーストリリース(今月中)の前に、Seasar2の開発で、どのような戦略をとったのか話しておきます。


2005/11/8、Seasar2.3のバージョンリリースしました。このバージョンから搭載されたのが、コンポーネント自動登録機能です。設定ファイル無しで開発できるようにする機能ですね。Springだと2.5から搭載されたcomponent-scan

Spring2.5のリリースは、2007/11/19なので、実に2年以上差があります。オープンソース世界では、みんなが手の内を見せ合っているので、誰かが新しい機能を実装した場合、それが良いものであれば、ライバルも直ぐにそれを取り入れ、それほど機能差がつくことはありません。

なぜ、従来のXML地獄を解消する「コンポーネント自動登録機能」を実装するまでの期間にこれほど差が出たのか、それはガラパゴス戦略のせいなのです。


Seasar2.3のリリース後、ドキュメント英語化もすすめていて、JavaOneでの発表後、海外ユーザ向けにもアピールするつもりでいました。で、JavaOneに行ってみての感想は、Springは、かなり海外マーケットでは、人気があるなということでした。

がちんこで、勝負しても、手の内を見せ合っていれば、技術的な優位性は短期間で追いつかれてなくなってしまうので、最終的には、今のマーケットリーダー(Spring)が勝ち残るだろうと判断しました。


そこで、私のとった戦略は、日本国内に専念し、技術的な優位性を保ったまま、日本DIコンテナマーケットリーダーになることです。2006年当時は、日本DIコンテナは、まだマーケットが小さく、リーダー不在だったから。

国内に専念し、情報も全部日本語にすることで、日本ユーザーにとっては敷居が低く、海外には情報が流れなくなります。隔離された環境で、独自の進化を遂げるガラパゴス戦略です。


独自の進化といっても、海外情報はほとんどリアルタイムに手にすることができ、その上で次の手を考えることができるので、独自の進化というより、相手の打つ手を見たうえで自分の手を打ち、自分の打った手は相手に見えない状態といったほうがいいかもしれません。


これは、ずるい。

そう思われた方も多いと思いますが、これも1つの戦略です。グローバルマーケットを狙わないというリスクも当然あります。その当時、Seasar2が生き残る可能性がもっとも高いと思う戦略を選んだのです。

後、三菱東京UFJSeasar2採用したというニュースを流せることがわかっていたのも、国内に専念しようと思った大きな理由の1つです。国内で有利に働くからね。


じゃ、今の日本DIコンテナマーケットがどうなっているかというと、オープンソースプロダクトは、シェアとか調べるのが難しいのですが、2008年5月に某大手調査機関の調査ではSeasar2のほうが上Linux Foundation Japanが調べたOSSの利用実績でもSeasar2(S2Dao)が◎にたいして、Springは○となっているので、一応、客観的には、Seasar2の方が多いのではないかと思います。


今のSeasar2ユーザは、SAStrutsを使っている人が多いのではないかと思いますが、上記の数字は、SAStrutsが使われるようになる前の話なので、今はさらにシェアはあがっているはずです。


後、Seasar2を評価するときに、HOT reloading(アプリケーションサーバを立ち上げたままで、変更したクラスリロードする仕組み:前はHOT deployっていってたけどTomcatのHOT deployと同じようなものと勘違いされることが多いので言い方を変えました。今後はHOT reloadingというようにします)なしで評価しちゃだめですよ。

SAStrutsが使いやすいのも、HOT reloadingによるさくさく開発ができるからってのが大きいから。


Seasar2.3とSpring2.5は大体同じようなものですが、Seasar2.4からは、HOT reloadingができるようになっているので大きく違います。


Seasar2ユーザーは、自信を持ってSeasar2を使っていいよ。フルスタック(Seasar2, SAStruts, S2JDBC)でそう簡単には追いつかれないから。


日本携帯ガラパゴス化が失敗したのは、日本マーケットが飽和し、高い開発費をまかなえなくなったから。オープンソース世界だと、開発費が高くつくことはない(Seasar2はもう開発をしていないので維持費はかなり低い)し、マーケットが飽和してもかまわないので、ガラパゴス戦略は必ずしも悪いものではないのです。

akiranekoakiraneko 2009/07/09 20:03 HOT deployの用語変更は賛成です!
OASなどもHOT deployという機能がありますが、そのアプリが完全に止まってから再Deployされる機能ですので。。。(クラスタリング前提)

Cool deployの名称はそのままでしょうか?

higayasuohigayasuo 2009/07/09 20:18 Seasar2のドキュメントまで変えると混乱すると思うので、サイトはそのまま残していますが、blogやSlim3ではHOT reloadingにするつもりです。
COOL deployという言い方は、Slim3ではなくなっています。そもそもdeployしないので。
Seasar2ではdeployするので別に間違っちゃいないんですよね。

ゲスト


トラックバック - http://d.hatena.ne.jp/higayasuo/20090709/1247116463
おとなり日記