Lots of weekend reading for this week.
Let’s jump right in…
1. Spring and Java
>> Java 9 Enters First Bug Fixing Round [infoq.com]
Java 9 vs Bugs – the first round 🙂
>> Compilation of Java code on the fly [frankel.ch]
A short example showing how to compile Java code at runtime (yes, you read that right).
>> Surprising += Cast [javaspecialists.eu]
Exploring edge cases of casting in Java.
>> Hibernate Tips: How to map an Enum to a database column [thoughts-on-java.org]
A short write-up about a not-so-trivial problem of mapping enums to database columns using Hibernate.
>> Chronicle Queue storing 1 TB in virtual memory on a 128 GB machine [vanilla-java.github.io]
Chronicle Queue utilizes heap space economically 🙂
>> Why Elvis Should Not Visit Java [codefx.org]
As long as Java’s type system doesn’t distinguish between nullable and non-nullable types, the Elvis operator isn’t a good fit for Java.
>> How to automatically validate entities with Hibernate Validator [thoughts-on-java.org]
A short guide to the highly important Hibernate Validator.
>> Tool Time: Preventing leaky APIs with jQAssistant [in.relation.to]
You can now perform some interesting static analysis of your APIs.
>> Surprising += Cast [javaspecialists.eu]
Exploring edge cases of casting in Java.
>> Java Community Oscars – The Top 10 Posts of 2016 [takipi.com]
It turns out Java developers host their own Oscars too 🙂
Also worth reading:
>> WebSockets With Angular2 and Spring Boot [mmrath.com]
>> 60k eBills per Hour, Tiny WARs — Or Java EE 7 In Mass Billing and Public Services Market in Slovenia [adambien]
>> A tool for Spring MockMvcRequestBuilder to post form objects easily [florianlopes.io]
>> Netflix Introduces Hollow, a Java Library for Processing In-Memory Datasets [infoq.com]
>> Spring Team at Devoxx US 2017 [spring.io]
>> Automating Administrative Tasks with iText and DocuSign [antoniogoncalves.org]
>> Using CDI/Weld to Inject JPA/Hibernate Entity Managers [sitepoint.com]
Webinars and presentations:
>> Instant Security and Scalable User Management in Spring Boot [infoq.com]
>> Spring Tips: Couchbase [spring.io]
>> Spring Data Hazelcast: Fluently Accessing Distributed Repositories [infoq.com]
>> Reactive Streams, j.u.concurrent, & beyond! [infoq.com]
>> Streaming Live Data and the Hadoop Ecosystem [infoq.com]
>> I Can’t Believe It’s Not a Queue: Using Kafka with Spring [infoq.com]
>> IoT in the Cloud: Build & Unleash the Value in Your Renewable Energy System [infoq.com]
>> Migrating from Spring XD to Spring Data Cloud Flow [spring.io]
>> Launching Java EE Thin WARs In The Clouds [adambien]
>> Spring Tips: Spring Batch [spring.io]
Time to upgrade:
>> Spring Boot 1.5.1 released [spring.io]
>> Spring Boot 1.4.4 Available Now [spring.io]
>> Spring Framework 4.3.6 available now [spring.io]
>> Spring Integration 4.3.7 is Available [spring.io]
>> Spring Data Release Train Hopper SR7 Released [spring.io]
>> Spring Data Release Train Ingalls Goes GA [spring.io]
>> Hibernate Search with Elasticsearch – the 5.6.0.Final release is here! [in.relation.to]
>> Spring Cloud Dalston M1 Released [spring.io]
>> IntelliJ IDEA 2016.3.4 Update is Out [jetbrains.com]
2. Technical
>> Building Event-driven Microservices Using CQRS and Serverless [kennybastani.com]
A rich introduction to building event-driven microservices and CQRS.
>> Revealing Interfaces [michaelfeathers.silvrback.com]
A short trick that might help you clean up your codebase.
Also worth reading:
>> A beginner’s guide to the Phantom Read anomaly, and how it differs between 2PL and MVCC [vladmihalcea.com]
>> Set up your own Continuous Delivery stack [pragmaticintegrator.com]
>> Messaging Patterns for Event-Driven Microservices [pivotal.io]
>> How to Deploy Kubernetes to Bare-metal With CoreOS and Nginx Ingress Controller [stytex.de]
>> Messaging Patterns for Event-Driven Microservices [content.pivotal.io]
>> Git Questions – How to get started with a GitHub project [jetbrains.com]
>> Peter Bourgon on Gossip, Paxos, Microservices in Go, and CRDTs at SoundCloud [infoq.com]
3. Musings
>> Deep learning: the silver bullet? [lemire.me]
Thoughts about the future of deep learning.
>> Measure Your Code to Get Back on Track [daedtech.com]
What isn’t measured, doesn’t improve. Definitely measure the quality of your code/work as the first step towards improving it.
>> Trust automation [ontestautomation.com]
How to establish trust with your test automation 🙂
>> Processing billions of events/day [plumbr.eu]
An in-depth case study of going from a monolith to scalable Kafka-backed microservices.
Also worth reading:
>> Valuing Behaviors that Indicate Organizational Mediocrity [daedtech.com]
4. Comics
And my favorite Dilberts of the week: