Tweet of the Day
Our followers, users and customers are shouting to the world. Here are:
- Breandan Considine who, thanks to jOOQ, has lost over ten pounds and can now write queries at the speed of thought! (He must have lost that weight because he forgot to eat while enjoying coding with jOOQ!)
- Chris Martin who cannot wait for jOOQ 3.3’s awesome new SEEK method!
In our last newsletter, we have promoted our cooperation with RedHat’s content marketing team regarding our Open Source vendor business model. In the mean time, we have published another article on their platform about the 5 lessons learned for any business transitioning to a revenue-based model with Open Source. We recommend this interesting read to anyone who plans to make money with Open Source:
Our cooperation with other Open Source projects is a crucial part of our marketing strategy. Our ASL 2.0 / commercial dual licensing model might prove to be a viable use-case also for other Open Source projects building on top of jOOQ. Examples of such projects that are currently investigating an integration are
Also in the future, we’ll make an effort to better integrate with such projects to help spread the good jOOQ news to the world.
It looks like great community-contributed work doesn’t stop appearing around jOOQ. We’ve worked together with Loiane Groner who has written this great tutorial about jOOQ in Portuguese. Loiane is consultant working for IBM and a well-known writer of books that mostly talk about Sencha Ext JS. She has also been promoting MyBatis in the past. We’re looking forward to more from her!
Ben Hood has been a long-term jOOQ aficionado who had been very active on the user group. He has taken inspiration from jOOQ to build his own DSL for Apache Cassandra, calling it CQLC, which is great news for the Cassandra community!Now, we’re looking forward to other APIs that cover MongoDB or Neo4j!
And just recently, Breandan Considine (who has lost ten pounds because of jOOQ) published great video tutorial for jOOQ, Gradle and IntelliJ IDEA users
In January, we have been visiting probably the largest JUG in Germany, theRheinJUG in Düsseldorf and also the JUGM in Munich. The German-speakers among you can watch the whole RheinJUG presentation. The audience was very very interactive and has left the talk with thousands of insights to continue discussing, as our talks inspire not only jOOQ business, but also SQL love!
Here is an overview of our upcoming events.
- March 20, 2014: JUGS Zürich (German, about SQL)
- April 4, 2014: JUG Saxony Day in Dresden (German, about jOOQ)
- April 7, 2014: VSUG in Vienna (English, about jOOQ in Scala!)
- May 14 – 16, 2014: Geecon in Kraków (English, about jOOQ)
With our new SQL-talk, we’ll no longer just spread some jOOQ love, but also some SQL love in general. We believe that SQL deserves more presence in today’s software engineering talks, and who would be better to talk about SQL than us? Are you interested in hosting this talk at your company? Contact us!
Stay informed about 2014 events on www.jooq.org/news.
In this section of the newsletter, we usually talk about SQL in the “SQL Zone”, but our other beloved technology is Java and exciting times are ahead in 2014 for us Java folks. This is why we have started a new series in our blog, the Java 8 Friday Goodies.
In this series, we talk about little everyday things that improve / impair / or just change with Java 8 when we code. Some examples:
If you haven’t already, sign up for the Java 8 Friday Goodies blog category!
A jOOQ Runtime Only Distribution
Several of our customers have made us aware of the fact that they don’t really need the jOOQ code generator, only the SQL builder / query DSL API and possibly the SQL execution functionality. In the next weeks, we’ll be working towards a new “jOOQ Runtime Only Distribution” that will ship at a lower price. Concretely, we’ll be giving those customers a 25% discount on the regular distributions for any of jOOQ Express, jOOQ Professional, and jOOQ Enterprise.
Obviously, we recommend to use jOOQ’s code generator to profit from the full feature scope that we offer.
We have updated our commercial license to improve your legal relationship with Data Geekery. Essentially, these things have been amended:
- Definitions: We have added the missing definition of what is a “Minor Defect”
- 6.2 Distribution Right: The distribution right section now grants you a perpetual license to distribute the software, instead of a timely limited one. This will allow you to continue to distribute, embed and use jOOQ in your End-user Application even if you terminate your Developer Workstation License Agreement with us. You will, however, still need to license jOOQ in order to maintain your End-user Application.
- 7.1.1 Remedial Services: The remedial services section now formally defines how Minor Defects are remedied
As this updated license grants new rights to our customers, it shall be in effect immediately also for existing jOOQ 3.2 customers.
We have recently presented jOOQ at the Java2Days conference in Sofia, Bulgaria as well as at the Java User Group Berlin-Brandenburg. Both talks have enjoyed a high attendance with lots of SQL developers challenging us with interesting questions. Of course, jOOQ responds to most questions already, as Manuel Bernhardt, another speaker has observed:
If you want us to talk about jOOQ or SQL near you, do not hesitate to contact us.
Here is an overview of other, upcoming events:
- December 18, 2013: JUGS in Berne (German)
- January 23, 2014: Rhein JUG in Düsseldorf (German)
- January 27, 2014: JUGM in Munich (German)
Stay informed about 2014 events on www.jooq.org/news. If you’re looking for the slides, they’re available for free under a CC BY-SA 3.0 license on SlideShare.
Using jOOQ with Hibernate
While jOOQ can be seen as a popular alternative to Hibernate, there is no stopping you from using both frameworks in the same application. While Hibernate heavily improves every day CRUD operations, jOOQ heavily improves writing SQL in Java. The two goals can be orthogonal and thus it may make perfect sense to combine the two.
Vlad Mihalcea, an enthusiastic jOOQ user, is writing up a series of blog posts on his blog about how to use jOOQ with Hibernate:
Gavin King himself chimed in on Google+ and confirmed once again that it was never his intention for Hibernate to be used for everything.
If you want to share your own experience of your jOOQ / Spring, jOOQ / Hibernate, jOOQ / Anything integration, let us know!
SQL Zone – “Lightning Fast SQL with Proper Indexing”
Understanding SQL and the history of SQL is of the essence when you want to get the best out of your relational database. This has recently been nicely explained by Markus Winand at the Oredev conference 2013. Luckily, his presentation has been recorded for free review.
More about the history of SQL can be seen in this interesting article about Codd’s Relational Vision – Has NoSQL Come Full Circle? It proves what we have been evangelising for a while, ourselves. NoSQL is not a new technology. It is more of a return to pre-Codd times when people did not have a powerful relational model to abstract their storage implementation away from their application. This article claims that Codd’s greatest achievement was the fact that he surpassed the deficiencies of early databases:
- Access dependencies
- Order dependencies
- Index dependencies
Read the full article for a very interesting historic insight into the relational model, and why NoSQL might not be a good answer for most general problems.
- 671,894 hits
- Let's hear it for emulating #SQLServer INSERT INTO (SELECT ...) statement via common table expressions in jOOQ 3.5! buff.ly/1wNAZLe 2 hours ago
- Great news! "String Deduplication – A new feature in Java 8 Update 20" by @CodingFabian from @codecentric buff.ly/1qi6OHn 3 hours ago
Get Back in Control of Your SQL
Top Posts & Pages
- Stop Trying to Emulate SQL OFFSET Pagination with Your In-House DB Framework!
- The 10 Most Popular DB Engines (SQL and NoSQL)
- SQL Trick: row_number() is to SELECT what dense_rank() is to SELECT DISTINCT
- Does Java 8 Still Need LINQ? Or is it Better than LINQ?
- 10 Subtle Best Practices when Coding Java
- 10 Common Mistakes Java Developers Make when Writing SQL
- Stop Unit Testing Database Code
- 10 More Common Mistakes Java Developers Make when Writing SQL
- Java 8 Friday Goodies: Map Enhancements
- Easy Mocking of Your Database
- PL/SQL backtraces for debugging August 29, 2014
- Integrating jOOQ with PostgreSQL: Partitioning August 26, 2014
- All You Ever Need to Know About Recursive SQL August 18, 2014
- jOOQ Newsletter: August 15, 2014 – jOOQ 3.5 Outlook August 15, 2014
- A Wonderful SQL Feature: Quantified Comparison Predicates (ANY, ALL) August 14, 2014
- The Difference Between ROW_NUMBER(), RANK(), and DENSE_RANK() August 12, 2014
- The “Free”, “Standard”, “Open” Software Heresy August 11, 2014
- SQL Tip of the Day: Be Wary of SELECT COUNT(*) August 8, 2014
- Join the No OFFSET Movement! August 6, 2014
- Are You Using SQL PIVOT Yet? You Should! August 5, 2014