Do you want to know how to develop your skillset to become a Java Rockstar?

Subscribe to our newsletter to start Rocking right now!

To get you started we give you our best selling eBooks for FREE!


1. JPA Mini Book

2. JVM Troubleshooting Guide

3. JUnit Tutorial for Unit Testing

4. Java Annotations Tutorial

5. Java Interview Questions


and many more ....



How to Implement Sort Indirection in SQL


I’ve recently stumbled upon this interesting Stack Overflow question, where the user essentially wanted to ensure that resulting records are delivered in a well-defined order. They wrote             SELECT name FROM product WHERE name IN ('CE367FAACDHCANPH-151556', 'CE367FAACEX9ANPH-153877', 'NI564FAACJSFANPH-162605', 'GE526OTACCD3ANPH-149839') They got CE367FAACDHCANPH-151556 CE367FAACEX9ANPH-153877 GE526OTACCD3ANPH-149839 NI564FAACJSFANPH-162605 They wanted CE367FAACDHCANPH-151556 CE367FAACEX9ANPH-153877 NI564FAACJSFANPH-162605 GE526OTACCD3ANPH-149839 Very often, according to ...

Read More »

Continuous Integration with JBoss Fuse, Jenkins and Nexus


Recently I was putting together a quickstart Maven project to show a possible approach to the organization of a JBoss Fuse project. The project is available on Github here: And it’s an slight evolution of what I have learnt working with my friend James Rawlings The project proposes a way to organize your codebase in a Maven Multimodule project. ...

Read More »

Guide to publish an aar to maven using gradle


In this post, I’d like to describe the steps necessary to publish an aar to maven repository. There are other guides that cover this topic and some of the information written here are derived from them, but in this guide I want to describe the process step by step, without covering in detail the gradle aspects but focusing on creating ...

Read More »

The Journey From JEE to SPA


While pulling down an existing Backbone.js project that I was helping with, I felt confident enough with JavaScript that I figured I could start cranking out JavaScript fairly quickly. What could have changed since I rolled my own AJAX framework in the mid-2000s? Sure, there have been some changes to the Ecma specification, but JavaScript is still JavaScript, right? I’m ...

Read More »

Spring MVC and Thymeleaf: how to acess data from templates


In a typical Spring MVC application, @Controller classes are responsible for preparing a model map with data and selecting a view to be rendered. This model map allows for the complete abstraction of the view technology and, in the case of Thymeleaf, it is transformed into a Thymeleaf VariablesMap object that makes all the defined variables available to expressions executed ...

Read More »

Three-State Booleans in Java


Every now and then, I miss SQL’s three-valued BOOLEAN semantics in Java. In SQL, we have: TRUE FALSE UNKNOWN (also known as NULL) Every now and then, I find myself in a situation where I wish I could also express this UNKNOWN or UNINITIALISED semantics in Java, when plain true and false aren’t enough.   Implementing a ResultSetIterator For instance, ...

Read More »

Agile tools do NOT make you Agile


 Ask yourself the following questions: Do great golf clubs make you a great golfer? Does a formula one race make you an expert driver? Do great development tools make you an expert developer?     Unless you are delusional, you know that the answer is NO to all these questions.  An expert’s performance can be dramatically improved with the right ...

Read More »

Common Java Myths


These are questions which are likely to be too advanced to ask in any interview as they may just put candidates off.  Never the less, they may be work practising in your own time.                 Myth 1) System.exit(0) prevents finally being called Why does this code System.setSecurityManager(new SecurityManager() { @Override public void checkExit(int ...

Read More »

Simple Binary Encoding


Financial systems communicate by sending and receiving vast numbers of messages in many different formats. When people use terms like “vast” I normally think, “ many?” So lets quantify “vast” for the finance industry. Market data feeds from financial exchanges typically can be emitting tens or hundreds of thousands of message per second, and aggregate feeds like OPRA can peek ...

Read More »
Want to take your Java Skills to the next level?
Grab our programming books for FREE!
  • Save time by leveraging our field-tested solutions to common problems.
  • The books cover a wide range of topics, from JPA and JUnit, to JMeter and Android.
  • Each book comes as a standalone guide (with source code provided), so that you use it as reference.
Last Step ...

Where should we send the free eBooks?

Good Work!
To download the books, please verify your email address by following the instructions found on the email we just sent you.