3,332 karma · joined March 17, 2019
Half of the GPU game is software. I'm not saying that it doesn't or can't exist but I have yet to see what good Chinese software looks like.
Against the USSR it had become risky because missiles could reach it? And satellites worked great during the cold war. But in a scenario where things got hotter and you wanted regular fresh intel from deep within enemy territory, the SR-71 could be irreplaceable.
It's a machine - when we attribute it human concepts such as victory, mistakes, ethics, we also shift responsibility away from the operator and soon enough bad people will use it as an umbrella. The agent ate my homework! The agent bombed a school! Bad agent, no!
It's not even that Linux is that great. But Windows and MacOS user experience have degraded so much in the last decade due to user hostile decisions and lack of vision, they essentially nullify advances made on the hardware side.
POWER should be the real competitor. If only it had laptop class implementations...
IMO compile-time annotation processors such as Lombok and MapStruct are far from the most magic part of Java. They're straightforward code generators. Their impacts is localized to where they get applied and you can actually see the code that's generated. They're very good for diminishing boilerplate. They're no worse than Rust's very standard #[derive(xyz)] proc macros.
Having the code being generated on the fly (instead of a one-shot) means it follows the rest of the structure it's derived from i.e. equals() and hashCode() don't risk to be forgotten when adding a field to a class (hello maddening Map<> lookup errors)
Also, yes, Lombok is _funky_ in how it works but there are "pure" alternatives like AutoBuilder and AutoValue if one cares.
Also, a watching a proper defragmenter run was an OCD soothing experience before we had stray kitten and powerwashing videos galore. I know I'm not alone with this experience.
ShutUp has also been around for a while and always seemed to me like a O&O side project by someone who got really pissed at Windows taking the spyware tangent. The distribution model is still that of shareware / freeware (no source), because that's what O&O does. But as far as closed software goes, that's _probably_ as clean as it gets.
Java's problem never was the language which has been as serviceable as any other since the JDK1.4 days. It is straightforward to compile (no metaprogramming, type erased generics), linking is delayed to runtime and dependencies are all precompiled to bytecode which _should_ make for very fast builds.
The problems came from the multitude of Internet-bubble era tool vendors which overcomplicated everything in order to sell high priced "corporate-level" solutions and imposed that certain coding style. Java is still known for this today because it appears in so many vintage codebases and is still being applied by coders who never revised their practices from 22 years ago.
My theory is that Rob Pike was jealous of Java because it has succeeded with a model similar to his own Inferno (bytecode, C syntax) and this aligned with Google's ask of developing something that would be outside of Sun's lawyers reach.
There's still a missing piece in the RISC-V ecosystem: a coordination body of platform-level standards. Debian took a stand with RVA23 support but then there's a ton of little things that are taken for granted on the PC platform such as UEFI and ACPI (as horrible as they may be).