Live data from Hacker News

Negotiations Failed: How Oracle Killed Java EE

headcrashing.wordpress.com

131–140 of 526 posts

Re: Negotiations Failed: How Oracle Killed Java EE

#131
post #32
post #10

« Oracle already started a blocking politics at the Eclipse Foundation’s board, where Oracle has a seat, and where unanimous decisions are needed. Oracle now has the power, and apparently will use that power, to block the foundation’s future. It demonstrated that power already in a board meeting, where they had the sole vote against an otherwise unaimous move. » I hope other organisations with a director from Oracle…

For me it's more a lesson about how unanimous votes, or unanimous - N can become problematic. In the EU the same is happening. Poland and Hungary have found a loophole allowing them to ignore EU rules and sanctions while still profiting from subsidies and market access. All sanctions against a member state require unanimous-1 (all states except the sanctioned member) votes and Poland is vetoing all sanctions against…

Hungary and Poland aren't the first to abuse the unanimous-1 veto.

The Netherlands always vetos Romania's application to enter the Schengen zone as Romania's harbors to the Black Sea will provide cheaper alternatives for import of goods to the Dutch ones.

Re: Negotiations Failed: How Oracle Killed Java EE

#132
post #28

> the worst case possible, as it not only voids the “WORA” (Write Once Run Anywhere) principle, it simply won’t happen in reality: After 18 months virtually no application vendor really wants to spend the time and money to update all customers with recompiled versions just for the sake of a renamed platform with a dubios future. WORA was never perfect, I would be surprised if there was even a single JRE release that…

Oracle would block any rules against acting in bad faith, or simply not follow them.

Re: Negotiations Failed: How Oracle Killed Java EE

#133
post #16
post #6

Earlier quoted context omitted.

While there is some truth to it,they did more research for Java than Sun ever did, and no one else cared to buy Sun.

That's, sadly, true. At the time of acquisition, Sun was only a shadow of its former glory...

It all started circling the drain when they merged SunOS with System V.

Solaris: So bad I left the company.

Re: Negotiations Failed: How Oracle Killed Java EE

#134
post #32

Earlier quoted context omitted.

For me it's more a lesson about how unanimous votes, or unanimous - N can become problematic. In the EU the same is happening. Poland and Hungary have found a loophole allowing them to ignore EU rules and sanctions while still profiting from subsidies and market access. All sanctions against a member state require unanimous-1 (all states except the sanctioned member) votes and Poland is vetoing all sanctions against…

Hungary and Poland aren't the first to abuse the unanimous-1 veto. The Netherlands always vetos Romania's application to enter the Schengen zone as Romania's harbors to the Black Sea will provide cheaper alternatives for import of goods to the Dutch ones.

Had to validate the Netherlands claim out of curiosity. The claim is popular but even Romanian officials have stated this is not true [0].

[0] http://business-review.eu/news/pm-ciolos-future-of-constanta...

Re: Negotiations Failed: How Oracle Killed Java EE

#135
post #74
post #70

Earlier quoted context omitted.

No, in practice is works something like this: 1) write everything in python 2) yeah, the performance here is good enough so ship it 3) there is no 3 There are very few situations where performance is going to be an issue for you where there is not an existing C module solution that will solve the problem for you. The tired old 'python is slow' trope is getting more and more irrelevant every day. There are other aspec…

Reddit disagrees. And they weren't using 3, which is even slower.

Pretty sure Python 3 has had better performance since 3.5 or so?

Re: Negotiations Failed: How Oracle Killed Java EE

#136
post #65
post #14

Earlier quoted context omitted.

The hot parts we can implement in C. There's not much overhead in crossing over to native code.

You'll always need more performance so you'll end up rewriting big parts of the codebase in C because you can't afford the servers and/or can't scale anymore. You'll be kicking the can down the road again and again. Also C is hard. At that point you will realise using Python was a stupid idea when you had other options like Go. It has happened to many people.

You'll always need to integrate libraries already written in C and other languages not under your control. So why use a language that goes out of its way to make that difficult?

That's why Sun's "100% Pure Java TM" campaign and negligent support of integrating Java with native code was so misguided.

Software development is a process. You implement your MVP in one language, then measure its performance with real customers, then incrementally rewrite the hotspots and plug in optimized native libraries as necessary. The language ecosystem and culture should support and encourage that (like C#, Python, TCL and Lua do in spades), not fight against it and condemn you as a mongrel infidel if you dare to miscegenate with other languages.

Sun made a grave mistake with their linguistic supremacist "100% Pure Java TM" propaganda campaign: you should rewrite all of your code in Java instead of expecting Sun to provide you with easy seamless interoperability with existing languages and libraries.

So Sun's JNI and applet web browser integration languished while Microsoft integrated COM and CLR and P/Invoke for seamless interoperability with the web browser and other languages like C++ into Java and CLR. And the insipid influence of "100% Pure Java TM" persists even today (have fun using Android NDK).

Sun also had an unholy obsession with code generation, since their attitude was to breed as much "100% Pure Java TM" Code into the world as possible (see AspectJ, JAXB, etc). While C# took a much better approach of supporting code annotation and metadata and reflection and bytecode generation at runtime so you didn't actually have to generate and compile a huge pile of boilerplate source code (see P/Invoke).

https://docs.microsoft.com/en-us/cpp/dotnet/how-to-call-nati...

http://www.pinvoke.net/

And of course Oracle is delighted to continue pushing "100% Pure Java TM":

https://www.oracle.com/technetwork/java/100percentpurejavaco...

>[...] 100% Pure Java, JavaStar, JavaPureCheck, [...] JavaSpin, HotJava, The Network Is The Computer, and JavaStation are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and certain other countries.

Registering purity as your trademark and insisting that all of your users rewrite every bit of their existing legacy code in your pure language, and never use or talk to any other languages ever again, always seemed like separatist linguistic supremacy to me.

Apparently, C#'s P/Invoke is an evil impure cross-language conspiracy to dilute our linguistic purity and sap our precious bodily fluids, breeding caravans of mongrel coders who will swarm across our open borders and steal our jobs. That's why JNI and NDK are only used by unpatriotic second class citizens with divided loyalties, so they don't deserve to be well supported or maintained.

https://www.zdnet.com/article/100-pure-java-initiative-wins-...

>"Keep Java pure" is the message behind Sun Microsystems' 100% Pure Java initiative which has already won support from 100 developers but will lock out programs such as Visual J++. The move is an attempt on behalf of the Californian firm to maintain integrity of Java code and build awareness.

https://www.cnet.com/news/100-pure-java-watered-down/

>Viewers of cable news network MSNBC may recently have seen a commercial for Sun Microsystems (SUNW) in which a man tells a priest that he's been thinking "pure" thoughts. When the beatific man exits the confessional, he passes a queue of anxious programmers--one wearing a Visual Basic shirt--ready to admit their sins.

>The commercial, which touts Sun's "100 percent pure Java" campaign, is not your usual television ad. But Sun has in many ways shown an almost religious determination to spread the gospel of Java to the far reaches of the globe, even sponsoring a worldwide educational tour for programmers with the support of Netscape Communications, IBM, and Novell.

Re: Negotiations Failed: How Oracle Killed Java EE

#137
post #89
post #78

> And the idea that corporate developers or even frankly any developers are switching to LLVM and WebAssembly en masse is pretty ridiculous. There is only 1 popular language released since 2009 that targets JVM: Kotlin. All other target JS, their own bytecode or LLVM: Go, Rust, Dart, Elixer, Julia, Typescript, Swift. This is a significant difference from 2003-2009 languages which all targeted JVM unless they were Mic…

And all of them have a lot of work to catch up with 25 years of market experience.

You could have said the same about Cobol in the '90s

Re: Negotiations Failed: How Oracle Killed Java EE

#138
post #38

Earlier quoted context omitted.

hand up uh not as experienced as most people on HN, what's the hate for c#? I went from vb6 to VB.net then c# and while I fully admit I'm a casual coder, i haven't had an issue (with what I do, which is voice to string primarily) so far. Is there something better for this I perhaps should look into?

The .NET ecosystem is an order of magnitude smaller than the JVM ecosystem. Up until ~3 years¹ ago C#/.NET also meant a fully Microsoft and Windows environment for all practical purposes². This is changing and Microsoft seems to be embracing open source and Linux, but it takes time for a 20 year old ecosystem to fully make the transition. ¹ The story is Steve Balmer was very anti-open source and forbade most interop…

That fully Microsoft and windows stack has had ripple effects. At least from my perspective in South Asia. First the price was a deal breaker. Second, people who started with C# quickly found their only employment opportunities to be at large companies. Those who started with Java/Node/Ruby had a much wider array to choose from. Third, when people jumped to start their own companies, Java/Node/Ruby/Python/Go won by a large margin. Startups rarely had the cash to spare for Microsoft stack and MS stack guys had to change their skill sets which is a painful endeavour in and of itself. Fourth, after some time people, who had been in the market for years, started discouraging younger devs to committing exclusively to a full MS stack. People rather interpreted it as dumping the MS stack. In my batch, only a dozen or so people were interested in pursuing C#/.Net. By the time we graduated only one person was still pursuing that stack.

TLDR; Price was a big factor which only large companies could afford. Not everyone can be employed by large companies. This had a lot of secondary effects.

Re: Negotiations Failed: How Oracle Killed Java EE

#139
post #52

Earlier quoted context omitted.

Too little too late, and I highly doubt that (5-year-old) Valhalla will deliver even one of the promised features (value types) in the next 3 years. Remember that the original plan was to have all Valhalla features in Java 10. Java/JVM was in the ideal position to dominate the software world for the whole 21th century 15 years ago. Instead they did an IE6 and stagnated for so long that their competitors became plain…

> webassembly [is] eating JVM's cake It's hard for me to take all the "Java is dying" threads seriously when they don't even seem to understand where Java plays. Webassembly ? Really? That's a client-side tech, and 99.999% of Java devs ceded the browser battleground pre-9/11. Java's bread and butter is EAI, ETL, and server-side business application development. Particularly with pieces requiring heavily distributed d…

You're right that Java is entrenched in a lot of the enterprise space, but I think you're being quick to dismiss entrants that have gained steam in the last few years.

For example, Go is becoming the default in Kubernetes applications. It's eating tech companies that became large in the last few years like Lyft and Uber. It'll spread to other large tech companies like Amazon or IBM with ease. It will possibly get picked up by a significant number of universities for undergrad courses within a few years as well.

Re: Negotiations Failed: How Oracle Killed Java EE

#140
post #52

Earlier quoted context omitted.

Too little too late, and I highly doubt that (5-year-old) Valhalla will deliver even one of the promised features (value types) in the next 3 years. Remember that the original plan was to have all Valhalla features in Java 10. Java/JVM was in the ideal position to dominate the software world for the whole 21th century 15 years ago. Instead they did an IE6 and stagnated for so long that their competitors became plain…

> webassembly [is] eating JVM's cake It's hard for me to take all the "Java is dying" threads seriously when they don't even seem to understand where Java plays. Webassembly ? Really? That's a client-side tech, and 99.999% of Java devs ceded the browser battleground pre-9/11. Java's bread and butter is EAI, ETL, and server-side business application development. Particularly with pieces requiring heavily distributed d…

I said LLVM and webassembly.

LLVM has replaced JVM as a programming language target bytecode in the last 10 years (except Kotlin no new JVM language). JVM has lost web to JS 20-15 years ago, and Webassembly is now taking shape as proper web bytecode.

I do not know what will be the most dominant language + bytecode in 25 years, but I would bet $10000 that it isn't Java and JVM.

Post reply on HN