Are annotations bad?

I eased off into this topic with my principles on my post about Spring XML vs. Annotations that other day. This easy inlet was also my way of not complicating things too much for my team who is currently involved in writing this new app that will probably have a production life-span for 3-5 years (if we do it right ...

Read More »

From Imperative to Pure-Functional and Back Again: Monads vs. Scoped Continuations

This post accompanies this video and won’t make too much sense without it Last month I gave a talk at the Curry On conference, a new conference co-located with the academic, programming language conference, ECOOP. Curry On is intended to bridge the gap between academia. My academic interests do not include programming languages, which I view as the sub-discipline of computer ...

Read More »

Installing PostgreSQL PL/Java as a PostgreSQL Extension

In 2011 I wrote a series of articles on PostgreSQL PL/Java. The basic information is still solid but there is a now a much easier way to install PL/Java from source. This also eliminates the need to depend on third parties to create packages. These notes will be fairly brief since I assume my readers are already familiar with git ...

Read More »

Easy validation in Scala using Scalaz, Readers and ValidationNel

I’m working on a new book for Packt which shows how you can use various Scala frameworks to create REST services. For this book I’m looking at the following list of frameworks: Finch, Unfiltered, Scalatra, Spray and Akka-HTTP (reactive streams). While writing the chapters on Finch and Unfiltered I really liked the way these two frameworks handled validation. They both ...

Read More »

Making Thread Dumps Intelligent

Long back I had learnt about something called Log MDC, and I was a big fan of it. I was suddenly able to make sense of anything that happens in log files and pin-point to a specific log entry and find what’s right or wrong with it especially when it was about debugging a bug in production. In 2013 I was ...

Read More »

Hibernate: use join table alias on sqlRestriction

When using hibernate in case of complex queries there is the need to use sql. Therefore sqlRestrictions come to the rescue. However using sql restrictions on join table alias is a bit tricky. There would be three tables: The company table. The employee table. Each employee belongs to one company therefore we have a many to one relationship. The benefit ...

Read More »

Interface over-segregation

Programmers easily spot bloated interfaces, and usually carry with them an assortment of, “Knives and stabbing weapons,” for just such encounters. A previous post presented an interface-efficiency equation and demonstrated an algorithm – fueled by this equation – to guide this butchery. A trickier problem to spot, however, is when the members of a family of interfaces have been cut ...

Read More »

Mysql versions prior to 5.7 do not fully support two phase commit

While doing some tests for the recently released generic JCA adapter which is capable of binding remote calls to microservices (as well as other things) into JTA transactions, I discovered a bug in Mysql 5.6 which has been around for nearly ten years. The test scenario was a crash after the “prepare” phase of the XA transaction, after both the ...

Read More »