New
The latest blog posts to take off on Hacker News. 4,224 posts.
What If Data Is a Bad Idea?
Data is reductive. It objectifies. It bureaucratizes. But is it a bad idea?
Build your own SQLite, Part 1: Listing tables
As developers, we use databases all the time. But how do they work? In this series, we'll try to answer that question by building our own SQLite-compatible…
pg_duckdb: Splicing Duck and Elephant DNA
Introducing the DuckDB + Postgres Extension: You can have your analytics and transact them too with pg_duckdb by DuckDB Labs, MotherDuck, Hydra, Neon and Microsoft. | Reading time: 8 min read
Just use Postgres
Advice: When you are making a new application that requires persistent storage of data, like is the case for most web applications, your default choice should be Postgres .
What Is a Knowledge Graph?
What is a knowledge graph? Learn about nodes, relationships, organizing principles, and ontologies, which comprise a knowledge graph.
CSVs Are Kinda Bad. DSVs Are Kinda Good
I would simply use delimiter characters to delimit data.
LLM-based sentiment analysis of Hacker News posts between Jan 2020 and June 2023
We analyzed topics covered by 100k Hacker News posts and the sentiments they evoke using Metaflow.
The new PostgreSQL 17 make dist
When the PostgreSQL project makes a release, the primary artifact of that is the publication of a source code tarball. That represents the output of all the work that went into the creation of the PostgreSQL software up to the point of the release. The source tarball is then used downstream by packagers to make binary…
Postgres.new: In-browser Postgres with an AI interface
Introducing postgres.new, the in-browser Postgres sandbox with AI assistance.
Building data infrastructure that will last
As a consultant, I have been called in to review and, in many cases, replace dozens of half-finished, abandoned, and sometimes forgotten data infrastructure projects.
Jepsen: Jetcd 0.8.2
Etcd is a coordination service designed to offer Strict Serializable reads, writes, and micro-transactions over a small, in-memory key-value store. In 2022, Jepsen re-tested etcd as a part of a private engagement covering an assortment of databases. We reported several issues to the etcd team during that engagement…
Imagining a personal data pipeline
I've been thinking a lot about personal data lately: where it's stored, how to extract it, and what to do with it. Here's where I landed.
Full text search over Postgres: Elasticsearch vs. alternatives
A comprehensive comparison between Elasticsearch and PostgreSQL for search workloads.
Why Polars rewrote its Arrow string data type
We have completely rewritten the string/binary data structure we use in Polars.
Building rqlite 9.0: Cutting disk usage by half
rqlite is a lightweight, open-source, distributed relational database written in Go. It is built on the Raft consensus protocol and uses SQLite as its storage engine. Development of 9.0 has begun and aims to reduce disk usage by approximately 50%. This goal will be achieved through a high-level design overhaul…
How to Get or Create in PostgreSQL
And why it is so easy to get wrong...
How Postgres stores data on disk – this one's a page turner
A high-level overview of how PostgreSQL stores data on disk, covering segments, pages and more.
The future of kdb+?
It’s been 2 years since I worked full time in kdb+ but people seem to always want to talk to me about kdb+ and where I think it’s going, so to save rehashing the same debates I’m going to put it here and refer to it in future. Please leave a comment if you want and I will reply.
Why CSV is still king
Build AI-powered data tables
Suspicious data pattern in recent Venezuelan election
Here’s a little “fake stats in the wild” gem that I think you and your followers will find at the least somewhat amusing.
Call of Duty: Warzone Caldera Data Set for Academic Use
Access Call of Duty: Warzone Caldera OpenUSD Data Set
The Truth About Linear Regression (2015)
This is basically a compilation of the lecture notes I wrote when teaching 36-401, Modern Regression, in fall 2015 . I offer it here on the chance that it might be of interest to those learning, or teaching, linear regression. There's no shortage of resources on that, but I have tried to present the subject as though…
Amazon's exabyte-scale migration from Apache Spark to Ray on EC2
Large-scale, distributed compute framework migrations are not for the faint of heart. There are backwards-compatibility constraints to maintain, performance expectations to meet, scalability limits to overcome, and the omnipresent risk of introducing breaking changes to production. This all becomes especially…
Movable tree CRDTs and Loro's implementation
This article introduces the implementation difficulties and challenges of Movable Tree CRDTs when collaboration, and how Loro implements it and sorts child nodes. The algorithm has high performance and can be used in production.
Bayesian Statistics: The three cultures
A traditional subjective Bayesian will assume a data generating distribution (aka a likelihood when viewed as a function of the parameters). Then, conditional on this assumption, they encode their prior beliefs as a prior distribution over parameters. After this, they turn the crank on posterior inference and don’t…
Bcachefs, an Introduction/Exploration
Introduction & background information NOTE: This content is from an internal talk I gave, thus the reason it may read like a presentation So what is …
Let's consign CAP to the cabinet of curiosities
Brewer’s CAP theorem, and Gilbert and Lynch’s formalization of it , is the first introduction to hard trade-offs for many distributed systems engineers. Going by the vast amounts of ink and bile spent on the topic, it is not unreasonable for new folks to conclude that it’s an important, foundational, idea.