Blog

A Dummies’ Intro to Bioinformatics

The word Bioinformatics is making quite a turnaround in today’s world of Science. The word seems to be made up of two parts which are related to two different fields, biology and computer science. About one or two decades ago, people saw biology and computer science as two entirely different fields. One would learn about living beings and their functions whereas the other would learn about computers and underlying theories.

Continue reading A Dummies’ Intro to Bioinformatics

The Pizza Problem – Concurrent Programming

A group of students are studying for an exam. The students can study only while eating pizza. Each student executes the following loop:

while (true) {
    pick up a slice of pizza;
    study while eating the pizza;
}

Continue reading The Pizza Problem – Concurrent Programming

Android 7.0 on Galaxy S6 Edge – Three things I love about Nougat

Nougat began rolling out to Nexus devices and the Pixel C on 23rd of August 2016. Since then I was so excited about the new Android 7.0 update. Though Samsung has already introduced the all new Galaxy S8, still there

Continue reading Android 7.0 on Galaxy S6 Edge – Three things I love about Nougat

Kitchen Hunt: Recipe Search with Ingredients in your Kitchen

At present, cooking has become very popular all over the world. There are many foods made worldwide which are associated to different cultures, traditions and countries. Day by day, many new recipes and dishes emerge as

Continue reading Kitchen Hunt: Recipe Search with Ingredients in your Kitchen

Porter Stemming Algorithm – Basic Intro

In linguistics (study of language and its structure), a stem is part of a word, that is common to all of its inflected variants.

  • CONNECT
  • CONNECTED
  • CONNECTION
  • CONNECTING

Above words are inflected variants of CONNECT. Hence, CONNECT is a stem. To this stem we can add different suffixes to form different words.

Continue reading Porter Stemming Algorithm – Basic Intro

Amortized Analysis – A basic introduction

What is Amortized Analysis?

In amortized analysis, we average the time needed to perform a sequence of data structure operations. By this method, we can show that the average cost of an operation is small, even if we have a single operation within the sequence which might be expensive. Amortized analysis guarantees the average performance of each operation in the worst case.

Continue reading Amortized Analysis – A basic introduction

Outer Space Databases — Is it possible?

Have you ever imagined how it will be to have databases on different planets? How long will it take for queries to process and return results among databases on different planets? I was just wondering and thought to let my imagination carry on the rest. It is true that the only planet humans have set foot on, other than Earth is the Moon, which is Earth’s only permanent natural satellite. So as a start, I thought of setting up an imaginary data center on Moon to communicate with a data center on Earth and do a bit of math…

Continue reading Outer Space Databases — Is it possible?

B Trees – All you need to know about deleting keys

B tree is a self-balancing search tree (the tree adjusts itself so that all the leaves are at the same depth) and contains multiple nodes which keep data in sorted order. Each node has 2 or more children, known as the branching factor and consists of multiple keys.

Continue reading B Trees – All you need to know about deleting keys