Marc R. Hoffmann

@marcandsweep@javabubble.social
471 Followers
125 Following
304 Posts

Java & Railroads @ mtrail.ch

Side projects: JaCoCo, javaalmanac.io, javabubble.social

javabubblehttps://javabubble.org/
JaCoCohttps://jacoco.org/jacoco
The Java Version Almanachttps://javaalmanac.io
GitHubhttps://github.com/marchof
If you have a CPU-intensive computation which moves/copies data between HashSets a lot, it may make sense to enumerate all your objects (map them to consecutive integers) and move to BitSets instead, mapping back at the end. They are waaaay faster.

And no, these recommendations are not generated by AI, just plain if/else 😆

https://github.com/marchof/java-almanac/blob/master/site/layouts/partials/upgrade.html

java-almanac/site/layouts/partials/upgrade.html at master · marchof/java-almanac

The history and future of Java. Contribute to marchof/java-almanac development by creating an account on GitHub.

GitHub

Just added update recommendations for every Java release. See section "Should I update?" for example here:

https://javaalmanac.io/jdk/8/

What would be your recommendations?

#OpenJDK

Java 8 - javaalmanac.io

Information about Java 8 including documentation links, new APIs, added features and download options.

Today we received a pure AI generated PR in #JaCoCo. While the content is actual impressive it has several flaws.

https://github.com/jacoco/jacoco/pull/1906

My feeling about this is what I added as a comment: "I don't feel like spending my personal free time for other's laziness."

How do you deal with pure AI contributions?

Option for method level only probing by AntiGameZ · Pull Request #1906 · jacoco/jacoco

GitHub

No matter how much Google ask to install "Gemini CLI: your open-source AI agent" for your terminal on macOS, Linux, Unix or other oses, do not install it. Here is a snippet from their policy:

Google collects your prompts, related code, generated output, code edits, related feature usage information, and your feedback to provide, improve, and develop Google products and services and ML technologies.

All your data on disk will be the part of AI training which is privacy nightmare

Why I love #opensource? Many glitches are quickly noted and get fixed. ❤️

https://github.com/marchof/java-almanac/commit/91939aa1c4b0668e33853540bbd27dc40fcd6b33

Resolve syntax error breaking download page (#270) · marchof/java-almanac@91939aa

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

GitHub

Last week I posted a puzzler: Which of these are valid variable name?

short euro€;
double world世界;
long wavy﹏;
char bell\u0007;

They all are!!! https://horstmann.com/unblog/2021-05-14/index.html

On Mastodon, I got five votes, none with the correct answer. On LinkedIn, many more, and 40% with the right answer. Come on, Mastodoners...we can do better.

Cay Horstmann's Unblog

@marcandsweep Yes, I absolutely think it is a good idea to have public records in the API. When the record models something where the data representation is clearly not evolving. Like Map.Entry. Can't speak to PEMRecord. It looks murky, with that array component. Good news: Nobody uses it, https://download.java.net/java/early_access/jdk25/docs/api/java.base/java/security/class-use/PEMRecord.html
Uses of Record Class java.security.PEMRecord (Java SE 25 & JDK 25 [build 27])

use: module: java.base, package: java.security, record: PEMRecord

Turns out Rhodos 🇬🇷 is a nice integration test environment for my #jcrete beach towel 😎

Looking forward to again see many nice #java folks in Crete!