One of the things Joyent accepted when we took on the Node project was to provide resources to help the community grow. The Node project is amazing because of the expertize, dedication and hard work of the community. However in all communities there is the possibility of people acting inappropriately. We decided to introduce trademarks on the “Node.js” and the “Node logo” in order to ensure that people or organisations who are not investing in the Node community misrepresent, or create confusion about the role of themselves or their products with Node.

We are big fans of the people who have contributed to Node and we have worked hard to make sure that existing members of the community will be unaffected by this change. For most people they don’t have to do anything they are free to use the Node.js marks in their free open source projects (see guidelines). For others we’ve already granted them licenses to use Node.js marks in their domain names and their businesses. We value all of these contributions to the Node community and hope that we can continue to protect their good names and hard work.

Where does our trademark policy come from? We started by looking at popular open source foundations like the Apache Software Foundation and Linux. By strongly basing our policy on the one used by the Apache Software Foundation we feel that we’ve created a policy which is liberal enough to allow the open source community to easily make use of the mark in the context of free open source software, but secure enough to protect the community’s work from being misrepresented by other organisations.

While we realise that any changes involving lawyers can be intimidating to the community we want to make this transition as smoothly as possible and welcome your questions and feedback on the policy and how we are implementing it.

This entry was posted in Uncategorized. Bookmark the permalink.

19 Responses to Trademark

  1. Laurie says:

    Is there any particular forum or address to which questions or feedback should be submitted?

    * here in the comments
    * on the node users’ mailing list
    * directly to Joyent

    I don’t have a comment to make, just want to make sure others know where to send theirs 😉

  2. Bert says:

    Any sort of use in commerce, such as promoting a Platform-as-a-Service or professional services offering by using the Node.js mark, does require a written license agreement.

    Why the hate for commercial node-related activities? I mean, barring someone from selling node.js hosting when he is actually offering node hosting sounds pretty unreasonable.

    Joyent reserves the right to modify this policy at any time, or to revoke any and all permissions or consents in the policy. If Joyent notifies you that your use of any trademark is detrimental to any Joyent trademarks or is otherwise unacceptable, you must immediately cease using the marks, and may not use the marks, even if their use would otherwise be acceptable under this policy.

    Please remove that before the Oracle buy-out …

    • vicapow says:

      “Please remove that before the Oracle buy-out …”

      lol, agreed

    • Tom Hughes-Croucher says:

      Hi Bert,

      I want to emphasise that we did a lot of work to make this policy protect the community. Sometimes you have to risk looking like the “bad guy” in order to do something of value. This is one of those times, so let me explain our position:

      There isn’t any hate for commercial services for Node. It’s more that we are extra nice to Open Source. Unlike Apache and other foundations we are making it possible for a large class of projects to use “Node.js” (within the guidelines) that aren’t directly controlled by the project.

      However, because commercial entities are the most likely to pose a risk to the community we are taking the standard approach to trademarks and requiring such entities to get an explicit license for their activities.

      This doesn’t mean that those licenses have to cost money, or that we aren’t providing them to companies making legitimate uses of Node. In fact before we published the policy we reached out to the commercial vendors in the Node community that were using the mark and offered them a license.

      With regards to our ability to change the policy or terms of the policy, it’s essential that we are able to react to how people use (or rather misuse) the trademark. Unless we have some ability to make revisions then we are limiting our ability to maintain the mark and protect the work done by the community.

  3. John McLear says:

    I know getting a trademark pushed through can be a costly/boring task so I want to congratulate Joyent on taking the bull by the horns and showing the cowmunity they are serious about defending and supporting the NodeJS brand.

  4. Juan Silva says:

    What about the “Build with Node.js”, does that falls under the Nominative Use or Non-Trademark Use exception?

  5. Jorge says:

    Does this have anything to do with the Node in NodeSpider ?

    • Jorge says:

      Er, spiderNode (@mozilla) I mean.

      • Tom Hughes-Croucher says:

        Hi Jorge,

        it doesn’t have anything to do with SpiderNode. We have been working on getting this policy right for a while.

        We are really supportive of the work Mozilla are doing. We think that the work the various JavaScript VM manufacturers is great for JavaScript and that healthy competition is good for everyone. We’ve enjoyed a great relationship with Google and the V8 team and we look forward to working with Mozilla too.

  6. Kyle Drake says:

    I have to say with honesty, this is pretty awful. First you setup a framework to deny competition in the cloud hosting market with this gem:

    Any sort of use in commerce, such as promoting a Platform-as-a-Service or professional services offering by using the Node.js mark, does require a written license agreement.

    Gee, I wonder how Joyent will respond to my request to compete with them? Lack of diversity and competition in the cloud hosting market will surely improve the adoption of this project!

    Then, you give them the permission to go completely rogue and setup a framework that could allow an Oracle (or Joyent for that matter) to come in and trash the place:

    Joyent reserves the right to modify this policy at any time, or to revoke any and all permissions or consents in the policy. If Joyent notifies you that your use of any trademark is detrimental to any Joyent trademarks or is otherwise unacceptable, you must immediately cease using the marks, and may not use the marks, even if their use would otherwise be acceptable under this policy

    Then you tell all the Node.js developers to dump a creepy legal notice on the bottom of all of their code:

    In order to help clarify that you are the source of the module (and so that we don’t get support requests for your code, or vice versa) you should add the following disclaimer, or one with similar legal effect, in an appropriate location: “Node.js is an official trademark of Joyent. This [module, event, etc.] is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.” Appropriate locations could include your website, a README file (if you have one), or source code headers.

    I think it’s about time you guys started looking at the sanity of handing this project over to Joyent, before it turns into a specialized tool for one company only and we get the Oracle Eats Java disaster all over again. This dependency on a single company largely killed Java, and there is no reason Node.js couldn’t go down the same destructive path. You don’t need them, you can get plenty of support for this project independently.

    • Tom Hughes-Croucher says:

      Hi Kyle,

      If you’d read the blog post you’d have seen that we’ve already granted licenses to a lot of commercial entities and did so before we shared the details of the policy with the community at large.

      We’ve spent a lot of time working on this policy in order to get it right. Trademarks are tricky business and anything with lawyers seems scary. We aren’t trying to injure anyone in the community which we value. However we do need to put protections in place so that anyone that really might injure the community doesn’t have the ability to do so.

      People that work with open source often react strongly to anything involving licensing. This stuff is necessary to protect the community and it’s good name. Pretty much everyone at Joyent has a long background in contributing to open source (mine personally is 10+ years). So while it might be easy to demonise Joyent because we are a company, we ask that you give us a chance to continue to display our good intentions to open source with our actions. We feel like we deserve that.

  7. Bill Barnhill says:

    This sounds so much like what I perceived Sun doing with Java that it’s sad. I was in Java very early with everyone very jazzed, just like Node.js has been. That is jazzed until Sun started a policy that I and others perceived as protectionism.

    I have nothing but respect for Joyent, they were the first PaaS for Node.js, but this really just sounds like commercially motivated action not community brand protection.

    The definitions of commercial seem vague enough that basically its left up to Joyent for corner cases – if they don’t object you’re fine (unless they do later). Such corner cases might be Open Source projects that are also used commercially, blogs with advertising, books and perhaps more.

    I have a Node.js blog, does that mean I need to get a revocable license to operate from Joyent? Would that color whether I talk about Joyent at all on the blog – possibly.

    Let’s say I have a Node.js app that looks very promising – if there’s any hint of the perception that apps hosted on Joyent are more likely to get approved than apps on another PaaS then people would be likely to avoid the risk and go with Joyent.

    When enforcement of laws is on a discretionary basis there is much more room for abuse. For example, how will you treat Duostack – who just went into public beta?

    I am not a lawyer, but I’d think this is unenforceable for several reasons: (1) the Node.js name has been in widespread use and I imagine was in widespread use before Joyent filed; (2) node.js is also the name of a file and within the node.js source code – it miight be tap dancing a lot but maybe that means that node.js, which is a portion of the source code, is licensed under the Node license and therefore cannot be trademarked.

    A portion of that license (emphasis mine) is:
    Permission is hereby granted, free of charge, to any person obtaining a copy
    of this software and associated documentation files (the “Software”), to
    deal in the Software without restriction, including without limitation the
    rights to use, copy, modify, merge, publish….

    Trademarking Node.js seems to me to violate the spirit of the license at least, if not the letter of it.

    Node.js is Open Source and you folks are already the leaders in both Node.js development and the Node.js PaaS services so please lead by example. For me what you are doing right now is equivalent to the guy with the tent right at the well in the bazaar (the best spot) trying to get more by clearing the bazaar and building a fortress around the well.

    • Bill,

      There are 4 very different things involved in dealing with IP in the United States.

      1. Software Licensing
      2. Patents
      3. Copyright
      4. Trademark

      The trademark in this case applies to the logo and wordmark “Node.js”. As such, it also affects derived terms that use the derived term as a reference to the software product.

      You can fork the Node.js project, make any changes you want, use it for commercial or non-commercial use, and even release it under a different name, provided that you follow the very permissive terms of the MIT.

      Legally speaking, if Joyent didn’t police the trademark on “Node.js”, there would be nothing stopping someone else from releasing some very different non-node thing and calling it “Node.js”, implying a relationship with Joyent, Ryan, or us in the community, in such a way that harms the project.

      As far as the prior use of the logo and wordmark, the trademark is held by the original developer of the thing, but goes away if it is not policed. Ryan is the original owner, and he has chosen to transfer that ownership to an entity with the resources and incentive to protect the node community from bad actors. A trademark policy that says “Anyone can use this for anything” is not enforceable, legally speaking.

      Again, it’s really really important to stress this point: Trademark is fundamentally unlike patents, software licenses, and copyright. You simply cannot use the same sort of reasoning about them, because they’re governed by remarkably different laws, and apply to different sorts of things.

      • Also, it’s worth noting that the Node.js trademark policy is *far more permissive* than the Apache trademark policy. If node *was* handed over to a conservancy like Apache, the first order of business would be to send C&D letters to Nodejitsu, nodecamp, howtonode, nodester, and probably ask all of the thousand or so module authors to rename our “node-foo” github projects to “foo-plugin-for-node”.

        Our first order of business, with this license and in general, is to protect and encourage the node community to grow in the least restrictive way possible, while still being protected from infection by those who would look to capitalize on its popularity at the expense of those of us who make it great.

        Joyent knows full well that if node is polluted or corrupted, there’s nothing worth protecting, and the good parts of the community will simply rename and move on. You can worry about Joyent turning evil some day, but it’s very unlikely that they’ll turn *stupid*. It is actually a very good thing to have a corporation in a position where their long-term greed aligns with our community’s continued success.

  8. Bill Barnhill says:

    Thanks for the response Isaac.

    I definitely feel less worried after your explanation. The scenario of C&D letters to Nodejitsu, nodecamp, howtonode, nodester, and probably ask all of the thousand or so module authors to rename our “node-foo” github projects to “foo-plugin-for-node” that you mentioned was one of my worries.

    I agree that it would be stupid on Joyent’s part and that doesn’t fit with what they’ve done so far or who they are from what I’ve seen so I was surprised to see the trademark action – which could lead to such behavior. We’ve seen other companies do IPR related moves equally as stupid as a flood of C&D letters against all node-* projects and against their interests in the long term though.

    If you don’t intend to use this to restrict competition or to pick Open Source projects that get to use names like node-xyz, and the majority of folks are convinced of that, then the trademark would be a good thing for the defensive reasons you mentioned – and I apologize for getting on your case. Time will tell and I think you folks may turn out to be a Ben & Jerry’s or SAS kind of company rather than one of the other guys. Hope so.

  9. Jim R. Wilson says:

    Gentlemen, perhaps it’s time for a fork? Same project, new name. Thoughts?

  10. b5ggg9 says:

    You are very beautiful blog.

  11. Sounds like you guys are moving in the right direction. Be careful in times ahead!

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s