At the very beginning of last year, I decided to track my reading habits and share the best stuff here, on Baeldung. Haven't missed a review since.
Here we go…
1. Spring and Java
>> Writing Unit Tests With Spock Framework: Introduction to Specifications, Part Three [petrikainulainen.net]
This article continues to explore testing with Spock, this time with a close look at specifications.
>> Parallel execution of blocking tasks with RxJava and Completable [solidsoft.wordpress.com]
RxJava is definitely a powerful tool and quite a nice API. Here's a practical writeup showing some real-world scenarios of how to use it.
>> Oracle's OpenJDK Cleanup of “Unsafe” Implementation [infoq.com]
A short update on what's happening with Unsafe in Java 9.
>> How to Support Java 6, 8, 9 in a Single API [jooq.org]
Very interesting approach to supporting multiple Java versions in a public API. If you're building or maintaining a public API – definitely worth checking out.
And, as a side-note – if you're into marketing – this is a nice piece of being smart about the way you produce content that supports your product.
>> How to combine the Hibernate assigned generator with a sequence or an identity column [vladmihalcea.com]
The identity of an entity is a lot more complex than just slapping an @Id on and call it a day.
Also worth reading:
>> Checking HashMaps with MapClashInspector [javaspecialists.eu]
>> jcmd: One JDK Command-Line Tool to Rule Them All [marxsoftware.com]
>> jClarity Releases Censum 3.0 [infoq.com]
>> Converting projection results of full-text queries into POJOs [in.relation.to]
>> Lessons to Learn: Fundamental of Hibernate Core implementation [crunchify.com]
Webinars and presentations:
>> Isomorphic Templating with Spring Boot, Nashorn and React [infoq.com]
>> Spring Boot Authentication… and More! [spring.io]
>> Creating a PageRank Analytics Platform Using Spring Boot Microservices [spring.io]
>> Spring Integration Java DSL [spring.io]
>> Cloud Native Dataflow Orchestration [spring.io]
>> Spring Framework – the ultimate configuration battle [spring.io]
>> Spring MVC 4.2, New and Noteworthy [spring.io]
>> What It Means to be Just In Time [infoq.com]
>> Two New Screencasts: Parsing Date and Time Information From a Request Parameter [petrikainulainen.net]
>> Webinar: Spring Security Authentication… with Spring Boot and More! [spring.io]
Time to upgrade:
>> Spring Boot 1.3.3 and 1.4.0.M1 available now [spring.io]
>> Spring Security 4.0.4 Released [spring.io]
>> Spring Tool Suite 3.7.3 released [spring.io]
>> Spring IO Platform 2.0.3.RELEASE [spring.io]
>> Apache Wicket 7.2.0 Released [infoq.com]
>> Hibernate Search 5.6.0.Alpha2 introduces Elasticsearch integration [in.relation.to]
2. Technical
>> Sensible mutation testing: don’t go on a killing spree [codecentric.de]
Mutation testing makes the bogus metric that is code coverage slightly less bogus. It looks easy enough to set up, so I'll definitely give this one a try.
>> How Not To Write Golden Master Tests [thecodewhisperer.com]
Like always, a solid deep-dive into the intricacies of getting to a well tested, easy to change system.
>> How to Detect and Analyze DDoS Attacks Using Log Analysis [loggly.com]
An interesting and certainly helpful look at how DDoS attacks work, how targets are usually picked and what you can do about it.
Hint – good logging can help see the pattern early. Reacting to it – well, that's not as easy as just knowing it's happening.
>> Should we use a coding standard? [devblog.avdi.org]
I've been in my fair share of coding standard discussions (let's call them “discussions”) where I was trying to convince someone of something. It's never fun and almost always unproductive – so I tend to approach this problem different now (hint – I'm a lot more flexible than in my early days).
This writeup goes over some of that process and makes some really good points you can pick up and use when your team is pulling the trigger on a coding standard.
Also worth reading:
>> Control Groups (cgroups) for the Web? [igvita.com]
3. Musings
>> The Majestic Monolith [m.signalvnoise.com]
Monoliths have a bad rap. It's really important to understand though where monolith makes more sense and what kind of system really does need a microservice architecture.
That early decision has the clear potential of saving you many months of extra development work to get to where you need to be.
>> Prerequisites for Effective Code Review [daedtech.com]
Attempts of reviewing code are legion. Positive, useful code review cultures geared towards learning are few and far between.
And that's definitely because the practice does require a few things to be in place in order to work well – not the least of which is some level of emotional maturity.
>> My next bet: VR is going to take off in the next 3 years… [lemire.me] and
>> Lost my bet: the PC isn’t dead… yet [lemire.me]
A couple of fun reads about how fast the general tech industry is moving forward.
>> How to Deploy Software [zachholman.com]
This isn't a post, it's a small book 🙂
It's also an intelligent, clearly written writeup on what it takes to put your work out there and do it well.
Well worth reading if only to get rid of “deployment stress” (real medical condition) and 10x your chill factor when going to production.
>> InfrastructureAsCode [martinfowler.com]
A well known practice in the DevOps world, and hopefully outside of it as well.
I'm expecting this article to keep growing like the previous series here, following the super interesting Evolving Publication concept.
Also worth reading:
>> Selling Your Boss On That Shiny New Tool [daedtech.com]
4. Comics
And my favorite Dilberts of the week: