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

 

ActiveMQ – Network of Brokers Explained – Part 2

apache-activemq-logo

In this blog we will see how duplex network connectors work. In the previous part 1 we created a network connector from broker-1 and broker-2. We were able to see how messages for queue “foo.bar” on broker-1 were forwarded queue “foo.bar” on broker-2 when there was a consumer on broker-2 for queue “foo.bar” Let’s try doing the reverse by producing messages into broker-2’s queue ...

Read More »

Structural contingency (part one)

software-development-2-logo

Order, in mathematics, matters. Take two functions, f and g, and compose them, thus applying them to an argument as either f(g(x)) or g(f(x)). In general, it cannot be assumed that f(g(x)) = g(f(x)). If f(x) = 2x and g(x) = x 2, for example, then f(g(3)) = 18 but g(f(3)) = 36. The order in which the functions apply ...

Read More »

Three Reasons Why We Should Not Use Inheritance In Our Tests

software-development-2-logo

When we write automated tests (either unit or integration tests) for our application, we should notice pretty soon that Many test cases use the same configuration which creates duplicate code. Building objects used in our tests creates duplicates code. Writing assertions creates duplicate code. The first thing that comes to mind is to eliminate the duplicate code. As we know, ...

Read More »

Introduction to Backbone.js

javascript-logo

Introduction The web application development process has been evolving over the years. In the beginning web applications were just static HTML pages, which required programmers to change the code in order to change the content. Later, in web 2.0, server side programming languages were added to generate HTML pages dynamically based on user input and data stored in database. Web ...

Read More »

Managers and Individual Contributors in Code

software-development-2-logo

I’m lucky to work for a company that makes it possible to have a good technical career, so that I don’t have to become a manager just to get more money. I like being an individual contributor because it gives me a sense of accomplishment when I get stuff done myself.   Anyway, I believe the distinction between manager and ...

Read More »

Design Your Agile Project, Part 4

agile-logo

If you are thinking of agile as part of a program, each team has to have its own approach to agile. Why? Because each team has its own risks and problems. You don’t need to standardize agile for anyone. If you treat people as if they are adults and explain the principles that you want (working software all the time ...

Read More »

The anatomy of Connection Pooling

software-development-2-logo

Introduction All projects I’ve been working on have used database connection pooling and that’s for very good reasons. Sometimes we might forget why we are employing one design pattern or a particular technology, so it’s worth stepping back and reason on it. Every technology or technological decision has both upsides and downsides, and if you can’t see any drawback you ...

Read More »

Reporting Metrics to Apache Kafka and Monitoring with Consumers

software-development-2-logo

Apache Kafka has been used for some time now by organizations to consume not only all of the data within its infrastructure from an application perspective but also the server statistics of the running applications and infrastructure.  Apache Kafka is great for this. Coda Hale’s metrics’s has become a leading way to instrument your JVM applications capturing what the application is doing ...

Read More »

Groovy 2.3 introduces traits

groovy-logo

A few days ago the second beta of Groovy 2.3 got released. One of the major new Groovy 2.3 features are traits. A trait is a reusable set of methods and fields that can be added to one or more classes. A class can be composed out of multiple traits without using multiple inheritance (and therefore avoiding the diamond problem). ...

Read More »

Handy New Map Default Methods in JDK 8

java-logo

The Map interface provides some handy new methods in JDK 8. Because the Map methods I cover in this post are implemented as default methods, all existing implementations of the Map interface enjoy the default behaviors defined in the default methods without any new code. The JDK 8 introduced Map methods covered in this post are getOrDefault(Object, V), putIfAbsent(K, V), ...

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.