• Angular - Coding - Frontend - Web Development

    Two-Way Data Binding in Angular: Its Pros and Cons

    Two-way data binding is one of the most distinctive features of Angular but what does it entail, and what are the benefits and drawbacks associated with it? Let’s dive into it. When you hear “two-way data binding”, picture a bridge with traffic flowing in both directions. In an Angular application, this means that any changes to the model are instantly reflected in the view and vice versa. This can be a game-changer as it reduces the amount of boilerplate code developers have to write to maintain synchronization between the UI and data. For instance, consider a simple example where we…

  • Frontend - React

    NextJS: Frontend Sneaking into Backend

    As web-based applications become more sophisticated, frontend and backend lines gets blur. One such example of this change is NextJS. NextJS is a framework that enables React applications to render on the server side. But it isn’t just that. It pushes React into territories that it wasn’t initially designed for, filling in gaps and streamlining the development process. React and NextJS – A Beautiful TangoReact, as many know, is a JavaScript library built to create user interfaces. It does this primarily on the client side. While it’s incredible at this, it left a void when it comes to server-side rendering.…

  • Architectural Design Patterns - Design Patterns - Software Architecture

    Architectural Design Patterns 5 – Monolithic

    The Monolithic architecture stands as a testament to the earlier days of software development. A Monolithic architecture is like a single, tightly packed unit where all the software components are bundled together. Think of it as a large factory where every product stage, from raw materials to the final product, is handled under one roof. This design pattern was especially popular when software applications weren’t as complex as they are today. Its straightforward nature makes it a solid choice for simpler applications. Everything is in one place, making it easy to develop, test, and deploy. You don’t have to juggle…

  • Databases - PostgreSQL

    PostgreSQL: An Open-Source Powerhouse in Database Management

    PostgreSQL, sometimes referred to as Postgres, was born from the POSTGRES project at the University of California, Berkeley. Starting in the 1980s, it was the brainchild of Michael Stonebraker, a name also tied to the Ingres system. The goal was clear: advance the capabilities of relational database management systems and push boundaries. PostgreSQL has been in development for almost 30 years. Throughout this time, it has transformed and adapted, accumulating powerful features that set it apart in the world of databases. This long-standing history of excellence is testament to its resilience and ability to innovate. A key trend in the…

  • Coding - React - Web Development

    Redux vs. useContext: Navigating the State Management Maze

    Every developer knows that the software engineering isn’t just about writing code. It’s about creating efficient, maintainable, and scalable systems. A critical part of that journey, especially in the React world, is the state management. With numerous tools and libraries available, the choices can often be way too much. Two most common players in this arena are Redux and useContext Hook which is native to React. Both offer ways to manage global state, but which is right for your project? Let’s dive in and understand these tools better. Understanding useContext HookAt its heart, useContext is a React Hook introduced in…

  • C# - Coding - Databases - MongoDB

    MongoDB through C# – Using the Official Library

    MongoDB is a popular NoSQL database, which means it doesn’t use tables like traditional databases. Instead, it saves data as ‘documents’, which are like flexible data entries. If you’re using C# and want to work with MongoDB, there’s an official library made just for that. In this post, we’ll check out this library, see some basic MongoDB info, and walk through some C# code examples for common tasks. In MongoDB, data is saved in collections as documents. Think of collections like folders on your computer, and documents like files in those folders. But here, each document can have different data…

  • Amazon Web Services - Architectural Design Patterns - Azure - Design Patterns - Software Architecture

    Architectural Design Patterns 4 – Event-Driven Architecture

    Event-Driven Architecture is currently enjoying a lot of attention from businesses around the world due to the enhanced capabilities offered by cloud-based systems and I want to talk about it in this article. Imagine a digital ecosystem like a busy marketplace. In this environment, various systems act as vendors declaring their services and updates. Rather than each customer (or system) having to visit every vendor to check for new items, they simply wait and respond whenever a vendor announces a product they’re interested in. That’s precisely how Event-Driven Architecture operates. Systems no longer continuously scan for updates or changes; they…

  • Databases - SQL Server

    SQL Server Performance Tips for High Volume Databases

    As businesses grow, so does their data. A big amount of data can slow down your SQL Server if you don’t manage it right. This article shares some top tips to speed up your SQL Server when dealing with a lot of data. On the other hand, before we jump into the tips, it’s important to know there’s no magic button that fixes everything. Each problem is unique. While the tips I’ve given here can help many setups, they might not work for everyone. Simply applying fixes without understanding can cause more issues. It’s really important to first figure out…

  • Architectural Design Patterns - Containerization - Design Patterns - Software Architecture

    Architectural Design Patterns 3 – Microservices

    In this article, we will be talking about Microservices, a design pattern that’s gained traction for its approach to building large and complex software applications. At its core, Microservices is about breaking down an app into smaller parts, each doing its own thing. Instead of one big chunk of software that does everything, you have multiple little services working together. Imagine a bustling city. Instead of one massive building doing all jobs, you have separate shops, restaurants, and offices. Each microservice is like one of these establishments, responsible for its own task but collaborating with others for the city to…

  • .NET Core - Azure - C#

    Azure Blob Storage and C# Integration

    Azure Blob Storage is one of Microsoft Azure’s storage solutions. Think of it as a massive cupboard in the cloud where you can keep a lot of stuff, from pictures and videos to logs and backups. In this article, we’ll explore what Azure Blob Storage is, when you might want to use it, and how to play with it using C#. Azure Blob Storage is a place in the Azure cloud where you can save large amounts of unstructured data, which means it doesn’t have a specific format or structure. It’s like having a big box where you can throw…