Our recent article "NULL is Not The Billion Dollar Mistake. A Counter-Rant" got us a lot of reads, controversial comments, and a 50/50 upvote / downvote ratio pretty much everywhere a blog post can be posted and voted on. This was expected. Objectively, NULL is just a "special" value that has been implemented in a … Continue reading Divided we Stand: Optional
A short while ago, I gave this answer on Quora. The question was "What is the significance of NULL in SQL?" and most of the existing answers went on about citing C.J. Date or Tony Hoare and unanimously declared NULL as "evil". So, everyone rants about NULL all the time. Let me counter-rant. Academics Of … Continue reading NULL is Not The Billion Dollar Mistake. A Counter-Rant
At Data Geekery, we love Java. And as we're really into jOOQ's fluent API and query DSL, we're absolutely thrilled about what Java 8 will bring to our ecosystem. Java 8 Friday Every Friday, we're showing you a couple of nice new tutorial-style Java 8 features, which take advantage of lambda expressions, extension methods, and … Continue reading Java 8 Friday: Optional Will Remain an Option in Java
To NULL or not to NULL? Programming language designers inevitably have to decide whether they support NULLs or not. And they've proven to have a hard time getting this right. NULL is not intuitive in any language, because NULL is an axiom of that language, not a rule that can be derived from lower-level axioms. … Continue reading What if every object was an array? No more NullPointerExceptions!
I had recently discovered the JDK 8's addition of the Optional type. The Optional type is a way to avoid NullPointerException, as API consumers that get Optional return values from methods are "forced" to perform "presence" checks in order to consume their actual return value. More details can be seen in the Javadoc. A very … Continue reading On Java 8’s introduction of Optional