Relational Database Management System is working under main properties. Those properties abbreviated term is called as ACID. Before or after a transactions happen in a database, these 4 properties will be followed to maintain the integrity of a database management system.

Atomicity: A transaction must be atomic. Transaction should happen or not. It can not be at a middle state. If a transaction became failure while happening no changes would have happen to database. It will be at the previous state where that transaction happened before. In Atommicity 2 operations are involved.

Photo by Shahadat Rahman on Unsplash

I started learning Python a year back and implemented some simple scripts to automate some manual tasks.


So, while implementing all theses I have gone through the keywords like Module, Package and Library. I was bit confused why there are different names used and browsed over the Internet to clear my doubt.

At then end, I cleared and able to manage with some of my colleagues and juniors regarding what these words really meant. …

In the last article we explored about Abstract Factory Pattern.

In this article we are going to learn about a new Decorator Pattern which is belongs to Structural Design Pattern. The Decorator Pattern allows users to add new functionalities to an existing object without making any changes to previously written classes/code structure. This pattern act as a wrapper to the existing class/classes.

According to Open-closed principle classes should be open for extension, but closed for modification. The main thing we need to consider when writing code is to allow classes to be easily extended to incorporate new behavior without modifying…

The Abstract Factory is called a factory of factories. In the previous article, we have seen the Simple Factory and Factory Method patterns. This patter too comes under the Creational Pattern category. This provides one of the best ways to create an object.

Abstract Factory relies on object composition. Object creation is implemented in methods exposed in the Factory interface.

Intent of the Abstract Factory Pattern is to create families of related objects without having to depend on their concrete class.

Let's take an example of a scenario to implement this pattern in real-word.

I want to implement a system for the Cloth showroom where Men and Women wares sold. To get particular…

In the last article, we have seen about Singleton Factory which belongs to Creational Patterns (Creational Patterns are mainly focused on creating Objects). Today, we are going to have a look at another type of Creational Pattern called Factory Pattern.

The word itself illustrates its functionalities.

What is Factory?

A place where things are created/produced. In factories things are created/produces according to the requirements/orders. Similarly, in the Software development Factory Pattern is implemented to create and execute objects according to the parameters passed.

The Factory Method Pattern encapsulates to object creation by letting sub-classes to decide what objects to create at run-time (while…

In our day-to-day coding occurrences, we may have come across some implementations where a class needs to be instantiated only once and no need to instantiate again and again.

Photo by Luca Bravo on Unsplash

Some example instances are as follows

For these kinds of instances if we allowed instantiating objects many times we may have to run out of resources or may get into some troubles like incorrect program behavior. …

Have you ever wondered how big applications or software are working? Imagine while you are playing video games you may have seen some occurrences where changes occur concurrently like meter measurements or the moving objects in the display. These won’t happen at the same time. Each action is executed under a Thread. But those thread execution changes within milliseconds, to our naked eye we can’t observer what’s happening

Photo by Olliss on Unsplash

An application can have multiple processes, the process can have multiple threads.

To know about Threads we need to know about Process.

Refer the following Wikipedia Definition for Thread and Process


I have been coding from 2017, related to web-development and automating boring stuff with Python. While coming across some cool stuff in Software Engineering I got to know about “Design Patterns”.

Photo by Markus Spiske on Unsplash

I saved that in my learning list last year. But I was not able to catch those patterns principle and how they are working, finally, in the academics syllabus, a module in Object-Oriented Programming contained Design Pattern. So, I give a shot and tried to learn those things.

These are some of the coolest things I learned in my learning period. So, I wanted to share it with you…

Have you ever seen a file with the extensions .yml | .yaml? If yes, You may have opened it to explore what it is and what will it do? If no. No worries lets take a look at that what it is?

What is YAML?

YAML Ain’t Markup Language (YAML)

YAML is a human friendly data serialization standard for all programming languages. Yes, it can work with most of the programming languages without any hastle. — Wikipedia

Courtesy: Wikipedia

Have you used XML and JSON? Have you ever tried these two? Let’s compare these 3 at a glance.

Deadlock is a condition where each process holding a resource and waiting to acquire a resource held by another process.

According to the illustration,

Resource 1 is allocated to Process1 and Resource 2 is allocated to Process 2. At the same time, Process 1 is waiting for Resource 2 which was assigned to Process 2 still. So, Process 1 will be in the waiting state to release Resource 2 by Process 1. Similarly, Process 2 is waiting for Resource 1 which was already assigned to Process 1. So, Process 2 will be in the waiting state.

A process in the…

Parathan Thiyagalingam

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