Deno vs. Oracle: Canceling the JavaScript Trademark
deno.com
deno.com
Oracle, it's time to free JavaScript (277 points, 70 days ago, 127 comments) https://news.ycombinator.com/item?id=41557383
Deno is filing a USPTO petition to cancel Oracle's JavaScript trademark (7 points, 3 days ago) https://news.ycombinator.com/item?id=42212949
Obviously, it looks like a pretty egregious case of Oracle-ness, but it's the job of Deno's lawyers to make it look like that. I'd be interested to see disinterested commentary.
As many people know, there are one-letter names of programming languages, why not a two-letter one? By calling the language JS, we remove the unnecessary association with Java, to which the language had and has no relation + we stop emphasizing the derogatory "Script".
And anyway, who cares what the programming language is called? Is it really the general public?)))
I don't think the community needs to fight and defend the name JavaScript - it's an extremely unfortunate name that is not worth the effort. This energy is worthy of a better use.
Oracle remains silent.
Well, no, still, acquiring names and doing nothing with them but cockblocking the industry, to then releasing them is not a hero move, regardless of the era.
And people do work at that intersection.
IMO Deno is the worst option of all new JS runtimes and taking on this fight kind of makes sense that way. If you can’t win mindshare, start a fight. I guess. (In my opinion they should have simply designed Deno to be NPM compatible, but here we are.)
`is:issue is:open npm` 467 open
https://github.com/denoland/deno/issues?q=is%3Aissue+is%3Aop...
`is:issue is:open label:bug npm` 199 open
https://github.com/denoland/deno/issues?q=is%3Aopen+is%3Aiss...
For the record, "NPM compat" probably does include many feature requests (legitimately), not just bugs.
However, the point that deno is npm compatible is still true, contrary to what you originally said.
Aside from that, Node compliance is a much larger ball of wax than simple NPM compliance, and as far as I know Deno is not there and will not be there for some time.
My gripe with Deno is the choice to hard-fork. That is core to the idea; so, we will disagree. No big deal. As a result of Deno's choice, people now have many runtimes to choose from: Bun, LLRT, and the one I have written on top of GraalJs, Elide. Many others, too.
Most of these runtimes shoot for as full NPM / Node compat as they can muster without intolerable contortions in the code. Why? Because a ton of software out there runs on NPM, or on Node APIs. Users think of server-side JavaScript and Node as the same thing -- this is not true, Node is both the "Node APIs" and the V8-based engine underneath it.
But this is exactly what I mean: for Deno to claim that Oracle does not "use" the JavaScript trademark requires a completely ignorant stance about technologies like GraalJs. Last we benched, Elide (on top of GraalJs) outperformed Deno by a wide margin. Oracle has invested years of engineering work into it. Enough that it outperforms Node (by a long shot) and Deno, and typically ties with Bun. So why does Deno get to say what happens with the trademark? It makes no sense to me.
I might even agree that Oracle should not own it or control it the way they do. I don't know. But I do know that Deno's demands are Node-centric, and the JavaScript ecosystem is simply way bigger than that.
Node compatibility is interesting because it's only useful until it's not. If all these other runtimes eat away enough at node's share, it won't make sense to be compatible with node anymore.
Just to finish the original discussion, as much as I love talking about the current state of js (heh) runtimes: the mention of graaljs supports deno's argument. Oracle, for whatever reason, used "js" rather than "JavaScript".
> Ryan has been outspoken about what he thinks he did wrong with Node and why he decided to make Deno
Yes, I explained that we disagree. Clearly he also feels he was wrong about Deno’s NPM choices since he reversed course and added NPM support. So Ryan agrees with me, I guess.
> If all these runtimes eat away enough at node’s share
WinterCG and other efforts are formalizing APIs that can be shared across runtimes. Which is great. Many of these APIs are at least informed by, if not outright standardized versions of, Node APIs. They are here to stay.