If you wanted to contribute to Apache Kafka, but, didn’t know where to begin, then, you have come to the right place.

In this two-part series, I will guide you through this process (based on my learnings in the process of contributing to Apache Kafka).

Part 1 (current post) —…


In this post, we are going to look at some key differences between Apache Kafka and Traditional message brokers (e.g JMS, ActiveMQ).

1. Design

Apache Kafka : client-centric, with the client taking over many of the functions of a traditional broker, such as fair distribution of related messages to consumers, in return…


Logs are not the only way we monitor our systems, but they play an important role, both for troubleshooting purposes and to check the general health of an application.

One of the problems we had was the readability of logs. When you know what you’re looking for in a log…


Boggle is a word game played using a plastic grid of lettered dice, in which players attempt to find words in sequences of adjacent letters (aka find all possible words in a board of characters).

Essentially, when the game starts you get a matrix of letters like so:

F X…


Quick question .. which of these log statements is more useful in debugging an issue?

0 [main] INFO MyApp - Entering application.

OR

0 [main] INFO MyApp com.LoggerTest.main(LoggerTest.java:10) - Entering application.

Of course, 2nd log statement is more useful, because, it provides caller information i.e. …

Manasvi Gupta

Java, Scala, Apache Kafka, Distributed Systems

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store