1. Spring and Java
>> Going reactive with Spring Data [spring.io]
The reactive support in Spring Data looks very interesting and actually idiomatic. It may also be a nice, high level way to get intro the new programming model.
>> The Java Ecosystem’s Obsession with NonNull Annotations [jooq.org]
An opinionated piece from Lukas about the misuse of @NotNull annotations in standard Java code.
>> Structuring data with Logstash [frankel.ch]
Logging can no longer be just an afterthought. As we break our systems apart into multiple deployable units, if we don't dial in logging, we simply won't be able to know what's going on.
This writeup covers some interesting aspects of working with Spring Cloud Sleuth and the ELK stack.
>> Reactor By Example [infoq.com]
A closer look at the core dependency that's going to power the Spring 5 reactive implementation? Cool beans.
>> Is Standard Java Logging Dead? Log4j vs Log4j2 vs Logback vs java.util.logging [takipi.com]
Looking at hundreds of thousands of repositories always produces very interesting data.
And logging data is no exception – some very interesting numbers here, such as the fact that 80% of projects are using SLF4J.
>> Should you create or generate your table model? [thoughts-on-java.org]
Creating and managing your projects DB structure is never straightforward.
This writeup discusses the available approaches, especially at the beginning of the project, and the advantages of each.
Also worth reading:
>> Spring Batch Tutorial: Writing Information to a Database With JDBC [petrikainulainen.net]
>> Groovy, an Open Source Success Story [sitepoint.com]
>> How to map calculated properties with Hibernate @Generated annotation [vladmihalcea.com]
>> Improved logging of WebApplicationExceptions with RESTEasy [medium.com]
>> Understanding Dependency Injection – Part 3 Contexts [knitelius.com]
>> HTTP Status Code Test Service: statustest [adambien.blog]
>> Using Kafka with Junit [java-allandsundry.com]
>> More compact mock creation syntax in Spock 1.1 [solidsoft.com]
>> Meet Christian Beikov and Blaze Persistence [in.relation.to]
Webinars and presentations:
>> No Outage Database Development with Spring Boot and Liquibase [infoq.com]
>> High Performance Microservices with Ratpack and Spring Boot [infoq.com]
>> Developing a Geospatial Webservice with Kotlin and Spring Boot [infoq.com]
>> Machine Learning Exposed! [infoq.com]
>> gRPC 101 for Spring Developers [infoq.com]
>> Spring Boot @ PayPal [infoq.com]
>> SpringOne Platform 2016 Replay: Building applications with Angular JS and Spring Security [spring.io]
>> SpringOne Platform 2016 Replay: Intro to Spring Boot [spring.io]
>> Reactor 3.0, a JVM Foundation for Java 8 and Reactive Streams [infoq.com]
>> Operating a High Velocity Large Organization with Spring Cloud Microservices [infoq.com]
Time to upgrade:
>> Hibernate ORM 5.1.3.Final [in.relation.to]
>> Spring Cloud Data Flow 1.1 GA released [spring.io]
>> Fifth bug-fix release for ORM 5.2 [in.relation.to]
>> Hibernate Search 5.6.0.Beta4 and 5.7.0.Beta1 are out! [in.relation.to]
>> Spring Cloud Brixton.SR7 and Spring Cloud Camden.SR3 Are Available [spring.io]
>> Spring AMQP 2.0 Milestone 1 Available [spring.io]
>> AssertJ Core 3.6.1 bugfix release [joel-costigliola.github.io]
2. Technical
>> Message Diagrams [alexecollins.com]
An interesting new diagram style that's able to replace (or maybe upgrade) the venerable sequence diagram.
>> Avoid these Things When Logging from Your Application [daedtech.com]
Like testing, logging is a deceptively difficult thing to master. The technical aspects are dead simple, but HOW to log isn't really the point, but what to log.
This writeup is a good oportunity to revisit assumptions and think about what you're logging in your own system.
>> Amazon Lex – Build Conversational Voice & Text Interfaces [aws.amazon.com]
Building blocks to process voice and language? What's not to like?
Also worth reading:
>> New T2.Xlarge and T2.2Xlarge Instances, Next Generation (R4) Memory-Optimized EC2 Instances and EC2 Instance Type Update – T2, R4, F1, Elastic GPUs, I3, C5 [aws.amazon.com]
3. Musings
>> Brief lessons on handling huge traffic spikes [troyhunt.com]
12K visitors on the site? It takes a special kind of system to be able to quickly scale up to handle that kind of load.
>> What does good test automation training look like? [ontestautomation.com]
Developing a curriculum and delivering that training in an engaging way that's actually able to move students forward is not an easy nut to crack.
And of course, training is a topic that I'm particularly interested in (given my own training material here on Baeldung), so this piece was particularly interesting to me.
Also worth reading:
>> Have I been pwned and spam lists of personal information [troyhunt.com]
>> Rethinking Equivalence Class Partitioning, Part 1 [satisfice.com]
>> Things Programmers Say [henrikwarne.com]
4. Comics
And my favorite Dilberts of the week:
>> I'll show myself out … [dilbert.com]
>> Suckering the rest of us into hiring idiots [dilbert.com]
>> We lost all of our data [dilbert.com]
5. Pick of the Week
One of my favorite podcasts out there (non-technical, but well worth listening to):