PostgreSQL 19's new WAIT FOR LSN command lets a replica block until it has replayed your write. The read-after-write problem it solves, the workarounds it replaces, and what the timeout, status, and mode options are actually for.
This is the follow-up to Local Analytics with SQLite and SvelteKit. That post covered the infrastructure - batched writes, heartbeat-based live visitors, the production meltdown and rebuild. This one’s about actually removing the Fathom API...
I’ve been using Fathom Analytics for years and it’s great, but I wanted something more integrated. Something that could power live visitor counts and popular posts without external API calls. This is what I learned building self-hosted analytics...
Dev Log 37: 2025-12-16
I was looking up something on my site for reference (as I usually do when trying to recall a detail) when I noticed the popular posts in the footer weren’t displaying. That’s odd. I’d been working with the database locally recently, so my immediate...
I spent some time this weekend rolling the auth credentials for this site (again) after Claude Code doxed my variables! Anyways, whilst I was doing this I noticed my Turso dashboard had 1.3 BILLION row reads. My database was getting absolutely...
A deep-dive at the internals of Entity Framework to come up with a solution to make EF interpret your value types, in this particular case a strongly-typed ID (of the StronglyTypedId NuGet Package).
Predrag Gruevski explores Trustfall, a revolutionary query tool that turns anything into queryable data, and cargo-semver-checks for Rust semantic versioning.
So, I’ve got these massive CSV files (some up to 233 thousand rows) that I exported from Fathom Analytics. I want to import them into the Turso DB I use for this site, so, eventually visitors will be able to view the data. I’m lot leaving Fathom, I...
I have the popular posts on this site which are stored in a Turso table, the table is generated from the Fathom Analytics API on this site and you can see them when you get to the bottom of a post or in the footer of the site. Here’s the sitch...
A discussion of the least-on-brand thing to ever happen on Halloween: The Halloween problem, a database querying issue with a long legacy.
Entity Framework 8 brings a new feature allowing us to execute and return unmapped types from SQL select statements. In this blog post we'll take a quick look at how we can accomplish this, and why this is an important tool to have in your toolkit.
Using DbFunctions is a method to use database-specific functions in your Entity Framework queries. They allow you to take advantage of features that are specific to a particular database provider, such as SQL Server and use them in your Entity Framework queries in a provider-agnostic way. As an example, let's use the SOUNDEX SQL function.
Practical SQLite recipes for Python: execute statements, batch operations, transactions, row factories, and context managers with sqlite3.
Emulate Python's random.choice in SQLite using JSON arrays and the random() function. Populate tables with realistic test data efficiently.
Exploring the new `ExecuteDelete` and `ExecuteUpdate` methods that were introduced in Entity Framework.
I was digging into a performance issue at work recently and found THE WEIRDEST way of speeding up a query that uses ORDER BY. When testing against our replica database, I was getting results up to 100 times faster than before.
I was digging into a performance issue at work recently and found THE WEIRDEST way of speeding up a query that uses ORDER BY. When testing against our replica database, I was getting results up to 100 times faster than before.
Using SQL Bulk Copy to have a huge performance gain
How to convert your SQL Profiler template to an XEvent template.
How to use the SQL Server Profiler as a utility knife to get a better understanding of your system.
Utilizar MySQL é muito simples. Neste tutorial ensino a selecionar apenas um intervalo de linhas em MySQL.