DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Please enter at least three characters to search
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Modernize your data layer. Learn how to design cloud-native database architectures to meet the evolving demands of AI and GenAI workkloads.

Secure your stack and shape the future! Help dev teams across the globe navigate their software supply chain security challenges.

Releasing software shouldn't be stressful or risky. Learn how to leverage progressive delivery techniques to ensure safer deployments.

Avoid machine learning mistakes and boost model performance! Discover key ML patterns, anti-patterns, data strategies, and more.

Related

  • NullPointerException in Java: Causes and Ways to Avoid It
  • Hackathon Java Tools for Developers
  • How to Use Java to Build Single Sign-on
  • Secure Communication with Token-based RSocket

Trending

  • DZone's Article Submission Guidelines
  • How Large Tech Companies Architect Resilient Systems for Millions of Users
  • Unlocking AI Coding Assistants Part 4: Generate Spring Boot Application
  • The Modern Data Stack Is Overrated — Here’s What Works
  1. DZone
  2. Coding
  3. Java
  4. Java Annotated Monthly — May 2019

Java Annotated Monthly — May 2019

From security to women in tech — this month's Java Annotated Monthly has it all.

By 
Trisha Gee user avatar
Trisha Gee
·
Updated May. 10, 19 · News
Likes (6)
Comment
Save
Tweet
Share
14.4K Views

Join the DZone community and get the full member experience.

Join For Free

This month, we have a guest section on security since there were so many relevant security articles. We have the results of two developer surveys and a huge culture and community section that explores some of the factors that might contribute to the results of those developer surveys. Of course, May’s Annotated Monthly also includes your regular fix of Java news, tutorials, and tips.

JavaAnnotatedMonthly@2x

Java News

Big news, everyone! Java EE is dead. Again. What year is it? Why are the same headlines popping up, again and again, every year?

  • Update on Jakarta EE Rights to Java Trademarks – so Jakarta EE can’t use or change anything in the javax package namespace, which might have an impact on a seamless transition from Java EE to Jakarta EE. But Jakarta EE is still very much alive and relevant.
  • Java EE to Jakarta EE and the javax trademark decision – a summary of the situation from the London Java Community
 David Blevins@dblevins

#JakartaEE namespace discussions will start shortly on the jakartaee-platform-dev list, please make sure to subscribe asap! https://accounts.eclipse.org/mailing-list/jakartaee-platform-dev …

 42 2:52 PM - May 6, 2019 Twitter Ads info and privacy

Mailing list: jakartaee-platform-dev (68 subscribers)

 accounts.eclipse.org
  • Java Is Not Dying (Yet) – sigh
  • RedHat Becomes Steward of Java 8 and 11 – this is Good News.
  • Leadership of OpenJDK 8 and OpenJDK 11 Transitions to Red Hat (press release): “Transition from Oracle addresses need for continued support of the technology and community”

Java Tutorials & Tips

As usual, articles and blog posts with detailed information about how to do stuff in Java. This month, we have a few articles investigating edge cases and gotchas, for those “oh that’s quite interesting” nuggets of information.

  • Processing Large Files in Java – an interesting exercise in optimization
  • Java Stream API Was Broken Before JDK 10 – worth reading if you want to understand a little more about how Streams work
  • Upgrading from Java 8 to Java 12 – I wrote an article about why upgrade, the concerns to consider, and tips for upgrading
  • Beyond Java 8 – a related article I wrote covering the six-monthly release cadence, long-term support releases, and updates to licensing.
  • Java Garbage Collection – recent versions of Java have added three new garbage collectors, understand what they are and what they’re good at.
  • Both the above articles are from the new DZone Java Guide.
  • The Complete Guide to the Java SE 12 Extended Switch Statement/Expression — a nice case study using JShell.
  • Call for feedback — switch expressions in JDK 12 – if you do experiment with switch expressions and have thoughts on how it works (or doesn’t!), give your feedback to the developers.
  • 10 Books Java Developers Should Read in 2019 – yes, people still read books. This list is a nice variety, if you haven’t already read one or two from it, pick one and go.
  • How Many Type Parameters Can a Java Method Have? – I was torn between two opposite responses to this: who cares? and oh, that’s quite interesting!
  • Designing Bulletproof Code – a nice worked example of how to create safe domain objects. The name is a little bit click-batey, but the principals are sound.
  • Applying Concurrency Cookbook Recipes to SPEC JBB (video) – Monica always has great insights into JVM performance.
  • Speaking of benchmarks: JEP 230: A New Microbenchmark Suite for JDK 12 and Renaissance Suite: A modern benchmark suite for the JVM
  • Variance in Java – seems like a good topic to understand for interview questions or maybe certifications
  • My Experience taking the new Java SE 11 Programmer I 1Z0-815 Exam – speaking of certifications…
  • Top 20 System Design Interview Questions for Java Programmers – speaking of interviews. I’m a) an experienced developer and b) very experienced at interviews, and these questions gave me cold sweats. Useful to review if you are, or are considering, interviewing for new roles, but sometimes questions like these are a sign the company doesn’t actually know how to interview and hire developers. We know the answer is “it depends,” we know development is a collaborative exercise, not a solo exam, and we should know that it’s more important as a developer to ask questions of the users/business, not know the answers (note: there are more career-related links in the culture/community section below). Our industry is horrible at interviewing developers.
View image on Twitter
 Jaime Lopez@DevWithTheHair

Software developer interviews, in a nutshell.

 2,361 11:47 AM - May 5, 2019
  • While we’re on the topic of my opinions: Learn from Java Champions: Trisha Gee

Languages, Frameworks, Libraries, and Technologies

Covering: automated testing, Kotlin (no bias here then), branching vs. trunk-based development, code reviews, protocols and improving performance of Spring Boot.

  • Easy integration testing for Java EE and MicroProfile applications with Testcontainers – anything that improves our ability to create robust automated tests is a Good Thing
  • Service Virtualization Meets Java: Hoverfly Tutorial – ditto
  • 27 Tips for Finding Bugs on Your Website – yes, let’s do this
  • Why Kotlin is my next programming language – by the way, Kotlin 1.3.30 was released, and you might be interested in the Kotlin Census 2018 Infographics and Report
  • Automating Your Java Project Workflow with a Modified Gitflow Branching Model – a thorough look at how to work in a Gitflow way
  • From Git Flow to Trunk-Based Development – or you could do the opposite
  • Code Reviews in Trunk-Based Development – I like this approach to code reviews; they are less of a barrier to the feature reaching production and a code author is more likely to be receptive to suggestions for changes during development of a feature than when the feature is finished.
  • Code Review Best Practices – Speaking of code reviews, this month I wrote an article summarizing how to create a code review process that doesn’t suck
  • Interaction Protocols: It’s All About Good Manners – really interesting, particularly the section on evolutionary biology. Disclaimer: Martin is my ex-boss and mentor, so I’m super biased about how good his stuff is.
  • Spring Boot & JVM — improving performance and memory footprint as easy as it should be – a look at some configuration that might help

Security

There are so many security articles and tips this month they merit their own section. So far, 2019 is very much proving to be a year for developers to embrace security as a first-class part of their job.

  • HTTP access to repo1.maven.org and repo.maven.apache.org is being deprecated – you should use HTTPS
  • DevSecOps: Faster Feedback with Security Unit Testing in CI/CD (video, slides, and links) – automating security testing seems like a Good Idea
  • Open-Source Vulnerabilities — Will They Ever End? – and this is why.
  • Add Secure Token Authentication to Your Java App – with Spring Boot
  • Encryption, Part 1: Symmetric Encryption
  • Encryption, Part 2: Public Key/Private Key Encryption
  • Hacker Eva Galperin Has a Plan to Eradicate Stalkerware – it feels like this article should have a trigger warning; I certainly found it disturbing. It’s important to understand the real impact technology can have on human beings.
  • Malware for IoT: When Bad Code Gets Even Worse – this is terrifying
  • We’ll be hosting an IntelliJ IDEA webinar on security soon. Keep an eye on Twitter or the blog for more details.

Culture & Community

We have a lot of articles on the impact of gender on developer careers, which are particularly interesting to read after reading the results of the Stack Overflow developer survey. There’s also some more general advice around burnout, work-life balance, and career.

    • Rethinking Software Testing: Perspectives from the world of Hardware – really liked this article, it is a really useful view on the value of automated testing.
    • Quick Introduction to Software Architecture – What, Why and How? – so… being a software architect is all about boxes and arrows then.
    • Why Self-Care Is the Secret to Becoming a Productivity Powerhouse – I have two small children so the combination of terms “self-care” and “productivity powerhouse” in this title make me want to groan. Self-care for a parent is having 2 minutes to yourself without someone screaming at you, and productivity is being able to remember what you started trying to do 5 minutes ago. However, this article has good advice — no matter what your personal or professional situation, and I should follow it.
    • Stack Overflow Developer Survey 2019 – loads of interesting things in here about developer backgrounds, jobs, technology use, and preferences. Most interesting to me, as usual, are the results around gender. And remember, although this survey was completed by developers, it’s developers who use Stack Overflow (OK, fine, that’s almost everyone), and of those, developers who could be bothered to fill in the survey.
    • If you think women in tech is just a pipeline problem, you haven’t been paying attention – a good summary of the problems that face under-represented groups in technology, and some solutions. Note that one conclusion that could be drawn from the above Stack Overflow survey that suggests women inhabit more junior roles than senior, compared to the men, is that women leave the industry.
    • I’m quitting engineering: An exit interview – again on retention: a first-hand look at why one individual has chosen to leave. And yes, before you say it, of course, even straight, white men can feel this way, too. So surely that means changing our attitudes will help everyone, not just a small demographic
    • I Am the Girl That STEM Lost – another personal story
 April Wensel ✔@aprilwensel · Sep 17, 2018

The shortage of emotional intelligence in tech didn’t happen by accident.

People with low EQ came to power and defined what makes a “successful” engineer.

Emotional intelligence has not been respected, rewarded, or taught.

Efforts to change this have been
dismissed as “soft.”

 April Wensel ✔@aprilwensel

If you’ve ever rejected a conference talk that was “too soft,” rejected a candidate who was too good at communication to possibly be “technical” enough, or discouraged people from writing about “soft skills,” you’ve contributed to this problem.

It’s not too late to change.

 233 8:38 PM - Sep 17, 2018
  • Programmatically Blonde – and a counterexample of how one can get into programming even from a very different background
  • Computer says no – I loved this article because it reflects a lot of my own experiences as a woman developer, and gives a nod to my favorite book of 2018.
  • Women Did Everything Right. Then Work Got ‘Greedy.’ – not specifically about tech, but an interesting look at how employers are taking for granted your ability to work ridiculous hours, and that is widening the gender gap. Note for men: it’s actually an article about how you guys (and I mean “guys“) are being exploited by employers.
  • It is perfectly OK to only code at work, you can have a life, too. – yes, but if the above article is to be believed, if you get a life, you will have disproportionately less money than someone who invests more time into their career.
  • Preventing Busyness from Becoming Burnout – related: we’re all so busy all the time, but are we actually productive? And ultimately, it’s up to employers to change what behaviors they think ideal workers should demonstrate
  • Agile and The Two-Minute Rule – this is kinda the other end of the spectrum – how to be productive by just doing the little things.
  • The Biggest Bias in Tech That No One Talks About – apparently, if you’re over 40 and a developer, you’re past it. Um, probably shouldn’t say that to our advocacy team…
  • What is the career path for developers in your company?
 Christie Koehler@christi3k

Which tech companies have published their engineering career ladders publicly?

 254 5:57 PM - Apr 16, 2019
  • This Is the Resume That Will Get You Hired at Google – do people still aim to work for Google? Regardless, the advice in here about phrasing your resume is solid and should apply to any company you want to work for.
  • Coffee not essential for life, the Swiss government says – well, they’re wrong.

And Finally

Here’s a chance to catch up on the IntelliJ IDEA and other JetBrains news that you might have missed. This month saw the culmination of a lot of hard work from the team here so there’s quite a lot.

  • We had to reschedule our Java 12 webinar to Tuesday, May 21st, but that gives you a chance to register for it now in case you missed the announcement last month.
  • The extract variable refactoring was updated in IntelliJ IDEA 2019.1. Check out Mala’s blog post on extract variable for an overview of the existing functionality and an introduction to some of the changes, and/or her screencast on the topic.


Embedded video
 IntelliJ IDEA@intellijidea

Choose the winners of the IntelliJ Theme Contest 2019! Vote for the theme you love the most! https://plugins.jetbrains.com/contest/intellij-themes/2019#vote …

 114 4:35 AM - May 4, 2019
  • Debug your Java applications in Docker using IntelliJ IDEA.
  • New screencasts:
    • Extract Variable Refactorings in IntelliJ IDEA
    • Code Generation and Completion in IntelliJ IDEA
    • Navigation in IntelliJ IDEA
  • The State of Developer Ecosystem in 2018 – interesting reading if you compare and contrast with the Stack Overflow survey
  • If you’ve ever found it hard to justify your subscription fee for IntelliJ IDEA Ultimate, you might want to look at this report about the ROI.
  • We’ll also be hosting a webinar on security very soon. Keep an eye on the blog!

If you have any interesting or useful Java/JVM news to share via Java Annotated Monthly, leave a comment or drop me a message via Twitter.

Java (programming language) intellij dev Stack overflow Spring Framework code style Java EE security IT

Published at DZone with permission of Trisha Gee, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • NullPointerException in Java: Causes and Ways to Avoid It
  • Hackathon Java Tools for Developers
  • How to Use Java to Build Single Sign-on
  • Secure Communication with Token-based RSocket

Partner Resources

×

Comments
Oops! Something Went Wrong

The likes didn't load as expected. Please refresh the page and try again.

ABOUT US

  • About DZone
  • Support and feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends:

Likes
There are no likes...yet! 👀
Be the first to like this post!
It looks like you're not logged in.
Sign in to see who liked this post!