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

 

 

Publish Subscribe model in Kafka

java-interview-questions-answers

This is the fourth post in the series about integrating sync clients with async systems (1, 2, 3). Here we’ll try to understand how Kafka works in order to correctly leverage its publish-subscribe implementation. Kafka concepts According to the official documentation: Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with ...

Read More »

On the Virtues of Avoiding Parsing or Basing Logic on toString() Result

java-logo

With Java or any other programming language I’ve used significantly, I have found that there are occasionally things that can be done in the language, but generally should not be done. Often, these misuses of the language seem harmless and perhaps beneficial when a developer first uses them, but later that same developer or another developer runs into associated issues ...

Read More »

Learning Lucene

apache-lucene-logo

I am currently working with a team starting a new project based on Lucene. While most of the time I would argue on using either Solr or Elasticsearch instead of plain Lucene it was a conscious decision. In this post I am compiling some sources for learning Lucene – I hope you will find them helpful or you can hint ...

Read More »

Most difficult programming languages

software-development-2-logo

What are the most difficult programming languages to learn? Most people would have written some code in programming languages such as Java, C, C++ etc. Going back a bit further into the past, many would have programmed in Pascal, Fortran, COBOL etc. While starting out on the learning curve, most of these languages might have posed enough challenges and caused you to pull ...

Read More »

Data Aggregation Spring Data MongoDB: Nested results

mongodb-logo

1 Introduction In a previous post, we built a basic example of an aggregation pipeline. Maybe you want to take a look at Data aggregation with Spring Data MongoDB and Spring Boot if you need more detail about how to create the project and configure the application. In this post, we will focus on learning a use case where it makes ...

Read More »

How to update a Jenkins job posting config.xml

jenkins-logo

Recently I wanted to update a few jobs (not defined with a DSL) in Cloudbees, adding to each of them a few properties. Well, I had some trouble making it work, here are my notes (I used Jenkins 1.651.2.1 but chances are it should work with older and more recent versions, such as jenkins 2) No security  / no auth ...

Read More »

Bowling Kata in Clojure, F# and Scala

clojure-logo

In one of our evening apprenticeship meetings, a pair was doing the Bowling Kata in Java. After reviewing their code, I thought that it would be a good idea to do it myself. Every craftsman at Codurance is a polyglot developer and, although we have very similar values, we all have our own preferences when it comes to programming languages ...

Read More »

Simple Asynchronous Microservices using Lambda Architecture

software-development-2-logo

Lambda Architecture is a simple, powerful, though limited example of a Microservice. As it is so simple, you want to use it as much as possible, to expose the more complex services/component in your system which cannot support this interaction model. Lambda Architecture depends on a data model with an append-only, immutable data source that serves as a system of ...

Read More »

Want to take your Java skills to the next level?

Grab our programming books for FREE!

Here are some of the eBooks you will get:

  • Spring Interview QnA
  • Multithreading & Concurrency QnA
  • JPA Minibook
  • JVM Troubleshooting Guide
  • Advanced Java
  • Java Interview QnA
  • Java Design Patterns