Dotnet, NodeJs, DevOps and more…
-
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
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
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
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 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
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
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#
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
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
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
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
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…