IntelliJ IDEA
IntelliJ IDEA – the Leading Java and Kotlin IDE, by JetBrains
Java Annotated Monthly – November 2022
Hello!
Today we’re bringing you the November edition of our collection of the most prominent news, articles, podcasts, and videos about Java, Kotlin, and other related technologies.
The highlight of this issue is the public preview of Fleet by JetBrains. If you are interested in our new distributed polyglot editor and IDE, we heartily encourage you to try it out.
Apart from that, this Java Annotated Monthly features some exciting quizzes on Java, articles about upcoming and recent conferences, and a selection of materials devoted to Spring and Kotlin.
Without further ado, let’s get started!
Java News
Java News Roundup 1, 2, 3 – Check out these collections of the most exciting Java news from September and October.
Java 19 Overview – If you haven’t studied up on the new Java 19 features, Aurelio García-Ribeyro, Senior Director of Product Management for Java SE, Oracle, will show them to you in this video tour.
JEP 431: Sequenced Collections – Read a detailed description of a new feature candidate which introduces new interfaces to represent collections with a defined encounter order.
JavaFX 20 Early-Access builds – Download the builds and share your feedback. The release is currently planned for March 2023, so use your opportunity to try it out beforehand.
Java Tutorials & Tips
Java Quizzes – Test your knowledge of various topics, learn from your mistakes, and put your newfound expertise into practice.
JetBrains IDEs hidden features: Syntax Highlighting – This article features an excellent write-up on syntax highlighting.
Selectively Shifting and Constraining Computation – Mark Reinhold explains how to improve a program’s startup time, warmup time, and footprint by selectively shifting and constraining computation.
10 More Common Mistakes Java Developers Make when Writing SQL – Since SQL can be subtle in many ways, mistakes are bound to happen. But once you know what to look out for, it will be easier to stay on the right track and write better SQL.
Java Collections Puzzlers – This interactive session recorded during Devoxx Belgium 2022 presents ways to avoid pitfalls when using the collections framework.
3 Java Patterns that died in 2022 – Greg L. Turnquist writes about some code patterns that he finds irritating and prefers to avoid. Do you agree with him?
What Is Transaction Management in Java? – In this tutorial, you’ll learn about transactions, along with some techniques you can use to manage them. It even includes examples!
Java First. Java Always. – In this keynote address from JavaOne 2022, Olivier Gaudin, CEO and co-founder of SonarSource, speaks about clean code and its influence on delivering high-quality, secure code.
How to use Java DTOs to stay secure – This is a great read for anyone interested in learning how to use DTOs in modern Java applications to prevent accidental data leaks.
How to code well? With good practices, a great team, and Java code quality tools – Find out what SonarQube is and how it helps improve code quality.
Languages, Frameworks, Libraries, and Technologies
This Week in Spring 1, 2, 3 – Check out all the most important Spring-related news conveniently grouped into 3 short articles.
Gently down the stream – This is the cutest introduction to Apache Kafka! You can even watch it with your kids.
Fleet — A quick look into Python development with JetBrains’ new IDE – Fleet is now in the public preview stage, which means you can start testing it. The author of this article shows how it works with a simple Python project.
Microsoft Releases Stream Analytics No-Code Editor into General Availability – Read up on a brand-new point-and-click code editor that helps simplify data streaming pipelines.
UML: My Part in its Downfall – Luarence Tratt shares an exciting look at the history of UML standardization.
How to create RESTful Web Services in Java using Spring Boot? Example Tutorial – Follow these steps to create your first application with the REST API.
Learn more about Spring Framework 6 and Spring Boot 3 in these two great talks from Devoxx 2022 – The first talk is about the new features that Spring Framework 6 offers. The second one is dedicated to the Ahead Of Time (AOT) support and offers a glimpse at Spring Boot 3.0.
The State of Spring Survey 2022 Is Here! – If you have anything to say about Spring and want to make it better, participate in the annual community survey.
Reviewing CVE-2022-42889: The arbitrary code execution vulnerability in Apache Commons Text – Learn how the author, Brian Vermeer, proposes to detect this vulnerability in your stack.
A Bootiful Podcast: Spring and Java community legend Marten Deinum – Listen to this podcast to meet the amazing Marten Deinum (@mdeinum), a longtime Spring community member and a true legend. He talks about scuba diving, software, Spring, the community, and more.
Spring Batch 5.0.0-M7 available now! – Read a detailed description of the two major changes in this milestone release: the introduction of support for using any type as a job parameter and improved job parameters conversion.
Spring Tips: Spring Boot & Apache Kafka – In this episode of Spring Tips, Josh Long looks at the venerable Apache Kafka broker and its integrations at various levels of abstraction in the Spring Boot ecosystem.
Let’s investigate a Gradle IntelliJ memory leak! – Learn how to fix a memory leak by looking at a real-life example.
Am I Testing the Right Way? – This article covers two testing approaches: fine-grained and coarse-grained. Read on to discover the pros and cons of each.
Differences between Spring and Spring Boot – If you are a beginner with the Spring and Spring Boot frameworks, read this article to find out where and why you would like to use each of them, what server configurations are needed, and more.
VR Environments for Collaborative Software Development – In this podcast episode, Shane Hastie and Jonathan Schneider discuss the use of virtual reality for developer collaboration. You can listen to the episode or read the transcript.
Top Commonly Used JavaScript Functions – In this article, Akash Chauhan presents the top 9 JavaScript functions and provides use cases of each.
Quarkus Defends REST APIs against Attack – The article explains how to enable CSRF defense.
The history of programming languages – Watch this video to follow a timeline of the key events in the development of programming languages and gain insight into how people and machines have learned to interact.
Building and Scaling Developer Environments at Stripe – Soam Vasani, Software Engineer at Stripe, discusses how their team handles their dev environment infrastructure needs and the techniques that help dev environments adapt and evolve to support a growing organization.
Kotlin Corner
Kotlin 1.7.20 Released – Take a look at the highlights of the Kotlin 1.7.20 release!
Kotlin Multiplatform Mobile Is in Beta – You can now test out Kotlin Multiplatform Mobile, an SDK for iOS and Android app development that allows you to maintain a shared codebase for networking, data storage, and analytics, as well as the other logic of your Android and iOS apps.
Compose Multiplatform 1.2 is out: New Mouse and Keyboard APIs, ProGuard Support, Online Updates, and More – Check out the examples and other newly introduced features.
KotlinConf 2023 Is Going Global. Get on Board With Us! – Sign up now to host a KotlinConf 2023 viewing event for your community!
Report card: Java 19 and the end of Kotlin – With the release of Java 19, the community has realized that it is a great time to be a Java developer. But does that mean Kotlin will no longer be in demand?
Google’s Journey from Java to Kotlin for Server-Side Programming – Since Kotlin is now a recommended programming language for server-side JVM at Google, the speakers discuss the challenges they had to face when working with Kotlin and how they managed to succeed.
Exploring “select” expression of Kotlin coroutines – This article explains what the select expression API is and provides some use cases.
Mutation Testing in Kotlin – Learn the essentials of mutation testing and see why it might be of interest to Kotlin users.
Compile time exception handling in Kotlin – Find out how the Arrow Analysis plugin can warn you about unhandled exceptions at compile time.
I know nothing in Kotlin – Some words on the tricky Nothing class.
Domain Driven Design in Kotlin – Entities lifecycle management – Learn how Domain Driven Design helps you express the business logic of your applications separately from the technical aspects.
Exploring “select” expression of Kotlin coroutines – Find out what select expression API is and check out the example use case.
Basic KSP validation – The author shares his experience building validations using Kotlin symbol processing API in one of his projects.
Deferring Error Handling With A Kotlin Result Type – In this video, Duncan McGregor shows a use case when an operation proceeds with an error and you want to return an error type. In this episode, he uses a result as a property of the Item type so that the rendering code has the required context to generate the desired HTML.
Culture and Community
Accessing Agile Games as a Tool in Transformation and Change – Can agile games promote business effectiveness? Read on to find out!
Building an Effective Incident Management Process – This article describes a generic framework for effective incident management inspired by LinkedIn’s internal process.
Technology and Tooling Critical Factors for Successful Hybrid and Remote Workplaces – Are we all coming back to our offices? Or is a full switch to remote work possible with the existing tools?
Bridging the Understanding Gap between Business and IT – There is no doubt that crucial benefits result from effective communication between the business and IT sides of your company. But how do you organize it wisely? Read this article to find out!
Conferences and Events
Go deep at JavaOne: 20 developer sessions that caught my eye – Alan Zeichick, editor in Chief of Java Magazine, shares his selection of the most interesting developer sessions at JavaOne.
Inside Java | JavaOne 2022 Technical Keynote – In this technical keynote, you’ll learn about the innovative Java projects Oracle is leading to modernize development.
QCon Events 2022: Uncover Emerging Trends & Learn From Practitioners Driving Innovation in Software – Check out the agenda for the QCon events.
Great Time at JavaZone 2022 – Shai Almog shares his experience of JavaZone 2022.
One fun JavaOne in the sun – Java champion Donald Raab takes you on a journey to JavaOne, sharing his personal experience and thoughts on the sessions he’s attended.
And Finally
A round-up of blog posts and videos from IntelliJ IDEA and JetBrains:
JetBrains Fleet — Public Preview Launch Demo – Watch a Fleet demo that includes the introduction of Smart Mode, running and debugging, and the integrated tools display.
IntelliJ IDEA Conf 2022 – You can now watch all the sessions from our recent conference.
Remote Development in JetBrains IDEs now available to Google Cloud Workstations users – We have partnered with Google Cloud to deliver an integration between Cloud Workstations and JetBrains remote development. Read the article to learn what this means.
That’s all for today! If you’d like to suggest content for the next issue of Java Annotated Monthly, please email us at (JAM@jetbrains.com) or get in touch on Twitter.