io.js と Node.js の和解への道

io.jsがリリースされてから早二ヶ月が経過しました。

f:id:yosuke_furukawa:20150305170754p:plain

io.js Evangelistの一人になりました。 @yosuke_furukawa です。

Node.js側との和解の状況へある程度話が進んできたようなので、ここらへんで一回振り返りましょう。
また、io.jsの最新情報は io.jsブログ にもまとまっております。そちらもご一読ください。よろしくお願いいたします。

io.js リリースからここまでの話

リリースから少しして、結局どうなっているかわからない人達もいると思います。一旦復習を兼ねてリリースから今まで何が起きているのかを解説します。

Node Foundation が設立

io.js がリリースされた後にちょうど NodeSummit と呼ばれる大きめのNode.jsカンファレンスがありました。
このカンファレンスでは、 Joyent の CEO である Scott HammondNode Foundation を設立するという表明がありました。

f:id:yosuke_furukawa:20150305160402p:plain

この Node Foundation の中で、Node.js のコミュニティサイドを重視して、透明性とイノベーションを行いやすくするために、オープンガバナンスモデルを構築すると発表されていました。

つまり、io.js側のオープンガバナンスモデルと同じ対策を取るという話ですね。

またその他にも 法律面や資金調達面に関わるビジネス面での問題に対処するディレクターボードと開発促進をメインとした技術面での問題に対処する Technical Committee (技術委員会)を構築し、そこに Joyent の Node Core Teamを含めていく、という話になっています。組織運営についてはLinux Foundationにも助言を求めているようです。

またこの Node Foundation の中には Joyent の他にも IBM, PayPal, MicroSoft, Fidelity, SAP といった著名な企業が名を連ねており、これまでの Joyent だけの体制から変更するという発表がありました。

io.js側にも Node Foundation に join するように打診

io.js側からも報告があり、Joyentチームから、このNode FoundationのTCに join してもらい、分離された状況を解消しようとする話を受けたという話が発表されています。

io.jsとnode.js Foundation

f:id:yosuke_furukawa:20150305161040p:plain

そこでの話を引用すると、

io.jsをより良くすることができるとすれば、node.jsとの分離したプロジェクトの将来についての疑問に終止符を打つことだと思います。分離についてはみんな早く水に流したいと思っています

Joyentとの話し合いは現在進行形で続いています。node.js Foundationがテクニカルガバナンスモデルを作り次第、io.jsのGithub issueにてio.jsがnode.jsに戻るべきかのディスカッションを行い、io.jsのTCミーティングで、私達が作り上げたガバナンスモデルにもとづいて意思決定を行います。

とのことです。

そして今

io.js の issue にReconciliation Proposal (和解提案書) という名前のissueが上がりました。これによると、node.jsとio.jsの統合を前向きに検討するという形になっています。このissueはまだドラフトで、統合に関して意見を言うなら今です。issue opener であり、 io.js Evangelist の mikeal も意見を求めています。

いくつかかいつまんで説明すると、

1. バージョン管理体系は v0.10, v0.12 などは node.js のまま、さらに io.js は v1.x 系をそのまま使う、つまり io.js v1.x ≒ Node v1.x とする
2. v0.8, v0.10, v0.12 のサポートはコミュニティが求め続ける限り行う予定。長期サポート用に新しく Long Term Support Working Groupを作る。
3. 次のNodeを作るための開発版として CANARY と呼ばれる nightly build 版を作成、開発者が簡単にCANARY版を確認できるようにする
4. 開発リソースも node.js と io.jsが統合、ローカライズやWebsiteを含めた各種WGはほぼ全て Node (node.js + io.js) に移管される

という感じです。

詳しくは翻訳した提案書があるので、それを見て、意見があれば教えて下さい。

和解プロポーザル

統合に関しての io.js コミュニティの反応

基本的にはみんな賛成の方向です。分離してもいいことはないし、io.js をそのまま next version として採用してくれるのであればこれまでの貢献が無駄にはならないので、賛成する人も多いです。

もちろん反対意見もあって、Eran Hammer という hapijs のオーサーは
何故私がNode Foundationを支援しないのかといった内容の記事が上がっており、反対意見が出ています。

彼の意見を少しだけ翻訳しておきました。

Node Foundation には反対だ。
僕は OpenSocial Foundationや OpenID Foundation 、 Open Web Foundation の立ち上げもやったけど、そこでわかったことがある。
そういう Foundation には、無駄な悪魔がいやがる。


すぐに Foundation っていう奴はお金と絡みたがるんだ、Foundation自身の継続運用に必要になるからな。


IBM の Todd Moore が Node Foundation について口にした最初の言葉だけど、「 Node Foundation の次のステップとして専属の executive director を雇うべきだ」って言ってたんだ。Moore氏がどんなつもりでそのポジションについて言及しだしたのかは知らないけど、完璧に間違っている。


考えてもみなよ、もし Foundation に従事する人を雇ってしまったら、その人の人生は Foundation の財政状況の安定性に関わってくるわけだろう。そうなってくると、必然的に Foundation の中で財布もっているやつの意見がでかくなるよな。


もちろん全ての Foundation にいる金持っている奴らが悪魔だったり不要だったりするわけじゃない。ただ多くの Foundation でそうなっていく例があったっていうだけの話だ。

ちょっとニュアンスをラフにしてますが、こんな勢いのコメントを言ってます。
統合云々というより、それを運用する Node Foundation に信頼が置けないという話なんだと思います。



日本だと、Localization WG としてここで意見を募集してます
賛成であれば +1 を、 反対意見があれば -1 を言ってもらえれば、検討します。