-
Core Java
Interface Evolution With Default Methods – Part II: Interfaces
Default methods were introduced to enable interface evolution. If backwards compatibility is sacrosanct, this is limited to adding new methods…
Read More » -
Enterprise Java
On Servlets and Async Servlets
The Servlet API, part of the Java EE standard, has long been (since 1998, when the 2.1 specification was officially…
Read More » -
Software Development
It’s the Little Things: The PL/SQL NULL Statement, and why Every Language Should have One
Syntax is one of those topics. One of those emotional topics that lead to very very very important discussions. I…
Read More » -
Scala
Scala Snippet: Object, Companion Object and Static Methods
If you are a Java developer moving to Scala, one notable difference in terminology that can cause confusion is the…
Read More » -
Software Development
Meta-cycles in technology choices
I’ve been working on my keynote for QCon Beijing and looking at technology trends and choices since the 1950s. One…
Read More » -
Enterprise Java
Farewell to Asynchronous Code
Quasar is a library that adds true lightweight threads (fibers) to the JVM. These are very cheap and very fast…
Read More » -
Enterprise Java
Scalable, Robust – and Standard – Java Web Services with Fibers
This blog post discusses benchmarking web service performance under load. To learn more about the theory of web service performance,…
Read More » -
Groovy
Grails 3 Released: Installing Gradle and Groovy 2.4 Support in Eclipse/GGTS
Grails 3 has been released with a ton of new features. If you’re used to adding a new Grails distribution…
Read More » -
Software Development
Microservice Design Patterns
The main characteristics of a microservices-based application are defined in Microservices, Monoliths, and NoOps. They are functional decomposition or domain-driven design, well-defined…
Read More »