Java Annotated Monthly: July 2018
Java Annotated Monthly: July 2018
Want to get up-to-date on the latest happenings in Java? Check out this post to learn more about future events, conferences, JDK releases and more!
Join the DZone community and get the full member experience.Join For Free
Get the Edge with a Professional Java IDE. 30-day free trial.
This month’s annotated monthly has a nice wide selection of reading for you to take to the beach, including chunky sections on community and culture, since it’s not always about lines of code. Or, if you actually are going on vacation, you could just leave all this alone for a while and recharge your batteries. I suggest the latter, although that’s a more difficult proposition if you have kids. You might already be looking forward to going back to work. Anyway, let's get into it!
In this section, we will look at some collections tutorials, information about working with databases, and more general news about Java.
- Java’s Magic Sauce — an analysis of sun.misc.Unsafe, what it is and why it’s used
- The Reactive Universe for Java Devs — a quick overview of what reactive is and three libraries/frameworks for Java
- Exact Conversion of Long to Int in Java — a look at Math.toIntExact()
- Java 8 Optional: Handling Nulls Properly – a basic intro to Optional
- Java Collections Are Evolving – I wrote an article covering some of the changes to collections in Java 9 and 10
- Iteration Over Java Collections with High Performance
- Refactoring to Eclipse Collections: Making Your Java Streams Leaner, Meaner, and Cleaner – Eclipse Collections used to be known as GS Collections. This post provides some features that aren’t available in the Java 8 Streams API.
- Deferred Execution with Java’s Consumer – how to use the Consumer interface in lambda expressions
- Unit Testing: Java Streams and Lambdas – TL;DR: keep your lambda expressions short
- Try-With-Resource in Plain Java — basically, what does try-with-resources give us?
- Working with Embedded Java Databases & IntelliJ IDEA (video) – this provides a good overview of setting up an in-memory database to use in IntelliJ IDEA.
- JDBC, What Is It Good For? (video) – how does JDBC fit with trends like Reactive, Non-Blocking APIs, Microservices, CQRS, and Event Sourcing?
- Should I Learn Java in 2018 – spoiler: yes, but the article contains useful counters to use whenever anyone moans about Java.
- Spring REST Docs – Test driven documentation of your REST API – usually the Spring stuff lives in its own section, but this month there’s not much else to put it with.
- Testing JavaEE backward and forward compatibility with Servlet, JAX-RS, Batch, and Microprofile – is it possible to implement a new artifact that uses MicroProfile API within Java EE 7? Can this artifact be used in a Java EE 8 Server?
- Zip Slip Directory Traversal Vulnerability Impacts Multiple Java Projects – security is important, okay?
With the shorter, faster releases, it’s not so clear which version number certain features will come in, but we can still keep an eye on upcoming features.
- JEPs 181, 315, and 333 Proposed to Target JDK 11 – this is a quick summary of three features in Java 11.
- ‘Predicate::not’ Coming to Java 11 – a nice addition to make Stream operations easier to read
- Applying New JDK 11 String Methods – a look at the new methods and what they do
- JEP 325: Switch Expressions – this OpenJDK page has been updated after plenty of discussions on this feature. This feature is a nice idea and may help improve some of the old-fashioned code lying around our code bases
- Java Community Aims to Quantify Java 9 Adoption — to try to prevent a Java 8/9 split in the community, we’re trying to figure out who’s using Java 9 (please fill in the survey), which libraries have adopted the new module system and work with Java 9, which might be falling behind. The goal is to help out popular libraries that might be need resources to move forward.
- Oracle has a new Java SE Subscription – if you’re using Java for commercial reasons, you (or your management) should understand the New Support Pricing Structure for Java. It reflects the changes in the Oracle Java SE Support Roadmap and assumes the work to make the Oracle JDK and OpenJDK builds interchangeable.
- Q&A with Martijn Verburg on AdoptOpenJDK and Nestmates
- New Details Emerge Regarding Oracle’s Layoff of Java Mission Control Team – Mission Control was Open Sourced — it doesn’t necessarily mean "The End!"
- Microsoft to Acquire GitHub for $7.5 Billion – and, because we love to react immediately, 13,000 Projects Ditched GitHub for GitLab Monday Morning.
- JAX Magazine is out: All aboard the IDE train! (requires free registration to download) – in which two JetBrains developer advocates talk about why their IDEs are amazing.
- Don’t let your ethical judgment go to sleep — developers need to be aware that they don’t operate in isolation, but that their actions have real-world consequences.
- Get happy developers to do what you want — or, automate all the things.
- Forget about Clean Code, let’s embrace compassionate code — stirred up a bit of noise on Twitter, the point that’s interesting is to not be black-and-white about rules.
- Developers Should Abandon Agile — says Ron Jeffries, a famous Agile person. But, the point is the same as above — dogmatic approaches to things like Scrum may not be fixing the actual problem
- How to Write Better Code — and the skills needed are not always about coding.
- Introvert or Extrovert? Here’s How to Boost Your Productivity — we recharge in very different ways.
- Jarrod Overson Offers Advice for Aspirant and Current Technical Leaders (podcast)
- Susan McIntosh on Diversity in Tech (podcast) — covers some of the basics like why; what are some of the problems; what are some of the possible solutions; and how it helps everyone.
- Steering around blockchain hype — this is an interesting article about how different groups of people see blockchain and how blockchain can be useful.
- Git Vulnerability May Lead to Arbitrary Code Execution – downloading the latest version now…
- The Mistakes I Made As a Beginner Programmer – not the bad code we wrote, but the things we thought were, or were not, important.
- What’s the Best Way to Pair? — spoiler: it depends!
- Politeness or Bluntness in Code Review? Settling the Matter Once and for All — or, there is no right way. We’re all different, and we need to learn how best to communicate with each individual.
It’s summer, so there’s not much going on for the next couple of months in terms of big conferences. It’s a good opportunity, therefore, to let you know about the big autumn conferences that we’ll have a booth at.
- 3-5 Oct: KotlinConf, Amsterdam — not only is this program organized by us, but it features a number of our Kotlin experts as speakers.
- 19-20 Oct: JokerConf, St Petersburg
- 22-24 Oct: HashiConf, San Francisco
- 22-25 Oct: Oracle Code One, San Francisco (formally JavaOne) — we have the booth, and Eugene Petrenko, Roman Elizarov, and I (Trisha Gee) will be presenting a number of talks and BoFs.
- 12-16 Nov: Devoxx Belgium, Antwerp
- 23-24 Nov: Devoxx Ukraine, Kyiv
- 26-30 Nov: AWS re:Invent, Las Vegas
- 30 Nov-1 Dec: DevTernity, Riga
News and topics from the IntelliJ IDEA blog that you may have missed:
Published at DZone with permission of Trisha Gee , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.