Skip to main content
Deno 2.2 is here with built-in OpenTelemetry, Lint plugins, node:sqlite, and more 🎉️
Learn more
Org chart of Oracle.

Oracle justified its JavaScript trademark with Node.js—now it wants that ignored

Yesterday, Oracle filed a motion to dismiss in response to Deno’s petition to cancel its “JavaScript” trademark. But instead of addressing the real issue—that JavaScript is an open standard with multiple independent implementations—Oracle is trying to stall the process and sidestep accountability.

Recap

Two years ago, I published a blog post asking Oracle to release the JavaScript trademark as a goodwill gesture. That got no response.

Last September, I published an open letter co-signed by Brendan Eich (creator of JavaScript), current TC39 editors, and over 16,000 JavaScript developers. Many were shocked to learn that Oracle even claimed ownership of JavaScript. Oracle still said nothing.

So last November, I filed a formal petition with the USPTO through my company, Deno, to cancel Oracle’s “JavaScript” trademark. Among other things, we pointed out that in 2019, Oracle renewed its trademark by submitting a screenshot of the Node.js website—a project I created—as proof of use, despite having no affiliation with it.

Our petition challenges Oracle’s trademark on three grounds:

  • Genericness – JavaScript is a widely used programming language, not an Oracle product.
  • Abandonment – Oracle does not control, maintain, or enforce the trademark.
  • Fraud on the USPTO – Oracle submitted misleading evidence in its renewal filing.

You can read the full peititon for cancellation here.

Oracle’s defense: “That specimen? Just ignore it”

Oracle has finally responded—but only to the fraud claim. Their argument: Yes, we used a screenshot from Node.js, but it doesn’t matter because we also submitted another specimen.

Here’s how they frame our petition in their filing:

“The Petition ignores completely that Oracle submitted two specimens. Moreover, on its face, the Petition fails to allege a claim of fraud as to the renewal in Class 42 because the specimen it touts as ‘fraudulent’ was submitted to support only the renewal in Class 9 and not Class 42.”

Oracle’s JavaScript trademark covers both software products (Class 9) and technology services (Class 42). Their argument is that the Node.js screenshot was only for Class 9 and that their primary specimen—an Oracle JET page—was sufficient for both.

“Petitioner has not challenged and could not plausibly challenge the JAVASCRIPT Extension Toolkit page from Oracle’s own website that Oracle submitted as its primary specimen in Class 9 and as its only specimen in Class 42.”

This raises serious questions:

  • If Oracle’s primary specimen (a screenshot of Oracle JET) was truly sufficient, why submit a screenshot of Node.js at all?
  • Oracle JET isn’t even a standalone JavaScript runtime—it’s a UI toolkit.
  • Has anyone even used Oracle JET, or is it just there to keep the trademark alive?
  • Oracle never explained why it used a screenshot from a project it had no connection to.

They even go as far as saying:

“Oracle does not concede that submission of the Node.js Specimen was improper. However, the Board need not address that question in connection with this Motion.”

Oracle isn’t denying that it used my project—it’s just arguing that it doesn’t matter. If a company misrepresents something in a legal filing, you’d expect them to acknowledge it. But Oracle hasn’t even addressed it. No apology. No explanation. Just an attempt to move past it as if nothing happened.

I created Node.js and released it under the MIT license to benefit developers, not so it could be used as a legal pawn by a Fortune 500 company. Now, instead of correcting their misrepresentation, they’re using it to stall the case.

Specimens used in 2019 renewal

Delaying the process

Oracle waited until the deadline to file this motion, delaying their response to the real issue: whether “JavaScript” is a generic term.

“This motion tolls the deadline to otherwise answer the Petition, and Oracle requests that the Board reset the answer deadline to at least 30 days after the date of its decision on this motion.”

Oracle won’t even discuss whether “JavaScript” should remain a trademark until they’ve finished dragging out this fraud claim.

This legal maneuvering puts us in a difficult position:

  1. Agree to drop the fraud claim, letting them get away with misrepresenting their trademark renewal.
  2. Spend months fighting this procedural issue before even getting to the real debate.

The real issue

The situation is self-evident to anyone working in tech: Oracle did not create JavaScript. Oracle does not control JavaScript. Oracle should not own the trademark for JavaScript.

JavaScript is defined by an open specification (ECMA-262), maintained by TC39, an industry group with representatives from Google, Apple, Microsoft, Mozilla, and others. The major implementations of JavaScript are in the browsers built by Mozilla, Google, Apple, and Microsoft. Oracle has no role in JavaScript’s governance, implementation, or evolution—yet it continues to wield this trademark as a legal cudgel.

This isn’t just about JavaScript. If Oracle can hold onto this trademark, what does that say about the trademark system as a whole? Should corporations be able to warehouse trademarks indefinitely, even when they play no meaningful role in the things they claim to own? Even when they commit fraud to maintain them?

A company with no role in JavaScript’s past or future has no right to control its name.

How you can help

  • Share this post and spread awareness about Oracle’s trademark claim.
  • Sign the open letter at javascript.tm
  • If you’re a journalist, reach out—I’m happy to talk.

Let one thing be clear: we are not intimidated by Oracle’s legal maneuvering, and we will continue to fight this case on its very strong merits. You can follow us here to be kept up to date.



Organizational Charts by Manu Cornet Organizational Charts by Manu Cornet





Discuss on HN