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



instanceof operator and Visitor pattern replacement in Java 8


I had a dream where instanceof operator and downcasting were no longer needed but without clumsiness and verbosity of visitor pattern. So I came up with the following DSL syntax:                 Object msg = //... whenTypeOf(msg). is(Date.class). then(date -> println(date.getTime())). is(String.class). then(str -> println(str.length())). is(Number.class). then(num -> println(num.intValue())). orElse(obj -> println("Unknown " + ...

Read More »

3 Styles of agile (part 2)


In my last entry I set out what I call “3 Styles of Agile – Iterative, Incremental and Evolutionary.” In this entry I’d like to discuss the model as a whole. Lest anyone start “my style is better than your style” I am at pains to point out that each style has merits. Regardless of whether any of us regards ...

Read More »

Getting started with annotation based Spring MVC web application


Here is a minimal way to get a Spring 3 MVC project started with Maven. First create spring-web-annotation/pom.xml file and include the Spring dependency:               <?xml version="1.0" encoding="UTF-8"?> <project xmlns="" xmlns:xsi="" xsi:schemaLocation=""> <modelVersion>4.0.0</modelVersion> <groupId>spring-web-annotation</groupId> <artifactId>spring-web-annotation</artifactId> <version>1.0-SNAPSHOT</version> <packaging>war</packaging> <dependencies> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>3.2.4.RELEASE</version> </dependency> </dependencies> </project> Now ...

Read More »

Java Auto-Unboxing Gotcha. Beware!


What do you think that the following code snippet will print?                     Object o = true ? new Integer(1) : new Double(2.0); System.out.println(o); Yes! It will print: 1.0 What? 1.0? But I have assigned an Integer to my o variable. Why does it print 1.0? It turns out that there is ...

Read More »

Android Augmented Reality: Introduction of Vuforia SDK


The Vuforia™ SDK allows you to build vision-based augmented reality applications. It is available for Android, iOS and as an Extension to Unity – a cross-platform game engine. High-level system overview           Multiple trackables (tracking types): Image Targets Multi-Targets Cylinder Targets Word Targets Frame Markers Real-world Interactions Virtual Buttons 1. Setup Vuforia SDK v2.6 I assume ...

Read More »

Too Many Parameters in Java Methods, Part 1: Custom Types


I consider lengthy parameters lists in constructors and methods to be another “red flag” in Java development that may not necessarily be “wrong” in terms of logic and functionality, but often hint at the high possibility of current or future errors. In a small series of posts, I look at some of the approaches that can be used to reduce ...

Read More »

Don’t let Somebody Else’s Technical Debt take you Under


There’s a lot written about technical debt: what technical debt is and the different kinds of technical debt, how to avoid taking on debt unnecessarily when designing and coding and changing code, how much technical debt is costing your organization, and why and how and how much and when to pay these debts off. But all of this ignores massive ...

Read More »

How to Network Less For Geeks


The fundamental importance of professional networking for today’s career-minded tech pro has been pounded into our heads for many years now.  ”It’s not what you know, it’s who you know” gets spouted by everyone who gets denied a job or interview, and there is certainly some truth in the saying.  The mere thought of hobnobbing and mingling with other technologists ...

Read More »

Creativity and our life as employees


I answered the following question on Quora: Creativity: Do creative people get bored at work more easily than non-creative people? Or do they just need a job that makes use of that creativity? Fast Company published the article 10 Paradoxical Traits Of Creative People . It is based on the work of Mihaly Csikszentmihalyi, professor of Management and Psychology at ...

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.