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


Classic Mistakes in Software Development and Maintenance


…the only difference between experienced and inexperienced developers is that the experienced ones realize when they’re making mistakes. Jeff Atwood, Escaping from Gilligan’s Island An important part of risk management, and responsible management at all, is making sure that you aren’t doing anything obviously stupid. Steve McConnell’s list of Classic Mistakes is a place to start: a list of common ...

Read More »

Significant Software Development Developments of 2012


I have written before (2007, 2008, 2009, 2010, 2011) on my biased perspective of the most significant developments in software development for that year. This post is the 2012 version with all my biases and skewed perspectives freely admitted.                   10. Groovy 2.0 Groovy 2.0 have been an important version for Groovy. ...

Read More »

Couchbase 101: Create views (MapReduce) from your Java application


When you are developing a new applications with Couchbase 2.0, you sometimes need to create view dynamically from your code. For example you may need this when you are installing your application, writing some test, or you can also use that when you are building frameworks, and wants to dynamically create views to query data. This post shows how to ...

Read More »

Super Fast Tomcat Installation using FTP and Version Control


When talking about Continuous Delivery one of the tests that both Martin Fowler and Jez Humble often mention is their ‘flame thrower’ test. It goes something like this: Jez will say ‘How long would it take you to get up and running if Martin and I went into your machine rooms armed with flame throwers and axes and started attacking ...

Read More »

Software Transactional Memory (STM)


The Actor Model is based on the premise of small independent processes working in isolation and where the state can be updated only via message passing. The actors hold the state within themselves, but the asynchronous message passing means there is no guarantee that a stable view of the state can be provided to the calling components. For transactional systems ...

Read More »

Executing a Command Line Executable From Java


In this post we’ll deal with a common need for Java developers. Execute and manage an external process from within Java. Since this task is quite common we set out to find a Java library to help us accomplish it.                   The requirements from such a library are: Execute the process asynchronously. ...

Read More »

Apache Apollo REST API


Apache Apollo is a next-generation, high-performance, multi-protocol messaging broker built from the ground up to one day be a drop-in replacement of ActiveMQ 5.x. I have blogged about it in the past (Part I has already been published with part II on its way). Apollo’s non-blocking, asynchronous architecture allows it to be super fast and scale very well on multi-core ...

Read More »

Json deserialization with Jackson and Super type tokens


Datatables is a jquery plugin to present tabular information – it can enhance a simple table or can use a AJAX based data and present the information in a tabular form. Datatables requires the data from the server to follow a specific JSON format for it to be displayed on screen. Consider the case where a list of Member entities ...

Read More »

TDD and the Transformation Priority Premise


Last time, we looked at the Red/Green/Refactor phases of Test-Driven Development (TDD). This time we’ll take a detailed look at the transformations applied in the Green phase.                 The Transformation Priority Premise Most of you will have heard of the refactorings we apply in the last TDD phase, but there are corresponding standardized ...

Read More »

Java Deadlock Example – How to analyze deadlock situation


Deadlock is a programming situation where two or more threads are blocked forever, this situation arises with at least two threads and two or more resources. Here I have written a simple program that will cause deadlock scenario and then we will see how to analyze it.               Java Deadlock Example package com.journaldev.threads; public ...

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.