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 ....


Building Distributed Workflow Applications on Amazon with Camel


Pipeline with SNS-SQS A workflow consist of independent tasks performed in particular sequence determined by dynamic conditions. Very often a workflow represents a business process, for example the order processing steps in a ecommerce store. Amazon Web Services offer various tools for building distributed and scalable workflow applications. One approach for building such an application is to use topics and ...

Read More »

Throughput and latency: performance tuning made simple


Many of our previous topics have measured the behaviour of certain systems in terms of either latency or throughput. As it can be confusing to understand what either of the term actually stands for, I decided to write a post explaining the terms in performance optimization standpoint. Let us start with an example to illustrate the concepts. As we are ...

Read More »

Node.js Non-Blocking IO Model


Now-a-days developers know about Node.js as a server -side javascript execution platform. According to,- “Node.js is a platform built on Chrome’s JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.” Now node.js opens a new way of performing ...

Read More »

Anatomy of a Java Decompiler


A decompiler, simply put, attempts to reverse the transformation of source code to object code. But there are many interesting complexities—Java source code is structured; bytecode certainly isn’t. Moreover, the transformation isn’t one-to-one: two different Java programs may yield identical bytecode. We need to apply heuristics in order to get a reasonable approximation of the original source. (A Tiny) Bytecode ...

Read More »

Listening and Logging Ant Output in Groovy


In the comments section of my post Executing Ant Build File Targets from Groovy, CRC recently asked, “I’ve used your script and it seems to work but I could’t see any output at the console (I’m calling a echo task in build.xml), why?” This is a great question and one that I feel is better answered in a post than ...

Read More »

Hibernate Facts: Always check Criteria API SQL queries


Criteria API is very useful for dynamically building queries, but that’s the only use case where I’d use it. Whenever you have an UI with N filters that may arrive in any M combinations, it makes sense to have an API to construct queries dynamically, since concatenating strings is always a path I’m running away from. The question is, are ...

Read More »

Why I stopped using Spring


My post on DZone about Humble Architects sparked somewhat of a controversy, especially around my disparaing comments regarding Spring and Dependency Injection Frameworks. In this post, I expand on my I stopped using Spring. I was one of the earliest adopter of Spring in Norway. We developed a large system where we eventually had to start thinking about things like ...

Read More »

11 areas an Agile Project Manager needs to focus on


In my previous posts I focused on the Attitudes of a Great Software Developer and the Attitudes of a Great Software Tester. An Agile project’s success also depends a lot on the Agile Project Manager. The decisions he takes and the emphasis he provides on certain areas will pave the way for a successful Agile Project. In this post, I ...

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.