15,198 karma · joined June 8, 2017
The shogunate needed to do some balancing along the way (including the introduction of metallic currency), but the government had enough levers to keep the samurai in line, right up until they couldn't.
Ocean currents and temperatures are major factors in storms, economic activity like trade, and ecosystems across the country. Monitoring them costs virtually nothing, and the benefits are huge.
GCs are definitely a strong point for Java, but most high-performance code can be rewritten to avoid pummeling memory management. This used to be common for Java in financial applications, not sure if it still is.
C++ has evolved its own compacting GCs like oilpan [0] for applications where high performance is inherently tied to allocation. Oilpan runs into pointer issues and isn't remotely comparable to G1GC or ZGC, but I think the speed of V8 speaks for itself. Rust allows you to drop in non free-list based allocators and GCs (e.g. Bumpalo), but they're relatively immature.
That may be because the information on that page seems to be up to date to 2011-2. Java is now on version 26, BTW.
The last time I dove into JVM internals was around the same time. I figured that someone who's worked with it more recently might have better examples than what's easily searchable.[0] https://chromium.googlesource.com/v8/v8/+/main/include/cppgc...
I don't know what it is that Rust demonstrates given that few large scale projects have chosen it, but I've seen nothing to indicate that it doesn't suffer from the same performance issues as C++ compared to Java.
The point of bringing up Rust is that it also gives the compiler much more information to optimize on than C++, but actual performance is comparable or slightly worse in most benchmarks because the quality of C++ codegen is so high. Some of those Rust advantages are exactly the same things that have been touted as major advantages for Java over C++, like escape analysis and lifetimes. Of course, in principle it's always possible to match and perhaps even exceed Java's performance in a low-level language, but in practice it becomes ever more difficult as the program grows (and the cost remains with maintenance forever).
Sure, which is why I asked for real examples of whatever you consider a "large scale" program. I wasn't able to find anything via search before I replied, and the wiki page on Java performance [0] is repeating what I understood. In general, the tradeoff is between optimisations that help large programs vs optimisations that help small programs.
Do you have concrete examples of large scale Java programs that are significantly more performant than comparable programs in native languages like C++? My understanding was that this dynamic hadn't fundamentally changed much since the 2010s, when Java was able to occasionally edge out a win in 1-2 benchmarks and would lose handily in others. My experience is that large scale Java programs remain a bit of a bear even after significant optimization effort (e.g. Bazel).There are of course plenty of optimizations the JVM does that aren't possible AOT, but that that doesn't imply an automatic win at large scales, as Rust demonstrates.
I have a standing challenge to my co-workers that valid compiler errors will be rewarded like a birthday party, with the baked goods, alcohol, or sweets of their choice. It's only been redeemed once, and I've found less than a dozen unreported compiler bugs myself.
Most companies buying anything from WolfSSL will already be using a script or toolchain flags to validate stack usage. And if they don't, even embedded toolchains generally support canaries these days.
I guess you should hope none of your hundreds of thousands of iris neighbors are placed on the list?
Someone else has to approve repairs and contract the labor.
My experience with corporate landlords is that they're incentivized to maximize income, which is emphatically not the same as keeping you renting the place as long as possible. Realpage for example optimizes for higher income at the cost of turnover and lower occupancy.
I once had a conversation with a director of that division about why it wasn't on the market. It basically came down to the existing customers being willing to pay such exorbitant amounts for each system after all the support contracts that "normal" markups like Nvidia and Intel enjoy were too paltry in comparison.
They actually had 5,000 engineers in the tokenmaxxing blog post. That's a lot of engineers for the rest of Uber's business activities.
Don't get me started with bike helmets
Bike helmets mitigate one of the most serious and common forms of injury while riding bikes. You can fall or be hit by a car/tree branch anywhere. They don't prevent you from doing anything you would otherwise do.I'm someone who advocates for rolling back helmet laws because they decrease ridership, but helmets are a fantastic example of reasonable PPE, not overactive safetyism.
Now it's 2021 and someone gets a tanker stuck in the Suez, sending the price of oil sky-high. How long does the ship have to be stuck before you spend those billions of dollars on a bet that it'll recoup before someone gets the ship out?