Demystifying Replication and Sharding in MongoDB

Making a MongoDB cluster “Production Ready” by performing database Replication and Sharding (horizontal fragmentation) What is Replication? Replication is the method of duplication of data across multiple servers. For example, we have an application and it reads and writes data to a database and says this server A has a name and balance which will be copied/replicate to two other servers in two different locations. By doing this, will get redundancy and increases data availability with multiple copies of data on different database servers....

April 14, 2024 · 5 min · 999 words · Aryaman Gupta

Breaking Boundaries

Python faces challenges in fully exploiting the growing capabilities of modern hardware. As hardware continues to advance with more CPU cores, faster processors, and abundant memory, Python’s inherent design and execution model can often fall short in taking full advantage of these resources. Its single-threaded nature and certain architectural choices can result in suboptimal performance in scenarios where parallelism and hardware acceleration are vital. This limitation prompts developers to seek alternative solutions, such as integrating Python with external libraries, languages, or technologies, to overcome these hardware-related constraints....

December 17, 2023 · 18 min · 3771 words · Aryaman Gupta

Asynchronous Programming in Python

Sync vs Async What is synchronous programming? Synchronous programming is a programming paradigm in which operations are executed sequentially, one after the other. In this model, each operation waits for the previous one to complete before moving on to the next step. This sequential execution can lead to ‘blocking’ operations, where certain tasks may take a significant amount of time to finish. These blocking operations can pause the entire program’s execution, forcing it to wait until the time-consuming task is done before it can proceed....

September 21, 2023 · 8 min · 1603 words · Aryaman Gupta

Finding Success in a Dynamic Environment

Lessons learned from my internship at a government firm Introduction Embarking on an internship journey within a corporate government firm can be exciting and challenging. I was amazed by the valuable lessons and experiences that awaited me as I delved into this professional realm. In this article, I will share the key insights I gained during my internship, from the importance of collaboration to the significance of clean code practices. Join me as we uncover the secrets to thriving in this dynamic and rewarding environment....

July 25, 2023 · 3 min · 618 words · Aryaman Gupta

Decorators in Python

What on earth are decorators??? Decorators are essentially single reusable functions that take a “function” as input and return a modified version of it. Decorators are just a bit different from regular functions because they wrap the “input function” to extend its functionality without modifying it. What does wrapping mean? 1 2 3 4 5 6 import time start_time = time.time() **call your function** #calling your function end_time = time.time() print("Time Taken = ", end_time-start_time) Here you can see that your function call is being “wrapped” between lines of code....

May 31, 2023 · 6 min · 1096 words · Aryaman Gupta