Imagine you are working on master branch and had to create a new feature branch for a user story you need to work on. This is so simple, you’ll have to just run the below command:

git checkout -b <new-feature-branch>

This will create and switch to the branch at the same time along with your working changes. This is tracked by Git. It has to be aware of the commit or the snapshot at which a new branch is created to do a merge. This becomes the base/ancestor when doing a three-way merge, which we will discuss in a while…


You might have heard about caching. We have several types of caching database caching, CDN caching, DNS caching etc.. However, web caching or HTTP caching which occurs at application level is what we are going to discuss in this article. I am going to cover key terms and definitions in this article and their actual implementations, use cases, advantages and disadvantages in the upcoming articles.

Photo by Troy Oldham on Unsplash

Caching, in general is a mechanism to prevent fetching the same resource, if unchanged again and again costing data and affecting performance. …


Formal definitions and some examples

If you’re a programmer, coding algorithms might be your daily thing. Algorithms have endless applications. Hence, knowing how to determine the efficiency of an algorithm is important for to be a better programmer.

In this article, I am going to introduce some terms related to calculation of time complexities, their mathematical definitions and few examples on how to calculate the time complexities of looping algorithms.

Photo by Ales Krivec on Unsplash

Let us look at some definitions. Although, the definitions are not intuitive, I recommend one to remember these as they will make sense once you practice and look at many examples.

Worst Case — Defines…


In this article, I am going to discuss the subtle differences, but varied implementations and use cases of the operators mergeMap, SwitchMap, and ConcatMap.

If you are hearing these operators for the first time, I suggest you to follow the below learning path:
Start with concat, merge, combineLatest
Then, proceed to concatAll, combineAll, SwitchAll
and finally look at concatMap, mergeMap, SwitchMap

MergeMap —

  • Takes a function as input which returns an observable for each emission from the source observable. This observable is termed as the inner observable.
  • Contrast to the rest of the operators (switchMap, concatMap, and exhaustMap), mergeMap maintains as many…

It’s been a while since I started to play with and explore RxJS library. I must say, although the learning is little steep and took some time to wrap my head around the new terms(observables, subscriptions…), it’s worth it.

In particular, the combination operators seemed to be difficult for me to understand initially. I will share some key points here, which might help one to get a clear idea on how to make sense of these operators.

I am going to share the references that I have followed at the end of this article.

All the operators I’m going to…


Very simple. you must try if you’re beginning to learn React

Working on a project not only helps you to get familiar with a particular programming language, or library or a framework, but makes it easy for one to visualize and think better about the workflow of an application.

Gaining knowledge always feels good. But, applying what you’ve learnt helps you to assimilate the concepts and gives you the excitement to do more projects.

Okay. Enough wisdom. Let’s dive into building.

  1. Think about the layout Don’t spend too much time on this. You can just have a glance at the desktop calculator app and design a layout similar to it. I…

Did you come across a situation where you have to convert a string literal in a particular numeral system to an integer or a number in decimal system, and vice-versa. In this article, I would go through the use of parseInt() and toString() methods in JavaScript to achieve these transformations, and some interesting cases and exceptions.

Let’s start with parseInt — parseInt takes a string literal as its first argument and the second argument(radix) tells what number system the string literal is in (8 -octal, 16- hexadecimal,2-binary…). — It always returns an integer or NaN depending on the validity of…


Let’s dive into few HTTP response security headers. We shall look into what’s their significance and what values they can be set to and their meaning.

X-Frame-Options Header:

This tells the browser whether the page on which the header is set can be embedded in an i-frame, frame, embed or object tags of the same site or another sites.

It takes three values:

  1. Deny — Tells the browser to prevent the page being embedded in any site.
  2. sameorigin — Tells the browser to display the page in an i-frame only if the site serving it is same as the one displaying it.


Recently, I have come across IIFE’s in a library that used plain JavaScript in module pattern. They are used extensively in most of the JavaScript files that composed the library. I initially did not understand the reason why to have the constructor functions, many variables, and object definitions wrapped in a function expression(parentheses), until I was explained the most significant reason behind doing that by my colleague.

I assume that one is aware of how an IIFE (Immediately Invoked Function Expression) is formed and what it looks like. Nevertheless, I would state a simple example to get started.

(function ()…


‘this’ in JavaScript has considerable significance and it’s worth knowing what it does for a JS developer to understand and harness its use cases.

What is ‘this’?

As MDN states,

The JavaScript context object in which the current code is executing.

Now here, context is something to understand. It is an abstract concept and different topic altogether. Think of it as something ( or an environment) the JavaScript interpreter refers to ( may be for variables ), when executing the code. There are mainly, two contexts in JavaScript, one is Global context and the other one is Function context.

Koteswar Rao

Full stack developer, autodidact, tech savvy. Interested in problem solving, reading tech stuff, sharing, and peer learning.

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