There's a lot to hate about Java, but it also does some things extremely well. It's valid if you don't like the aesthetics, but that's a you thing. Are there any objective reasons you believe Java is not fit for purpose here?
Fair question. With C/C++/Zig/Go available we don't need another layer of abstraction; we have enough. Why do we need another VM? Let's keep thing simple.
Which things does Java do extremely well. Curious.
That's kind of a weird list of languages. C and C++ are both memory unsafe languages. Every Android patch round about half of the vulnerabilities are memory safety bugs in C or C++ applications. Both Google and Microsoft independent from each other concluded that most vulnerabilities are caused by memory safety issues. Zig is also not fully memory safe and Go has a garbage collector just like Java. The Go garbage collector situation is probably worse than Java because it only has a single implementation and you have no choice. Meaning it had better fit your scenario or otherwise your screwed.
I'm not really buying that whole safe/unsafe narrative. Every language is safe if you're using it right.
Using Java because it's safe punishes the best case (i.e. using it right) in complexity, performance, and inter-op due to potential worst cases (i.e using it wrong).
It also doesn't allow you to grow because you're _safe_ already.
In general, world is unsafe at it is, but we don't _invent_ a safe version. We just adapt and learn how to deal with it.
> I'm not really buying that whole safe/unsafe narrative. Every language is safe if you're using it right.
Microsoft and Chromium each reported that roughly 70% of their serious security bugs were memory safety bugs. That's not a problem of beginners misusing the language. Like I said, just take a look at the Android security bulletins and count how many of these come from memory safety issues and how these numbers have improved in recent years with migrations to Rust. PHP last week? Memory safety issue.
The amount of high impact vulnerabilities coming from memory unsafe languages C and C++ proves there are too many people who "can't use it right". And these people apparently include very skilled people working at companies like Microsoft and Google on high profile projects.
We wouldn't need seatbelts if everyone would just drive safe. We wouldn't need hard hats at a construction site if everyone would just work safe.
[–] sonu27 2 days ago
[–] paaloeye 2 days ago
[–] shye 2 days ago
There's a lot to hate about Java, but it also does some things extremely well. It's valid if you don't like the aesthetics, but that's a you thing. Are there any objective reasons you believe Java is not fit for purpose here?
[–] paaloeye 2 days ago
Which things does Java do extremely well. Curious.
[–] jsiepkes 2 days ago
[–] paaloeye 1 day ago
Using Java because it's safe punishes the best case (i.e. using it right) in complexity, performance, and inter-op due to potential worst cases (i.e using it wrong).
It also doesn't allow you to grow because you're _safe_ already.
In general, world is unsafe at it is, but we don't _invent_ a safe version. We just adapt and learn how to deal with it.
[–] jsiepkes 1 day ago
Microsoft and Chromium each reported that roughly 70% of their serious security bugs were memory safety bugs. That's not a problem of beginners misusing the language. Like I said, just take a look at the Android security bulletins and count how many of these come from memory safety issues and how these numbers have improved in recent years with migrations to Rust. PHP last week? Memory safety issue.
The amount of high impact vulnerabilities coming from memory unsafe languages C and C++ proves there are too many people who "can't use it right". And these people apparently include very skilled people working at companies like Microsoft and Google on high profile projects.
We wouldn't need seatbelts if everyone would just drive safe. We wouldn't need hard hats at a construction site if everyone would just work safe.
[–] paaloeye 2 days ago