Erik Heemskerk

Thoughts and opinions of a software developer.

  • Home
  • About me
Revisited: Is WCF faster than ASP.NET Core? Of course not! Or is it?
Benchmarking

Revisited: Is WCF faster than ASP.NET Core? Of course not! Or is it?

Previously, I wrote an article about how I got triggered after somebody on Reddit exclaimed that WCF was faster had lower response times than ASP.NET Web API and ASP.NET Core MVC.

  • Erik Heemskerk
    Erik Heemskerk
27 min read
Is WCF faster than ASP.NET Core? Of course not! Or is it?
Benchmarking

Is WCF faster than ASP.NET Core? Of course not! Or is it?

How does WCF, a 13-year-old mega-abstraction framework hold up against the modern, lean, ASP.NET Core? You’d be surprised.

  • Erik Heemskerk
    Erik Heemskerk
12 min read
PSA: Don’t change the assembly name for published NuGet packages
.NET Core

PSA: Don’t change the assembly name for published NuGet packages

Somebody published a new version of a NuGet package with a different assembly name. You’ll never guess what happens next.

  • Erik Heemskerk
    Erik Heemskerk
8 min read
DDD Persistence: Recorded Event-Driven Persistence
DDD

DDD Persistence: Recorded Event-Driven Persistence

When you decide to implement your business logic by applying DDD, one of the things you’ll run into is ‘how do I save my changes?’ The internet is full of blogs and

  • Erik Heemskerk
    Erik Heemskerk
13 min read
Transitive NuGet dependencies: .NET Core’s got your back
C#

Transitive NuGet dependencies: .NET Core’s got your back

The other day, a colleague and I were looking into an issue with one of our solutions’ build pipeline. The main project was a ‘classic’ MSBuild project with a transitive NuGet dependency through

  • Erik Heemskerk
    Erik Heemskerk
8 min read
Meaningful Logging and Metrics
Logging

Meaningful Logging and Metrics

Pretty much any application needs logging. Except maybe the simplest of applications that do not require user interaction and only do one incredibly specific thing. Or applications that only interact via the console.

  • Erik Heemskerk
    Erik Heemskerk
8 min read
C# 7.x and 8.0: Uncertainty and Awesomeness
C#

C# 7.x and 8.0: Uncertainty and Awesomeness

Last week I wrote about the new features that Microsoft have planned for the next version of C#, version 7.1. Let’s also take a look at the things they have planned

  • Erik Heemskerk
    Erik Heemskerk
9 min read
C# 7.1 and Beyond: Polishing Usability
C#

C# 7.1 and Beyond: Polishing Usability

Last year I talked about the new features of C# 7.0. Visual Studio 2017 has been released a few months ago, so you can now enjoy using these features in your day-to-day

  • Erik Heemskerk
    Erik Heemskerk
6 min read
Event Sourcing: Eventual Consistency and Responding to Events
Event Sourcing

Event Sourcing: Eventual Consistency and Responding to Events

In my last post, about CQRS and how to keep your read model synchronized, I mentioned how you could ‘broadcast’ your events to other parts of the system in order to keep read-optimized

  • Erik Heemskerk
    Erik Heemskerk
10 min read
Event Sourcing: CQRS and querying using read models
Event Sourcing

Event Sourcing: CQRS and querying using read models

In my previous post I introduced the concept of Event Sourcing, which is a radically different way of storing application state: instead of storing the current state, we only store the events that

  • Erik Heemskerk
    Erik Heemskerk
7 min read
Event Sourcing: Awesome, powerful & different
Event Sourcing

Event Sourcing: Awesome, powerful & different

I was introduced to Event Sourcing by the CQRS Journey series of articles from Microsoft’s Patterns and Practices team. It’s an excellent read about a pattern that offers great flexibility, at

  • Erik Heemskerk
    Erik Heemskerk
11 min read
Inspecting aspects and interception in .NET, part 3
Dependency Injection

Inspecting aspects and interception in .NET, part 3

Previously in this series, I looked at ways we can instrument our code with two of the most basic metrics; how often does our code run and how long does it take to

  • Erik Heemskerk
    Erik Heemskerk
7 min read
Inspecting aspects and interception in .NET, part 2
Benchmarking

Inspecting aspects and interception in .NET, part 2

Last time we evaluated a number of ways to add instrumentation to your code while keeping your code maintainable and legible. We landed on using interception and the cliffhanger question from last time

  • Erik Heemskerk
    Erik Heemskerk
6 min read
C# 7.0: Small but welcome improvements
C#

C# 7.0: Small but welcome improvements

I know I said the next post would be about benchmarking, and it was fully my intention, but then the real world happens. Recently, Microsoft announced the tentative feature-set of C# 7.0.

  • Erik Heemskerk
    Erik Heemskerk
4 min read
Inspecting aspects and interception in .NET, part 1
Benchmarking

Inspecting aspects and interception in .NET, part 1

Recently I was tasked with adding instrumentation to a project: measuring how often methods were being called and how long each execution took. I had a couple of options. Timing it inside of

  • Erik Heemskerk
    Erik Heemskerk
3 min read
Erik Heemskerk © 2019
Latest Posts Twitter Ghost Graphics by MargaHD