What's the reason everything on desktop side isn't made in Java, again? It can run as JRE reliant jars...

What's the reason everything on desktop side isn't made in Java, again? It can run as JRE reliant jars, completely self-contained jars, or AOT compiled to native code with Graal. Both Swing and JavaFX are FOSS with permissive licensing and healthy ecosystems. So why not, it gives all the choices.

Qt Comapny shares tanked -25% in a single day on a slightly related note. Good riddance, its poor buggy design is the reason Qt desktops are broken shit.

Attached: java-logo.jpg (640x480, 43.75K)

>What's the reason everything on desktop side isn't made in Java, again?
its shit
>It can run
sometimes
>completely self-contained jars
>AOT compiled to native code with Graal
literally who uses those

Because Electron is easier to use and there's no Java GUI toolkit that supports modern scalling bullshit that well.

Java is absolute horse shit, the GUI frameworks are all shit and honestly, the heap management is absolutely ass. Electron is honestly a blessing compared to Java.

>2022
>Java is now the memory-efficient alternative for GUIs
This is not the timeline I wanted. They should have shot the kid instead.

satan controls the world

SKIJA will fix this, hopefully

because c++ is simpler and better

I fucking hate this board. You're faggots larping as experts even though you don't know shit. I know for a fact that before you post shit, you Google shit like "why is Java bad" and copy paste some answer from reddit or some other cock sucker board because none of you have made a valid statement.

This is true, even compared to Dart which is a mess in so many ways but Java's memory consumption will drastically lower with project Valhalla and Liliput

Why can't Microsoft step up to the game again with something that isn't pure XAML bullshit? C# was literally made to replace Java

>two more weeks

No, it's literally experience when dealing with Java shit.

>Have workstation with 128 GB RAM
>Download Java-based database client
>Use it to export large tables
>Fails somewhere in the middle because of java.lang.OutOfMemoryError
>Need to manually increase fucking Heap size everytime while starting this
>Java never releases memory to the fucking OS back
Every other shitty language can deal with memory management without needing to manually define low and upper limits of the fucking Heap. Every other language just returns unused memory back to the operating system. Java can, but only if you use a specific GC on newer versions of Java with no one does and if you manually specify to release it early.

Completely fucking bullshit runtime. And virtually any UI I know does not scale well on HiDPI.

>What's the reason everything on desktop side isn't made in Java, again?
Android does this, no? The result seems to be shitty battery life and it took years of CPUs getting better for your average Android stopped being a laggy piece of shit.
It's a shame nobody made a good cross-platform framework for native GUI apps. They all suck.

>Every other shitty language can deal with memory management without needing to manually define low and upper limits of the fucking Heap.
Actually no.
>Need to manually increase fucking Heap size everytime while starting this
That's the fault of the developer. There is no harm in delivering an app with large heap site settings.
>Java never releases memory to the fucking OS back
Also wrong. You can set G1 to do this and ZGC (which has been around for years now) does that automatically.
>Completely fucking bullshit runtime
Which runtime is better?
Android does not run on the Java runtime you fucking retard. It has its own runtime.

First of all, Android apps do not run on the JRE. Second of all, older phones like Blackberries or vanilla Nokias were actually running Java and they didn't lag. Android is a badly designed operating system, that's all.

>>Use it to export large tables
Java and maybe Go are the only "runtime languages" that handle large heaps reasonably well. Anything else would crumble. Go and try that shit with Dart and tell me how that worked. The dart runtime is probably the worst in the business right now.

>That's the fault of the developer. There is no harm in delivering an app with large heap site settings.
Well everyone seems to fuck this up since almost any Java application needs tweaking for this.
>Also wrong. You can set G1 to do this and ZGC (which has been around for years now) does that automatically.
Why does it not do this by default?
In fact, why do I need manual heap management at all?

>Which runtime is better?
Literally any language that's not Java, even GC-enabled languages. It's Java's JVM-design that's just flawed.

Java can handle it if you configure it manually. It does not do anything sane by default, and say goodbye to that memory from your operating system in the meanwhile unless you manually tweak settings again. In the meantime, Go just does its thing and I don't care about it.

>Well everyone seems to fuck this up since almost any Java application needs tweaking for this.
No. Check out Bitwig Studio. GUI runs on Java.
>Why does it not do this by default?
In fact, why do I need manual heap management at all?
Because it doesn't make sense in backends and that's what Java is mostly used for. If it did, backend developers would be asking the same question you are right now. Also because dbeaver is a very old application and I don't think the dev has caught up with modern features. He's still stuck in the early 2000s. Again, that's the job of the developer, literally a matter of 5 minutes.
>Literally any language that's not Java
Wrong. The only runtime that can compare to the JRE is the CLR and even that one sucks as heaps get bigger. You can't push GC pauses to sub 1ms on .NET. Only Java and Go are capable of this.
>"Java please spoon-feed me"
I just love this board. Usually everyone boasts about how smart it is but as soon as it comes to setting a -XX:+UseZGC argument to your application, people crumble. You simple niggers kek

>In fact, why do I need manual heap management at all?
Retard. That's actually one of the things that make Java popular for backends. Being able to fine tune garbage collectors is important and one of Golang's shortcomings. There's actually a good article from the Discord people and why they had to switch away from Go.

>No. Check out Bitwig Studio. GUI runs on Java.
But plenty of components are native code. Also cherrypicking examples here.

>Because it doesn't make sense in backends and that's what Java is mostly used for.
Cool, so we found out that Java is trash for the Desktop.

>Also because dbeaver is a very old application and I don't think the dev has caught up with modern features. He's still stuck in the early 2000s. Again, that's the job of the developer, literally a matter of 5 minutes.
But it applies to so much Java software. Not just DBBeaver, also Minecraft, IntelliJ... Too many offenders out there, meaning that the Java team should maybe think about what the fuck they are doing there.

>Wrong. The only runtime that can compare to the JRE is the CLR and even that one sucks as heaps get bigger. You can't push GC pauses to sub 1ms on .NET. Only Java and Go are capable of this.
Then copy go, I don't care. But the terribleness behind DBBeaver and Java's memory management, which also affects IntelliJ's DB implementations just led my to use fucking PgAdmin. And guess what? Fucking Python handles this stuff better.

>Usually everyone boasts about how smart it is but as soon as it comes to setting a -XX:+UseZGC argument to your application, people crumble.
Why do I need to do this on a Desktop operating system? Why does Java not do this by default? You're tip-topping around here saying "Hey, Java can do this!. Maybe it can. But it does not make that transparent to the user. The default settings are shit. The general experience is shit, and hell cool thing I can tweak it, but if my Database export crashes somewhen after 30 minutes just because Java is too dumb to dynamically allocate memory from the operating system and needs fixed heap sizes, I lost 30 minutes of work. I don't give a fuck that I can tweak it, it should NEVER even happen in the first place if I have a shitload of RAM available on the system.

Might be cool for the backend, I don't necessarily disagree here, but FIX THE DEFAULTS since I use shit on my desktop and there is plenty of software designed for desktops. I agree that this stuff can be useful on a server, though.