| 17 Jul 2025 |
msgilligan | Thanks everyone for your time and advice! | 22:18:33 |
@softmoonworld:matrix.org | if anyone was interested -- I looked into the code for temurin and it says 17.0.15 but it does download the +6 version since it's automatically getting the latest. | 23:13:16 |
Infinidoge 🏳️⚧️ | Cool, I meant to check that but I got distracted by at least 4 separate tangents and forgot | 23:14:01 |
emily | the versioning scheme is weird | 23:19:52 |
emily | +n are prereleases until they declare one of them to be -ga | 23:20:04 |
emily | so we never package the same version with a different +n, since we wait for -ga but represent it with the +n to match Temurin etc. since that's the canonical version | 23:20:26 |
Infinidoge 🏳️⚧️ | I love Java
I mean it both sarcastically and seriously | 23:25:07 |
@softmoonworld:matrix.org | ahh thats so interesting | 23:40:16 |
msgilligan | Java has had some of the craziest versioning schemes I've seen, thought they've reigned in some of their worst mistakes. e.g. Java 2 version 1.3. | 23:40:22 |
@softmoonworld:matrix.org | i'm in this funny place where i'm going to be working on a java code base and i am not a java professional, and i've also installed nixOS on my machine and i'm just learning a lot very fast right now. | 23:41:01 |
msgilligan | I'm guessing there's code in Nixpkgs that still deals with the 1.8 versioning for Java 8... | 23:41:10 |
@softmoonworld:matrix.org | oo i should take a look at that and see if i can imagine the history | 23:41:33 |
msgilligan | Java 17 is a good version to start with. The newer you can use, the better. They've really made dramatic improvements from 8 (aka 1.8) to 25 and seem poised to continue the good work. | 23:43:00 |
msgilligan | And part of the (historical) problem(s) with Java was that there were some really bad "enterprise" programming patterns that infected the ecosystem. They weren't required by the language, but they were ubiquitous. | 23:44:22 |
Infinidoge 🏳️⚧️ | See also FizzBuzz Enterprise Edition | 23:45:08 |
msgilligan | OutputGenerationContextVisitorFactory oh yeah! | 23:47:10 |
msgilligan | import com.seriouscompany.business.java.fizzbuzz.packagenamingpackage.interfaces.visitors.OutputGenerationContextVisitor; | 23:47:35 |
msgilligan | @moon, if you'r the book-reading type you might look at:
- https://www.manning.com/books/modern-java-in-action
- https://www.manning.com/books/the-well-grounded-java-developer-second-edition
| 23:51:08 |
msgilligan | "Modern Java in Action" is excellent, though getting a little bit dated since it was written in the Java 9/10 era. | 23:51:48 |
msgilligan | "The Well-Grounded Java Developer" is more modern but jumps around between topics a little. It includes coverage of Clojure and Kotlin which may or may not interest you. | 23:52:39 |
msgilligan | * @moon, if you're the book-reading type you might look at:
- https://www.manning.com/books/modern-java-in-action
- https://www.manning.com/books/the-well-grounded-java-developer-second-edition
| 23:55:19 |
| 18 Jul 2025 |
@softmoonworld:matrix.org | Oh I am! Thank you for the recommendation msgilligan . these look really helpful. | 00:02:25 |
@softmoonworld:matrix.org | I think the well grounded developer sounds like the perfect book since i have to clean up and modernize and move things over to kotlin slowly | 00:04:25 |
Infinidoge 🏳️⚧️ | I wish I could like Kotlin | 00:04:41 |
Infinidoge 🏳️⚧️ | But alas
Conflict of Interest: The Language | 00:04:54 |
msgilligan | And if you're looking for an absolute beginner book, "Java in a Nutshell" was great. (Don't ask me what version Java was at when I first read it 🤣 -- but I've looked at the updated versions they're good too -- they finally realized there was this thing called "the internet" and got rid of the reference section) | 00:05:12 |
@softmoonworld:matrix.org | what don't you like about kotlin? i haven't really written it. only clojure | 00:05:17 |
Infinidoge 🏳️⚧️ | Since it's made by a company that also produces IDEs, it has pretty abysmal support outside of IntelliJ, and they have little motive to improve it | 00:05:52 |
Infinidoge 🏳️⚧️ | If it weren't for that, I'd like Kotlin | 00:05:59 |
msgilligan | I like Kotlin, but I avoid using it in libraries because it drags in the Kotlin Standard Library as a dependency. | 00:06:33 |