IntelliJ IDEA
IntelliJ IDEA – the Leading Java and Kotlin IDE, by JetBrains
Java Annotated Monthly – March 2020
It’s only two weeks since the last Java Annotated Monthly and we have another huge issue! I’d like to say March’s edition is dedicated to International Women’s Day, and it can be if you like. To be honest, the inclusion of women contributors in this month’s newsletter is, in fact, nothing special or new. It’s the result of several years of hard work identifying new sources of videos and articles, intentionally expanding the people I follow on Twitter, and placing effort into amplifying voices that deserve to be heard. There is still plenty of room for improvement though so I will not relax and say “it’s OK, we’re diverse now”. Because we’re not.
Java News
-
JFR Coming To Open JDK 8 – this was a paid-for feature in Java 8, but work is being done to port it to OpenJDK
-
Developer Surveys Survey: Including a Spotlight on Java Results – or: why you can never believe anything you read
-
The Java EE Guardians Rebrand as the Jakarta EE Ambassadors – a nice move to reinforce continuity of Java EE via Jakarta EE
-
State of Valhalla – updated this month. Valhalla includes the idea of inline classes.
- Draft Spec for Sealed Types
-
Devnexus 2020 Interviews (video) – some of my favourite people appear here
-
Java is not Dead (podcast) – featuring me, Trisha Gee! In which I cover some of the latest changes in the Java ecosystem. Shouldn’t be much new in here for you regular readers since it’s all stuff I’ve linked to from Annotated Monthly
-
2020 dev nexus – table of contents – Jeanne’s blog notes from DevNexus. I am still sad I missed the event this year.
-
Ghostcat breach affects all Tomcat versions – update Tomcat now!
THREAD: Background and explanation for deprecation of the java.lang.Object constructor.
This work is in the Valhalla prototype repo, not the JDK mainline. What eventually arrives in the mainline will likely differ. Existing code will continue working or have a migration path. 1/
— Stuart Marks (@stuartmarks) February 28, 2020
Java Tutorials & Tips
-
Why is map called map? – honestly this was one of the most confusing things to me about the move to the more “readable” Streams API
-
A new Swing Look and Feel I have been working on – Swing isn’t dead!
-
Using IntelliJ IDEA Live Templates – live templates were covered last month but they’re still my favourite feature, so here’s another example.
-
Make Code Simple and Readable – this stuff is “obvious”, which means read it to remind yourself and then share it with the team
-
Serializing Records – I think records is my favourite (preview) feature from Java 14
-
Making Space for Pattern Matching – another nice new preview feature from Java 14
Languages, Frameworks, Libraries and Technologies
- BDD is not Test Automation – agreed. I’ve seen this incorrect focus cause issues plenty of times.
-
5 ways to drive your automation engineers away – “It’s hard enough to find great programmers or great testers, and it’s even harder to find people who are both. Don’t let these valuable people get away”
-
Easy lift off with Kotlin and PCF – don’t forget we have a Spring Boot Tutorial which includes a Kotlin service.
-
Easy Boarding with Kotlin and PCF – a follow on from the above
-
Kotlin and Domain-Driven Design—Value Objects – some of the points in here are helpful to understanding upcoming changes in Java (records, inline classes etc)
-
Nine Ways to Fail At Cloud Native – failure is a much better teacher than success. Best if you learn from someone else’s failures
-
Multi-Runtime Microservices Architecture – I… don’t know what this means. But it looks like something you should read if your job description includes the word “architect”
-
Preventing Flaky Tests from Ruining your Test Suite (video and blog) – a look at what flaky tests are, why they’re bad, and what we can do about it (specifically with Gradle)
-
KEYNOTE Testing the Untestable (video) – love this case study of improving automated testing at Twitter
-
Recursion schemes fundamentals – Scala examples
-
Awesome Asciidoctor: Write Extensions Using Groovy (or Java) – I really do need to research more about AsciiDoc and Asciidoctor for documentation
-
Improving Repeatability and Auditability with Continuous Delivery – another 97 Things Every Java Programmer Should Know piece (if you like these pieces, Kevlin and I will be giving a talk based on the book at both DevoxxUK and GOTO Amsterdam)
-
Groovy 3 Quick Review (video) – nice overview video (12 mins) showing Groovy 3 features (bonus: in IntelliJ IDEA)
I am a senior developer, Katie. I still say these things. https://t.co/mh5C9kc5cn
— Grady Booch (@Grady_Booch) March 1, 2020
Culture & Community
Happy International Women’s Day (March 8th)! And because someone is bound to ask, November 19.
Also, this section just keeps getting bigger. This month I’ve included a bunch of books too as I’ve been reading more actual paper things in the last year or so and, who knew, I’m learning a lot from them.
Sometimes I consider re-focusing the newsletter on just Java-specific stuff. I do not want to do this. I believe developers are people first and a language-typist second. Or third. Or maybe even waaaay down the list.
- This is your semi-regular reminder to read Programmed Inequality.
- Susan Fowler: Why I Wrote the Uber Memo – making the decision to speak up is not something one takes lightly
-
Read Susan Fowler’s book.
-
Joining Blameless – the point of the post is about a specific job move, but the majority is highlighting how it sometimes (often?) feels working in this industry.
- Being Glue – This was mentioned in the previous blog. Recommended reading.
-
These Women Entrepreneurs Created A Fake Male Cofounder To Dodge Startup Sexism – surprised? No. Sad? Yes.
-
The article above references this story I may have posted before (here’s more context, contains strong language)
-
“Culture Fit” is Code for Biased Hiring – read this
-
Why Diverse Teams Are Smarter – a reminder
-
Diversity, actually – Ronna Steinberg – looking at how to change / update hiring processes to improve diversity (specifically gender)
-
Lambda School’s Misleading Promises – boot camps should help “close the skills-gap”, but articles like this suggest some organisations may be damaging, particularly for those from under-represented groups and other at-risk people.
- HackerRank: Coding bootcamps explode in popularity among younger developers
-
Collaborative Overload – “As people become known for being both capable and willing to help, they are drawn into projects and roles of growing importance.” and “…the evidence shows, women experience greater emotional exhaustion than men.” and “In an experiment… a man who stayed late to help colleagues earned 14% higher ratings than a woman who did the same. When neither helped, the woman was rated 12% lower than the man.” This article shined a light on a lot of patterns and behaviours I’ve seen.
- I’ve just finished Daniel Pink’s book When, some of the ideas in that have helped me with the above overload issue, and also helped me to design my working week a little better.
-
Momentum > Urgency – Great story about how to make developers better at delivering. Reminded me of another of Daniel Pink’s books, Drive, which I also recently re-read.
-
“How to win friends and influence people” book review – pulls out some lessons from the book that might apply to us
-
CodeNode Relaunched by Trifork – London-based techies may be pleased to hear this, but I’m still very sad about the demise of Skillsmatter
-
The cumulative cost of additional wakefulness: dose-response effects on neurobehavioral functions and sleep physiology from chronic sleep restriction and total sleep deprivation – “chronic restriction of sleep to 6 h or less per night produced cognitive performance deficits equivalent to up to 2 nights of total sleep deprivation”. All parents already know this
-
Your Realistic Guide To Beating Burnout (Because A Vacation Isn’t The Answer) – ” ” – I’ve been trying this for only a couple of weeks (it’s particularly hard to separate from work when you work from home) and it has made a noticeable difference
-
Finding a creative hobby will make you a better software architect – write up of a conference talk
-
What Is Your Professional Love Language? – I recently found out about “Love Language” and it’s an interesting thing to understand in the context of work
-
Please Stop Calling them ‘Soft Skills’ – loved this idea of rephrasing to “behaviours” and “tools”
-
Quantum computers could be the ultimate defence against the next global financial crisis – mmmm, because faster computers don’t do stupid things quicker…
- Alexis Coe on Why It Matters When Women Write History – not an article about technology, but interesting all the same
-
Katherine Johnson Dies at 101; Mathematician Broke Barriers at NASA – note: I highly recommend reading Hidden Figures.
-
Pluto was discovered 90 years ago this week. Controversy about its identity rages on – speaking of space stuff
-
“The erasure of Williams’ work is also a reminder of the ways that women have been excised from the story of the history of science. ‘Even though they were in the shadows,’ Clark said, ‘[women] were contributing to this field.'”
And Finally
A chance to catch up on the other IntelliJ IDEA and JetBrains blog posts from this month.
IntelliJ IDEA 2020.1 (currently EAP) not only supports the new #Java14 Record syntax, but can generate new record classes for you to help you get started. Try it now! https://t.co/8wA4qcUwbt (download #Java 14: https://t.co/PIy1AVqOVS) #TheDriveToDevelop pic.twitter.com/dkSKNJmqKh
— IntelliJ IDEA (@intellijidea) February 25, 2020
- IntelliJ IDEA 2020.1 EAP6: Improvements for Spring WebFlux, HTTP Client, Swagger, Micronaut, and More. Download it now, or install it via the Toolbox app. I am really enjoying using Java 14 features in 2020.1.
- Contribute to the JetBrains Developer Ecosystem 2020 Survey! – it’s so useful for us to understand what you’re doing so we can help. You can win prizes.
- New video: Top 15 IntelliJ IDEA shortcuts. Also:
- New Blog Post: Top 15 IntelliJ IDEA Shortcuts
- .NET Annotated Monthly | March 2020 – .NET? Really? Yes really! My colleague Rachel Appel does a great job of the .NET newsletter. Like this one, there are things in there that apply to all developers.
We are hiring!! I’m looking for a Java/JVM Developer Advocate to join my team. I’m interested in talking to developers who are thinking of switching into an advocacy career, i.e. you don’t need to be an experienced speaker/blogger to apply.
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.