Find your next readFilters
Reset

Page 5 of 41 (Total items: 815)
Ephemeral Signals - Turning Atoms into a Sensing Network

A tiny primitive that turns concurrent work into a coordinated, adaptive system. "The Ephemeral Signals Pattern" In Part 1 we built ephemeral execution - bounded, private, self-cleaning async workflows. In Part 2 we turned that into a reusable library with…

Building a Reusable Ephemeral Execution Library

In Part 1: Fire and Don't Quite Forget, we explored the theory behind ephemeral execution - bounded, private, debuggable async workflows that remember just enough to be useful and then evaporate. This article turns that pattern into a reusable library you can…

Fire and Don't Quite Forget - Ephemeral Execution Without State

Most async systems either remember too much (logs, queues, persisted junk you never wanted)… or they remember nothing at all (fire-and-forget black holes that vanish the moment something goes wrong). This article introduces something different: A pattern where…

Learning LRUs - When Exceeding Capacity Makes Your System Better

Most systems degrade when overloaded. Memory fills up, queries slow down, users complain, servers crash. A few unusual ones get better. This article shows how an LRU-based behavioural memory becomes self-optimising when it hits capacity - and how this pattern…

Cooking with DiSE (Part 4): Building Systems That Learn, Adapt, and Evolve

Most software architectures assume the system is static. DiSE assumes the system is alive. Note: This is Part 4 in the "Cooking with DiSE" series. See Part 1, Part 2: Graduated Apprenticeships, and Part 3: Untrustworthy Gods for background. This article is the…

StyloBot: Fighting Back Against Scrapers (Part 1)

Scrapers are about to start using AI to mimic real users - so I built a bot detector that learns, adapts, and fights back. Read Part 2: How Bots Got Smarter - The New Frontier in Bot Detection 👉 See It Live: StyloBot.net - This is the real production system…

Thinking in Systems: A Retrospective on a Life Spent Trying to Understand How Things Fit Together

By someone who can't stop analysing patterns, even their own. As the category says, this is a far more personal essay than my usual work. I don't mind if you skip it...but if it resonates leave a comment! I read them all (and it needn't be public). <!-- [TOC]…

Data Hierarchies Part 1.5: PostgreSQL ltree with EF Core

PostgreSQL's ltree extension gives you materialised paths with database-native superpowers: GiST indexes, specialised operators like @> and <@, and powerful pattern matching. If you're committed to PostgreSQL and want the best hierarchy query performance,…

Data Hierarchies Part 1.4: Nested Sets with EF Core

Nested sets encode the entire tree structure into just two integers per node - Left and Right boundaries from a depth-first walk. Finding all descendants becomes a simple range query, and ORDER BY Left gives you perfect display order. The catch? Every insert…

Data Hierarchies Part 1.3: Materialised Path with EF Core

Materialised paths store the complete ancestry as a delimited string - like /1/3/7/ - making ancestors instantly readable without any joins. Perfect for breadcrumb generation and human-readable debugging, though moving subtrees means updating every…

Data Hierarchies Part 1.2: Closure Table with EF Core

Closure tables precompute and store every ancestor-descendant relationship, trading storage space for blazing-fast reads. This is the approach this blog uses for its comment system - when reads vastly outnumber writes, the extra insert complexity pays off with…

Data Hierarchies Part 1.1: Adjacency List with EF Core

The adjacency list is the simplest and most intuitive approach to storing hierarchical data - each row just points to its parent. It's what most developers reach for first, and for shallow trees with frequent moves, it's often the right choice. This article…

Data Hierarchies: Managing Hierarchical Data with EF Core and PostgreSQL (Overview)

Hierarchical data is everywhere in software development: threaded comments, organisational charts, file systems, product categories, and forum discussions. The eternal question of "how do I store a tree in a relational database?" has haunted developers since…

No we're likely not reaching AGI anytime soon: The Behaviourist Fallacy in AI Subsystem Development

Here's an uncomfortable truth that nobody in the AI hype machine wants to discuss: We still don't know what intelligence actually is. Not in humans. Not in animals. And certainly not in machines. This isn't just academic hairsplitting. It's the foundational…

Modern Release Strategies with GitHub Actions

The core principle: make releases fast and painless, and you'll release more often. This is critical for agile development - rapid, reliable deployments create the fast feedback loop you need. When deploying is scary or slow, teams batch up changes, increasing…

Data Access in .NET: Comparing ORMs and Mapping Strategies (Part 2 - Dapper, Raw SQL, and Hybrid Approaches)

Welcome to Part 2 of our comprehensive guide to data access in .NET! In Part 1, we explored Entity Framework Core in depth, including SQL generation, common pitfalls, and that critical warning about proxies and caching. In this article, we'll explore the…

Data Access in .NET: Comparing ORMs and Mapping Strategies (Part 1 - Entity Framework Core)

When building .NET applications, one of the most important architectural decisions you'll make is how to handle data access and object mapping. The .NET ecosystem offers a rich variety of approaches, from full-featured ORMs to bare-metal SQL execution. Each…

Where's the semantic search Scott?

Ok quick piece here. You've read all about semantic search, in MANY articles here. But you may have noticed; THIS SITE AIN'T ACTUALLY USING IT YET. So where is it? Simple the way I deploy this site means I NEED downtime to change my docker-compose.yml…

Load Testing ASP.NET Core Applications with k6: Practical Implementation

Now that you understand the fundamentals of k6 and performance testing, it's time to put that knowledge into practice. This article walks you through writing real tests, integrating them into CI/CD pipelines, and using profiling tools to identify and fix…

Load Testing ASP.NET Core Applications with k6: Introduction

Your application works perfectly on your laptop. Unit tests pass. Integration tests pass. You deploy to production, and suddenly everything grinds to a halt. Five hundred real users hit your homepage simultaneously, and your server starts returning 503 errors.…

Page 5 of 41 (Total items: 815)
logo

© 2026 Scott Galloway — Unlicense — All content and source code on this site is free to use, copy, modify, and sell.