Statement on the history of node-webkit project

3,032 views
Skip to first unread message

Roger Wang

unread,
Nov 28, 2016, 7:03:56 AM11/28/16
to nw.js

I wouldn't like to spend time on this, but as the previous co-maintainer of node-webkit project, keeps spreading misinformation about his internship work in the node-webkit project on his blog post[1], zhihu.com[2] and conferences[3][4], I feel obligated to clarify the confusion and misleading message.

The node-webkit project started under an innovation program in 2011. As node-webkit was becoming popular, we decided to hire an intern student to work with us. I interviewed and recruited Zhao Cheng in 2012.  We managed Cheng, just as what we would always do to an intern with good potential (with Node.js experience, but barely on Chromium/WebKit), providing coaching, reviewing code, etc. During his 6 months internship, I mentored him on daily technical things (including git tips, bug fixing, making releases, architecture adjustment, etc) and interaction with open source community. As he was pursuing opportunities out of China, we encouraged him to do work which can be seen by the community, including announcing release notes and communicating with users in GitHub issues. These work would help on his goal. Later Atom project lead from GitHub contacted us to learn how we integrated Node.js and Chromium. Then Cheng ceased his internship, and left the team, although we offered him a permanent position. Later on we got to know he joined GitHub for the Atom Shell project. Following the resignation process, his work was transferred to me, including communication with users in the issues he owned, and announcing the last release before he left. All of those went smoothly.

So we feel shocked and sad when we saw that, node-webkit was described as a "solo developer" effort, his daily work was interfered brutally, he "couldn't stand it a bit" and left the project after he lost his "autonomy" on the project.

On the contributions to the node-webkit project: The Node integration with Chromium was done before Cheng joined the project. He went on to fill the missing part of packaging and native GUI library. As Kevin wrote in his comment, the code for node-webkit project spans across multiple repositories: the Chromium repo, the Node repo, the v8 repo, the WebKit repo, the breakpad repo and the node-webkit repo. The last one hosts the packaging code, native GUI library and serves as the home page. It is the only one known by most people, and it is the only one referred in Cheng's post to represent his contributions, which is misleading. Furthermore, the Intel copyright notices were removed and were replaced by GitHub copyright notice in Electron when pieces of code was copied and derivative work was made from some code of node-webkit (see Kevin's post[5] for the links to source).  We appreciated Cheng's contributions, but it is really a self-deception that he tried to position himself as a game changer of node-webkit during his internship.

In April 2016, it was asked about the origin of the Electron project and its relationship with the node-webkit project, Cheng answered that Electron "was rewritten from scratch", and it's not even "inspired by NW.js". Kevin (co-maintainer of NW.js project today) replied[5] to correct him with verifiable information. Later on, Cheng wrote the post on his blog and start spreading it on zhihu.com. And it appears that he talks about the same at conferences from his slides.

That said, we still respect the Electron project, no matter whether it is a derivative work of node-webkit or not. I hope we could close this here with this final statement, and get back to the tons of work ahead.


Roger Wang

node-webkit creator and maintainer

[1] http://cheng.guru/blog/2016/05/13/from-node-webkit-to-electron-1-0.html

[2] https://www.zhihu.com/question/36292298/answer/102418523

[3] https://twitter.com/hkdennis2k/status/801958264938184704

[4] https://twitter.com/serrynaimo/status/801960379664330752

[5] https://github.com/electron/electron/issues/5172#issuecomment-210697670


Reply all
Reply to author
Forward
This conversation is locked
You cannot reply and perform actions on locked conversations.
0 new messages