• Agentic utopia deferred 2025-11-17

    Over the past year, there has been a lot of hype around AI agents, systems that use artificial intelligence to autonomously plan and execute on goals. Rather than merely answer questions, these AI ...

  • Artificial Darwinism 2025-11-01

    I’ve been doing some work with Model Context Protocol (MCP) lately, and have been very impressed by the ability of large language models (LLMs) to use tools. Agentic AIs like Claude Code can chain ...

  • core.async and virtual threads 2025-10-26

    In a previous post we explored the introduction of virtual threads into the JVM. One concern about virtual threads was pinning, the sticky association of virtual threads to platform threads due to ...

  • Lateral joins 2025-10-13

    Lately I’ve been making use of lateral joins, which simplify (and in some cases optimize) a few common query patterns. Lateral joins are joins where the right side of a join can reference columns ...

  • Will AI replace programmers? 2025-08-21

    There has been a lot of doom and gloom about software development in recent years. Computer science, long one of the most in-demand majors in the job market, is seeing above-average unemployment ra...

  • Building Postgres on macOS 2025-06-20

    I recently decided to check out Postgres hacking, and ran into a few issues when trying to build on an ARM Mac. The basic three-step of: ./configure make make check each has a problem that needs...

  • Finding when a line was deleted 2025-06-19

    git blame is a very useful tool for finding out when a line in a file was added or changed. I mostly use it through Magit, and it’s helped identify when a regression was introduced on many occasion...

  • What Actually Destroys Jobs 2025-06-16

    Employment destruction is a complex issue driven by technological advancements, economic imbalances, and structural changes in industries. While technology is often cited as the primary culprit, it...

  • Compile-time vs. runtime with C++ templates 2025-05-31

    I’ve been brushing up on C++ via the excellent Learn C++ online resource, and found templates to be one of the most interesting aspects of the language1. Templates are C++’s implementation of gene...

  • SQL query planning 2025-04-04

    I’ve been working my way through The Red Book, a reference collection of seminal database papers with commentary by the most prominent researchers of the past few decades. One of the most interesti...