Past week I got questioned again about Jaeger — an end to end distributed tracing. That question come from my workmates that they’re in doubt whether the Jaeger can be single point of failure. Though this post will not answer that case explicitly, but it will give a new perspective about how Jaeger should be properly deployed in production (both for me and for you — the readers).

First time when I get my hand dirty with the so called things as “distributed tracing”, I always use Jaeger all-in-one docker image which just works. At that time I don’t think that it would be hard for DevOps or SRE to give the resilient environment of Jaeger for the developer so that developer can focus on their code and help them to trace the request’s flow. …


Well, you may heard a lot about “distributed system” or “distributed database” itself. But, you may wonder how to create it or the internal behind it. In this post, I will try to explain how to create one of it using Raft consensus. This post more discussed about how to code and test the Raft cluster rather than discussing the internal Raft.

What is Raft Consensus?

When it comes to distributed system, we need a consensus to agree on some values. Since servers are located in different place it is hard to maintain the agreement. Imagine that you and your workmates want to make a discussion to solve a problem. When you all are in same meeting room, you can just wave your hand when you have an idea. …


I’ve been more than 3 years in programming and building many applications from simple website to an API that needs to scale. Whether it hobby project or work related job, since choosing title “back-end developer” as the first career, I’m aware that building a good back-end is not easy as what I’ve imagine. One challenges that comes into my work is how could I well-knowing about the system that I face every day?

Have you think that you are deeply known of your software that you’ve created like you think that it’s the part of yours? Until it came into moment when your software scream at you at the night, waking you up and you didn’t know what it exactly doing. …


Image for post
Image for post
Go and Apache Kafka official logo

This is my experience in these past two weeks while I get my hand dirty in Apache Kafka. Even I was introduced with Kafka by my CTO several months ago, but I still have some problems about how to produce and consume a data to Kafka and just have a spare time to take a look at it again. The harder part that I’ve encountered was when I try to setup Kafka cluster running using docker. While there are some open-source docker images out there, but they just give an example to running Kafka in single node.

In this post I will tell you briefly about what is Kafka, how to setup it using Docker, and create simple program which produce and consume message from Kafka. …


I have tried coding in JavaScript using different standard, start from ES5 to ES6. My impression was gained when I tried some simple code using ES6. Why? Because in ES6 I can declare class, even I know that when it translated to ES5 it just a variable which return a function.

For example:

class MyClass {

greeting(name) {
return "Hello " + name;
}

}

Which later will be translated to ES5 as below:

"use strict";function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }var MyClass = function () {
function MyClass() {
_classCallCheck(this, MyClass)…


This is my first post in medium since I registered one year ago. I write this because I’m triggered by my friend’s post at my Facebook news feed. He wrote some tutorial about Data Science, and another one wrote about Deep Learning. But that’s not only my reason. Another reason is I must learn to write English in correct grammar (so please correct my grammar if I’m write some mistake) and I must push myself to do it. (And if you are still asking another “why” question, then this post doesn’t answer all of your “kepo” behavior).

The Doraemon’s opening song translation in Bahasa Indonesia said that “Aku ingin begini, aku ingin begitu. Ingin ini, ingin itu, banyak sekali. (I wanna be like this, I wanna be like that. Wanna this, wanna that, so much thing that I want).” Yeah you know, sometimes beginner always hopes to see the result as fast as they starts learning. …

About

Yusuf Syaifudin

Yogyakarta — Indonesia

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