Portfolio

Blog

Technical Notes From The Hot Path

C#, .NET, memory, performance, and the engineering details that make software feel fast.
May 19, 2026

The Journey to Native Markdown: Frontmatter, Slugs, and Code Interceptors

A deep-dive article detailing the transition from expensive string post-processing to zero-allocation native features in Beskar.Markdown.

C#.NETMarkdownPerformance
May 17, 2026

How Beskar.Markdown stays low on memory and still fast

A code-focused article about the design choices behind Beskar.Markdown: spans, compact nodes, pooled buffers, single-pass parsing, contextual rendering, and honest benchmark tradeoffs.

C#.NETMarkdownPerformance
January 17, 2026

Span<T> in C#: stop allocating for work you can borrow

A practical introduction to Span<T>, ReadOnlySpan<T>, Memory<T>, and pooled buffers for low-allocation C# code.

C#.NETSpanMemory
September 22, 2025

C# 14 extension members: APIs that feel like they belonged there

A practical look at C# 14 extension blocks, extension properties, static extension members, operators, and why they are useful for low-allocation fluent APIs.

C#.NETExtensionsC# 14
An unhandled error has occurred. Reload 🗙

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.