Blog Logo
TAGS

Handling Errors Like a Pro in TypeScript

Error handling in Type/JavaScript is crucial for the longevity of any project. This article discusses how to handle errors cleanly with TypeScript and introduces a design pattern for grouping code by ...

Read more...

WebAssembly: Docker without containers!

This article explains what WebAssembly is, why its relevant to the Docker ecosystem, and provides hands-on examples. WebAssembly is an open standard that enables the creation of portable binary execut...

Read more...

Creating Multi-Tier Subscriptions using C#

Its always best to give options to users when it comes to subscriptions. Today, we introduce a unique way to attach application features to a subscription. This post was written for the Sixth Annual C...

Read more...

Error-accumulating composable assertions in C#

This article is about composing non-short-circuiting assertions in C# in such a way that failure messages accumulate. It explores a simpler API than the previous articles proof of concept, using a Not...

Read more...

PriorityQueues on .NET 7 and C# 11

Starting from .NET 6 and C# 10, we finally have built-in support for PriorityQueues 🥳 A PriorityQueue is a collection of items that have a value and a priority; as you can imagine, they act as a queu...

Read more...

Dangers & Gotchas of Scoped Services in OptionsBuilder

In this blog post, Andrew Lock discusses the dangers and gotchas of using scoped services with the IOptions pattern. He provides a brief overview of strongly-typed configuration in ASP.NET Core and th...

Read more...

Reaqtor: A stateful, distributed, and scalable event processing framework based on Rx

Reaqtor is a reliable, stateful, distributed, scalable, and high performance event processing framework based on Rx. It adds state and durability primitives to Reactive Extensions to enable long-runni...

Read more...

AppCode 2022.3 Release and End of Sales and Support

AppCode 2022.3 has been released with new features such as more refactoring capabilities for Swift. However, the JetBrains team has announced that they will be sunsetting AppCode as of December 14, 20...

Read more...

Has your password been pwned? Or, how I almost failed to search a 37 GB text file in under 1 millisecond

This article discusses how to check if your password has been hacked by searching through a 37GB text file. It provides a step-by-step guide on how to do this in Python and offers some solutions to ma...

Read more...

Introducing Wolverine for Effective Server Side .NET Development – The Shade Tree Developer

Wolverine is a mediator and message bus tool for server-side .NET development. Its runtime model is different from other similar tools in a way that leads to simpler application code and more efficien...

Read more...

When do tests fail? - Understanding the triggers and importance of clear assertion messages

Unit tests occasionally fail but understanding their triggers and importance of clear assertion messages can go a long way in avoiding non-deterministic tests. The Assertion Roulette test smell highli...

Read more...

# TypeProvider.Json - Prototype Remake of FSharp.JsonTypeProvider in CSharp

This is a prototype remake of FSharp.JsonTypeProvider in CSharp, which is used to create JSON data types that can be used to deserialize JSON data at runtime. Usage of this prototype remake is shown i...

Read more...

Securing your NextJS Web Application with AWS Amplify and Cognito

Learn how to secure your NextJS application with AWS Amplify and Cognito in this tutorial. AWS Amplify is an open-source library that manages AWS services like Cognito while NextJS is an open-source f...

Read more...

Verify - Simplify Assertion of Complex Data Models and Documents

Verify is a snapshot tool for assertion of complex data models and documents. It simplifies the assertion process and stores serialized results in a file to match the test name, and compares it agains...

Read more...

Going from Architect to Architecting: the Evolution of a Key Role

Software architecture has evolved significantly over time, moving away from a command and control approach to a coaching and mentoring role. In this article, the authors explore the challenges of tran...

Read more...

5 New MVC Features in .NET 7

Many new features were introduced in ASP.NET Core in .NET 7, including route groups, filters, and minimal APIs. However, MVC controllers were not forgotten, and this post discusses the new MVC feature...

Read more...

AWS is changing: Announcements at AWS re:Invent show a kinder, gentler Amazon, ready to integrate its own services and third-party data sources.

AWS made a host of new services announcements at re:Invent 2022. AWS Chief Evangelist, Jeff Barr, summarized the most impactful announcements, but then they proceeded to spend more than 2,700 words hi...

Read more...

Dont Fail Publishing Events! Event Driven Architecture Consistency

Dont Fail Publishing Events! Event Driven Architecture Consistency

Consistency is crucial when working with event-driven architecture to ensure that relevant events are published when making state changes. This is because events are first-class and driving workflows ...

Read more...

Generic Math Extended Example - C# 11 Feature

C# 11.0 Generic Math is a powerful extension to the already capable generic types system present in C#. This blog post explains the changes needed to add this neat feature, including new interfaces an...

Read more...

Mapping Event Type by Convention

Events are a vital part of Event-Driven Architecture, representing business facts that happened in our system. To integrate business workflow steps, we need to define the mapping between the code type...

Read more...