Elizabeth Warren recently proposed a wealth tax as part of her plan to partially pay for single-payer healthcare. I think this is significantly worse than other methods of raising the same amount of revenue from the same group of people, so this article describes the problems with wealth taxes plus an alternative if we want to raise tax rates on the rich (spoiler: just raise the income tax rate).

Sketchnote: Alice stands atop a tall stack of coins labeled "saved — taxed every year" while a red hand takes a coin from the top; Bob stands amid empty party detritus labeled "spent — taxed $0".

Read more

I wanted my blog to show “top” posts first rather than recent, but ranking by hits finds boring reference articles, and ranking by LessWrong or Hacker News karma ignores anything that wasn’t shared, and is dependent on the whims of frontpage algorithms.

I figured this was a problem for AI, and was going to have Claude rank the posts with an ELO-style ranking, but it said that would require several thousand API calls and convinced me to let it rank blocks at a time instead.

Sketchnote "ranking blog posts: pick your poison": sort by hits dumps posts into a dusty filing cabinet, sort by karma keeps only shared posts and ignores a "never shared" pile, and sort by AI picks out "the interesting ones".

Read more

Running Claude Code locally is annoying since you have to deal with permissions and agents interfering with each other (and you have to be at your computer), but running Claude Code on the web is annoying because the cloud environment is so limited.

What if we could run Claude Code for the web but on our machines? Through the magic of Claude Code writing Claude Code code, I made a local app for this.

Announcing Clawed Abode: A web app you can run on your own home computer which runs Claude Code without permission prompts in ephemeral containers, and with the ability to install packages, run containers, use caches, and access the GPU.

Clawed Abode session showing Claude running nvidia-smi, displaying an NVIDIA GeForce RTX 3060 Ti GPU with CUDA 13.0 available inside the container

Read more

I was thinking about an approval-style voting system that could end with a large number of ties, and ran into the problem of how to break ties in a provably-fair way that doesn’t depend on candidates trusting each other and won’t make voters’ eyes glaze over.

I think I found a solution which is provably-fair, but it might still cross over into eye-glazing territory. I don’t know if this is practical (or novel), but I’m writing it up in case anyone else finds it interesting.

Complex diagram with three green boxes on left (Alice-0, Bob-1, Carol-2) with multiple arrows branching to two calculation diamonds in the center: a green diamond showing 0+1+0=1 and a yellow diamond showing 1+0+0=1; arrows continue to two yellow result boxes on right (Alice-0, Carol-1); a curved arrow labeled 'Winner (1)' extends from bottom left

Read more

Today, I found an interesting article about password timing attacks. The basic point is that if you check a password one character at a time, the amount of time it takes to receive a “bad password” response tells you how many characters you got right.

Read more