How to Build Java Applications Today: March 22, 2021
JDK 16 is here, my JavaLand Talk, JHipster 7.0, the end of applets, kicking Spring Native's tires, and Spring Boot 2.4.4.
README
This is issue #28 of my weekly newsletter “How To Build Java Applications Today” - for Java developers, by a Java developer.
I’m in a talkative mood these days: Last week, I talked at JavaLand 2021, Germany’s biggest Java conference. This week, I’ll speak at IT-Tage 365 (in German again). And in two weeks, I present to the Virtual Java User Group for the first time. And I always talk about front-ends for Java developers. I do pitch multiple topics, but somehow everybody picks the same one!
Yeah, maybe 90% of us Java developers do work on back-ends. But it seems we all dream of front-ends…
Quote of the Week
At the beginning, the leader needs to really focus on what. Then they really need to focus on how. And then eventually, their focus really just becomes who.
Jeff Bezos on the evolution of a leader as the company grows (from the A16z podcast, episode 623, at 1:01:57)
My Articles
JDK 16: Records, Patterns, Ports & Garbage Collectors
Last week I said I’ll pick a “What’s new in Java 16?” article. Guess I was wrong: I wrote yet another one myself! Here’s the summary: Skip Java 16 and wait for Java 17 (September 2021).
My JavaLand Talk
Unfortunately, the conference had lots of technical issues on the first day. I was the second-last talk of the day. Given the eight parallel tracks and the 1.300 participants, I expected an audience of at least 30 people. Before I started my presentation, I did see maybe 3 or 4. I’m not sure if that was accurate. And the moderator couldn’t participate in the chat where I was to get questions.
So how did I still answer questions? Read it on my talk page!
JHipster 7.0
JHipster 7 is available! The first major release in nearly two years gives us Spring Boot 2.4, Vue.js in the core, JavaScript testing with Cypress, Angular 11 with Angular CLI builds, and much more.
Bookmarks
Java
The End of Applets
If you’re an old dude like me, then you remember the excitement when you saw that first grey rectangle: “Look, ma, my Java program runs in the browser!” And for a while, these applets did serve a purpose - to do things that web pages couldn’t. But they required a JRE on the computer. That was a hurdle Sun (and then Oracle) never really mastered. And then Adobe’s Flash could do similar things but looked nicer and was everywhere.
That’s why Applets were all but dead long before browsers started to kick them out in 2015. If it’s any consolation: Flash died this January.
Frameworks
Kicking Spring Native's Tires
Last week I covered the announcement of Spring Native Beta. That uses GraalVM to gives us smaller and faster native executables. Here’s a report of using Spring Native for a “non-trivial application”. The verdict? “Spring Native handles most of GraalVM’s required configuration out-of-the-box”, with serialization, in-memory cache, and in-memory database working just fine.
But there were rough edges and issues. Some came from the application itself, some from Spring Native. Now VMware has about half a year to get Spring Native into shape for Spring Boot 3.0!
Releases
Spring Boot 2.4.4
About Spring Boot: Here’s another maintenance release of the latest production version. This time we get 60 bug fixes, documentation improvements, and dependency upgrades.
Here’s an interesting tidbit: The release announcement also tells us how we can contribute to Spring Boot! How? By working on issues with the “ideal for contribution” tag. Is VMware running out of developers? Do they get too many bugs? Maybe we’ll find out someday…
About
Karsten Silz is the author of this newsletter. He has been a Java developer for 22 years.
He grew up in East Germany, behind the Iron Curtain. He wrote his first BASIC program on a Sinclair Spectrum ZX81 in 1984 and never looked back. He got a Master's degree in Computer Science from the Dresden University of Technology in 1996.
Karsten has developed software in five European countries and the U.S. since 1996. In 2004, he co-founded a software product start-up in the U.S. The product reached an 80% market share in the North American cable TV industry. During power outages, it protected TV, Internet, and phone services for 50 million households. Karsten led product development for 13 years and left after the company was sold successfully.
Since 2017, he has worked as a full-stack Java contractor for web (Angular) and mobile (Flutter) in Germany and the U.K. He co-founded the SaaS start-up "Your Home in Good Hands" as CTO in the U.K. in 2020.
Karsten has this newsletter, a developer website, and a contractor site. He's on LinkedIn, Twitter, and GitHub.