For most of my career, I thought I hated Java, primarily because every piece of Java code I had …
… For most of my career, I thought I hated Java, primarily because every piece of Java code I had ever worked with was overly verbose across a million different files to do things that would take like ten lines of code in any other language. Then I actually started looking at all the features for Java 8, 11, 17, and 21, and realized: NO! Java actually gives lots of really great tools and language features that allow you to write relatively pretty, terse, performant code. Record types help cut down on a lot of boilerplate stuff, the streams API allows for pretty work over lists, sealed interfaces mostly solve my itch for ADTs, virtual threads are genuinely pretty impressive bits of engineering, and for the stuff that isn't built in, Vert.x and Disruptor do a pretty good job filling in the gaps. Once I learned all that, I was kind of mad at people still writing code like it was 1999, but also started to enjoy writing Java. …
Original discussionJEP 401: Value Objects (Preview) merged to OpenJDK master175 source comments · at import