For the past month or so, I have been on a digital declutter. I only
realized this today, because this was not something I planned. I guess
it just happened.
This past weekend was the latest in an ongoing series of (massive) “No Kings” protests held around the country (and in some cases around the globe). The latest one was part of a “…
If you're running anything on PHP it's vital you upgrade - today's updates (across the entire PHP 8.x line) address two remote code execution holes, and there have been exploits …
LiteLLM 1.107.0 on PyPI ships a .pth credential stealer and a sitecustomize.py backdoor that run on every Python start. How the implant got in, what it steals, and indicators of compromise.
For a software developer position, there isn't a trick to finding the best candidate. Your criteria do not determine how solid the candidates will be. Everyone is submitting 500 applications a month n
Well this is delightful: I released Battle Drones yesterday under an Apache 2.0 License and there's already a French language fork which reskins the game to take place in steampunk …
The curl project has decided to alter its vulnerability disclosure program procedure and starting October 26 2026, we insist that all vulnerability reports submitted to us that are deemed to be severity LOW or MEDIUM should instead be submitted as issues in ou…
The DuckDB team is happy to announce that today we're releasing DuckDB version 2.0.0 LTS, codenamed “Cinnamon Teal” (Spatula cyanoptera). This is our biggest feature release so far, and it ships a polished version of the Quack protocol, asynchronous I/O, a fir…
sparqlite is a Rust-based SQLite loadable extension that stores RDF quads in ordinary SQLite tables and executes SPARQL 1.1 queries and updates natively inside the SQLite process. Its integer-encoded terms, …
One of eMudhra's certificate authority private keys is the number 4.
Not a number that starts with 4, or the number 4 followed by a few hundred random digits, just, 4... Another one is 56, and another is 115. I know, because I recovered all of them from their
On Friday Oct 2, 09:35am, 333 infected exit nodes started a coordinated campaign to intercept SSH connections and gather as much unencrypted data as possible.
This morning, two critical PHP Security Advisories were published:
RCE via OOM corruption (9.2/10) RCE via stale global state (9.2/10) If you're running PHP for any service, you need to upgrade immediately to 8.2.35, 8.3.36, 8.4.27, or 8.5.12. And if you use R…
The PHP development team announces the immediate availability of PHP 8.2.35. This is a security release fixing two critical vulnerabilities (CVE-2026-109618, CVE-2026-109619) that can allow unauthe...
Every year, browser vendors collaborate via the Interop project to synchronize their efforts on new HTML/CSS/JS features. This year, there’s a ton of super exciting features being considered! In this blog post, we’ll explore the CSS of the future, to get a gli…
We want to inform you of an upcoming PHP security release that addresses
two critical vulnerabilities (both rated CVSS v4.0 9.2, Critical).
The release is scheduled for Wednesday, 21 October 2026 at 14:00 UTC. We
encourage all PHP users to prepare now so you …
This is very, very bad news: The private keys of eight eMudhra intermediate CA certificates have been compromised. They chain to roots trusted by the Mozilla, Microsoft, Apple and Chrome …
For the past month or so, I have been on a digital declutter. I only
realized this today, because this was not something I planned. I guess
it just happened.
So I've posted before how I think ClickHouse is great. Its columnar storage is fast, it has amazing compression. I won't bore you with those details, you can see them all here: https://matduggan.com/clickhouse-is-winning-the-observability-wars/
However all te…
I found out a few days ago, that regardless of your permission settings on
connectors, Claude auto-mode is able to use them. This violated my expectations,
and exposed me to
the lethal trifeca of AI agents.
Claude Code memory usage, measured: three sessions ran 32 processes and MCP servers outweighed Claude in two. A RAM budget for running sessions in parallel.
On 18 August I deleted every comment in a 29-day-old codebase: 71,660 lines across 742 files. Agents wrote most of them, and agents believed all of them. Here is where the reasons live now, what broke, and how the comments came back.
This article was written entirely by a human, for humans.
I tend to get excited about certain chips. This time, it was a microprocessor: The Rockchip …
My latest vibe coded game experiment is a Command & Conquer style RTS (Real Time Strategy) game called Battle Drones (play it here). Unlike my previous experiments, this one is …
My comparison of ChatGPT Dot, Grok Bot, and Autumn: natural voice, fewer permission prompts, and why my custom Claude Code assistant remains my primary agent.
What it actually took to get a driving licence in Germany, why I started reading about flying lessons instead, and the quiet problem with a system where the people selling the lessons also decide when you are ready.
Voxtral 3: Mistral's voice agent SDK for real-time speech in 50+ languages — accurate transcription, emotional TTS, deep tool use. EU-hosted or self-deployed.
Recently I found an open source project that met most of my needs. However, there was a missing feature that I needed for my workflow.
I looked for signs of life, last commit was nearly a year ago, oof.
I was lucky to find someone else's PR for the exact feat…
One of my favorite labs in college so far has been my Digital Logic Design Lab. Two years ago the final few labs of the course involved building a VGA driver. While that might sound intimidating, it was a surprisingly attainable project. (Even if an inordinate…
Stars measure interest, not usage. After a year of MindRoom, with forks of a Matrix client, two Matrix servers and a Matrix web client, plus 126 workarounds for one AI framework, my rule is: depend on what millions of projects use every day, roll your own when…