skip to content
Relatively General .NET

RavenDB’s storage engine: Voron–unlocking the secret

by Oren Eini

posted on: March 28, 2024

A couple of months ago I had the joy of giving an internal lecture to our developer group about Voron, RavenDB’s dedicated storage engine. In the lecture, I’m going over the design and implementation of our storage engine.If you ever had an interest on how RavenDB’s transactional and high performance storage works, that is the lecture for you. Note that this is aimed at our developers, so we are going deep. You can find the slides here and here is the full video.

Certificates from the Ground Up

by Oren Eini

posted on: March 27, 2024

One of the most fun things that I do at work is share knowledge about how various things work. A few months ago I talked internally about how Certificates work. Instead of just describing the mechanism of that, I decided to actually walk our developers through the process of building the certificate infrastructure from scratch.You can find the slides here and the full video is available online, it’s just over an hour of both lecture and discussion.

Permission to pay your money, please!

by Oren Eini

posted on: March 25, 2024

I’m trying to pay a SaaS bill online, and I run into the following issue. I have insufficient permissions to pay the invoice on the account. No insufficient funds, which is something that you’ll routinely run into when dealing with payment processing. But insufficient permissions!   Is… paying something an act that requires permissions? That something that happens? Can I get more vulnerabilities like that? When I get people to drive-by pay for my bills? I can’t think of a scenario where you are prevented from paying to the provider. That is… weird. And now I’m in this “nice” position where I have to chase after the provider to give them money, because otherwise they’ll close the account.

Convert DateTime to user's time zone with Blazor in .NET 8

by Gérald Barré

posted on: March 25, 2024

This post is an update of the original post Convert DateTime to user's time zone with server-side Blazor to take advantage of new .NET 8 features. It is inspired by the following pull request in dotnet/aspireWhen you display DateTime data to a user, you may want to convert the value to the user's t

Generate OpenAPI specification at build time from the code in ASP.NET Core

by Gérald Barré

posted on: March 18, 2024

The OpenAPI specification is a powerful tool to describe and document APIs. It is a standard that allows you to define the structure of your API, including the endpoints, the request and response models, and the security requirements. The OpenAPI specification is a JSON or YAML file that can be use