
I shipped a new feature for my blog today: the Newsletters page, which offers an index of all of the newsletters I've sent out, both my free weekly Substack and my monthly sponsors-only updates. I built the feature almost entirely using my voice, chatting away to my laptop while I cooked dinner.
Codex voice mode
I used the ChatGPT desktop app for this, in the Codex tab, using the voice conversation mode, running against a local development environment. Here's what that looks like:
...
Faster Python startup with lazy imports
lemire.me
When a Python program starts, it needs to load all its dependencies ( import ). With the upcoming version of Python, it is possible to use lazy imports instead.
lazy import json
lazy from decimal import Decimal
In this instance, the name json is no longer the module, but a mere placeholder object. The actual import only happens when you use json . If you never use json , the module is never loaded.
How much does it help? Let us measure.
I wrote a toy command-lin...

Hello,
Welcome to another Friday.
Asteroid damage changes Bilka
In 2.0, asteroids dealt damage to space platforms based on the relative speed of the asteroid and the collision would cause the asteroid to slow down. After an asteroid dealt a certain amount of damage, it would simply disappear.
It was a bit strange to have the asteroids suddenly disappear into thin air with no indication of when it would happen.
As you may have already experienced, version 2.1 reworks this...

The Firefox team just launched a website that allows users to rank the Interop 2027 proposals that they care about. And I care about things - for selfish reasons and for work. And that's a challenge. I want to rank things that only benefit me and my blog but I also want to rank things that would make my daily job easier. Or, at least, allow me to delete a lot of code. So I settled with a balance of five for each.
My final ranking:
CSS random() function
CSS corner-shape property
C...

I've had lots of hobbies over the years. To name a few off the top of my head, there's been fish keeping , guitar, harmonica, fountain pens, watches, motorbikes, this blog, web development, 3D printing, tattoos, digital minimalism, table tennis, and many more.
Some of my hobbies have stuck, but I've never gotten so enthralled into a hobby that I become obsessed. Instead, there's generally 4 steps in the process:
I decide I want to take up a hobby.
I read, watch videos, and obsessive...
On Git Refs
Oct 7, 2026
I have recently improved my mental model of Git. Consider these two git commands:
$ git fetch origin master
$ git switch -c my-feature origin/master
Do you understand why is it origin master in one command, and origin/master
in the other? I didn’t, until a few weeks ago!
My understanding was that git is a content-addressable database. Git stores
commits, a commit is identified by the hash of its content, and the content
of a commit is, prim...
What's up on the smolweb? September 2026 roundup
2026-10-05 17:00
Autumn is here, the AI slop tide keeps rising on the big web, and the smolweb responds by growing quietly but noticeably. Here is a roundup of what happened on the small web, the smolnet, and around the Gemini protocol in September 2026.
Geminispace approaching 3,600 active capsules
The Lupa crawler (Stephane Bortzmeyer's Geminispace survey) currently lists 5,215 known capsules , with 3,567 recently connected (page upda...
Chandrayaan 3’s rigorous Moon landing approach reminds us of the testing regime key to future global success in space
jatan.spaceThe Chandrayaan 3 lander Vikram on the Moon, imaged by the mission’s rover Pragyan on August 30, 2023. Image: ISRO On August 23, 2023 at 12:33 UTC, India’s robotic Chandrayaan 3 robotic lander completed the 19 minutes of its nerve-wracking autonomous descent to the Moon. In one piece and upright, it now lay near the lunar south pole at the coordinates 69.37°S, 32.32°E . The triumphant touchdown made India only the fourth nation to achieve the feat of a soft lunar landing, following the...

Ireland had 2,839,300 people in work in Q2 2026, while the CSO’s latest monthly estimate put unemployment at 149,500 in September 2026. This guide brings together employment in Ireland statistics from the Labour Force Survey, monthly unemployment releases, Q2 2026 earnings data and Eurostat’s August 2026 comparison, covering jobs, sectors, pay, gender, age and working from home.
Employment In Ireland Statistics
2,839,300 People in employment, Q2 2026
5.0% Monthly unemployment rate,...

New in the SumatraPDF pre-release builds :
Bake PDF File
New Bake PDF File command ( CmdPdfBake ) in the Ctrl + k command palette turns interactive form fields and annotations into static page content and saves the result as a new PDF, which then opens.
Show PDF Outline
New Show PDF Outline command ( CmdShowPdfOutline ) in the command palette shows the document’s outline (table of contents) as text in a window.
Tab Groups menu
...
Shield AI and U.S. government investment in X-BAT reaches $400 million
shield.ai
$150 million agreement modification supports Defense Exportability Features and is matched by $150 million in Shield AI capital
WASHINGTON (October 8, 2026) — Shield AI today announced that the U.S. Navy has executed a $150 million modification to its existing Other Transaction (OT) agreement with the company to advance X-BAT, an AI-piloted, vertical takeoff and landing (VTOL) fighter aircraft.
The Navy executed the $150 million modification with funding from the Office of...
My favourite tracks on The Life of a Showgirl: Encore
jamesg.blogI visit the Taylor Swift Subreddit regularly to follow along with news in the community, to read fun questions, and to see art made by fans. Lately I have been thinking along the lines of slashdiv that it would be good to see more fandom discussions in the small web . Then, last night, I thought “I should write something explicitly about Taylor Swift!”, adding to my slowly growing collection of posts on her music, now aggregated under their own category page .
With the meta commentary ou...
Monte Carlo simulations (or methods ) is the technique of applying
randomness and the Law of large numbers
to the solution of various scientific and engineering problems. One of its
first documented uses was by Stanislaw Ulam and John von Neumann for nuclear
weapon simulations after WWII [1] .
In this post I want to provide examples of some simple uses of Monte Carlo
simulations. We'll start with the classical example of calculating the value
of \pi by throwing darts.
Estimating pi
...
Everyone knows how to read a book. Beginning at the first page, you read each word in order 1 , stopping periodically to think, until you arrive at the last word on the last page. That’s how you read a newspaper article, or a poem, or an email. Why would reading code be any different?
Why code is different
English text is designed to be read in order. In fact, there are almost no constraints on the order of a text aside from how you want the reader to consume it. In writing this post, I co...

In response to my last fragments (probably the bit about us worrying if LLMs have consciousness when we when we should be wondering why they don’t have a conscience) “Metalanguage” replied :
we shipped the id and forgot the superego. classic software lifecycle.
I don’t know what was on their mind, but their post immediately made me think of the classic 1956 movie Forbidden Planet. Plenty of sci-fi, and other literature, have explored humans creating technology with uninten...
My blog began as a blosxom (Perl) site running on a VPS. In 2011 I
moved to the new GitHub Pages , with the site generated statically
by Jekyll (Ruby) on a GitHub server. It was a no-brainer: easier,
faster, and cheaper, better in every way. After 15 years of Jekyll, and
spurred by a post on m4 , this week I replaced it with a new,
custom-built static site generator , dubbed ssg , in “C with
templates” C++20. The ~8KLoC source closely follows my personal coding
style including tem...

Clara saw this live webcam feed of Sydney making the rounds earlier this week, and it’s a lot of fun. My colleague suspects the camera is mounted behind his old school in Kiribilli, on the northern shore of the harbour.
We have it on the TV during the day when we’re working from home. Our favourite is seeing the cruise ships pull up to the terminal, and the trains crossing the bridge. A sailboat or two is nice as well.
By Ruben Schade in Sydney, 2026-10-09. Clara saw this live we...

The first time I used a coding agent, I was mesmerized . Before the agent, I was copy/pasting between my IDE and an AI chat interface. It was amazing to see an agent edit files directly and fix its own errors in real time.
After a few days, the honeymoon wore off as I encountered frequent bugs. The agent would stop responding entirely until I restarted it. Development workflows felt stiflingly primitive, and the agent would often declare tasks finished when work had barely begun.
This was i...

PLATO V terminal, via Wikipedia . In 1960, a team at the University of Illinois released the first version of their PLATO “computerized instruction system,” a network of what would eventually be thousands of computer terminals connected to large mainframe computers. Users of PLATO could use the system to learn about various topics, with courses on subjects such as chemistry, math, music, and foreign languages. The first iteration of PLATO used a simple TV screen for a terminal display, bu...
Coming up on the anniversary of being laid off,
I’m thinking about what I’d like to do differently in year 2:
Find people in the east end of Toronto who want to play some jazz once a week.
I’m currently commuting to the west end to do that:
I enjoy playing, but the travel time is wearying.
If you’re interested, I’m easy to reach .
Find a small F&SF writers’ group, also in the east end, to swap crits with.
I’m currently getting great feedback from a frie...
I wrote the post below last week. That was a quaint and quiet time. Last night OpenAI released a treasure trove of 722 manuscripts solving 372 major open problems in mathematics including from theoretical computer science: A proof of the unique games conjecture (formalized in Lean) A full derandomization of randomized log space Matrix multiplication in \(n^{2.25+\epsilon}\) time (formalized in Lean) And many many more. I had Claude put together a webpage to make it easier to explore ...

More than a year ago I wrote a few posts here that recommended people not to
load custom tools into their context (or
MCP servers) but to just
use more scripts. Most importantly I wrote that Code Is All You
Need and I wrote about that MCP needs
code . With Pi 1.0 we now added MCP support via Codemode
which in some ways is a long time coming, but then also maybe somewhat
surprising to some. So I want to share some updated thoughts on this blog on
what this all means.
What Are Tools
Wh...

Map of golden mussel observations through time. Data sources: CDFW and iNaturalist
Since its initial appearance in California in October 2024, the golden mussel, Limnoperna fortunei , has accomplished Big Things. These little mussels, native to the Pearl River Delta in China, have taken off from their initial foothold in Stockton to spread all the way south to San Diego, and have been spreading northward as well in recent months. It has been an extreme couple years for CA invasion scie...