Java Web Weekly, Issue 180
Lots of interesting writeups on Java 9 this week.
Here we go…
1. Spring and Java
===== >> Immutable Collections in Java 9 [javaspecialists.eu]
Java 9 will feature a new way of defining truly immutable collections – this is a quick intro to creating them and doing some basic operations.
>> How to shoot yourself in the foot building a Java Agent [plumbr.eu]
Building a reliable, production-ready Java agent is tricky – here are a few things to definitely be aware of.
>> The best way to use entity inheritance with JPA and Hibernate [vladmihalcea.com]
Entity inheritance is a complex topic, so it’s important to pick the right strategy from the start when it comes to the structure of your DB.
Also worth reading:
-
===== [.t-bg-white .l-pa2 .l-d-i]#https://www.sitepoint.com/using-java-bean-validation-method-parameters-return-values/[>> Using Java Bean Validation for Method Parameters and Return Values] #[sitepoint.com]
-
===== >> jhsdb: A New Tool for JDK 9 [marxsoftware.blogspot.com]
-
===== >> Testing Exceptions With JUnit 5 [blog.codeleak.pl]
-
===== >> Java EE 8 – May recap [oracle.com]
Webinars and presentations:
-
===== >> Why We Chose Erlang over Java, Scala, Go, C [infoq.com]
Time to upgrade:
-
===== >> Triple Hibernate Search release [in.relation.to]
-
===== >> Spring Web Flow 2.4.5 released [spring.io]
-
===== >> Dependency Management Plugin 1.0.3.RELEASE [spring.io]
2. Technical
===== >> How (Not) to Control Your CDN [mnot.net]
Applying caching in the context of CDNs isn’t quite straightforward, and it’s easy to unintentionally cache resources that really shouldn’t be. All of that to say – there’s a better way to handle this scenario.
>> The HDFS Juggernaut [shodan.io]
Ransomware attacks on public instances still seem to affect MongoDB instances and HDFS deployments.
>> What’s Your Decomposition Strategy? [builttoadapt.io]
When you decide to adopt a Microservices Architecture or simply decide to your system into smaller pieces – it’s good to have a clear strategy of exactly how you’re going to go about this task of decomposition.
Also worth reading:
-
===== >> Microservices Patterns With Envoy Proxy, Part III: Distributed Tracing [blog.christianposta.com]
-
===== >> IntelliJ IDEA 2017.2 EAP: Better Code Completion and VCS Support [jetbrains.com]
-
===== >> How to Find Redundant Indexes in SQL [jooq.org]
3. Musings
===== >> “Architect” Should Be a Role, Not a Position [techblog.bozho.net]
It’s reasonable to apply Agile principles and think in terms of roles and not permanent positions – various experiences will lead to better decisions.
>> It depends [frankel.ch]
Instead of going with the traditional “it depends”, it makes a lot of sense to ask good questions and squeeze as much information as possible and get the whole context – before giving a meaningful answer.
>> How to Freelance: The Low-Risk Path from Software Developer [daedtech.com]
If you start introducing side-kick projects gradually, you will, earlier than expected, end up in a situation when the day job is the one that’s holding you back.
>> Hacker, Hack Thyself [codinghorror.com]
Trying to hack your own system can be an endless source of security improvements.
>> Lessons learned while training [ontestautomation.com]
Training work has its own set of challenges – very interesting to have a look if you’re in that space or thinking about it.
>> Characteristics of Good APIs [daedtech.com]
Carefully crafted, self-discoverable and intuitive APIs are always a pleasure to work with.
And, in my experience, that can make the difference between a successful product and a product problem.
Also worth reading:
-
===== >> No politics please, we’re hackers, too busy to improve the world [jacquesmattheij.com]
-
===== >> The vicious circle of bad test code and how to break it [codecentric.de]
-
===== >> Diversity in Technology and Open Source [lucumr.pocoo.org]
4. Comics
>> Management potential [dilbert.com]
>> That feels like an insult [dilbert.com]
>> Not funny [dilbert.com]
5. Pick of the Week
===== >> Trickle-down workaholism in startups [m.signalvnoise.com]