Thank you to everyone behind this effort. At some point, decades ago in the past, Oracle added value to the tech ecosystem. Now, they’re a giant rent-extracting behemoth. I hate the fact that we can’t have nice things in 2025 simply because Oracle owns the IP. Oracle is what happens when corporations become lazy and hand over the keys to some brand names just because “no one ever got fired for buying/hiring _____.” I hope those days are past us.
If it's an honest question and not just the beginning of a hate-fest, let's think...
Both Java the language and OpenJDK the main runtime & development kit have had much more money and manpower poured into them under Oracle than they ever had previously. Both continue to advance rapidly after almost dying pre-Oracle acquisition.
MySQL 8 (released in 2018) was a massive release that brought many long awaited features (like CTEs) to the database, although MySQL's development have stalled during the past few years.
Oracle employs several Linux kernel developers and is one of major contributors (especially to XFS and btrfs): https://lwn.net/Articles/1022414
Not top 3 or even top 10, but better than most companies out there.
That's all I can remember.
edit: after thinking about it for a couple more minutes, they're also the main developer of GraalVM — the only high quality FOSS AOT compiler for Java (also mentioned by a sibling comment), and are writing one of the major relatively lightweight modern alternatives to Spring (the other two being Micronaut and Quarkus): https://helidon.io
I think the Oracle hate goes a bit beyond the generic hatred for successful companies (be it Microsoft, FAANG, etc).
People actually used to like the products that made these companies explode. Windows 2000 was cool; Facebook was cool; Google was cool. Whenever they stop being pure unadulterated evil for a few minutes, very quickly a lot of people are willing to forgive them and welcome them back into polite society.
But as long as most geeks can remember, Oracle has never been cool. At its peak, the company enabled a world of snooty BOFH DBAs, selling unreasonably expensive products to well-oiled middle-managers. And then they started "acqui-squeezing" adjacent products, blackmailing their own customers, and suing everyone in sight. They could cure cancer tomorrow, gifting all the related IPs to the world, and most geeks would still see them as scum trying to whitewash their image - and they would probably be right. There are some great engineers in Oracle, but their management is all that is wrong with capitalism.
From 01979 until about 02000, Oracle's RDBMS software was probably the best in the world, and definitely better than the free-software alternatives like Postgres. (Remember that MariaDB, then named MySQL, didn't become free software until 02000 and didn't support transactions until even later.) For several years after that, it was still the best database for some purposes. And that's true even though the Bastard Database Operators From Hell were present from the very beginning.
SQL is kind of shitty, but the relational database model is so great that it makes up for it. And until the rise of entity component systems, SQLite, PostgreSQL, and MariaDB, all the decent implementations were proprietary software. Separately, although SQL's implementation of transactions is even more broken than its implementation of the relational model, transactional concurrency is also great enough to make up for SQL, and, again, all the usable implementations used to be proprietary.
>
From 01979 until about 02000, Oracle's RDBMS software was probably the best in the world, and definitely better than the free-software alternatives like Postgres. [...] For several years after that, it was still the best database for some purposes.
Which RDBMS software has/have become the best in the world after that?
As far as I am aware (I may be wrong, or things have changed in the last years) Postgres still is is worse in horizontal scaling than Oracle and Microsoft SQL Server (and likely also DB2).
As one rough estimate, 2.25GHz with AVX512 (at 1 IPC) means you can do 36 billion column-oriented 32-bit integer operations per core per second, which with 384 cores means 13 trillion 32-bit integer operations per core per second. On one server. So if you have a query that needs to do a linear scan of a column in a 13-million-row table, the query might take 300μs, but you should be able to do a million such queries per second. But normally you index your tables so that most queries don't need to do such inefficient things, so you should be able to handle many more queries per second than that!
(Each socket has 12 DDR5 channels, totaling 576 gigabytes per second to DRAM per socket or 1.13 terabytes per second across the two of them, so you'll get worse performance if you're out of cache. And apparently you can use 512GiB DIMMs and get 6 tebibytes of RAM!)
So, if you need more than one server for your database, it's probably because it's tens or hundreds of terabytes, or because you're handling tens of millions of queries per second, or because your database software is designed for spinning rust. Spinning rust is still the best way to store large databases, but now the cutoff for "large" is approaching the petabyte scale.
I think the space of databases that are under ten terabytes and under ten million queries per second is large enough to cover almost everything that most people think of when they think of "databases".
> So, if you need more than one server for your database
Servers fail, any serious business obviously needs more than one server. And many need more than one data centre, just for redundancy. The more modern Oracle clusters act in a similar manner to RAID arrays, with virtual databases replicated across clusters of physical servers in such a way that a loss of a physical server doesn’t impact the virtual databases at all.
Most databases aren't running a business. It isn't 01973 anymore. My web browser on my phone has a bunch of SQL databases.
I was talking about horizontal scalability, not failover. You don't need horizontal scalability, or for that matter any special software features, for failover. (Though PITR is nice, especially if your database is running a business.) With cloud computing vendors, you may not even need a second server to fail over to; you can bring it up when the failure happens and pay for it by the hour.
The features you're talking about made a lot of sense 30 years ago, maybe even 20 years ago. They still make a lot of sense if you need to handle hundreds of millions of queries per second or if you have hundreds of terabytes of data. But, for everything else, you can get by with vertical scaling, which is a lot less work. Unlike backups or rearchitecting your database, it's literally a product you can just buy.
(A lot of the open-source relational databases I listed also support clustering for both HA and scalability; I just think those features are a lot less important when you can buy an off-the-shelf server with tebibytes of RAM.)
I don't know. Oracle was written to run on a VAXCluster with a shared disk with a seek time in the tens of milliseconds, and things like Postgres are kind of architected for that world. The world has changed a lot. Anything you could fit on disk in 02000 fits in RAM today, most of our programmable computing power is in GPUs instead of CPUs, website workloads are insanely read-heavy (favoring materialized views and readslave farms), SSDs can commit transactions durably in 0.1ms and support random reads while imposing heavy penalties on nonsequential writes, and spinning up ten thousand AWS Lambda functions to process a query in parallel is now a reasonable thing to do.
I think you could make reasonable arguments for SQLite, Postgres, MariaDB, Impala, Hive, HSQLDB, SPARK, Drill, or even Numpy, TensorFlow, or Unity's ECS, though those last few lack the "internal representation independence" ("data independence") so central to Codd's conception.
If you want high availability and scalability (and damn the expense), then Oracle is probably still number one. Especially for write heavy workloads. But not everyone can afford to burn money.
> until about 02000, Oracle's RDBMS software was probably the best in the world
I don't disagree, but that's not what I said. Yes, it was a good product; but everything else that came with it was already shit. It empowered DBAs, not developers, and enterprise people, not hobbyists; for these reasons (and others), it was just not something that most people liked.
Popularity is not simply a function of technical value.
There's also VirtualBox (inherited from Sun). And probably some other things. Although from what I heard you risk being besieged by aggressive Oracle salespeople if they suspect you're using one of the proprietary "extension pack" features. This sort of thing is why I would think very hard before using anything from Oracle.
Made this mistake w VirtualBox once - never again. I ended up somehow running the proprietary version which “phoned home” and some 30 or 60 days later corporate got a call. When it comes to Oracle, I take Nancy Reagan’s advice [0].
>although MySQL's development have stalled during the past few years.
9.0 is finally released and we are now at 9.3. While nothing big or exciting with every release but development is steady. MySQL 8.0 will reach EOL in April 2026 so every should move to 8.4 LTS soon(ish) and 9.7x should also be LTS by then. I know most on HN is about Postgres but modern MySQL is decent. I think a lot of people still have MySQL from 5.0 era. Which is also somewhat true with Java as well.
I think Oracle do contribute lot of open source code, they just dont get the credit or brag about it.
I wonder how much of that was due to cursed distro repositories.
I will probably never forget the rage I felt at discovering the reason my scripts broke between Debian versions was because "apt-get install mysql" started silently installing MariaDB instead, which was close but subtly different enough. (I am honestly surprised considering an Oracle trademark is involved, no lawsuits were filed over this.)
Regarding Java, also to note that alongside IBM, they were cooperating with Sun since the very early days from Java, including the Network Computer efforts, for Java based thin clients.
The quality of engineering varies wildly within Oracle, to the point that entire divisions can be relied on to produce absolute garbage because longevity completely trumps talent. Oracle Cloud has great engineering (which these days is quite hampered by bureaucracy and misplaced frugality, in my opinion), but outside OCI and a few small select orgs, the situation is dire.
At a couple points my org had hiring crunches and leadership’s short term solution was to find employees from other orgs that could be “loaned” to us. The quality was universally jaw-droppingly low. I had to do code reviews and they would do the craziest junior-developer no-standards stuff that would cause their PRs to get rejected repeatedly, because not only did they make dumb decisions, they didn’t even understand the explanations of why they were dumb decisions. It was infuriating and a horrible waste of time, and the second time around, we tried to say we don’t want that kind of help, but leadership insisted that the free manpower was not optional.
That sort of loaned manpower isn't free, despite management's continued delusions that it is. Loaners have a cost, both up-front (onboarding, mentoring, reviews, etc) and on-going (lack of organic expertise in the new code remaining on the team, maintenance of suboptimal or inconsistent code, etc). But they're not the sorts of costs that show up well on balance sheets, so good luck convincing anyone that they exist.
Quality of engineering and longevity of the company producing the engineered product have nothing to do with each other.
Evaluated by how useful they are to society at large, many businesses should not exist forever--or even for very long. Xerox PARC, Kodak, and Netscape are examples of companies (or, in PARC's case, a division of a company) that contributed significantly to their fields before becoming defunct. Those contributions aren't worsened or inferior, somehow, because the companies that engineered them are gone.
Whether or not a company is still in business only tells you whether a company is good at keeping itself alive. Over time, that quality is increasingly disconnected from whether a company produces valuable goods or services.
The benefits are so easily taken for granted as just being normal parts of life.
Just like how we take for granted that you can count on your food label not lying to you and your food not having dangerous ingredients, with proper inspections and such.
But it stops you from getting an equivalent coke from any other vendor, even if you might want to (because it might be cheaper). You're assuming that everyone finds it as important as you do that your “Coke” comes from a specific manufacturer regardless of what the product actually is or contains.
For Coke you might be right about most people (though not me) but there are plenty of products where brand loyalty isn't a thing. People just want some decent hand tissues around, nobody cares if it's made by actual Kleenex.
That's an ironic example, because I've been to several areas where Coke is the generic term and people would be confused if you said soda or soft drink or whatever. I have literally asked for a Coke and been asked "what kind?", with a gesture to a menu listing Sprite etc. (They were not asking about Diet Coca Cola.)
You're probably thinking of Genericisation. This isn't a law in the sense you probably mean, there is no statute about it, no legislature wrote it, nobody signed anything. Instead Genericisation is a legal doctrine related to the core idea in trademark law that we can't have exclusive use of descriptive marks.
Suppose you make a Big Car and you try to trademark "Big Car" as your exclusive mark for this new product. That's just describing the car, it's generic so you can't do that, it's OK to trademark "Giganticar" or "Waterluvian Car" or something because people can describe what their similar product is with the words "big car" but if you were allowed to own "Big Car" they can't do that.
Genericisation says well, if your product is so successful that now everybody knows what a "Waterluvian" is, and most people shown a new big car from say, Ford, say "Waterluvian" so that even Ford's sales people struggle to teach the guys on the forecourt not to call this a "Waterluvian" - that's now a generic term, you can't stop Ford just saying they're making a Waterluvian.
Genericisation only applies for crazy famous stuff. Kleenex is an example because your mom knows what a kleenex is, the guy who mows your lawn knows, Elon Musk knows, everybody knows, that's actually famous. Javascript probably wouldn't meet that requirement. My mother does not know what Javascript is, my boss does, because he's a software engineer, and maybe the average numerate graduate knows, but I wouldn't bet a lot of money on it.
Dilution is a related idea, also for very famous things. Dilution says for these famous things it's not OK to use the famous mark for any other purpose even though it's not related. So Disney toilet paper isn't OK, Coca-Cola brand vibrators, not OK, and so on. Nobody thinks the vibrator is a beverage, but Coke is so famous that doesn't matter. That doesn't impact here either.
Is there a relative component to the evaluation of genericisation? eg., if only truck drivers know about the term Waterluvian, but the vast majority use it in the generic way, then it's generic? Because it would be a relevant update to that law, & apply here
Because there's not actual written legislation, you could try to make this argument in court, but, previously courts have stuck to the idea that they mean everybody so truck drivers wouldn't be enough. Maybe "Everybody in New York" cuts it in a New York court, certainly I'd expect that "Nigerians don't know this word" wouldn't count against you in any court in the United States of America - but the sort of relativity you're thinking of was definitely not on their mind.
The amount of people that use JavaScript to refer to the Oracle-provided JavaScript is zero, the amount of people who can refer to the Oracle-provided JavaScript over the last 10+ years is zero. Because it isn't a thing. I'm pretty sure that is against trade mark regulations.
Honestly, I had no idea JavaScript was even a trademarked name. I've always just assumed it's the name of a programming language and had no idea it had anything to do with Oracle.
I guess I don't feel bad not knowing this though, as the language really does have nothing to do with the company it's insane that they even hold a trademark for it.
JavaScript was created as a wrapper for Java Applets. Oracle optained both when it bought Sun. The official name of the language is ECMA Script, but people insist on calling it the trademarked name because ECMA makes people think of an unpleasent skin condition.
The JavaScript name came out of a cross-licensing deal between Netscape and Sun where Netscape would bundle a copy of the JVM with their browser. Sun needed a way to put the JVM on most Windows users' computers to get developers to write Java software instead of Windows software, and they knew Microsoft wouldn't ship a product that would threaten the Windows platform's domination, so they figured that bundling with Netscape was their next best option. If you read the initial JavaScript press release ( https://www.tech-insider.org/java/research/1995/1204.html ), it's mainly marketed as a way to write glue code to make it possible for Java applets (where the real application logic would go) to interact with an HTML page:
> 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.
> Java programs and JavaScript scripts are designed to run on both clients and servers, with JavaScript scripts used to modify the properties and behavior of Java objects, so the range of live online applications that dynamically present information to and interact with users over enterprise networks or the Internet is virtually unlimited. Netscape will support Java and JavaScript in client and server products as well as programming tools and applications to make this vision a reality.
> "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 implemented, and Java applets had full interoperability with JavaScript. Applets could call JavaScript functions, and JavaScript functions could call applet methods. Of course over time people gave up on Java applets and JavaScript became a good enough language to write real application logic directly in it. It's true that JavaScript now has virtually nothing to do with Java, but that wasn't the case initially, and the name has at least some logic behind it.
One more tidbit I just learned: there was a Netscape/Sun deal around the name, so the registered trademark has some legal history. It's not that Sun (and then Oracle) just claimed rights to something Netscape made.
I'm trying to imagine the alternative history where James Gosling was given several days to develop a workable in-browser scripting language instead of Brendan Eich.
I'd like to believe that most people have switched over to TS but I wouldn't count on it until I've seen the numbers, which I am currently too lazy to look up.
"We're now firmly in the TypeScript era. 67% of respondents stated they write more TypeScript than JavaScript code – while the single largest group consisted of people who only write TypeScript."
I mean, I don't think of it as a rebuke of JavaScript. I've just found it to be the most natural pronunciation for that sequence of letters. I really can't read it any other way.
It is already called ECMAScript; they do not need to change it. It is also called JavaScript. (I don't know if there is trademark issues with ECMA too though)
However, the name "JavaScript" (and "ECMAScript") is in use enough anyways (like is described in the article), so Oracle shouldn't properly restrict others to use it in this way.
> a screenshot of the Node.js website to show use of the “JavaScript” trademark. As the creator of Node.js, I find that especially offensive.
There is some irony in that Ryan isn’t acknowledging Node.js own trademark in his post, given that he was the person who announced the Node.js trademark.
Ryan's post explaining the decision to trademark node seems pretty reasonable to me. Does Oracle have a similarly credible justification for maintaining the JavaScript trademark?
AFAIK Sun gave Netscape free use of the JavaScript Trademark purely to side with Netscape against Microsoft in the browser wars, language wars, etc. I would think there is still something related to the original agreement.
It looks like JScript is still trademarked by Microsoft, why not ask them to do whatever the community thinks is right for ECMAScript names and then we can all refer to the language a little faster?
Javascript has become such a ubiquitous term that its copyright status is increasingly tenuous. Node.js by contrast has no such problem, yet. Most of the industry supports this initiative, and dumping on the people willing to invest the time and money to fix it once and for all, over seemingly irrelevant things feels petty.
In TypeScript 7, the compiler will be written in Go instead of TS. But the compiler will still produce JS code as its output and so Node.js is still relevant for running that JS code.
Or is there something else about TypeScript 7 that will make Node.js irrelevant?
Typescript 7 is not a replacement for node, it is a language spec and compiler, but Bun _could_ be the preferred choice for dev using a Javascript runtime.
> To plead a claim of fraud, petitioner must plead that: (1) respondent made a false representation to the USPTO; (2) respondent had knowledge of the falsity of the representation; (3) the false representation was material to the continued registration of the mark, and (4) respondent made the representation with the intent to deceive the USPTO.
> A claim of fraud must set forth all elements of the claim with a heightened degree of particularity [...] Indeed, “the pleadings [must] contain explicit rather than implied expressions of the circumstances constituting the fraud.” In addition, intent to deceive the USPTO is a specific element of a fraud claim, and must be sufficiently pleaded
> Essentially, Petitioner’s theory of fraud is based on allegations that the specimen of use submitted with Respondent’s maintenance documents do not show use by the proper party. It is well-settled that the proper ground for cancellation is the underlying question of whether the mark was in use in commerce, not the adequacy of the specimens [...] the insufficiency of the specimens, per se, does not constitute grounds for cancellation; the proper ground for cancellation is that the term has not been used as a mark
From what I understand, TTAB is stating that simply showing that Oracle improperly submitting Node.js as a use of mark does not constitute fraud because the intent to deceive was not explicit. It's a bit frustrating because if its not _fradulent_ the only thing I am left to believe is that they were _negligent_.
To file for a mark or renewal of a mark and claim ownership of something you do not own is insane. It's not like this is a 5 second process or that there isn't a lot of money riding on this-- this sort of thing is super serious and incredibly important! You're telling me no one at Oracle or their counsel was able to catch this in review before filing? As far as I can tell, in the renewal for the mark[1], Node.js was the sole specimen provided as an example of mark use! Come on...
EDIT: Sorry, correction, they have three specimens attached to the renewal, two of which seem to be the same. Clearly an insurmountable amount of work and too complicated to validate.
IANAL, but I don't think your analysis is quite correct.
I think the key is
> It is well-settled that the proper ground for cancellation is the underlying question of whether the mark was in use in commerce, not the adequacy of the specimens
If I understand correctly (and I very well might not), that means that it doesn't matter whether some of the provided specimens were fraudulent or not, in order to revoke the trademark the burden of proof is to show the entire trademark claim was fraudulent, and if there was no fraud, then the trademark wouldn't have been granted.
Deno might be able to make a stronger argument of fraud, if they could show without that specimen USPTO would have rejected the application, or that the other specimen was also invalid, but that would delay the proceedings and require more work for them.
I don’t mean to be pedantic, but beyond the deliberate syntactic echoes, JavaScript and Java were the first two languages with (incompatible!) object-oriented data models enforced by the runtime to achieve widespread adoption with longevity (sorry, Smalltalk!)
Python was invented earlier, but didn’t see wide use until later.
And that they were both massively accelerated by the level of interest in the early WWW is undeniable. No other general purpose languages can say that except perhaps Perl, and it slowly burned out.
Yes, the typing and semantic models are wildly different. The point is that they’re primitive in a way that the other widespread alternative, C++, did not inherit from its Cfront heritage.
There's tons of libraries that use some kind of runtime-observable instance property as a tag, to mimic nominal typing in JS.
The same thing is also possible using prototype identity, if you either use the class keyword syntax sugar introduced with ES5 (?), or if you manually do OOP using prototypes. But the latter is very uncommon.
Is that really true though? As I understood it JavaScript was mainly adopted because Java was popular at the time. JavaScript originally shipped as LiveScript, and they changed it to JavaScript later. Here is a nice quote on it from Brendan Eich:
“The name JavaScript was chosen when Java was hot, and we were doing LiveConnect to hook up JS to Java applets.”
Here is one from David Flanagan:
“JavaScript was originally developed under the name Mocha… It was renamed JavaScript in a co-marketing deal between Netscape and Sun Microsystems.”
The name change to JavaScript, via a trademark license from Sun to Netscape, was on Dec. 4, 1995 -- still within the Netscape 2.0 beta period. There was no stable release of Netscape launched with LiveScript but not JavaScript support.
I might not be popular for this but JavaScript is indeed a trademark which Oracle rightfully owns these days. This is fair play.
However, I do believe the word has been diluted and genericized and hope the USPTO chooses to release it.
A good argument to avoid losing a trademark to genericization is to show that there is an actual generic term that overlaps with the trademark, but then the trademark is not the generic term itself.
Examples:
Nintendo → Video Game Console
Post-it → Sticky Note
Xerox → Photocopy
etc ...
In the case of JavaScript, there's no generic term to allude to; JavaScript is the generic term, which might weigh towards the argument of genericization.
> JavaScript is indeed a trademark which Oracle rightfully owns these days
Err, that's not a given by any stretch. This is exactly what the suit is trying to prove. They are not a rightful holder of the trademark. They've failed to show use in commerce, and one of their examples of use was someone else's.
I don’t think that matters in the context of the JavaScript trademark. Within the context of the trademark Oracle does have business developing and selling JavaScript.
Yep, and it now features as a supported language in their latest database version.
That might be another reason they continue to protect the trademark.
That 2nd example is a pretty bad example of JavaScript being used as a Oracle trademark.
Id argue the opposite. The wording makes no reference to oracles ownership of the product or name that is JavaScript. And ECMA is reffered to as the "maker" of the standard.
If anything, this is an example by Oracle themselves using the trademark in a generic context.
Its like cocacola calling themselves "a producer of fanta" and referring to a the food and drug administration to define what that means.
I doubt the writer of that doc was aware that Oracle owns the JavaScript trademark.
These (along with Kleenex) are common examples of genericization, yet I assume through diligence on the part of those brands, I hear and see the actual generic terms used far more frequently. For example, I've never heard anyone under the age of 70 (by now) use "Nintendo" to mean any video game console. "Sticky note", "photocopy", and "tissue" are terms I personally hear used much more frequently than "Post-it", "Xerox", or "Kleenex", respectively.
But for "JavaScript"? What else is there? "JS"?
Edit: I guess there's "ECMAScript", but who actually says that (aside when they legally need to)?
I've only heard Xerox be used like that once in my life. I was so confused what a company that invented the mouse had to do with what the person was talking about.
Oracle, to my knowledge, does not profit at all off of the JavaScript name or brand. I don't see the purpose of defending this lawsuit. They have an opportunity to create some goodwill here, hold a press release, and say "We're gifting the JavaScript trademark to the developer community!" But instead they're defending something that they literally do not profit off of. It's absurd.
Nowadays, it's a lawyer company - not a technology/software company. Their only reason for existence is to keep selling licenses for the things they own for as long as they still can, so it's pretty natural they're holding on to anything (regardless of actual value) they can.
Part of me thinks that's just the Oracle equivalent of janitorial and catering staff, the people you need to keep around to ensure the people creating the company profit, the sales people and lawyers, can work most efficiently.
Yeah unlike other companies who keep technical staff on rolls to wash their feet and drink that water. Because profiting from technical work is unthinkable in industry.
Harsh, but understandable. I’d make an exception for first job out of school people. They might not know better yet. If someone worked for an Oracle customer before going to work for Larry, though, I’d be convinced they were the devil incarnate.
> I think it’s kind of sad that you would have that opinion.
Yeah. I don't like it either, but that's the world we've built. I wish an industry as important as ours had some standards of ethics, like doctors and real engineers do.
> Are the engineers working on OpenJdk completely lacking of morals?
Oracle attempted to make clean room reverse engineering illegal by arguing that copyright applies to Java's ABIs despite our entire industry relying on that not being the case, all so Larry Ellison could buy yet another yacht. So yeah, someone continuing to work on Java after it was acquired by one of the most evil companies on the planet definitely is consciously choosing to make the world a worse place and should no longer be employable.
> How does working for Oracle compare to say working at Facebook or Google with all their privacy invasion tech?
Facebook is also on my personal blacklist, yes. Less for their privacy invasion, and more for their eagerness to make a buck by helping spread misinformation and bringing about the end of democracy in the western world.
I don't feel as strongly about Google personally, but I wouldn't argue if someone else on the hiring team felt it was disqualifying.
I despise Oracle, and I think there aren't many companies out there as evil as them. I would be thrilled if they burned to the ground, figuratively speaking of course.
But that said, I think it would be dumb to jump to conclusions just based on having Oracle on the resume. You should at least ask them why they worked there, and why they left. For all you know, they had no idea how bad Oracle was when they started, and they left because they saw how evil they were. That is the exact kind of person that I do want to hire
I guess I consider it part of one's ethical duty to research the places you work and decide whether you are willing to put your life's efforts behind supporting the company's behavior. Oracle very famously attempted to completely undermine how the entire software industry works and make unapproved interoperability illegal with their Google Java lawsuit[1]. If an applicant supported the company that filed that lawsuit by working for them, and doesn't feel enough shame to leave it off their resume, then I don't want to work with that applicant.
I think this is key. When you hire people to do work, they'll find stuff to do even if it isn't really necessary or a long term good for the company.
My favorite other example of this is when I see a UI redesign that didn't actually benefit anyone and was more a style change than anything, and sometimes actively makes usability worse (cough Liquid Glass cough) In those situations I always think "well, some designers on staff needed to justify their paychecks".
I think this is actually a bit different than the principal agent problem, at least how the principal agent problem is normally described and envisioned.
E.g. you often imagine cases like a manager making a decision that causes a short term pop in stock price (and bonuses to the manager) to the detriment of the long term health of the company when thinking about the principal agent problem. In the cases I'm thinking about, though, it's more that people rarely can do nothing, even if that's sometimes the best thing to do. E.g. large companies need to have lawyers and designers on staff for lots of reasons. But sometimes there just isn't enough work for these folks to do (even if they need to be "warm" and ready when important work comes along). And if there isn't enough work to do, these people will find work to do.
This is another reason why I think that, even though layoffs are painful, having people "milling about" without clear direction and purpose is the worst for everyone involved. These people will just schedule meetings, insert themselves where it isn't helpful, etc., just to make it seem like they have a purpose.
This could be thought of as a "variant" of the principal agent problem I guess, but this instance of "idle hands are the devil's playthings" is different enough from the "standard" principal agent problem that I don't think it's helpful to conflate these two things.
> But sometimes there just isn't enough work for these folks to do (even if they need to be "warm" and ready when important work comes along). And if there isn't enough work to do, these people will find work to do.
It is possible to find work in a different area at the company for such in-between times.
For example at the company where I work, a (very capable) secretary whose original role was not needed anymore, but for who there existed a very role in the future was for the in-between time assigned to assist some other department in their reporting duties to regulating authorities.
Not all employees are willing to rock the boat, ask around and risk exposing themselves as superfluous. It's less risky to always act like - or tell yourself - that every task that ends up on your desk require throughout diligence.
I think this is especially true at big corps with little actually meaningful work and where most people who actually care about doing meaningful work has left a long time ago.
It's not even justify their salary. A lawyer's sole job is to advocate for the legal position of their client as zealously as possible. A really good chief counsel would go to the CEO and weigh up the merits of the marketing win of "losing" this case. A drone lawyer just files whatever is necessary (or even unnecessary) to fight the case even when it makes zero god damn sense. e.g. giving a person a 25 year prison sentence for stealing a slice of pizza.
Everyone who passionately defends a big company’s honor online needs to watch and understand that bit! Companies are not humans with feelings and empathy. They’re all lawnmowers. That they happen to be made of people doesn’t change their nature.
They could reverse 90% of their brand damage in one swing by simply updating CDDL to allow integrating ZFS with GPL, which also wouldn't cost them anything as far as I'm aware, but we're both making the mistake of anthropomorphizing the lawnmower.
The version of ZFS that everybody (besides the dwindling number of Oracle Solaris customers) uses now, OpenZFS, has been maintained completely independently of Oracle since they shut down OpenSolaris in 2010. This means that Oracle relicensing ZFS wouldn't do anything to help with getting it integrated into the Linux kernel, since there's been hundreds of independent contributors to ZFS since then who all own their own copyrights. Because ZFS is licensed under the CDDL, which has an automatic upgrade clause, Oracle could simply copy/paste the GPLv2 license text and call it "CDDL v2" if they wanted to make ZFS able to be included in Linux.
Swapping to an entirely new license rather than adding one sentence to the existing one is not simpler either in terms of linguistics or getting approval from their army of lawyers.
It would require getting all past contributors _and_ the current copyright owner to agree. Normally I'd agree that getting all past contributors to agree is the hard part, but the copyright owner here is Oracle. I'd have more confidence in getting the rest of the contributors to agree to a license in Pig Latin than getting Oracle to make literally any change to the license for this.
Making a concession when they have not been forced to might indicate weakness to some. In that sense showing a speck of humanity might actually harm their stock.
My guess, is that the people who could break protocol are too busy to deal with a request to break protocol. Too busy to give it a thought.
And anyone who is sympathetic to the request, knows that campaigning for the protocol break would require disrupting two or three levels of management above them, forcing powerful people to deal with something they don't care about. And that would be interpreted as wasting important people's time.
So the organization, as a decision making entity, is incapable of recognizing, much less considering, requests for an exception to default behavior.
I worked with a business that operated this way for many years. Even when there were overwhelming reasons to break process, the spark and tinder never got anywhere near each other.
Everyone between the spark and tinder empathized, talked to "somebody" to demonstrate they "tried", and to create an alibi for the inevitable "no" response that came next, while quietly doing everything they could to smother that spark, before it burned them.
Yeah, but Microsoft also did a two steps forward and three steps back there. Things like shoving product ads onto the lock screen and preinstalling Candy Crush Soda Saga cost them more goodwill than any developer-facing effort earned them.
This one especially hurt only people who are inside Windows ecosystem. For people like me Microsoft is nice author of one product. I'm talking about VS Code.
Increasingly more of VSCode isn't open source. First-party Microsoft language extensions have been locking features up for quite some time now, and whenever that happens the license also prohibits running it on any VSCode fork.
Microsoft’s “core DNA” is still there firmly, though.
They successfully weaponized open source by giving something for free and clawing back step by step (i.e. closing open source VSCode plugins), and leaving parts which does drowns competitors most effectively open.
Also they act like their open source code is “Free”. They firmly control it, yet act like they don’t.
Microsoft’s image didn’t improve a bit in my eyes.
> Also they act like their open source code is “Free”. They firmly control it, yet act like they don’t.
They are responsive to the community and merge community PRs. That's already more "open" than, say, SQLite.
Sure, they don't give away merge rights and keep exclusive control over the upstream copy. But how many "open" projects have a second maintainer at all? I mean, more than one person (the original author) with merge access.
The code is free. You can always fork it and use it however you like. That's always been the deal you get with open source.
Sure, it's nice when the upstream maintainers always do only the things you like, and you never need to fork. But that's a separate quality, unrelated to the code itself being "free" or "open".
> They successfully weaponized open source by giving something for free and clawing back step by step (i.e. closing open source VSCode plugins), and leaving parts which does drowns competitors most effectively open.
And that's why people should be pushing for Free Software, rather than Open Source.
20 years in the game, and I ended up agreeing with steve ballmer: open source is cancer.
Look at how bad it went for ElasticSearch and Redis, and then look how well it's going for Grafana (whose software is Free Software - besides being just great).
This is so true that Redis did not go back to being "open source", it became Free Software (AGPL).
Since Oracle is not in B2C, there is no brand damage in openly being a net-negative rent-seeker. Rent-seeking is what shareholders crave. It makes line go up, it has electrolytes.
It only makes the line go up in the short term. In the long term companies will avoid Oracle, and sales will go down. But shareholders don't care about the longterm.
Oracle has demonstrated the long-term and their stock has never been higher. Their sales are finally heading higher again.. They're one of the oldest software companies and are approaching 50 years old. What is more long-term in their industry than what they have accomplished?
They're better positioned now than they have been at any other point in the past 10-15 years.
Just make sure you don't benchmark it. Comparing to the competition is a serious breach of contract.
Oracle is not an abusive relationship, it's just that you shouldn't be looking elsewhere, and infractions will be punished. They are very serious about audits.
However, it is not legal to then redistribute this combination. Which essentially means linux distros cannot ship with OpenZFS: each user must combine the two on their own.
(This doesn’t necessarily stop people, but it is read by Debian as “illegal enough” to warrant a splash screen on installing OpenZFS that you’re losing the right to redistribute.)
ZFS is widely used with Linux in HPC (https://computing.llnl.gov/projects/openzfs). Is asking users to install ZFS separately really that much of a lift for ZFS's target audience?
Being out-of-tree means that kernel refactors break ZFS, and that it has a lot fewer hands and eyeballs available for the kinds of bugs that require internal design changes to fix (rather than paper over).
Who would sue, and what damages would they demonstrate in this case? Both the Linux and ZFS source is available and you are allowed and encouraged to build and use them. Redistributing binaries can be thought of caching precompiled artifacts, merely speeding up what you can already do manually (and with reproductible builds the result should be identical). Nobody loses anything.
Let's say I built a magical compiler capable of compiling a Linux+ZFS kernel in miliseconds. I put it behind a web UI which accepts a Linux tarball and ZFS tarball and spits out the compiled kernel. Because of some mysterious bug I am still trying to solve, only specific Linux and ZFS tarballs work, so I put validation to hash the uploaded tarballs and only let through the ones that are known to work.
Let's peel back the curtain: there is no magical compiler and all this is doing is hashing the input kernel & ZFS source tarballs, using it as a lookup table in a cache of precompiled binaries, and spitting out the matching one, which is currently not allowed. But let's assume the compiler was real, in this case it should be fine, even though the functionality of the system is no different.
I would at least understand if one of the licenses explicitly restricted the right to distribute ready-to-use binaries as a way to carve themselves a moat so the authors are the only ones that would be able to do it (and thus charge for it). But that's not the case here, nobody is better (or worse) off whether I waste time building it manually vs reuse someone else's earlier effort of building it.
It would be the Free Software Foundation, for a copyright violation due to GPL licensing violation. (Technically the Linux Kernel Foundation, as they’re the copyright holders here, but the FSF is generally involved in suits to protect GPL.) It is not necessary to demonstrate damages for copyright infringement; there are statutory (assumed) damages for this tort.
WOULD they? It depends on how important it is to have a credible threat of enforcement for GPL violations. But it’s not zero, and it’s a pretty clear violation. Which is enough to scare off most major distros - if they receive a C&D, that’d be a breaking change they’d have to push retroactively. Not worth the risk.
Ignoring how Sun/Oracle's shenanigans with ZFS don't nearly account for "90% of their brand damage"...
> simply updating CDDL to allow integrating ZFS with GPL
That can't be done at this point. Owing to a decision that arose right here from a discussion on HN, the ZFS maintainers adopted a policy in 2016 to opt out of the CDDL's built-in "any subsequent version" clause for new source files:
~/scratch/zfs$ grep --exclude-dir=.git -Ire "Common Development and Distribution License" -A 2 | grep -ie "\(Version 1\.0 only\|\<only\>.*\<version\>\)" | wc -l
821
(The CDDL is a file-based license. At the time of that decision, there were already roughly a hundred CDDL-licensed files in the source tree specified as available under "Version 1.0 only".)
Their lawyers have said it in public many times so there are a lot of legal doctrines that would make it very hard for them to backtrack at this point.
I mean I get Oracle hate and stuff, but remember the great and lovely Sun Microsystems used all tricks in the bag against Microsoft with respect to Java late 90s/early 2000s.
So, is "X abuses IP law" hatred is out of principle or because folks seem to be in love with Sun and Google and hate Oracle and Microsoft.
Take over and change? They were adding functionality: embrace and extend. It wasn't like most reasonable people wouldn't agree it was lowercase "javascript".
This is the wrong way to look at it from a business perspective. They don’t directly profit off licensing or support or anything like that, but they gain free advertising.
They gain absolutely nothing by handing over the name and brand - in fact they lose valuable brand recognition.
Obviously most people in the industry hate them with a passion (see this thread as evidence), but many see the association as evidence that they might at least have some expertise with that product set. I certainly don’t agree with their position, but it makes sense commercially.
How are they going to lose brand recognition, when a majority of people do not associate JavaScript with Oracle? The only language I associate with Oracle is Java.
> Oracle, to my knowledge, does not profit at all off of the JavaScript name or brand.
At this time, but their ownership and past behavior indicates that if Deno or anyone else tries to have a paid offering, there’s a non-zero chance Oracle will come sniffing for low effort money.
> They have an opportunity to create some goodwill here
According to Bryan Cantrill, you don't need to be open minded about Oracle. It's a waste of the openness of your mind. He says what you think of Oracle is even truer than you think it is. He believes there has been no entity in human history with less complexity and nuance to it than Oracle.
Bryan warns, "Do not fall into the trap of anthropomorphizing 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' -- the lawnmower doesn't give a shit about you, the lawnmower can't hate you. Don't anthropomorphize the lawnmower. Don't fall into that trap about Oracle."
This is so true. And in my experience Oracle's main business seems to be getting companies to sign complicated contracts, waiting a year or two, and then suing them for some infraction so that they can extort another contract from them. I haven't met an Oracle product yet that can't be done better by either free software or a less litigious company.
The only good SQL tooling I am aware of, really good with compilers, debuggers, IDEs, is MS SQL Server.
Then stuff like distributed transactions, raw disk access for databases, among other niceties that people reaching to Postgres or MySQL probably never heard of, but many Fortune 500 enjoy, even if one for checking bullet points on RFPs.
Postgres comes second, after getting all puzzle pieces together, some of them also commercial.
I personally have come to the conclusion that behind every major open-source or free software success story, there is a completely dysfunctional market. Without this, it would be impossible to find enough people willing to say, “Fuck that shit, we're going to recode this ourselves.”
The fact that there are so many people motivated to code alternatives to Oracle products says a lot about Oracle's business practices.
There is nothing I take more glee in than listening to bcantrill talk negatively of Oracle. Whenever Oracle comes up in one of his talks or a podcast, I know I'm in for a treat.
They do, if the lawnmower believes "more trademarks good" (and which corporation doesn't?), and trademarks must be actively used and defended to be kept.
Like all machines in the real world, the Oracle machine intelligence is limited - it can't process every single thing to infinite detail. "More trademarks good" and "trademarks must be actively used and defended to be kept" are heuristics and explain this well if you tack on an "on average" to the former.
It doesn't "make sense" for a lawnmower to cut hands either, it isn't a meat grinder after all. However it is a blade attached to a motor and from a purely mechanical, non-human perspective it will cut whatever comes within reach.
Apparently not everybody got the Lawnmower Memo, so thanks for posting that again, as a reminder to people like sprash who think I should have "sincerely asked if you are allowed to publish the [NeWS source] code". As if sincerity would help, and as if I haven't been sincerely asking since 1986.
I'll also sincerely ask: Does anybody at Oracle know how I can get in touch with their HR department to find out what ever happened to my Sun 401k plan? Because nobody will answer my calls, and it's a lot of money of mine plus 33 years of interest they owe me that they're holding on to, which they inherited from Sun and then disappeared from all known records (except for a record that says it once existed and Oracle has it, but no other info), and they won't pick up the phone or return my email, no matter how "sincerely" I ask or how long I wait on hold.
sprash 4 days ago | parent | context | flag | favorite | on: Ancient X11 scaling technology
> 1994
Apparently you have to be criticizing X11 for more than three decades now. Since you seem to know your stuff, could you please post a link to your git repository containing your personal display server that solves all the problems?
DonHopkins 4 days ago | prev | next [–]
Since they bought Sun Microsystems, Oracle now owns the rights to the NeWS source code, so unfortunately I'm not legally allowed to post the NeWS server source code on my Github page, although I spent many years unsuccessfully fighting to make NeWS free and evangelizing it to anyone who would listen, like RMS and my colleagues and customers at Sun:
> Oracle owns the rights to the NeWS source code so I'm not allowed to post it on my Github page.
They are certainly not making any money with it right now. All patents should be expired by now. Have you ever sincerely asked if you are allowed to publish the code? [...]
DonHopkins 4 days ago | root | parent | prev | next [–]
[...] Ha ha! Good luck, kiddo. Have you ever tried asking a lawnmower for favors? Do you really think "sincerity" would help?
I have a feeling that a lot of big corps somehow work as effective containment vessels for decent workforce this way. It feels like a conspiracy but it doesn't make sense as one to me.
The only logical reason I can think of to fight to keep the trademark is that they specifically don't want any goodwill, and that want to maintain their reputation as ruthless litigators.
How is it that Oracle gets to claim this trademark at all? They never created it, Netscape did. Oracle bought Sun which could have challenged Netscape for naming JavaScript after Java, but I don't think they ever did.
Isn't the entire reason because they funded JavaScript and in order to protect Java's trademark they maintain it just in case? I think that's the real simple answer. Feel free to educate me if someone knows different.
> They have an opportunity to create some goodwill here
This would be first event of that kind to my knowledge. I've been coding for 20 years and never heard anyone say anything good about Oracle other than their free hosting tier _is free_. Better late than never I guess!
Only because you don't understand Trademarks. They are not copyrights.
Trademarks exists to protect consumers, so they don't mix together companies and products that have too similar name or branding. So somebody can't release a product called iPhona for $600 in the hopes that somebody will overlook the typo and order it instead of an iPhone for $600.
If a company is not offering a product based on a trademark, that trademark should actively be removed. Oracle is not using the JavaScript trademark.
Nashorn (the JS engine in the JDK) was the only teeth Oracle had, but they removed it, so what can they truly say they own that supports the fact they're building JavaScript?
Thats not Oracle though I thought that was IBM? But if it is Oracle why did they submit nodejs as an example? They do not own nodejs (yet?) so it’s bizarre.
oracle holding javascript just froze it ,no one else can touch it ,they not doing anything with it but that nothing is exactly what kept it stable without fights or rebrands or ai company trying to trademark over it. later then it can also open lane for anyone to grab and next holder might not be this quiet. oracle doing nothing ended up protecting it more imo
334 comments
[ 2.1 ms ] story [ 161 ms ] threadBoth Java the language and OpenJDK the main runtime & development kit have had much more money and manpower poured into them under Oracle than they ever had previously. Both continue to advance rapidly after almost dying pre-Oracle acquisition.
MySQL 8 (released in 2018) was a massive release that brought many long awaited features (like CTEs) to the database, although MySQL's development have stalled during the past few years.
Oracle employs several Linux kernel developers and is one of major contributors (especially to XFS and btrfs): https://lwn.net/Articles/1022414
Not top 3 or even top 10, but better than most companies out there.
That's all I can remember.
edit: after thinking about it for a couple more minutes, they're also the main developer of GraalVM — the only high quality FOSS AOT compiler for Java (also mentioned by a sibling comment), and are writing one of the major relatively lightweight modern alternatives to Spring (the other two being Micronaut and Quarkus): https://helidon.io
People actually used to like the products that made these companies explode. Windows 2000 was cool; Facebook was cool; Google was cool. Whenever they stop being pure unadulterated evil for a few minutes, very quickly a lot of people are willing to forgive them and welcome them back into polite society.
But as long as most geeks can remember, Oracle has never been cool. At its peak, the company enabled a world of snooty BOFH DBAs, selling unreasonably expensive products to well-oiled middle-managers. And then they started "acqui-squeezing" adjacent products, blackmailing their own customers, and suing everyone in sight. They could cure cancer tomorrow, gifting all the related IPs to the world, and most geeks would still see them as scum trying to whitewash their image - and they would probably be right. There are some great engineers in Oracle, but their management is all that is wrong with capitalism.
SQL is kind of shitty, but the relational database model is so great that it makes up for it. And until the rise of entity component systems, SQLite, PostgreSQL, and MariaDB, all the decent implementations were proprietary software. Separately, although SQL's implementation of transactions is even more broken than its implementation of the relational model, transactional concurrency is also great enough to make up for SQL, and, again, all the usable implementations used to be proprietary.
Which RDBMS software has/have become the best in the world after that?
Also, though, horizontal scaling is a lot less important now than it was 20 or 30 years ago. https://www.servethehome.com/2025-server-starting-point-inte... says AMD has 192 cores per socket, and you can get two-socket motherboards, so 384 cores total. And you can stick 12 128GiB DDR5-6000 DIMMs in it, so 1.5 tebibytes of RAM, and a single SSD is 30 terabytes, and SSDs can commit a transaction group durably in typically 0.1 milliseconds. And those 384 cores (EPYC 9005, so Zen 5c, https://www.servethehome.com/amd-epyc-9005-turin-turns-trans...) are 2.25GHz and typically about 2.2 instructions per clock (https://chipsandcheese.com/p/zen-5-variants-and-more-clock-f...), and they support AVX512.
As one rough estimate, 2.25GHz with AVX512 (at 1 IPC) means you can do 36 billion column-oriented 32-bit integer operations per core per second, which with 384 cores means 13 trillion 32-bit integer operations per core per second. On one server. So if you have a query that needs to do a linear scan of a column in a 13-million-row table, the query might take 300μs, but you should be able to do a million such queries per second. But normally you index your tables so that most queries don't need to do such inefficient things, so you should be able to handle many more queries per second than that!
(Each socket has 12 DDR5 channels, totaling 576 gigabytes per second to DRAM per socket or 1.13 terabytes per second across the two of them, so you'll get worse performance if you're out of cache. And apparently you can use 512GiB DIMMs and get 6 tebibytes of RAM!)
So, if you need more than one server for your database, it's probably because it's tens or hundreds of terabytes, or because you're handling tens of millions of queries per second, or because your database software is designed for spinning rust. Spinning rust is still the best way to store large databases, but now the cutoff for "large" is approaching the petabyte scale.
I think the space of databases that are under ten terabytes and under ten million queries per second is large enough to cover almost everything that most people think of when they think of "databases".
Servers fail, any serious business obviously needs more than one server. And many need more than one data centre, just for redundancy. The more modern Oracle clusters act in a similar manner to RAID arrays, with virtual databases replicated across clusters of physical servers in such a way that a loss of a physical server doesn’t impact the virtual databases at all.
I was talking about horizontal scalability, not failover. You don't need horizontal scalability, or for that matter any special software features, for failover. (Though PITR is nice, especially if your database is running a business.) With cloud computing vendors, you may not even need a second server to fail over to; you can bring it up when the failure happens and pay for it by the hour.
The features you're talking about made a lot of sense 30 years ago, maybe even 20 years ago. They still make a lot of sense if you need to handle hundreds of millions of queries per second or if you have hundreds of terabytes of data. But, for everything else, you can get by with vertical scaling, which is a lot less work. Unlike backups or rearchitecting your database, it's literally a product you can just buy.
(A lot of the open-source relational databases I listed also support clustering for both HA and scalability; I just think those features are a lot less important when you can buy an off-the-shelf server with tebibytes of RAM.)
I think you could make reasonable arguments for SQLite, Postgres, MariaDB, Impala, Hive, HSQLDB, SPARK, Drill, or even Numpy, TensorFlow, or Unity's ECS, though those last few lack the "internal representation independence" ("data independence") so central to Codd's conception.
What's your opinion?
I don't disagree, but that's not what I said. Yes, it was a good product; but everything else that came with it was already shit. It empowered DBAs, not developers, and enterprise people, not hobbyists; for these reasons (and others), it was just not something that most people liked.
Popularity is not simply a function of technical value.
[0] https://en.wikipedia.org/wiki/Just_Say_No
9.0 is finally released and we are now at 9.3. While nothing big or exciting with every release but development is steady. MySQL 8.0 will reach EOL in April 2026 so every should move to 8.4 LTS soon(ish) and 9.7x should also be LTS by then. I know most on HN is about Postgres but modern MySQL is decent. I think a lot of people still have MySQL from 5.0 era. Which is also somewhat true with Java as well.
I think Oracle do contribute lot of open source code, they just dont get the credit or brag about it.
Many already moved to MariaDB, because development stalled after Oracle bought Sun (which bought MySQL).
I will probably never forget the rage I felt at discovering the reason my scripts broke between Debian versions was because "apt-get install mysql" started silently installing MariaDB instead, which was close but subtly different enough. (I am honestly surprised considering an Oracle trademark is involved, no lawsuits were filed over this.)
Oracle's contributions are less clear-cut, particularly if you don't count all the acquired "achievements."
I’d be surprised if Oracle released the trademark without a fight to the end. They have a special way of decimating open source projects.
At a couple points my org had hiring crunches and leadership’s short term solution was to find employees from other orgs that could be “loaned” to us. The quality was universally jaw-droppingly low. I had to do code reviews and they would do the craziest junior-developer no-standards stuff that would cause their PRs to get rejected repeatedly, because not only did they make dumb decisions, they didn’t even understand the explanations of why they were dumb decisions. It was infuriating and a horrible waste of time, and the second time around, we tried to say we don’t want that kind of help, but leadership insisted that the free manpower was not optional.
Evaluated by how useful they are to society at large, many businesses should not exist forever--or even for very long. Xerox PARC, Kodak, and Netscape are examples of companies (or, in PARC's case, a division of a company) that contributed significantly to their fields before becoming defunct. Those contributions aren't worsened or inferior, somehow, because the companies that engineered them are gone.
Whether or not a company is still in business only tells you whether a company is good at keeping itself alive. Over time, that quality is increasingly disconnected from whether a company produces valuable goods or services.
Had it not been for Oracle, Java would have died on version 6, and it remains to be seen what would have happened from anything else.
Oracle is a parasite.
https://www.engadget.com/2014-02-26-when-carl-sagan-sued-app...
TypeScript is now called DecafScript.
Rolls off the tongue
To google something has for decades for millenials meant search online in any way.
Trademark law is dumb and inconvenient. Only people owning trademarks disagree.
But so are many other laws. We all just have to follow them all anyway.
I find that convenient, despite owning no trademarks.
Just like how we take for granted that you can count on your food label not lying to you and your food not having dangerous ingredients, with proper inspections and such.
For Coke you might be right about most people (though not me) but there are plenty of products where brand loyalty isn't a thing. People just want some decent hand tissues around, nobody cares if it's made by actual Kleenex.
Are you arguing that I’d be somehow better off if any company could sell me an “equivalent” Coke, Toyota Camry, or iPhone?
You're probably thinking of Genericisation. This isn't a law in the sense you probably mean, there is no statute about it, no legislature wrote it, nobody signed anything. Instead Genericisation is a legal doctrine related to the core idea in trademark law that we can't have exclusive use of descriptive marks.
Suppose you make a Big Car and you try to trademark "Big Car" as your exclusive mark for this new product. That's just describing the car, it's generic so you can't do that, it's OK to trademark "Giganticar" or "Waterluvian Car" or something because people can describe what their similar product is with the words "big car" but if you were allowed to own "Big Car" they can't do that.
Genericisation says well, if your product is so successful that now everybody knows what a "Waterluvian" is, and most people shown a new big car from say, Ford, say "Waterluvian" so that even Ford's sales people struggle to teach the guys on the forecourt not to call this a "Waterluvian" - that's now a generic term, you can't stop Ford just saying they're making a Waterluvian.
Genericisation only applies for crazy famous stuff. Kleenex is an example because your mom knows what a kleenex is, the guy who mows your lawn knows, Elon Musk knows, everybody knows, that's actually famous. Javascript probably wouldn't meet that requirement. My mother does not know what Javascript is, my boss does, because he's a software engineer, and maybe the average numerate graduate knows, but I wouldn't bet a lot of money on it.
Dilution is a related idea, also for very famous things. Dilution says for these famous things it's not OK to use the famous mark for any other purpose even though it's not related. So Disney toilet paper isn't OK, Coca-Cola brand vibrators, not OK, and so on. Nobody thinks the vibrator is a beverage, but Coke is so famous that doesn't matter. That doesn't impact here either.
I guess I don't feel bad not knowing this though, as the language really does have nothing to do with the company it's insane that they even hold a trademark for it.
It can be both.
>Everyone knows JavaScript isn’t an Oracle product
But older people should know that it was a Sun product and Oracle bought Sun.
Edit: Sun actually only licensed the name. But in the renewal it points to an Oracle product called Oracle JavaScript Extention Toolkit.
https://tsdr.uspto.gov/documentviewer?caseId=sn75026640&docI...
Javascript was written at Netscape.
> 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.
> Java programs and JavaScript scripts are designed to run on both clients and servers, with JavaScript scripts used to modify the properties and behavior of Java objects, so the range of live online applications that dynamically present information to and interact with users over enterprise networks or the Internet is virtually unlimited. Netscape will support Java and JavaScript in client and server products as well as programming tools and applications to make this vision a reality.
> "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 implemented, and Java applets had full interoperability with JavaScript. Applets could call JavaScript functions, and JavaScript functions could call applet methods. Of course over time people gave up on Java applets and JavaScript became a good enough language to write real application logic directly in it. It's true that JavaScript now has virtually nothing to do with Java, but that wasn't the case initially, and the name has at least some logic behind it.
One more tidbit I just learned: there was a Netscape/Sun deal around the name, so the registered trademark has some legal history. It's not that Sun (and then Oracle) just claimed rights to something Netscape made.
https://2024.stateofjs.com/en-US/usage/
However, the name "JavaScript" (and "ECMAScript") is in use enough anyways (like is described in the article), so Oracle shouldn't properly restrict others to use it in this way.
There is some irony in that Ryan isn’t acknowledging Node.js own trademark in his post, given that he was the person who announced the Node.js trademark.
https://nodejs.org/en/blog/uncategorized/trademark
So he wants Node.js trademark to be acknowledged, but doesn’t acknowledge it himself.
Oracle wants the JavaScript trademark acknowledged, and he doesn’t want to acknowledge that either.
This all seems very silly to me.
Of all places to put trademark acknowledgement, it’d be there - and it’s missing.
https://deno.com/
It looks like JScript is still trademarked by Microsoft, why not ask them to do whatever the community thinks is right for ECMAScript names and then we can all refer to the language a little faster?
Javascript has become such a ubiquitous term that its copyright status is increasingly tenuous. Node.js by contrast has no such problem, yet. Most of the industry supports this initiative, and dumping on the people willing to invest the time and money to fix it once and for all, over seemingly irrelevant things feels petty.
In TypeScript 7, the compiler will be written in Go instead of TS. But the compiler will still produce JS code as its output and so Node.js is still relevant for running that JS code.
Or is there something else about TypeScript 7 that will make Node.js irrelevant?
To file for a mark or renewal of a mark and claim ownership of something you do not own is insane. It's not like this is a 5 second process or that there isn't a lot of money riding on this-- this sort of thing is super serious and incredibly important! You're telling me no one at Oracle or their counsel was able to catch this in review before filing? As far as I can tell, in the renewal for the mark[1], Node.js was the sole specimen provided as an example of mark use! Come on...
EDIT: Sorry, correction, they have three specimens attached to the renewal, two of which seem to be the same. Clearly an insurmountable amount of work and too complicated to validate.
[0]: https://ttabvue.uspto.gov/ttabvue/v?pno=92086835&pty=CAN&eno...
[1]: https://tsdr.uspto.gov/documentviewer?caseId=sn75026640&docI...
I think the key is
> It is well-settled that the proper ground for cancellation is the underlying question of whether the mark was in use in commerce, not the adequacy of the specimens
If I understand correctly (and I very well might not), that means that it doesn't matter whether some of the provided specimens were fraudulent or not, in order to revoke the trademark the burden of proof is to show the entire trademark claim was fraudulent, and if there was no fraud, then the trademark wouldn't have been granted.
Deno might be able to make a stronger argument of fraud, if they could show without that specimen USPTO would have rejected the application, or that the other specimen was also invalid, but that would delay the proceedings and require more work for them.
I'd donate.
Python was invented earlier, but didn’t see wide use until later.
And that they were both massively accelerated by the level of interest in the early WWW is undeniable. No other general purpose languages can say that except perhaps Perl, and it slowly burned out.
So the JVM has a runtime-enforced nominal type system (and object model) with classes.
But JS, to my knowledge, only has primitive types enforced at runtime, and no nomimal class system, unless you basically implement it yourself?
Uh, edit: maybe I get you now, it does have that in a way. But prototype identity and "instanceof" are rarely used in practise.
Maybe I'm missing your point here. Answering at late local time.
It would be so great to have a nominal type system in the browser though.
So many JS librarlies have their own version of it, and it causes insufferable headaches when combined with TypeScript.
Like, they use complicated hacks to make sure that their library objects are not structurall/duck typed.
Yes, the typing and semantic models are wildly different. The point is that they’re primitive in a way that the other widespread alternative, C++, did not inherit from its Cfront heritage.
that's what I was aiming at, maybe poorly.
There's tons of libraries that use some kind of runtime-observable instance property as a tag, to mimic nominal typing in JS.
The same thing is also possible using prototype identity, if you either use the class keyword syntax sugar introduced with ES5 (?), or if you manually do OOP using prototypes. But the latter is very uncommon.
It seems to be more common to add a property like
and use that as a tag.Is that really true though? As I understood it JavaScript was mainly adopted because Java was popular at the time. JavaScript originally shipped as LiveScript, and they changed it to JavaScript later. Here is a nice quote on it from Brendan Eich:
“The name JavaScript was chosen when Java was hot, and we were doing LiveConnect to hook up JS to Java applets.”
Here is one from David Flanagan:
“JavaScript was originally developed under the name Mocha… It was renamed JavaScript in a co-marketing deal between Netscape and Sun Microsystems.”
If they have less users due to Oracle, they will put pressure on Oracle to release the trademark.
I'm second signatory to https://javascript.tm.
However, I do believe the word has been diluted and genericized and hope the USPTO chooses to release it.
A good argument to avoid losing a trademark to genericization is to show that there is an actual generic term that overlaps with the trademark, but then the trademark is not the generic term itself.
Examples:
Nintendo → Video Game Console
Post-it → Sticky Note
Xerox → Photocopy
etc ...
In the case of JavaScript, there's no generic term to allude to; JavaScript is the generic term, which might weigh towards the argument of genericization.
Err, that's not a given by any stretch. This is exactly what the suit is trying to prove. They are not a rightful holder of the trademark. They've failed to show use in commerce, and one of their examples of use was someone else's.
And here's one (trivial, but valid) use of it [2].
I'm sure Ellison lawyer's can come up with thousands of examples of JavaScript being used within the context of Oracle's business activities.
The way to go is fight for genericization (or start calling it ECMAScript, lmao).
1: https://tsdr.uspto.gov/#caseNumber=75026640&caseSearchType=U...
2: https://docs.oracle.com/en/database/oracle/oracle-database/2...
Oracle does not control the specification of the language (ECMA does), nor does it own rights to the original implementation (I believe Mozilla does).
Id argue the opposite. The wording makes no reference to oracles ownership of the product or name that is JavaScript. And ECMA is reffered to as the "maker" of the standard.
If anything, this is an example by Oracle themselves using the trademark in a generic context.
Its like cocacola calling themselves "a producer of fanta" and referring to a the food and drug administration to define what that means.
I doubt the writer of that doc was aware that Oracle owns the JavaScript trademark.
Even though one may not like it, the trademark fairly belongs to Oracle.
But for "JavaScript"? What else is there? "JS"?
Edit: I guess there's "ECMAScript", but who actually says that (aside when they legally need to)?
Oracle is one of the leading researchers in JIT compilers, garbage collectors, and language interpreters.
How does working for Oracle compare to say working at Facebook or Google with all their privacy invasion tech?
Yeah. I don't like it either, but that's the world we've built. I wish an industry as important as ours had some standards of ethics, like doctors and real engineers do.
> Are the engineers working on OpenJdk completely lacking of morals?
Oracle attempted to make clean room reverse engineering illegal by arguing that copyright applies to Java's ABIs despite our entire industry relying on that not being the case, all so Larry Ellison could buy yet another yacht. So yeah, someone continuing to work on Java after it was acquired by one of the most evil companies on the planet definitely is consciously choosing to make the world a worse place and should no longer be employable.
> How does working for Oracle compare to say working at Facebook or Google with all their privacy invasion tech?
Facebook is also on my personal blacklist, yes. Less for their privacy invasion, and more for their eagerness to make a buck by helping spread misinformation and bringing about the end of democracy in the western world.
I don't feel as strongly about Google personally, but I wouldn't argue if someone else on the hiring team felt it was disqualifying.
But that said, I think it would be dumb to jump to conclusions just based on having Oracle on the resume. You should at least ask them why they worked there, and why they left. For all you know, they had no idea how bad Oracle was when they started, and they left because they saw how evil they were. That is the exact kind of person that I do want to hire
[1] https://en.wikipedia.org/wiki/Google_LLC_v._Oracle_America,_...
Interpretation on the fact and metric and the need to tell I leave up to you
My favorite other example of this is when I see a UI redesign that didn't actually benefit anyone and was more a style change than anything, and sometimes actively makes usability worse (cough Liquid Glass cough) In those situations I always think "well, some designers on staff needed to justify their paychecks".
https://www.investopedia.com/terms/p/principal-agent-problem...
E.g. you often imagine cases like a manager making a decision that causes a short term pop in stock price (and bonuses to the manager) to the detriment of the long term health of the company when thinking about the principal agent problem. In the cases I'm thinking about, though, it's more that people rarely can do nothing, even if that's sometimes the best thing to do. E.g. large companies need to have lawyers and designers on staff for lots of reasons. But sometimes there just isn't enough work for these folks to do (even if they need to be "warm" and ready when important work comes along). And if there isn't enough work to do, these people will find work to do.
This is another reason why I think that, even though layoffs are painful, having people "milling about" without clear direction and purpose is the worst for everyone involved. These people will just schedule meetings, insert themselves where it isn't helpful, etc., just to make it seem like they have a purpose.
This could be thought of as a "variant" of the principal agent problem I guess, but this instance of "idle hands are the devil's playthings" is different enough from the "standard" principal agent problem that I don't think it's helpful to conflate these two things.
It is possible to find work in a different area at the company for such in-between times.
For example at the company where I work, a (very capable) secretary whose original role was not needed anymore, but for who there existed a very role in the future was for the in-between time assigned to assist some other department in their reporting duties to regulating authorities.
I think this is especially true at big corps with little actually meaningful work and where most people who actually care about doing meaningful work has left a long time ago.
Because it provides zero value and costs something to keep.
It literally wouldn't surprise me if when asked, the legal team simply responded "it's standing policy".
How about a simpler solution, just relicense everything to BSD / MIT.
https://news.ycombinator.com/item?id=44409160
I think some projects have done that in the past, but probably none where a big company owns the copyright to most of the code.
Their stock is 50% higher than it was a year ago.
Not quite sure this is doing them damage.
And anyone who is sympathetic to the request, knows that campaigning for the protocol break would require disrupting two or three levels of management above them, forcing powerful people to deal with something they don't care about. And that would be interpreted as wasting important people's time.
So the organization, as a decision making entity, is incapable of recognizing, much less considering, requests for an exception to default behavior.
I worked with a business that operated this way for many years. Even when there were overwhelming reasons to break process, the spark and tinder never got anywhere near each other.
Everyone between the spark and tinder empathized, talked to "somebody" to demonstrate they "tried", and to create an alibi for the inevitable "no" response that came next, while quietly doing everything they could to smother that spark, before it burned them.
They successfully weaponized open source by giving something for free and clawing back step by step (i.e. closing open source VSCode plugins), and leaving parts which does drowns competitors most effectively open.
Also they act like their open source code is “Free”. They firmly control it, yet act like they don’t.
Microsoft’s image didn’t improve a bit in my eyes.
They are responsive to the community and merge community PRs. That's already more "open" than, say, SQLite.
Sure, they don't give away merge rights and keep exclusive control over the upstream copy. But how many "open" projects have a second maintainer at all? I mean, more than one person (the original author) with merge access.
The code is free. You can always fork it and use it however you like. That's always been the deal you get with open source.
Sure, it's nice when the upstream maintainers always do only the things you like, and you never need to fork. But that's a separate quality, unrelated to the code itself being "free" or "open".
And that's why people should be pushing for Free Software, rather than Open Source.
20 years in the game, and I ended up agreeing with steve ballmer: open source is cancer.
Look at how bad it went for ElasticSearch and Redis, and then look how well it's going for Grafana (whose software is Free Software - besides being just great).
This is so true that Redis did not go back to being "open source", it became Free Software (AGPL).
Tesla stock is 63% higher than it was a year ago, does this prove that each and every decision their leadership made was helpful to the bottom line?
I hope I'm wrong though.
They're better positioned now than they have been at any other point in the past 10-15 years.
Oracle is not an abusive relationship, it's just that you shouldn't be looking elsewhere, and infractions will be punished. They are very serious about audits.
ZFS can be run under Linux - combining the Linux kernel with ZFS is a collective work (collection) of two independent works.
(This doesn’t necessarily stop people, but it is read by Debian as “illegal enough” to warrant a splash screen on installing OpenZFS that you’re losing the right to redistribute.)
Let's say I built a magical compiler capable of compiling a Linux+ZFS kernel in miliseconds. I put it behind a web UI which accepts a Linux tarball and ZFS tarball and spits out the compiled kernel. Because of some mysterious bug I am still trying to solve, only specific Linux and ZFS tarballs work, so I put validation to hash the uploaded tarballs and only let through the ones that are known to work.
Let's peel back the curtain: there is no magical compiler and all this is doing is hashing the input kernel & ZFS source tarballs, using it as a lookup table in a cache of precompiled binaries, and spitting out the matching one, which is currently not allowed. But let's assume the compiler was real, in this case it should be fine, even though the functionality of the system is no different.
I would at least understand if one of the licenses explicitly restricted the right to distribute ready-to-use binaries as a way to carve themselves a moat so the authors are the only ones that would be able to do it (and thus charge for it). But that's not the case here, nobody is better (or worse) off whether I waste time building it manually vs reuse someone else's earlier effort of building it.
WOULD they? It depends on how important it is to have a credible threat of enforcement for GPL violations. But it’s not zero, and it’s a pretty clear violation. Which is enough to scare off most major distros - if they receive a C&D, that’d be a breaking change they’d have to push retroactively. Not worth the risk.
> simply updating CDDL to allow integrating ZFS with GPL
That can't be done at this point. Owing to a decision that arose right here from a discussion on HN, the ZFS maintainers adopted a policy in 2016 to opt out of the CDDL's built-in "any subsequent version" clause for new source files:
(The CDDL is a file-based license. At the time of that decision, there were already roughly a hundred CDDL-licensed files in the source tree specified as available under "Version 1.0 only".)I don't associate Oracle and good will, and I don't think they care.
Whoever thinks it's a good idea to bet on the altruism of a giant faceless corporation is dumb.
So, is "X abuses IP law" hatred is out of principle or because folks seem to be in love with Sun and Google and hate Oracle and Microsoft.
Seems pretty similar to what's happening today.
I’m not sure if that’s even possible under US law though.
They gain absolutely nothing by handing over the name and brand - in fact they lose valuable brand recognition.
Obviously most people in the industry hate them with a passion (see this thread as evidence), but many see the association as evidence that they might at least have some expertise with that product set. I certainly don’t agree with their position, but it makes sense commercially.
No one thinks of Oracle when they see JavaScript.
Edit: more complete history https://news.ycombinator.com/item?id=44408760
At this time, but their ownership and past behavior indicates that if Deno or anyone else tries to have a paid offering, there’s a non-zero chance Oracle will come sniffing for low effort money.
According to Bryan Cantrill, you don't need to be open minded about Oracle. It's a waste of the openness of your mind. He says what you think of Oracle is even truer than you think it is. He believes there has been no entity in human history with less complexity and nuance to it than Oracle.
Bryan warns, "Do not fall into the trap of anthropomorphizing 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' -- the lawnmower doesn't give a shit about you, the lawnmower can't hate you. Don't anthropomorphize the lawnmower. Don't fall into that trap about Oracle."
https://www.youtube.com/watch?v=-zRN7XLCRhc&t=1981s
It's wild that cease and desists and audit notices are becoming common ways to punish someone for just... not renewing your contract.
Tech companies and oligarchs are incredibly entitled.
Then stuff like distributed transactions, raw disk access for databases, among other niceties that people reaching to Postgres or MySQL probably never heard of, but many Fortune 500 enjoy, even if one for checking bullet points on RFPs.
Postgres comes second, after getting all puzzle pieces together, some of them also commercial.
The fact that there are so many people motivated to code alternatives to Oracle products says a lot about Oracle's business practices.
https://news.ycombinator.com/item?id=35908391
I'll also sincerely ask: Does anybody at Oracle know how I can get in touch with their HR department to find out what ever happened to my Sun 401k plan? Because nobody will answer my calls, and it's a lot of money of mine plus 33 years of interest they owe me that they're holding on to, which they inherited from Sun and then disappeared from all known records (except for a record that says it once existed and Oracle has it, but no other info), and they won't pick up the phone or return my email, no matter how "sincerely" I ask or how long I wait on hold.
https://news.ycombinator.com/item?id=44370636
sprash 4 days ago | parent | context | flag | favorite | on: Ancient X11 scaling technology
> 1994
Apparently you have to be criticizing X11 for more than three decades now. Since you seem to know your stuff, could you please post a link to your git repository containing your personal display server that solves all the problems?
DonHopkins 4 days ago | prev | next [–]
Since they bought Sun Microsystems, Oracle now owns the rights to the NeWS source code, so unfortunately I'm not legally allowed to post the NeWS server source code on my Github page, although I spent many years unsuccessfully fighting to make NeWS free and evangelizing it to anyone who would listen, like RMS and my colleagues and customers at Sun:
https://www.donhopkins.com/home/archive/NeWS/rms.news.txt
https://www.donhopkins.com/home/archive/NeWS/news-ooo-review...
https://www.donhopkins.com/home/archive/NeWS/questionaire.tx...
https://www.donhopkins.com/home/archive/NeWS/grasshopper.msg...
https://www.donhopkins.com/home/archive/NeWS/sevans.txt
https://www.donhopkins.com/home/archive/NeWS/Explanation.txt
[...]
sprash 4 days ago | parent | next [–]
> Oracle owns the rights to the NeWS source code so I'm not allowed to post it on my Github page.
They are certainly not making any money with it right now. All patents should be expired by now. Have you ever sincerely asked if you are allowed to publish the code? [...]
DonHopkins 4 days ago | root | parent | prev | next [–]
[...] Ha ha! Good luck, kiddo. Have you ever tried asking a lawnmower for favors? Do you really think "sincerity" would help?
https://news.ycombinator.com/item?id=15886728
https://youtu.be/-zRN7XLCRhc?t=33m1s
[...]
Honestly, oracle is a pretty effective containment vessel for fine legal minds.
I think lawnmower metaphor never was accurate or helped to get it.
Oracle is an alligator or a snake. A reptile. If you move, it will probably eat you alive. It wants to eat you, or part of you.
It also lives in the waterhole, hoarding an essential resource. Not guarding or developing it, just sitting there.
It is ancient and will never change.
It's not alligator's fault for being predator. It is it's nature
This would be first event of that kind to my knowledge. I've been coding for 20 years and never heard anyone say anything good about Oracle other than their free hosting tier _is free_. Better late than never I guess!
"Developer communities" tend to create issues out of thin air, and that I don't like.
In this case I'm siding with Oracle.
Only because you don't understand Trademarks. They are not copyrights.
Trademarks exists to protect consumers, so they don't mix together companies and products that have too similar name or branding. So somebody can't release a product called iPhona for $600 in the hopes that somebody will overlook the typo and order it instead of an iPhone for $600.
If a company is not offering a product based on a trademark, that trademark should actively be removed. Oracle is not using the JavaScript trademark.
[0] https://www.globalnerdy.com/wp-content/uploads/2011/07/oracl... (can't find original XKCD, sorry)
https://newsletter.pragmaticengineer.com/p/code-review-on-pr...