It’s time to free JavaScript (2024)
Posted by pavelai 8 days ago
Comments
Comment by ChuckMcM 8 days ago
So Netscape got visibility for their language, Sun got the #1 browser to ship their language and they had leverage over Microsoft to extortionately license it for Internet Explorer. There were debates among the Java team about whether or not this was a "good" thing or not, I mean for Sun sure, but the confusion between what was "Java" was not. The politics won of course, and when they refused to let the standards organization use the name "JavaScript" the term ECMAScript was created.
So there's that. But how we got here isn't particularly germane to the argument that yes, we should all be able to call it the same thing.
Comment by mixmastamyk 8 days ago
---
Edit: The above makes it sound like there was another scripting language:
> they had a small problem which was that this was kind of a competitor to their own scripting language.
Comment by raw_anon_1111 7 days ago
What was your involvement with Netscape?
Comment by ChuckMcM 7 days ago
I was doing security, networking, crypto, and a bit of Solaris support along with others. Basically I was a 'systems' guy vs a 'language' guy like James, Arthur and Richard. We all participated in the integration with Navigator and had weekly meetings with Netscape while we were doing that.
Comment by karel-3d 8 days ago
They have just 50k USD out of 200k USD they are raising. (No idea if that's appropriate; from the outside, it seems like a lot of money, but also they are fighting Oracle which has unlimited money, so, yeah)
For some reason it's not linked in the page itself.
https://www.gofundme.com/f/help-us-challenge-oracles-javascr...
Comment by arfar 8 days ago
Comment by permo-w 7 days ago
Comment by II2II 8 days ago
Comment by saghm 8 days ago
Comment by spullara 8 days ago
Comment by andirk 8 days ago
Comment by gosub100 8 days ago
If possible, I would like to see the good guys in these cases go down fighting, and try to delay proceedings and waste as much money of their well-funded opponents as possible.
Comment by GaryBluto 8 days ago
Comment by afavour 8 days ago
This broadcast was brought to you by the Better Things Aren’t Possible Party
Comment by GaryBluto 8 days ago
Comment by afavour 8 days ago
At the turn of the 20th century the working class and trade union movement created their own party, the Labour Party. At the time I’m sure many people said it would be impossible to challenge the existing duopoly, that it was a waste of time to even try, etc etc.
By 1929 they were the largest party in the House of Commons. In 1945 they won the majority. It wasn’t an overnight victory. But a lot of people put in a lot of hard work because they believed a better future was possible and their effort paid off.
Comment by filleduchaos 8 days ago
"History and politics" is very much the domain of people trying to do the impossible - to rewrite society as they will it. It would take a lot of either ignorance or disingenuity to claim that this has never gone well.
Comment by mihaic 8 days ago
Comment by GaryBluto 8 days ago
Comment by mihaic 8 days ago
Sometimes you'd be right, as some people use this as a shield to do whatever naive thing they want, and build sand castles. But I don't think this is the case here. Society needs some level of potentially useless effort, otherwise the things that are barealy possible are never attempted because they are so close to the line.
There's also plenty of causes for which people can mobilize themselves, we don't all need to jump on the ones that are highly likely to succeed.
Comment by pessimizer 8 days ago
Comment by some_furry 8 days ago
Comment by GaryBluto 8 days ago
As a sidenote, Regarding your comment on my perceived lack of pragmatism, I'd point you to a definition: "dealing with things sensibly and realistically in a way that is based on practical rather than theoretical considerations", which I'd say my comment very much was. Winning against a company that has succeeded in part due to government favouritism isn't realistic.
> In which case: maybe take your own advice and give up on changing anyone's mind?
I post on HN because it is a public forum and I wished to share my thoughts, not to change people's minds.
Comment by some_furry 8 days ago
Comment by GaryBluto 8 days ago
Comment by user3939382 8 days ago
Comment by siwatanejo 8 days ago
Comment by embedding-shape 8 days ago
Probably if we were in the early 2000s this could have been a battle worth fighting. But considering we're in 2025 and probably more people are aware of JavaScript than Java at this point, even when you're deep in enterprise-land, I'm not sure it'd be less confusing.
Anyways, you're about two decades too late to this discussion :/
Comment by heretia 8 days ago
All the same, I probably get as many calls from recruiters to fill Java positions as I do JS positions. I've never used the former, and explaining it is always awkward!
Comment by master-lincoln 8 days ago
Comment by singhrac 8 days ago
Comment by GoblinSlayer 8 days ago
Comment by spider-mario 8 days ago
Comment by array_key_first 8 days ago
Comment by dec0dedab0de 8 days ago
Comment by booleandilemma 8 days ago
Comment by Izkata 8 days ago
Comment by Capricorn2481 8 days ago
Comment by array_key_first 8 days ago
But they DO work in an office, and use a web browser for 8 hours a day.
Comment by sltkr 7 days ago
Comment by thfuran 8 days ago
Comment by __del__ 8 days ago
Comment by opem 7 days ago
Comment by shagie 8 days ago
Invoking Applet Methods From JavaScript Code - https://docs.oracle.com/javase/tutorial/deployment/applet/in...
and
Invoking JavaScript Code From an Applet - https://docs.oracle.com/javase/tutorial/deployment/applet/in...
Aside from the "Java is cool, name everything Java" in the early days - there was scripting between the browser and the applet using a language named JavaScript.
Comment by bartread 8 days ago
But it doesn't mean there's much commonality - beyond superficially C-like syntax - between the languages, and certainly not between their "standard libraries" (aka the browser APIs in JavaScript's case).
Comment by zdragnar 8 days ago
Comment by shagie 8 days ago
https://docs.oracle.com/javase/tutorial/deployment/applet/in...
> LiveConnect is a feature of web browsers which allows Java applets to communicate with the JavaScript engine in the browser, and JavaScript on the web page to interact with applets. The LiveConnect concept originated in the Netscape web browser, and to this date, Mozilla and Firefox browsers have had the most complete support for LiveConnect features. It has, however, been possible to call between JavaScript and Java in some fashion on all web browsers for a number of years.
https://www.oracle.com/java/technologies/javase/liveconnect-...
--
The naming appears to be confused.
https://web.archive.org/web/20101115234856/http://www.oracle...
> Improved Java/JavaScript communication. The bridge between the JavaScript engine in the web browser and the Java programming language has been completely reimplemented. The new implementation is backward-compatible and features improved reliability, performance and cross-browser portability, for both Java calling JavaScript as well as JavaScript calling Java. Formerly Mozilla-specific "LiveConnect" functionality, such as the ability to call static Java methods, instantiate new Java objects and reference third-party packages from JavaScript, is now available in all browsers.
The "LiveConnect" relating to the original LiveScript maybe? And that LiveConnect was a Netscape/Mozilla driven thing.
My point was more one of "JavaScript was the glue between applets and the HTML page itself early in the development of the language."
Renaming LiveScript to JavaScript and promoting the LiveConnect functionality wasn't an unreasonable thing at the time.
Comment by BrendanEich 2 days ago
The original codename Mocha was Marc Andreessen's.
This is all in the HOPL IV paper and my Lex Fridman interview.
Comment by chuckadams 8 days ago
Comment by johannes1234321 8 days ago
Comment by bigfishrunning 8 days ago
Comment by int_19h 8 days ago
We'll probably get there again with wasm, eventually. But it's taking a very long time.
Comment by bartread 8 days ago
There are more important battles to fight.
Comment by giancarlostoro 8 days ago
Comment by friendzis 8 days ago
Comment by chpatrick 8 days ago
It's also better if there's one ecosystem instead of one fragmented with different languages where you have to write bindings for everything you want to use.
Comment by 9rx 8 days ago
It is really powerful as compared to Javascript. It is even really powerful as compared to most other languages people normally use. But not very powerful as compared to languages that have 'proper' type systems. Typescript still relies on you writing tests for everything.
The type system is a huge boon for the developer experience, of course. It enables things like automatic refactoring that make development much more pleasant (although LLMs are getting better at filling that void in dynamically typed languages). But it doesn't save you from bugs in a way that the tests you have to write anyway won't also save you from. And those same tests would also catch the same bugs in Javascript, so you're in the same place either way with respect to that.
Comment by friendzis 7 days ago
This argument is slightly backwards. This is essentially the argument used for "javascript in the backend" and "let's package the whole browser as application runtime so we can use javascript". The core of the argument is that javascript is ipso facto the best language/runtime to write any code in, including refactoring existing codebases. Bringing javascript out of the browser also means you have to write bindings for javascript and recreate the existing ecosystems anyway.
Even if you approach this from "single codebase across runtimes" angle, the conclusion to bridge the gap between browsers and languages with existing codebase, expertise and ecosystems is much more reasonable than rewrite everything in javascript.
Comment by chpatrick 7 days ago
Comment by giancarlostoro 8 days ago
Comment by shevy-java 8 days ago
Comment by onionisafruit 8 days ago
Comment by Someone1234 8 days ago
Comment by giancarlostoro 8 days ago
Comment by georgeecollins 8 days ago
Comment by michaelcampbell 8 days ago
Is it? My experience in the past decade is that there are more memes about people who confuse the 2 than people that confuse the 2.
Comment by jjkaczor 8 days ago
Comment by culi 8 days ago
Comment by Vinnl 8 days ago
Comment by array_key_first 8 days ago
Comment by Vinnl 8 days ago
Comment by lelanthran 8 days ago
You'll still get all the strong typing without have to wait for it to run.
For example an error in a little used branch would cause an error before the branch even runs.
Comment by Vinnl 8 days ago
Comment by zdragnar 8 days ago
Comment by lelanthran 8 days ago
The alternative is not "User sees no error", it's "user sees the error at runtime".
In which case, yeah, having the user see the type error is vastly preferable to having the user see a runtime JS error.
Comment by Vinnl 7 days ago
Comment by lelanthran 5 days ago
Right now, sure.
But if TS is supported natively in the browser, wouldn't your editor highlight the errors as you type? In which case the chance of deploying a broken TS file to the browser is minimal - you'll have to go out of your way to do so, like writing the TS file in plain notepad.
To go even further, having TS supported in the browser does not mean that you are forced to abandon your build step(s). You are still free to run a build step that either:
1. Does the full compilation to JS, and that's what gets deployed.
or
2. Just lints the file, and has the original TS file deployed.
Nothing in "Native TS in the browser" enforces a no-build-step dev process; it just makes it optional.
There's also the fact that, if JS is no longer the target (either browser-byte-code or native-code will be the target), then type-checking can be improved even further because there will be no requirement to allow things purely due to JS compatibility.
Finally, there's an awfully large number of optimisations that can be done if JS is not the target and native-code is.
I'm not seeing any downside here.
Comment by Vinnl 5 days ago
So I'm not necessarily saying it's a bad thing, it's just that I don't see the point. And given that there's the major downside of having to go through the standards process, both now and in the future, which will likely involve breaking changes and making it harder to update, I don't see it happening. (Edit: I should add that I do think the "types as comments" proposal makes sense. I do see the advantage of being able to run TS code without a build step. It's just the part where we'd throw an error in the user's face that I don't see providing value to anyone.)
I do think TC39 is progressive enough to be OK with changes to JS if those would allow TS to have more effective type checking (as long as they're backwards compatible, of course, which would also be the case if TS got incorporated into JS), so I don't think it's necessary for that.
Performance improvements enabled by optimisations would be nice, but I believe I heard that no major gains would be expected there, especially compared to something like WASM.
Comment by lelanthran 2 days ago
Yeah, but it's an optional "worse" experience.
IOW, for those people who think it's a better experience (because there is no build step), they can opt into it. For those who think it's a worse experience, they can continue using a build-step.
Nothing changes for those who want a build-step.
(I agree about the standards process thing)
> Performance improvements enabled by optimisations would be nice, but I believe I heard that no major gains would be expected there, especially compared to something like WASM.
If TS is compiled in the browser, then it can be compiled to WASM, not to JS.
It's only when TS is compiled on the server that it has to be compiled to JS.
If the browser support TS natively, the compilation target would not be JS (which is what makes the resulting code slow), but either WASM, or naive code.
Comment by Vinnl 2 days ago
I feel like the way to make both of us happy is to just strip type annotations, rather than doing full type checking in the browser. Which, luckily, is already making its way through the standards track: https://tc39.es/proposal-type-annotations/
> If the browser support TS natively, the compilation target would not be JS (which is what makes the resulting code slow), but either WASM, or naive code.
I was not talking about compiling it to JS; I seem to recall that native support wouldn't necessarily result in big performance improvements. (Consider that JS is also not being compiled to JS.)
Comment by hajile 8 days ago
Put another way, I'm fine with the TS syntax (and use TS because there aren't other choices), but the TS semantics aren't a good long-term solution.
Comment by ozim 8 days ago
Comment by morshu9001 8 days ago
Comment by someguyiguess 8 days ago
Comment by kstrauser 8 days ago
Comment by eurekin 8 days ago
Comment by godshatter 8 days ago
Comment by truelson 7 days ago
Comment by spider-mario 8 days ago
> 1995 - Brendan Eich reads up on every mistake ever made in designing a programming language, invents a few more, and creates LiveScript. Later, in an effort to cash in on the popularity of Java the language is renamed JavaScript. Later still, in an effort to cash in on the popularity of skin diseases the language is renamed ECMAScript.
Comment by newsoftheday 8 days ago
Comment by mr_toad 8 days ago
Comment by code_for_monkey 8 days ago
Comment by ranguna 7 days ago
Comment by suyash 8 days ago
Comment by ndiddy 8 days ago
> With JavaScript, an HTML page might contain an intelligent form that performs loan payment or currency exchange calculations right on the client in response to user input. A multimedia weather forecast applet written in Java can be scripted by JavaScript to display appropriate images and sounds based on the current weather readings in a region. A server-side JavaScript script might pull data out of a relational database and format it in HTML on the fly. A page might contain JavaScript scripts that run on both the client and the server. On the server, the scripts might dynamically compose and format HTML content based on user preferences stored in a relational database, and on the client, the scripts would glue together an assortment of Java applets and HTML form elements into a live interactive user interface for specifying a net-wide search for information.
> "Programmers have been overwhelmingly enthusiastic about Java because it was designed from the ground up for the Internet. JavaScript is a natural fit, since it's also designed for the Internet and Unicode-based worldwide use," said Bill Joy, co-founder and vice president of research at Sun. "JavaScript will be the most effective method to connect HTML-based content to Java applets."
This was all actually implemented. JavaScript functions could call Java applet methods and vice versa (see https://docs.oracle.com/javase/8/docs/technotes/guides/deplo... ). Of course over time everyone abandoned applets because of all the security problems, and JavaScript became a good enough language to write application logic directly in it. Still, there's more meaning behind the name than it just being a cynical marketing move.
Comment by lowercased 8 days ago
Comment by mikepurvis 8 days ago
Comment by brabel 8 days ago
Comment by nunobrito 8 days ago
Comment by mikepurvis 8 days ago
I can't imagine writing anything of substance primarily in groovy.
Comment by roegerle 8 days ago
Comment by dizhn 8 days ago
Comment by xxs 8 days ago
That's solely based on a poor imagination, not trying...
Comment by nunobrito 8 days ago
Comment by mikepurvis 8 days ago
Comment by brabel 7 days ago
Comment by cubefox 8 days ago
Haha, or because it froze the whole browser for a few seconds upon loading. Unlike Macromedia Flash by the way.
Comment by phantasmish 8 days ago
Of course 100% of that cpu is probably 1/10 of one core on any of my modern machines, so an ordinary and not-broken ad laden page routinely eats several times as many cycles now. Progress!
Comment by moralestapia 8 days ago
You might not be aware, but this is a trivial thing to do.
Comment by jerf 8 days ago
This cramming did not have any regard for whether Java was a good solution for a given problem, or indeed whether the Java of that era could solve the problem at all. It did not matter. Java was Good. Good was Java. Java was the Future. Java was the Entire Future. Get on board or get left behind. It was made all the more infuriating for the fact that the Java of this time period was not very good at all; terrible startup, terrible performance, absolutely shitty support for anything we take for granted nowadays like GUIs or basic data structure libraries, garbage APIs shoved out the door as quickly as possible so they could check the bullet point that "yes, java did that" as quickly as possible, like Java's copy-of-a-copy of the C++ streaming (which are themselves widely considered a terrible idea and an antipattern today!).
I'm not even saying this because I'm emotional or angry about it or hate Java today. Java today is only syntactically similar to Java in the 90s. It hardly resembles it in any other way. Despite the emotional tone of some of what I'm saying, I mean this as descriptive. Things really were getting shoveled out the door with a minimum of design and no real-world testing so that the Java that they were spending so much marketing money on could be said that yes! It connected to this database! Yes! It speaks XML! Yes! It has a cross-platform GUI! These things all barely work as long as you don't subject them to a stiff breeze, but the bullet point is checked!
The original plan was for Java to simply be the browser language, because that's what the suits wanted, because probably that's what the suits were being paid to want. Anyone can look around today and see that that is not a great match for a browser language, and a scripting language was a better idea especially for the browser in the beginning. However, the suits did not care.
The engineers did, and they were able to sneak a scripting language into the browser by virtue of putting "Java" in the name, which was enough to fool the suits. If my previous emotional text still has not impressed upon you the nature of this time, consider what this indicates from a post-modern analysis perspective. Look at Java. Look at Javascript. Observe their differences. Observe how one strains to even draw any similarities between them beyond the basics you get from being a computer language. Yet simply slapping the word "Java" on the language was enough to get the suits to not ask any more questions until much, much later. That's how crazy the Java push was at the time... you could slip an entirely different scripting language in under the cover of the incredible propaganda for Java.
So while the press release will say that it was intended to glue Java applets, because that's what the suits needed to hear at that point, it really wasn't the case and frankly it was never even all that great at it. Turns out bridging the world between Java and Javascript is actually pretty difficult; in 2025 we pay the requisite memory and CPU costs without so much as blinking but in an era of 32 or 64 MEGAbyte RAM profiles it was nowhere near as casual. The reality is that what Javascript was intended to be by the actual people who created it and essentially snuck it in under the noses of the suits is exactly what it is today: The browser scripting language. I think you also had some problems like we still have today with WASM trying to move larger things back and forth between the environments, only much, much more so.
We all wish it had more than a week to cook before being shoved out the door itself, but it was still immensely more successful than Java ever could have been.
(Finally, despite my repeated use of the term "suits", I'm not a radical anti-business hippie hacker type. I understand where my paycheck comes from. I'm not intrinsically against "business people". I use the term perjoratively even so. The dotcom era was full of bullshit and they earned that perjorative fair and square.)
Comment by jemmyw 8 days ago
Comment by embedding-shape 8 days ago
"Now" makes it sound like this is a recent acquisition of the JavaScript trademark. Oracle obtained it in 2009 as a result of the Sun purchase and if I remember correctly, Sun initially was issued the trademark back in the 90s sometimes.
Comment by iberator 8 days ago
Comment by brabel 8 days ago
Comment by embedding-shape 8 days ago
Comment by brabel 7 days ago
They explained that in detail in the article. You don't need to remember correctly, you need to read the article. People who comment like you without doing the bare minimum, i.e. read what they're commenting on, should stop and think, what do you think you're contributing by doing that??
Comment by szundi 8 days ago
Comment by nextaccountic 8 days ago
Unrelated but, the JavaScript capitalization is so odd
Comment by rdiddly 8 days ago
Comment by phplovesong 8 days ago
Comment by eastbound 8 days ago
Comment by cies 8 days ago
We all know this.
> Oracle has no business claiming javascript as a trademark.
You think so. That's okay. But ultimately it is up to a judge to decide. Right?
I agree with the EcmaScript. Just ditch the stupid name. Get all the petition signers to agree an move on. Fuck Oracle. Fuck JavaScript (it's nothing like Java anyway).
Comment by mcny 8 days ago
I think we are getting a rude awakening about what is legal versus what is actually right are not always the same thing. There are some the horrible, horrible things here and the laws need updating, as opposed to us simply saying this is for a judge to decide and there is nothing else we can do.
I am ok with ditching the JavaScript name. I understand this cuts the problem entirely. However, there are other problems we have that we can't bypass so easily.
We need copyright terms to be much reduced. We need CFAA fully repealed and not replaced by anything. We need to abolish software patents. There is a lot we need to do that will likely take a century to accomplish and that's likely being too optimistic.
What we can't do is leave everything up to the judges because clearly even if we get a favorable ruling today, the precedent can be removed by another stroke of a pen.
Comment by embedding-shape 8 days ago
I'm not sure who "we" are here (Americans perhaps?), but humanity as a whole have known this for a long time, and acted accordingly. This is why presidents in some countries have the right to pardon people, as just one very evident example. That the USA exists as a country today is another example, which at the time when they were trying to create it, was clearly illegal, but since winners write history, still a "good" action.
The the laws aren't 100% unambiguous and strict is also another example, so there is room for interpretation, as something can be "by the book legal" but because of the clear evil motivations and "ignoring the spirit of the law", still be illegal. Of course, highly dependent on the country and lots of counter-examples.
Comment by cies 8 days ago
Judges is the best we have. US has juries, not sure if that makes it better.
More importantly we need to criminalize lobbying in order to get control back over "our democracies" (what ever that still means today).
Comment by falcor84 8 days ago
Comment by dkersten 8 days ago
Comment by 1bpp 8 days ago
Comment by WorldMaker 8 days ago
Comment by leptons 8 days ago
Comment by dkersten 8 days ago
Comment by ljlolel 8 days ago
Comment by linhns 8 days ago
Comment by petre 8 days ago
Comment by j16sdiz 7 days ago
Comment by NuclearPM 8 days ago
Comment by masfuerte 8 days ago
Comment by discomrobertul8 8 days ago
Comment by mbork_pl 8 days ago
Comment by codelikeawolf 8 days ago
Comment by 9rx 8 days ago
Comment by rs186 8 days ago
In terms of standard, the specs already use "ECMAScript" and don't even mention JavaScript (https://github.com/tc39/ecma262/), although TC39 website does use it frequently. I guess they could officially recommend people stop using "JavaScript", but I doubt they care.
Otherwise, the petitioner Deno here is only a small part of the ecosystem and barely controls anything (and really nobody other than TC39 controls anything, which is good). They (or anyone else) can't just shout "stop saying JavaScript!" and expect people to follow.
Not to mention JavaScript is a simple, easy to pronounce word compared to ECMAScript despite the baggage, which is probably why they chose it in the first place.
Let's say the "JavaScript" name is officially deprecated somehow. People will continue to use the name for as long as it exists.
So Deno's petition tackles these problems, addresses the root cause and appears to be legally viable. That is the "right thing to do" here. Avoiding the name does not solve the problem. It never does.
Comment by andix 8 days ago
Comment by muvlon 8 days ago
Comment by nacozarina 8 days ago
Comment by Octoth0rpe 8 days ago
In this case, it's Oracle's circus and we are the monkeys.
Comment by Towaway69 8 days ago
Comment by psychoslave 8 days ago
One possibility is thus just make some vocalic derivation, which align with well known spontaneous evolution of languages like ablaut[1]. Following that, and keeping the dance connotation, jive[2] is an option. Or closer on phonetic distance to java (/ˈd͡ʒɑː.və/), there is jovial (/ˈd͡ʒəʊ.vɪ.əl/ or /ˈd͡ʒoʊ.vɪ.əl/ or /ˈd͡ʒoʊ.vəl/)[3].
Might our jovial·script enjoy our life.
[1] https://en.wikipedia.org/wiki/Indo-European_ablaut
Comment by roywiggins 8 days ago
Comment by GoblinSlayer 8 days ago
Comment by nunobrito 8 days ago
Comment by psychoslave 8 days ago
Comment by jrm4 8 days ago
I see that there's something called that related to javascript already, but like -- very similar spelling, ".js" still works, we lose the Java confusion etc etc.
Comment by Izkata 8 days ago
Comment by pansa2 8 days ago
Or go back to calling it “LiveScript”
Comment by DrScientist 8 days ago
Just go with the flow - call it js.
Comment by wouldbecouldbe 8 days ago
Comment by crazygringo 8 days ago
Comment by someguyiguess 8 days ago
Comment by throwingrocks 8 days ago
Comment by halapro 8 days ago
Comment by re-thc 8 days ago
Comment by DrScientist 8 days ago
https://en.wikipedia.org/wiki/Embrace,_extend,_and_extinguis...
Comment by solumunus 8 days ago
Comment by dtagames 8 days ago
Comment by xxs 8 days ago
Comment by freedomben 8 days ago
Comment by wat10000 8 days ago
Comment by petesergeant 8 days ago
Take it to Twitter
Comment by stuartjohnson12 8 days ago
Comment by sph 8 days ago
Comment by someguyiguess 8 days ago
Comment by mbirth 8 days ago
Comment by hn_throw2025 8 days ago
Comment by biofox 8 days ago
Sounds appropriate to me.
Comment by mattkevan 8 days ago
Maybe it should just be pronounced eck-ma-script so it's got the same number of syllables as ja-va-script.
Comment by elAhmo 8 days ago
Comment by culi 8 days ago
Comment by nunobrito 8 days ago
Comment by alberth 8 days ago
Because in practice, isn't this a bit like "Kleenex" - where everyone knows you mean "tissue" (EMCAScript).
Comment by StableAlkyne 8 days ago
Oracle is an incredibly litigious company. Their awful reputation in this respect means that the JS ecosystem can never be sure they won't swoop in and attempt to demand rent someday. This is made worse by the army of lawyers they employ; even if they're completely in the wrong, whatever project they go after probably won't be able to afford a defense.
Comment by rdtsc 8 days ago
That is why on one level I am surprised by the petition. They are talking to a supercharged litigation monster and are asking it "Dear Oracle, ... We urge you to release the mark into the public domain". You know what a litigation happy behemoth does in that case? It goes asks some AI to write a "Javascript: as She Is Spoke" junk book on Amazon just so they can hang on to the trademark. Before they didn't care but now that someone pointed it out, they'll go out of their way to assert their usage of it.
On the other hand, maybe someone there cares about their image and would be happy to improve it in the tech community's eyes...
Comment by thayne 8 days ago
IANAL, but I don't think that wouldn't be enough to keep the trademark.
Also the petition was a "we'll ask nicely first so we can all avoid the hastle and expense of legal procedings", they are now in the process of getting the trademark invalidated, but Oracle, illogically but perhaps unsurprisingly is fighting it.
Comment by rdtsc 8 days ago
But yeah, IANAL either and just guessing, I just know Oracle is shady and if you challenge them legally they'll throw their weight around. And not sure if responding to a challenge with a new "product" is enough to reset the clock on it. Hopefully a the judge will see through their tricks.
Comment by levkk 8 days ago
Are there any examples of Oracle using their JavaScript trademark to sue anyone? If they did, that petition would have merit.
Unless Demo was, this feels like a marketing project. And it's working, too, so kudos.
Comment by wongarsu 8 days ago
In this case the trademark existing and belonging to Oracle is creating more confusion than no trademark existing, so deleting it is morally right. And because Oracle isn't actually enforcing it it is also legally right
Imho this is just the prelude to get better press. "We filed a petition to delete the JavaScript trademark" doesn't sound nearly as good as "We collected 100k signatures for a letter to Oracle and only got silence, now we formally petition the USPTO". It's also a great opportunity to find pro-bono legal council or someone who would help fund the petition
Comment by anematode 8 days ago
Comment by hoten 8 days ago
Comment by amelius 8 days ago
Comment by tshaddox 8 days ago
Comment by bobbylarrybobby 8 days ago
Comment by RiverCrochet 8 days ago
Comment by amelius 8 days ago
Comment by lkjqweflkjh 8 days ago
Comment by onion2k 8 days ago
Comment by Orygin 8 days ago
Edit: Seems I'm incorrect, see below
Comment by saghm 8 days ago
Comment by Orygin 8 days ago
Comment by chuckadams 8 days ago
Anyone they feel like. Lawnmower gonna mow.
Comment by TeaVMFan 8 days ago
This personal vendetta will likely end with the community unable to use the term JavaScript. Nobody should support this.
Comment by striking 8 days ago
1. Oracle is the litigious one here. My favorite example is that time they attacked a professor for publishing less-than-glowing benchmarks of their database: https://danluu.com/anon-benchmark/ What's to stop them from suing anyone using the term JavaScript in a way that isn't blessed by them? That's what Deno is trying to protect against.
2. Deno is filing a petition to cancel the trademark, not claim it themselves. This would return it to the public commons.
It should be obvious from these two facts that any member of the public that uses JavaScript should support this, regardless of what they think of Deno-the-company.
Comment by jakelazaroff 8 days ago
Why would that be the case, if not for Oracle's litigiousness?
Comment by DonHopkins 8 days ago
Comment by dev0p 8 days ago
JavaScript is simply the better term, and marketing is everything. Reminds me of Java's POJOs, which was a very simple pattern that no one used, until someone gave them a fancy name.
ECMAScript is a horrible technical name. Might as well call it ACMEScript considering how willie e. coyote it feels to develop with it...
Comment by DANmode 8 days ago
Comment by echelon 8 days ago
ECMAScript is a horrible name. It's worse than Google Bard.
Comment by bad_haircut72 8 days ago
nothing against people with eczema of course
Comment by sionisrecur 8 days ago
Comment by msgilligan 8 days ago
POTS = Plain Old Telephony System COTS = Commercial Off-The-Shelf
Comment by garyrob 8 days ago
Comment by seniorThrowaway 8 days ago
Comment by jagged-chisel 8 days ago
Comment by msgilligan 8 days ago
Comment by pwdisswordfishy 8 days ago
And it would feel just the same if it was named something else.
It's just a name, who gives a damn?
Comment by hshdhdhj4444 8 days ago
This is extremely ironic given that JavaScript was so named because people do give a damn about names so Netscape/Sun leveraged the Java success to push JS, hence they named it JAVAscript despite it having nothing to do with Java.
Comment by 7bit 8 days ago
Not everybody knows. People who learn JavaScript don't know. In fact, they must learn this. And from my experience, most learning resources don't mention this, let alone teach this. It took me a really long time to understand what ECMAScript is and how it relates to JavaScript. And the effort I put in this understanding... I would have preferred to not having needed that.
So no, not everybody knows this.
Comment by jtwaleson 8 days ago
Comment by 9rx 8 days ago
Maybe. That's what the challenge intends to find out.
Comment by jamesbelchamber 8 days ago
Comment by messe 8 days ago
> Do not fall into the trap of anthropomorphising Larry Ellison. You need to think of Larry Ellison the way you think of a lawnmower. You don't anthropomorphize your lawnmower, the lawnmower just mows the lawn, you stick your hand in there and it'll chop it off, the end. You don't think 'oh, the lawnmower hates me' -- lawnmower doesn't give a shit about you, lawnmower can't hate you. Don't anthropomorphize the lawnmower. Don't fall into that trap about Oracle. — Brian Cantrill (https://youtu.be/-zRN7XLCRhc?t=33m1s)
Comment by jeffrallen 8 days ago
Comment by collinmanderson 8 days ago
Comment by stack_framer 8 days ago
Comment by fuddle 8 days ago
Comment by metalliqaz 8 days ago
Comment by chrysoprace 8 days ago
Comment by tkel 8 days ago
Comment by Anarch157a 8 days ago
Comment by Natfan 8 days ago
---
Comment by DonHopkins 8 days ago
Comment by collinmanderson 7 days ago
Comment by JeremyJaydan 8 days ago
Comment by ddtaylor 8 days ago
Comment by wiseowise 8 days ago
2) TS becomes the official mainline, whoever doesn’t like types can just keep writing as they did before, because valid JS is valid TS
Problem solved, it’s not that difficult.
Comment by cardanome 8 days ago
That would be a case of out of the frying pan into the fire. Not really better.
Comment by lcnPylGDnU4H9OF 8 days ago
Comment by bayindirh 8 days ago
Comment by lcnPylGDnU4H9OF 8 days ago
Comment by bayindirh 8 days ago
Comment by lcnPylGDnU4H9OF 8 days ago
The license is Apache 2.0. With the trademark, they can tell everyone not to call their thing TypeScript but at this point, given the license, they can't tell them not to copy it and change it and distribute that new thing (assuming the new distributors do so under the correct conditions).
Comment by walthamstow 8 days ago
Comment by mdasen 8 days ago
Comment by walthamstow 8 days ago
Comment by morshu9001 8 days ago
Non-exhaustive examples:
let foo = 2
foo = "foo" // TS disallows type change
let bar = {}
bar.baz = 2 // TS disallows adding propertyComment by ddtaylor 8 days ago
Comment by morshu9001 8 days ago
Comment by Maxion 7 days ago
Comment by anematode 8 days ago
Comment by morshu9001 8 days ago
Comment by criticalfault 8 days ago
Comment by marcelr 8 days ago
Comment by NooneAtAll3 8 days ago
Comment by saghm 8 days ago
Comment by pennomi 8 days ago
Comment by jm4 8 days ago
Comment by avsteele 8 days ago
Comment by tobr 8 days ago
Comment by tonkinai 8 days ago
Comment by serial_dev 8 days ago
Someone just wanted to share their Rust + JavaScript knowledge with people, and they got a cease and desist. It's clearly not ideal.
Comment by tantalor 8 days ago
Comment by morshu9001 8 days ago
Comment by cal85 8 days ago
One clear instance of FUD we do know about is the spec itself is not titled with the name of the language it specifies, which is then its own source of confusion for newcomers trying to learn the web platform, and makes it harder for old timers to explain things, and is generally annoying. Complexity. Confusion. Doubt. Inaction.
Removing legal FUD from the world is a good cause. I don’t mind if it also works as a good marketing play for Deno.
Comment by zoeysmithe 8 days ago
Comment by Vinnl 8 days ago
Comment by NewsaHackO 8 days ago
Comment by crazygringo 8 days ago
And the list of updates at the top says they've since filed a petition to dismiss the trademark, and Oracle has filed to dismiss the petition.
Comment by rokob 8 days ago
Edit: I read that date shockingly wrong, their response was February of 2025 so this is pretty old.
Comment by qingcharles 8 days ago
https://ttabvue.uspto.gov/ttabvue/v?pno=92086835&pty=CAN&eno...
Comment by trashburger 8 days ago
monkey paw's finger starts curling
Comment by mberning 8 days ago
Comment by Stevvo 8 days ago
So, just go ahead and do it already. Your cute letter isn't going to change anything.
Comment by crazygringo 8 days ago
https://deno.com/blog/deno-v-oracle
This post is more than a year old.
Comment by billpg 8 days ago
Comment by philipwhiuk 8 days ago
Comment by 9rx 8 days ago
Which you could make a strong case for also not being a democracy and rather a lawnmower... But I digress.
Comment by philipwhiuk 1 day ago
Comment by someguyiguess 8 days ago
Comment by davidhaymond 8 days ago
Comment by Squarex 8 days ago
Comment by andix 8 days ago
Comment by drnick1 8 days ago
Comment by wengo314 8 days ago
Comment by cies 8 days ago
Comment by lionkor 8 days ago
Comment by mid90sahsan 8 days ago
Comment by Timwi 8 days ago
Comment by morshu9001 8 days ago
Comment by jamesgill 8 days ago
Comment by analogears 8 days ago
The irony is that 'freeing' JavaScript from Oracle's trademark might matter less than freeing ourselves from the framework churn. The platform itself is incredibly capable now.
Comment by jacquesm 8 days ago
And that would have been just fine.
Comment by someguyiguess 8 days ago
Comment by _fat_santa 8 days ago
The only case I can really see is someone going off and creating another language and then proceeding to call it, Javascript, Typscript or Go and then using the same logo but I feel at that point the developer community would be pretty effective in sorting that out without getting lawyers involved.
Comment by pak9rabid 8 days ago
Comment by saghm 8 days ago
Even if that weren't the case though, I think part of the problem is that even if the trademarks literally never brings any value, it also potentially costs them nothing to retain them (unless someone tries to get it invalidated, at which point there's some cost to trying to defend it). Arguably the cost to establish in the trademark in the first place is also low enough that companies at that scale don't have much incentive notto establish them in the first piece; they already have lawyers and trademarking things isn't really out of the ordinary for them, so the marginal cost of having them file one more isn't very high.
It's worth considering whether the point you make about there not being much of a realistic concern around someone else attempting to copy the name is something that would be obvious to non-developers. Sometimes what might be obvious to a developer might not be obvious to a lawyer, and at the end of the day, the legal team is probably in charge of deciding things like this at these companies, so in the absence of pressure from someone who understands this point enough influence to make it happen (like maybe a C-level exec), it might not matter that the concern is realistic if it's theoretically plausible.
Comment by sjtgraham 8 days ago
Comment by sinatra 8 days ago
Comment by kazinator 8 days ago
Comment by vee-kay 8 days ago
Oracle never apologised for this sudden hijack (of an executable that was trusted and used by millions of IT people) and malicious behavior (no prior information given by Oracle for this malpractice), if I recall right.
I am sure that disaster was a wake up call for many developers and corporations to move away from Java dependency.
Comment by shevy-java 8 days ago
Comment by cal85 8 days ago
Comment by sswaner 8 days ago
At some point they will approach companies, likely tech companies that produce a product or offering that can't be described without using the word "JavaScript". They will offer a "convenient" licensing agreement of $50,000 per year for the use of their trademark.
They used this playbook with Java, an easier path because they had something more substantial than a trademark, but the approach will be the same. https://www.reddit.com/r/sysadmin/comments/165kzxg/oraclejav...
As Oracle's debt problems mount, the company seems increasingly likely to weaponize this trademark against companies—despite otherwise showing little interest in the word. https://economictimes.indiatimes.com/news/international/us/w...
Comment by rurban 5 days ago
Bali is a lot more popular than Java
Comment by throw_m239339 8 days ago
Comment by homebrewer 8 days ago
Call the language JS, everyone already understands it, it's used on all the logos because it's short, we already another popular language with a very compact name (Go, which is harder to look up without mangling its name, and it's still doing fine).
Comment by tolerance 8 days ago
Comment by leshenka 8 days ago
don't get me started on typescript. Until recently I had to use its full name when googling something
Comment by suyash 8 days ago
Comment by Lerc 8 days ago
Are you suggesting that Ryan Dahl's contribution has been less than satisfactory so far?
Comment by rpodraza 8 days ago
Comment by Alifatisk 8 days ago
Comment by vips7L 8 days ago
Comment by Alifatisk 7 days ago
Comment by morshu9001 8 days ago
Comment by Alifatisk 7 days ago
Comment by morshu9001 7 days ago
Comment by marcelr 8 days ago
Comment by tolerance 8 days ago
Comment by moritzwarhier 8 days ago
But just like with this JS trademark thing, it feels like they present themselves as spokespeople and spearhead for the whole JS community, which feels kind of misleading and grandiose.
The mentioned timeline site (link below) also has this issue: it slowly shifts focus from things like the first JS version, the creation of XMLHttpRequest, to later focusing on Deno milestones, as if these events would have had comparable impacts:
https://deno.com/blog/history-of-javascript
And that seems kind of dishonest and designed to nudge outsiders towards thinking Deno would be the default server runtime now, which doesn't seem to be true.
Comment by rc1 8 days ago
Comment by darepublic 8 days ago
Comment by permo-w 7 days ago
you will never ever be able to prove no intent to resume and as such the entire effort is beyond pointless
Comment by 1vuio0pswjnm7 8 days ago
Comment by anthk 8 days ago
Or just JotScript.
Comment by theanonymousone 8 days ago
Comment by lionkor 8 days ago
Comment by intrasight 8 days ago
Comment by pjmlp 8 days ago
Comment by nrhrjrjrjtntbt 8 days ago
Comment by fhennig 8 days ago
But also, what are the consequences of Oracle having the trademark, why is this an issue?
Comment by exabrial 8 days ago
Comment by afavour 8 days ago
Which is why WebAssembly is the right answer.
Comment by pveierland 8 days ago
Comment by muvlon 8 days ago
What does it matter to the user whether they get a runtime or a "compile time" error in their invisible devtools console? To them, the page simply doesn't work.
Static languages make sense when compilation happens at dev-time, where the actual devs can respond to the diagnostics. So it's far better to develop in a statically typed language, compile it ahead of time and ship that to the user. Which is exactly what people do now with wasm.
Comment by z3t4 8 days ago
Comment by throw_m239339 8 days ago
Which one?
Comment by paulryanrogers 8 days ago
Comment by wouldbecouldbe 8 days ago
Comment by morshu9001 8 days ago
Also there's TS if you really want it
Comment by singularity2001 8 days ago
Comment by ddtaylor 8 days ago
Comment by john6 8 days ago
Comment by mold_aid 8 days ago
Comment by martini333 8 days ago
Comment by huflungdung 8 days ago
Comment by breakingrules3 8 days ago
Comment by 123sereusername 8 days ago
Comment by 123sereusername 8 days ago
Comment by RexFactorem 8 days ago
Comment by T3RMINATED 8 days ago
Comment by animanoir 8 days ago
Comment by udev4096 8 days ago
Comment by donatj 8 days ago
It's caused way too much confusion over the years making people wrongly associate it with Java. My guess would be that associations exactly why Oracle doesn't want to give it up.
I would like to say go back to the original name of LiveScript from before Netscape tried to woo Sun, but the name LiveScript has been co-opted.
Something else with a J would probably be the least painful. JScript is permanently associated with Microsoft's terrible IE implementation. I offer up "JaScript" as it sounds largely like JavaScript but said with a drawl while retaining "JS".
Heck, I'll call it ECMAScript if that's what it takes. I'd rather not, but it's better than "JavaScript"
Comment by pbiggar 8 days ago
Comment by ridethelightnin 8 days ago
"JavaScript" tokenizes to 2 tokens (BPE). "ECMAScript" tokenizes to 3. No biggie here.
But the real cost isn't training—it's inference. Every time an LLM has to reconcile "ES6" with "JavaScript," explain the naming, or reason through "user said JavaScript but docs say ECMAScript"— Hidden chain-of-thought overhead. Clarification tokens.
Back of envelope: ~376M JS-related LLM queries/day globally. ~30% trigger some clarification overhead. That's ~5B extra tokens/day, ~1.85T tokens/year.
At ~0.000025 kWh/token inference cost, that's ~46 GWh/year.
~23,000 tonnes CO2 annually. ~200,000 tonnes over 4 years, based on rough growth of LLM use, and terms sticking around on both names over 4 years - probably wrong here too.
Sources
Token counts: OpenAI tiktoken cl100k_base encoder 2.5B ChatGPT queries/day: Sam Altman, July 2025 [1] ~4.7B total LLM interactions/day: aggregated from ChatGPT + Gemini (2B monthly AI Overviews users) + Copilot + Claude + others [2][3] JS = 62% of developers: Stack Overflow 2024 Survey [4] 8% of queries JS-related: my estimate based on language prevalence 30% clarification rate: my estimate - probably way off Energy/token: ~0.000025 kWh blended from Luccioni et al. and Patterson et al. inference estimates [5]
CO2: 0.5 kg/kWh global grid average
[1] techcrunch.com/2025/07/21/chatgpt-users-send-2-5-billion-prompts-a-day [2] demandsage.com/chatgpt-statistics [3] sqmagazine.co.uk/chatgpt-vs-google-gemini-statistics [4] survey.stackoverflow.co/2024 [5] arxiv.org/pdf/2211.02001 (BLOOM carbon footprint paper)