Update (2011/9/11): this post is picking up again 8 months later, I’ve written an update as of where we stand.
Jason Hoffman (Chief Scientist, Founder at Joyent) has posted some good questions to me, based on my original nodejs and V8 post. Let me summarise Jason’s questions and comments into three key messages:
It’s Joyent’s responsibility that NodeJS runs well period. We’re not afraid of a language VM. [...] actual node.js committers (who all work at Joyent) know quite a bit and have pretty good relations with the V8 team.
That’s a very honourable goal and perfectly within Joyent’s capabilities and track record. I am not debating that.
If there are actual technical problems with V8′s reliability or ??? and these affect the use of node.js in production then I’d like to see details.
The discussion is not really whether I have technical production problems or not with V8 (within NodeJS); all software has bugs. My issue is about project governance. Let’s say such a problem affecting reliability exists and that Joyent fixes it by developing a critical patch for V8, a patch that the upstream maintainer does not deem it necessary to merge. For how long would Joyent maintain and test such patches?
Another aspect of governance: intellectual property rights.
My point: it’s not whether Google’s V8 project is open or not, it’s that since governance of V8 may become a problem in the future, it requires a solution now so that large organisations can put their full weight behind NodeJS. Joyent’s weight behind NodeJS is necessary, but not sufficient. I prefer addressing the problems in the code.
node.js is only implemented on V8 but that’s only because we’re going to focus on making node.js awesome first. [...] After all, we are still working on getting it to 1.0
Open source software is commonly designed to make it easy to replace parts or components that may be at risk of being legally tainted or patent encumbered (e.g. mono’s architecture as an example of isolation). I would put V8 in the same bucket of “risky parts”, although for different reasons. Given the lack of definition on Google’s V8 project governance, and the current tight coupling between node and V8, I wonder how realistic it will be to implement a different VM post-1.0 if we haven’t got the right layer of abstraction pre-1.0. Or perhaps the problem (the reassurance of governance) can be addressed by working under the umbrella of a foundation that ensures such governance.
Let me end by saying that I am still as committed as ever to NodeJS and that I really believe in Joyent’s engineering strength to make NodeJS 1.0 a reality. Joyent is putting their money where their mouth is. We know they are working hard making node awesome.
[...] fernandez-ruiz random code dumps « Java AIO (NIO.2) vs NodeJS Answering Jason on V8 governance and impact to NodeJS [...]
[...] Answering Jason on V8 governance and impact to NodeJS on February 5, 2011 at 9:30 [...]
[...] has a followup reply here. It’s also worth checking out the discussion on Hacker [...]
[...] [This is a response to this blog post by @olympum, with the rest of the thread being here and here.] [...]
[...] bruno fernandez-ruiz random code dumps « Answering Jason on V8 governance and impact to NodeJS [...]
[...] 提到NodeJS的发展,人们首先会想到它所依赖的Javascript引擎V8,该引擎最初是Google用于自身浏览器Chrome中,作为一款为 Web浏览器设计的Javascript引擎,其可靠性是否适应于服务器端呢?几个月之前,NodeJS东家Joyent的创始人Jason与 Yahoo!副总裁Bruno就V8和NodeJS的关系发起了一场讨论。最近Bruno又在博客中提到了一些近况,他表示Yahoo将继续支持NodeJS的发展,目前团队内部的成果非常显著,但暂时不能过多透露。至于他最初对V8的依赖担忧,Bruno认为形势发生了改变。首先,Google对V8的缺陷修补非常支持支持和迅速。再次,Mozilla已经着手准备创建基于Spidermonkey的NodeJS实现。Yahoo!和Joyent正在密切合作发展NodeJS。 « 上一篇 | 下一篇 » [...]