Thou Shalt Not Name Thy Method “Equals”

(unless you really override Object.equals(), of course). I've stumbled upon a rather curious Stack Overflow question by user Frank: Why does Java's Area#equals method not override Object#equals? Interestingly, there is a Area.equals(Area) method which really takes an Area argument, instead of a Object argument as declared in Object.equals(). This leads to rather nasty behaviour, as … Continue reading Thou Shalt Not Name Thy Method “Equals”

jOOQ Tuesdays: Raoul-Gabriel Urma Explores What Java 8 and English have in Common

Welcome to the jOOQ Tuesdays series. In this series, we’ll publish an article on the third Tuesday every other month where we interview someone we find exciting in our industry from a jOOQ perspective. This includes people who work with SQL, Java, Open Source, and a variety of other related topics. We have the pleasure … Continue reading jOOQ Tuesdays: Raoul-Gabriel Urma Explores What Java 8 and English have in Common

10 SQL Articles Everyone Must Read

We've been blogging about Java and SQL for a while now, on the jOOQ blog. Over the years, while researching interesting blog topics, we've discovered a lot of SQL gems in the blogosphere that have inspired our work and our passion for SQL. Today, we're presenting to you a list of 10 articles that we … Continue reading 10 SQL Articles Everyone Must Read

Top 10 Easy Performance Optimisations in Java

There has been a lot of hype about the buzzword "web scale", and people are going through lengths of reorganising their application architecture to get their systems to "scale". But what is scaling, and how can we make sure that we can scale? Different aspects of scaling The hype mentioned above is mostly about scaling … Continue reading Top 10 Easy Performance Optimisations in Java

Still Using Windows 3.1? So why stick to SQL-92?

We've been blogging a lot about the merits of modern SQL on the jOOQ blog. Specifically, window functions are one of the most fascinating features. But there are many many others. Markus Winand, author of the popular book SQL Performance Explained has recently given a very well-researched talk about modern SQL. We particularly like his … Continue reading Still Using Windows 3.1? So why stick to SQL-92?

Top 5 Use-Cases For Nested Types

There has been an interesting discussion on reddit, the other day Static Inner Classes. When is it too much? First, let's review a little bit of basic historic Java knowledge. Java-the-language offers four levels of nesting classes, and by "Java-the-language", I mean that these constructs are mere "syntax sugar". They don't exist in the JVM, … Continue reading Top 5 Use-Cases For Nested Types

You Will Regret Applying Overloading with Lambdas!

Writing good APIs is hard. Extremely hard. You have to think of an incredible amount of things if you want your users to love your API. You have to find the right balance between: Usefulness Usability Backward compatibility Forward compatibility We've blogged about this topic before, in our article: How to Design a Good, Regular … Continue reading You Will Regret Applying Overloading with Lambdas!

How to Translate SQL GROUP BY and Aggregations to Java 8

I couldn't resist. I have read this question by Hugo Prudente on Stack Overflow. And I knew there had to be a better way than what the JDK has to offer. The question reads: I'm looking for a lambda to refine the data already retrieved. I have a raw resultset, if the user do not … Continue reading How to Translate SQL GROUP BY and Aggregations to Java 8

jOOQ Newsletter: January 21, 2015 – Groovy and Open Source – jOOQ and the strong Swiss Franc

Subscribe to this newsletter here Tweet of the Day Today, we're very happy to have "spied" on our users as we can now show you a whole Tweet Conversation of the Day It was initiated by Dan Woods who proposed a talk about RxJava, jOOQ and Reactive Streams at GR8Conf. https://twitter.com/danveloper/status/553370842948567040 Dan Woods then proposed … Continue reading jOOQ Newsletter: January 21, 2015 – Groovy and Open Source – jOOQ and the strong Swiss Franc

Open Source Doesn’t Need More Support. It Needs Better Business Models

Jamie Allen, Typesafe's Director of Global Services published an interesting point of view on Twitter: https://twitter.com/jamie_allen/status/557400131541020673 And he's right of course. We are constantly reminded of the fact that we should support FOSS projects on which we depend. Just recently, Wikipedia had this huge banner on top of it, asking for money, and we probably … Continue reading Open Source Doesn’t Need More Support. It Needs Better Business Models