Modeling Facts and Reactions with Domain Events
How to decouple facts from their consequences.
Recent content on Denis Kyashif's Blog
How to decouple facts from their consequences.
How a rich domain model keeps the business invariants consistent, testable, and easier to evolve.
Design aggregates around true consistency boundaries, not around all related data, to keep domain logic clear and write paths performant as the system grows.
A design technique leading to a more predictable, composable, and maintainable code.
How I organize my work in plain text.
Overriding the default name claim type configuration in Microsoft Identity.
A fast and simple way to parse regular expressions.
A gentle overview of bimachines with examples.
Strategies for resolving conflicts that occur when two replacement substrings overlap.
An formal overview of regular expression-based text rewriters.
How to implement an assembly line concurrency model in .NET using channels.
Explore cancellation and timeout techniques with channels.
Concurrency patterns in .NET using channels.
Express application logic in a concise and declarative way using state machines and C#’s pattern matching.
How to describe a formal language and build a translator with ANTLR and JavaScript.
Range Minimum Query with Sparse Table and Dynamic Programming.
Experimenting with a rudimentary type system that ensures the programs always terminate.
The Y combinator or how to implement recursion in a language that doesn’t support it.
Using Ken Thompson’s construction algorithm.
DevReach is one of the largest tech conferences in Eastern Europe, focused on .NET and JavaScript. I had the pleasure to attend as a speaker, talking about Scalable Angular Applications.
This is a step by step guide on how to setup a project from scratch with the Telerik UI for ASP.NET MVC component suite or integrate it to an existing one.
I had the pleasure to speak at the annual EMEA PUG Challenge conference in Prague. This is my second visit to this event. I was very excited about it because I already had fond memories of the last year’s one in the Netherlands.
How to lazily load the descendant items of a record in a TreeList.
Training a machine translation model on an Azure compute optimized VM.
I had the pleasure to speak at the annual EMEA PUG Challenge conference. I’ve been eagerly anticipating the event and as now it’s over, let me share my impressions with you.
Not only inputs.
IntelliSense as a service.