<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>mxtor</title><description>Engineering notes on backend systems, authorization, payments, state, and agent-assisted work.</description><link>https://20745a26.mxtor.pages.dev/</link><item><title>Common Concurrency Patterns in .NET Applications</title><link>https://20745a26.mxtor.pages.dev/blog/common-concurrency-patterns-dotnet/</link><guid isPermaLink="true">https://20745a26.mxtor.pages.dev/blog/common-concurrency-patterns-dotnet/</guid><description>Lost updates, retries, row versions, unique constraints, transactions, and the concurrency bugs hiding in ordinary .NET apps.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Make Product State Explicit</title><link>https://20745a26.mxtor.pages.dev/blog/make-product-state-explicit/</link><guid isPermaLink="true">https://20745a26.mxtor.pages.dev/blog/make-product-state-explicit/</guid><description>Workflow booleans, status fields, transitions, timestamps, retries, and the product-state bugs that appear when rules stay implicit.</description><pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate></item><item><title>MergePatchDto: A Smaller PATCH Shape for .NET</title><link>https://20745a26.mxtor.pages.dev/blog/mergepatchdto-explicit-null-missing/</link><guid isPermaLink="true">https://20745a26.mxtor.pages.dev/blog/mergepatchdto-explicit-null-missing/</guid><description>JSON Patch, DTO-shaped PATCH requests, explicit nulls, missing properties, allowlists, and the gap in many ASP.NET Core APIs.</description><pubDate>Sun, 05 Jul 2026 00:00:00 GMT</pubDate></item><item><title>Transactional Outbox: What to Put in Events</title><link>https://20745a26.mxtor.pages.dev/blog/microservices-transactional-outbox-patterns/</link><guid isPermaLink="true">https://20745a26.mxtor.pages.dev/blog/microservices-transactional-outbox-patterns/</guid><description>Transactional outbox, eventual consistency, notification events, event-carried facts, replay, payload size, and message-shape tradeoffs.</description><pubDate>Wed, 24 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Payment Is Not Delivery: A Simple Model for Digital Goods</title><link>https://20745a26.mxtor.pages.dev/blog/payment-is-not-delivery/</link><guid isPermaLink="true">https://20745a26.mxtor.pages.dev/blog/payment-is-not-delivery/</guid><description>Payment capture, webhooks, callbacks, idempotency, access records, and the boundary around digital product delivery.</description><pubDate>Wed, 10 Jun 2026 00:00:00 GMT</pubDate></item></channel></rss>