Dotnet, NodeJs, DevOps and more…

  • Mastering DDD: A Developer’s Guide to Implementing Aggregates

    Mastering DDD: A Developer’s Guide to Implementing Aggregates

    Welcome back to our series on Domain-Driven Design (DDD)! In our previous article, we skimmed the surface of some fundamental DDD concepts like Aggregates, Entities, and Value Objects. If you found that intriguing, buckle up because we’re about to take a deep dive into these core components, specifically through the lens of a developer. While…

  • Getting Started with Domain-Driven Design for Developers

    Getting Started with Domain-Driven Design for Developers

    There are certainly a lot of articles and books about DDD. A several years ago, when I started to learn about it, it took a little time for things to click. At that time, I was really eager to understand DDD from a developer’s perspective, but most of the material was focused on the architectural…

  • Enterprise Development: Guidelines, Guardrails, and Golden Paths

    Enterprise Development: Guidelines, Guardrails, and Golden Paths

    After having a lengthy conversation with one of my colleagues on the topic of why people often disregard guardrails in his organization, a particular question came to my mind. Towards the end of our discussion, I asked my colleague what keeps cars between the guardrails in the real world. He replied, somewhat unsure of where…

  • Git remove commits from branch after push: reset, revert, or rebase

    Git remove commits from branch after push: reset, revert, or rebase

    You can remove commits from a branch by any of reset,revert, and rebase commands. Each has own use case and pros and cons, let’s learn them in details

  • JavaScript destructuring nested object and array

    JavaScript destructuring nested object and array

    JavaScript destructuring is a powerful feature that allows developers to extract data from arrays and objects in an elegant and concise way. This technique makes it easier to work with complex data structures and reduces the amount of code required to extract information from these structures. Whether you’re a seasoned JavaScript developer or just starting…

  • IaC Methodologies and Best Practices on Azure

    IaC Methodologies and Best Practices on Azure

    Infrastructure as Code (IaC) is a crucial aspect of modern DevOps practices, and it is becoming increasingly important for organizations looking to optimize and automate their infrastructure management on Azure. IaC allows you to use code to define, provision, and manage your infrastructure, making it easier to manage, scale, and maintain. In this guide, we’ll…

  • How to make OpenAI Stateful Text Generator like ChatGPT for Conversations

    How to make OpenAI Stateful Text Generator like ChatGPT for Conversations

    OpenAI’s text generator is a powerful tool for programmers and developers looking to enhance their applications with natural language processing capabilities. In this blog post, we will dive into the features and capabilities of OpenAI’s text generator, including its ability to maintain context like ChatGPT. Learn how OpenAI’s text generator can take your software to…

  • The Ultimate Guide to Blazor: How to Build Client-Side Web Applications with C#

    The Ultimate Guide to Blazor: How to Build Client-Side Web Applications with C#

    Blazor is an open-source web framework that allows developers to build interactive client-side web applications using C# and .NET. It was developed by Microsoft as an alternative to JavaScript-based frameworks like Angular and React. One of the main benefits of Blazor is that it enables developers to use their existing C# skills and code to…

  • How to mock class constructor with parameters- Jest and TypeScript

    How to mock class constructor with parameters- Jest and TypeScript

    Earlier I wrote How to Mock a TypeScript class or dependency using Jest, that is basically a how to auto mock the ES class or module when it comes to typescript. Since it happen to come up on google results, get to see what people search around the subject and “jest mock constructor with parameters…

  • Monorepo architecture, CI/CD and Build pipeline

    Monorepo architecture, CI/CD and Build pipeline

    The monorepo architecture has certain advantages over polyrepo (or multi-repo) in some cases. However, implementing a successful monorepo is not easy, especially when it comes to automation, CI/CD, and build pipelines. For instance, there may be issues with long-running tests and releasing unchanged packages unnecessarily. Based on my experiences, I will provide some solutions to…

  • NodeJS Application Insights, logging and telemetry best practices

    NodeJS Application Insights, logging and telemetry best practices

    Distributed tracing and Real Time Application Monitoring is an essential component of any modern software architecture. This is done through telemetry, meaning produce some kind of tracing data about the software (included but not limited to logging) and transmit it to some external system to be stored and processed. Telemetry monitoring combined with tracing helps…

  • How to setup a TypeScript project dev environments like a pro

    How to setup a TypeScript project dev environments like a pro

    There are many ways to set up a nice developing environment for typescript. Since I like simplicity and ease of work, let’s setup a TypeScript project that is minimal and easy to work with. Though, It doesn’t mean we need to stick to the defaults; this setup works out of the box, it is pretty…