Lots of interesting writeups on Java 9 this week.
Here we go…
1. Spring and Java
>> Spring Framework 5.0 M5 Update [spring.io]
Very interesting functionality in the latest Spring 5 pre-release.
>> A use-case for local class declaration [frankel.ch]
From the engineering point of view, there are some nice use cases for defining classes locally but those should be used with caution because they might violate PoLA.
The 2nd part of the series on testing strategies for microservices architectures done in Spring Boot.
>> How to encrypt and decrypt data with Hibernate [vladmihalcea.com]
A short and to-the-point write-up on how to do data encryption with Hibernate.
>> LRU Cache From LinkedHashMap [javaspecialists.eu]
LinkedHashMap can be used for building lightweight LRU caches.
Should you build your own cache? Definitely not, but it’s a fantastic learning tool.
>> Testing RxJava2 [infoq.com]
Testing RxJava is easier than it seems when using dedicated solutions like TestSubscriber, TestScheduler or RxJavaPlugins.
The Awaitility library might come in handy too.
>> Profile-based optimization techniques in the JVM [advancedweb.hu]
A new installment from a deep dive series into optimization techniques for the JVM.
Very interesting article about potential ideas for decreasing the GC’s overhead.
Also worth reading:
>> Java EE 8 – February recap [oracle.com]
>> PHP-Style JSON Parsing in Java with Jsoniter [sitepoint.com]
>> How to use Facets to categorize your FullTextQuery results [thoughts-on-java.org]
>> Zen and the Art of Unit Testing [marcin-chwedczuk.github.io]
>> Using UAA OAuth2 authorization server – client and resource [java-allandsundry.com]
Webinars and presentations:
>> JBoss Community Asylum – Validating Beans 2.0 [in.relation.to]
Time to upgrade:
>> Spring Framework 5.0 M5 released [spring.io]
>> Spring Framework 4.3.7 released [spring.io]
>> Kotlin 1.1 Released [jetbrains.com]
>> How does MVCC (Multi-Version Concurrency Control) work [vladmihalcea.com]
A short overview of the MVCC technique – applied of course to database systems, but potentially to other types of systems as well.
>> Secrets of Maintainable Codebases [daedtech.com]
Everyone is talking about developing clean and maintainable databases but what does it actually mean?
>> Necessary Comments [cleancoder.com]
>> Excited about a ‘2.0’ tech stack for microservices [christianposta.com]
A few thoughts about a new generation of tools for building microservices.
>> Tech jobs are already largely automated [lemire.me]
Very interesting points regarding the reality of our industry and how software is impacting the overall job market.
>> What’s in a Name? Spelling Matters in Code [daedtech.com]
In the age of advanced IDEs, there is no justification for having grammar errors or typos in your codebase.
>> First steps as a test automation coach [ontestautomation.com]
Thoughts about starting to coach teams towards – in this case, towards better testing.
Also worth reading:
>> The state of our industry [insaneprogramming.be]
>> Back-to-Basic Weekend Reading: Byzantine Generals [allthingsdistributed.com]
>> Time for Quality [code-cop.org]
>> Small Diffs and Code Reviews [mattblodgett.com]
And my favorite Dilberts of the week:
>> Are you sure my data is correct? [dilbert.com]
>> Giving 110% [dilbert.com]
>> How to look busy [dilbert.com]
5. Pick of the Week
A really good episode on the important topic of doing deep work: