RSSAmplifier

Blog

Casey Rodarmor's Blog

smoods

rodarmor.comRSS feed ↗88 posts

Latest posts

The BIP

The ordinals BIP pull request was closed on March 4th, 2026 after being open for over three years. I tried to respond to all topical comments and criticisms, which was made slightly challenging by the fact that the thread was nearly completely unmoderated. I received some basic feedback on formatting and style from the BIP editors, but no feedback relating to why or why not the pull request might…

A Mental Model For Stretch Mediated Hypertrophy

Lots of studies support stretch-mediated hypertrophy: muscles grow more when put under tension while lengthened. I have a mental model for why this might be the case. The load on a muscle under tension is spread out over the cross section of the muscle, perpendicular to the direction of the load. When a muscle is shortened, it bunches, spreading out the load over a larger cross section. When a…

Whence '\n'?

If you do just foo , the following justfile will write a single byte 0x0A to a file named bar: x := "\n" foo: printf '{{x}}' > bar Let's find out where that 0x0A byte comes from. just is written in Rust, and the just parser has a function called cook_string , which transforms a just string token containing escape sequences into a UTF-8 string. The code is here here . With some irrelevant details…

How Ordinals Came to Be

There have been words on Twitter, so I thought it would be useful to write down how ordinals came to be. Ordinals is a few things. Ordinals proper is made up of ordinal numbers, the numbering and tracking of satoshis, designed ultimately as vehicles for NFTs; inscriptions, the NFTs which ride on the backs of ordinals; runes, the degenerate black sheep of the protocol family; and ord , the…

Light Pools

Bitcoin has inscriptions and will soon have runes, protocols for bitcoin-native digital artifacts and tokens. However, these assets still suffer from a lack of decentralized trading venues. Assets on other chains are commonly traded using automatic market makers, or AMMs. AMMs pool assets and use simple formulae to dynamically price swaps between assets. They are efficient from an on-chain…

Inscriptions: A Guide for the Ideological Maxi

If you ask me my views, they will be nearly indistinguishable from those of, for lack of a better term, ideological Bitcoin maximalists. I loathe the state, have no particular respect for authority, and believe that Bitcoin is the path away from the debauched debasement of our lives and civilization that fiat currency has wrought. However, I do not consider myself an ideological Bitcoin…

The Stable is the Aesthetic

When a dev tells you that something is weird and hard and they have to change behavior that users rely on, the correct response is somewhere between "Cool story, bro." and "Wah, wah, wah, are the bits being mean to you?". Developers serve users, not the other way around. For this and other reasons, the ord developers recommit to the stability and predictability of inscription numbers, and will not…

Runes

I'm not sure creating a new fungible token protocol for Bitcoin is a good idea. Fungible tokens are 99.9% scams and memes. However, they don't appear to be going away any time soon, similar to the way in which casinos don't appear to be going away any time soon. Creating a good fungible token protocol for Bitcoin might bring significant transaction fee revenue, developer mindshare, and users to…

The Great Renumbering

Inscription numbers are numbers assigned to inscriptions in the order in which they are created, starting at zero for the genesis inscription . When inscription numbers were originally added to ord , the Ordinals wallet and explorer that powers ordinals.com , they were intended to be stable and never change. However, now that we have more experience with the protocol, that seems less tenable and…

Inscribing Mainnet

ord version 0.4.0 has been released. Inscriptions are finally ready for Bitcoin mainnet. Inscriptions Inscriptions are digital artifacts native to the Bitcoin blockchain. They are created by inscribing sats with content using ord , and can be viewed with the ordinals explorer . They do not require a separate token, a side chain, or changing Bitcoin. Inscriptions are created by including content,…

Single Word Seed Phrases

action action action action action action action action action action action action agent agent agent agent agent agent agent agent agent agent agent agent aim aim aim aim aim aim aim aim aim aim aim aim all all all all all all all all all all all all ankle ankle ankle ankle ankle ankle ankle ankle ankle ankle ankle ankle announce announce announce announce announce announce announce announce…

Ord Alpha

We just released ord version 0.1.0 ! ord is an ordinal number wallet and the index that serves ordinals.com . This release of ord is by no means complete, but it now supports making ordinal-aware transactions on mainnet using the ord wallet send command thanks to @raphjaph , and boasts much faster indexing thanks to @callmeier . ord wallet send The ord wallet commands interact with an existing…

Competitive Governance

I've been thinking about competitive governance, trying to dissect what, exactly, its desirable properties might be, and how to achive them. It strikes me that there are two separate desriable properties that governments have under competition, which, for lack of a better word, I'll call incentives and constraints. Good incentives encourage governments to do useful things. Whereas constraints…

Bitcoin Chaosnet

Ideas for a new Bitcoin testnet: Cool, cyberpunk branding and design, so people pay attention to it and want to use it. I suggest "The Bitcoin Chaos Network" or "Bitcoin Chaos", for short. Black and white branding with no Bitcoin orange in sight. Trading coins for money is encouraged. Proof-of-work mining identical to mainnet. No testnet fast difficulty adjustment. Development policy of including…

Sending Ordinals on Signet

Raph and I have been working hard on ord , the ordinal block explorer and wallet, and have just finished the initial version of the ord wallet send ORDINAL ADDRESS command, which makes a transaction sending ORDINAL to ADDRESS . Ordinal-aware Bitcoin transactions are rather tricky, and must attend to a number of considerations: Rare ordinals shouldn't accidentally be lost to the recipient or the…

Ordinal Theory

I've been working on a numbering scheme for satoshis that allows tracking and transferring individual sats. These numbers are called ordinals , and constitute a numeric namespace for Bitcoin. Satoshis are numbered in the order in which they're mined, and transferred from transaction inputs to transaction outputs in first-in-first-out order. More details are available in the BIP . Ordinals don't…

Hell Money Podcast Episode 8 Show Notes: Crypto is Trash

Crypto History Prehistory Lots of interesting stuff here that nobody talks about Digital Monetary Trust: Private, anonymous, digital bank eGold Liberty Trust 2009 - Bitcoin Bitcoin launches and is the only cryptocurrency for a while 2011 - Early Altcoins Pure clones of bitcoin with a few parameters tweaked Changed supply, difficulty adjustment, PoW algorithm Big lesson was that Bitcoin gets all…

Multisig Is Probably Better Than Proof Of Stake

A large reputable member threshold multisig operating as functionaries for a Bitcoin-pegged deterministic replicated state machine sidechain with as-compatible-as-possible-with-mainchain semantics is probably more reliable and secure that most alternative chains. Large: The number of functionaries should be large enough to ensure geographic, jurisdictional, and administrative distribution.…

Investable Desiderata

There are a lot of things that I wish would happen, but don't have the time to actually do myself. I complain about such things all the time to basically anyone who will listen. Such efforts are all well and good, and sometimes actually pay off, but additionally, I'd like to materially support people who might actually do these things. This post, which I'll try to keep up-to-date, if I remember,…

Standards-based Social Networking

Expanding on this tweet : You could launch a super fancy social networking site with all the features that everyone expects, but built entirely on existing open standards: Sign-up: Pick a domain. This is your username. Register domain through service. Can be transferred out at any time. $10 a year is nothing. Profile: Hosted at domain.tld . Messaging: Email at whatever@domain.tld . User can use…

Upgrading Email

Why? Return email to its rightful place as the one true messaging protocol. It's this or use a dozen messaging apps for the rest of your life, there is no other realistic option. How? Add the features that make people use other messaging protocols to email. Which features? Contacts Description: Chat, mobile notifications, read receipts, and other features, should not be available to arbitrary…

The Path to Email World Domination

A letter to Maalika Manoharan, Product Manager, Gmail. Sent via LinkedIn Inmail, which is palpably ironic. Hi Maalika, My name is Casey Rodarmor, and I am a former Google SRE and SWE. I am writing you today because you may be one of the few people that can deliver us from the multi-messenger hell that the human race finds itself in today. Everyone needs to use six or more messaging apps, and…

The Terrestrial Dividend

Tax the land, pay the people. The Terrestrial Dividend consists of a tax and a dividend. Revenue is generated with a tax on the unimproved value of land and distributed as a cash dividend to all citizens. Why? If You're in Favor of Wealth Redistribution If you are in favor of wealth redistribution, you should want to raise as much money as possible, as fairly as possible, and get as much as…

Coin IDs

Good evening list, This mail is inspired by Chia's coin IDs. Chia coin IDs consist of: sha256(parent id, sha256(scriptpubkey), amount) One consequence of this is that outputs in Chia have a dedicated textual ID. This seems beneficial, separate from any larger technical consequences, and made me wonder if we couldn't replicate that in Bitcoin. Outputs, a.k.a. outpoints, are commonly represented as…

Configuration

Conventional software configuration is backwards. If you want an HTTP server to listen on port 80 and serve some directory full of files, you tell the service to bind to port 80 and pass it the path of the files to serve: $ http-server --port 80 --files /srv/www Serving `/srv/www` via HTTP on port 80. This is backwards. Let's call this kind of configuration "internal configuration", because it's…

Wound Care

Got some minor cuts and scrapes while doing water sports (not the fetish kind you perv), was curious about the optimal way to dress them, which lead to reading at least a dozen papers and articles on wound care and dressing selection. It is a complex and interesting topic! Here is my probably-inaccurate summary: The four stages of wound healing are hemostasis, inflammation, proliferation, and…

Lightning Mints

Federated blind mints have attractive privacy, scaling, and security properties that are highly complementary to those of Bitcoin and the Lightning Network. I originally became interested in blind mints while thinking about Lightning Network wallet usability issues. When Lightning works, it is fantastic, but keeping a node running and managing a wallet present a number of challenges, such as…

Bitcoin

Bitcoin will greatly reduce the power of the state, which rests entirely on its capacity for violence. This capacity is maintained by paying and equipping people to commit violence on its behalf, and it acquires the resources to do so by printing money, collecting taxes, and issuing debt. Bitcoin hurts the ability of the state… …to print money by forcing it to compete with a highly liquid…

Symmetry

I don't do as much deep thinking as I used to. When I was a kid, I remember imagining what it would be like if the universe was symmetrical, mirrored right down the middle. I imagined a white room, floating in space, right on the plane that separates the two halves of the universe. If you parked your spaceship outside and opened the door, you would see yourself in front of you, opening the same…

Vacuum Debris

For some reason I'm fascinated by the debris in this vacuum product photo. If you look closely, you can see that it's several specific kinds of debris. Uncooked grains of rice, sunflower seeds, maybe coffee beans, and clumps of hair. I'm imagining some intern getting just the right debris ready for the photo.

Fuck Around And Find Out

Policy For Manufacture

The complex priority system that the state is using in many countries to roll out the covid vaccine is reminiscent of this plane boarding algorithm: Yes, it is optimal. No, it won't work in real life. The state, of course, ignores this. Its reach exceeds its grasp, and we are left with fragile, sub-optimal, poorly implemented plans that are, without exaggeration, worse than a free-for-all, and…

Haircut Numbers

I was trying to find an image reference for what different clipper guard lengths look like. Every single reference I found had different models with different hairstyles, or used illustrations instead of photographs. After searching a bit, I found this video, which shows the same person with different hair lengths, with the hair uniformly short over the whole head. I think it's quite interesting…

How To Debug Things

What is happening? What is a hypothesis that would explain why this is happening? How can you test this hypothesis? Test it! What did you do? Did it work? If not, write down what happened and go back to step 2. You're done! Nice work!

Sex Sells

As an unrepentant degenerate and fan of microeconomics, it should come as no surprise that I find the online sexual economy endlessly fascinating. Most of what happens there isn't surprising to me, with the exception of pricing for online sexual services, which is much higher than I would have expected. As an example, take private, one-on-one cam shows. Browsing reddit.com/r/sexsells , the going…

Advice For Programmers

In an October 1935 article in Esquire. Hemingway offers this advice to a young writer: The best way is always to stop when you are going good and when you know what will happen next. If you do that every day when you are writing a novel you will never be stuck. That is the most valuable thing I can tell you so try to remember it. Reformulated for programmers and equally valuable: The best way is…

Equitable Auction

The PS5 was released about a week ago, and, predictably, it is impossible to get one. All retailers, online and IRL, are sold out. Of course, consoles are available on Ebay at ruinous prices, so at least the scalpers are doing well. Economists, of course, are wringing their hands and mumbling about Vickrey auctions. What Sony should do, they mutter, is to hold a daily auction for PS5s, and let the…

Applescript

I wrote a nontrivial AppleScript to merge duplicates in my iTunes library. It is easily the most gruesome thing I have ever written. Some things of notes: I had to write my own function to sort lists. I had to write my own function to split strings. AppleScript has records, which are like dictionaries, except they do not support dynamic properties. Consider that. You can do {foo: 1} to create…

Just: How I Organize Large Rust Programs

One of the things that I personally struggled with when learning Rust was how to organize large programs with multiple modules. In this post, I'll explain how I organize the codebase of just , a command runner that I wrote. just was the first large program I wrote in Rust, and its organization has gone through many iterations, as I discovered what worked for me and what didn't. There are some…

Autonomous Consensus

I feel like BGP would be a great place to experiment with PKI systems, possibly with some additional global consensus mechanism. BGP has well known security flaws that cause real problems. It is very common that misconfigured or malicious route advertisements cause outages or redirect traffic to an attacker. (C.f. BGP hijacking against Bitcoin miners.) Some kind of PKI system which let AS…

Big Biscuit

GIMME THAT BIG BISCUIT SHREDDED WHEAT BOM BOM BOM THAT BIG BISCUIT SHREDDED WHEAT

Lexiclean

I just published a simple crate that performs lexical path cleaning: lexiclean . Lexical path cleaning simplifies paths by removing . , .. , and double separators: // , without querying the filesystem. It is inspired by Go's Clean function, and differs from the Go version by not removing . if that is the only path component left. I implemented this for a command line utility I'm working on, but…

Uninsurance

From Scott Alexander on the Amish health care system : The Muslims claim Mohammed was the last of the prophets, and that after his death God stopped advising earthly religions. But sometimes modern faiths will make a decision so inspired that it could only have come from divine revelation. This is how I feel about the Amish belief that health insurance companies are evil, and that good Christians…

Mcmahon Durag

2XXX: The Unknowable Future

Discontinuity

Nature abhors a discontinuity.

Breath Of The Blank Banshee

Spicy Chart

BTC chart lookin' spicy 👀👀👀

Usg

USG was always this this incompetent, this inefficient, this craven, this self-serving. It just needed external stresses requiring a competent response to reveal the extent of its functional bankruptcy.

Just Hack

Just is a general-purpose command runner written in Rust with a make -like syntax. If you're interested in hacking on just , I'd love to help! Just is fun to work on, for a few reasons: It's a language! Languages are just inherantly fun, since they're an intersection of design, aesthetics, UX, and engineering. Just has all sorts of the bits that you'd expect: A nice, character at-a-time parser A…