David Crawshaw
banner
crawshaw.io
David Crawshaw
@crawshaw.io
2.8K followers 180 following 320 posts
ceo exe.dev, tailscale co-founder, programmer
Posts Media Videos Starter Packs
FWIW the codex high model has been reliably outperforming claude code for me across several domains if I disable its sandbox (isolate it on its own machine instead). Worth a couple hours experimentation.
The Mac Pro comes with an M2 Ultra, and the Apple Studio comes with an M3 Ultra.
What is going on with Ubuntu?

$ aws
Command 'aws' not found, but can be installed with:
sudo snap install aws-cli # version 1.42.58, or
sudo apt install awscli # version 2.14.6-1

$ sudo apt install awscli

Package 'awscli' has no installation candidate
Filip's analysis is supported by the various attempts I've seen to compare RC generally as a GC algorithm: it uses more CPU time to manage the same amount of memory. It can be more predictable about when the CPU time is used.

Unless you are heavily concurrent, then RC is awful all the time.
Used to: boot cdrom to install OS

Now: visit web site of board management console, insert virtual cdrom from across the network using web serial console, set as primary boot device in bios

Glad we made that easy.
tools are really bad at surfacing co-authored-by :(
Old-school memory management technique.
When you're talking to people about developing web sites it is easy to get ground down by constant React talk and accept it as an inevitability. If you ever find yourself here, hop on a plane and try to use GitHub Issues. Esp. if you remember that it used to work, before React.
You can put your prices on your web site. You don't need to make prospects "contact sales" for pricing.
It is surreal flying in a plane equipped with Starlink. I may as well be sitting in the office. Forgot to git clone 2GB of nonsense before getting on the plane? No problem, it runs as fast here as it does in my living room.
iOS 26 has broken half the complications on my watch, with the weather asking me every hour if it is allowed to know my location (and then not telling me the weather).

The Earth still spins. But I am surprised this did not come up in QA?
You can ship a container without a shell in it. There is no law against it. I will sigh quietly.

But if you ship a container with a shell and without the ps command, I will judge you.
Most SQLite databases have a table with a single row for program metadata. You can enforce that there is only one row with:

CREATE TABLE metadata (
id INTEGER PRIMARY KEY CHECK (id = 1), -- one row
...
);
Android is a good chunk of the way there (and in fact is the pioneer, with MTE), so I expect it to quickly follow. The magic here is extending MTE to the point where we can rely on it, so we can get on with programming.

Until it hits non-mac laptops… dodge security teams? :)
Much more dramatically: I would shift some software from garbage collected languages to C++ (or some equivalent) if the safety concerns evaporated, because it becomes a pure productivity/performance tradeoff. Exciting times!
Nah. I'm not paying some huge productivity hit just for that. We avoid crashes by investing in testing.
C++ is good enough again? Will any arguments for productivity-costing modern language techniques like borrow checking survive if memory tagging actually works? Will security teams ban sensitive work happening on x86 laptops and desktops for 5+ years? Lots of change ahead!
This comes to macOS next year. The security argument for Chrome over Safari disappears? The hardware reaches Graviton three years later, but retooling the linux kernel and userland around typed allocators takes at least 5-8 years? Until then all computing worth doing has to be on a Mac?
I suppose this problem has always technically existed for zip because the spec has a lot of options in it. But zstd is one I’ll actually use.
The new format seems great. If zstd zip files were called zzip there would be no issue. But if we don’t I can have a zip file, and an old Go program that reads zip files, and the program will fail on it.