Why the hell do we need Avro schemas?

Before we start to talk about the awesomeness of using Avro in your future application let's first look into why we need schemas in Kafka and what problems it solves.

One of the major issues is that Kafka takes in bytes as input and publishes them, in this Kafka has no clue of what the data is and does not perform any kind of data verification to it.

So from a Kafka perspective, a producer sends in bytes of information, it does not know if the data is a string or boolean and quite frankly it doesn't care! …

How containers find each other ❤️

In this article we're gonna learn and play with DNS and how it affects containers in custom networks and default networks. We're gonna go over how important is it that we have awesome DNS because we can't rely on damn IP address inside containers since things as super dynamic. Yay!

We'll also check out the badass — link option for container run for enabling DNS on the default bridge network.


The one thing that is crucial to all these containers is naming because in a world of containers often launching, disappearing, moving, expanding and all the sweet sweet wonderfulness of…

This is part one, so we're gonna look into docker network on a high level and understand some of the basics of how networks work in docker containers.

When you first start a docker container by providing the port option -p, you specify to which port the host machine needs to map to the port that is exposed from the docker container.

docker container run -p 80:80 — name webhost -d nginx

The docker container run command

The docker run command creates a container from a given image.

The above command will initially check if the Nginx image is available locally if not it will…

Developing applications with couch Db has never been easier with couchdb-query-helper

What the hell is couch Db?

CouchDB is one of what many are calling NoSQL solutions. Specifically, CouchDB is a document-oriented database and within each document, fields are stored as key-value maps. Fields can be either a simple key/value pair, list, or map.

Creating a simple node application using couchdb-query-helper

Before we start off to create a new application, make sure that you have CouchDB and Node Js installed and running in your system.

Installing CouchDB on Ubuntu 16.04

Start by adding the CouchDB GPG key to your system using the following command:

curl -L https://couchdb.apache.org/repo/bintray-pubkey.asc | sudo apt-key add -echo "deb https://apache.bintray.com/couchdb-deb bionic main" |…

The fundamentals of how you can export as well as import javascript functions and variables, to make your code more modular

There are two ways in which you can export from a javascript file, the default way and the named way.

Export and Import in the default way

Consider this simple javascript code where you export an object using the default way.


const posts = {data: 'This is a sample data'}export default post;

Notice the default keyword that is used here. In order to use this object in other javascript code, we will need to import this file in the file ( app.js

Diving deep into how the nightmare of asynchronous code in Javascript works!

Synchronous vs Asynchronous

Before making comparisons and judging both like we always tend to do. Let's just get a basic understanding of how things work among them and then throw in our judgment of them.


We wait in silence when the forsaken javascript code that we wrote tends to take its time to execute in sequence. Okay, enough of this, Let's get real here.

I was not sure how synchronous code in javascript would work when I started to learn javascript. …

Default Parameters

We had to use these kinds of statements to declare default values.

var link = function (height, color, url) { 
var height = height || 50
var color = color || ‘red’
var url = url || ‘http://azat.co'
… }

But now with ES2016, we can declare default values on the arguments of the function

var link = function(height = 50, color = 'red', url = 'http://azat.co') {   

Template Literals

Template literals or interpolation in other languages is a way to output variables in the string. Before ES2016 we had something like this

var name = 'Your name is '…


Web Developer | Procaffinator ☕ | A newbie dev and a little brown dude trying to make it big !

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