This article shows in a simple way the foundation of libraries like DurableTask and its descendant Azure Durable Functions. It starts with the history of exception based flow control and ends by showing how Task-based API can be used to provide a similar interruptible flow with no abusive exception usage. Dark ages of exception-driven programming … Continue reading Unexceptional non-blocking task-based flow control in .NET
TL;DR This post is some kind of answer to the article mentioned in a tweet by Greg Young. The blog post of the author has no comment section. Also, this post contains a lot of information, so that's why I'm posting it instead of sending as an email or DM. Commits Typically, an event store … Continue reading Event stores and event sourcing: some not so practical disadvantages and problems
TL;DR This values must be updates synchronously or we need referential integrity or we need to make all these service calls together are sentences that unfortunately can be heard in discussions about systems. This post provides a pattern for addressing this remarks The reality As Jonas Boner says in his presentation Knock, knock. Who’s there? … Continue reading Dependency rejection
In the last post about the RampUp library I covered on of the foundations: IRingBuffer. Now I'd like to describe the contract it fulfills. Producer consumer If you take a look at the IRingBuffer you'll see Write/Read methods. These two are responsible for producing/consuming or writing/reading messages to the buffer in FIFO way. What are … Continue reading Producer – consumer relationship
Assume you're writing some reports in your application. You've just created the third controller covering some kind of reporting and it seems to be, that all the three controllers have a very similar code, modulo type passed as the entity type to your NH ISession.QueryOver() or another data source. It seems that, if the method … Continue reading Composition vs derivation
Recently I had to create a model for ASP MVC, which would be bound by the model binder and had its properties set according to the request. It's the most common case you can imagine, but there was one 'but'. The model, because of its nature had to have non-default constructor. It was only a … Continue reading ASP MVC Model binders
Recently, I've been working on project which in the near future will have a quite complex authorization rules. Additionally, these rules will affect the display, simply filtering data sets, which one can view. Instantly I thought about Themis and it's 'future feature' allowing to integrate with NH. What I'd like to have is simple Themis' … Continue reading Themis wants you to hibernate her!