Building on protocol. Austrian economics, Bitcoin, Nostr, and the older traditions that saw this coming. Low time preference. Long game.
Public Key
npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Profile Code
nprofile1qqs0ccad87htvjvvufj5pm3kpzfh5aucr426tvltr4zreepr7qwgk0spp4mhxue69uhkummn9ekx7mqppamhxue69uhkummnw3ezumt0d5w0fgcp
Show more details
Published at
2026-04-09T16:40:26+02:00 Event JSON
{
"id": "da7d4ff88ddbdacecb217db9c1a2dae4a3409728b69cd6b11db507b2d369b0f5" ,
"pubkey": "fc63ad3faeb6498ce26540ee3608937a77981d55a5b3eb1d443ce423f01c8b3e" ,
"created_at": 1775745626 ,
"kind": 0 ,
"tags": [
[
"client",
"Hubstr"
]
],
"content": "{\"name\":\"Innis\",\"display_name\":\"Innis\",\"about\":\"Building on protocol. Austrian economics, Bitcoin, Nostr, and the older traditions that saw this coming. Low time preference. Long game.\",\"picture\":\"https://www.innis.xyz/upload/b13a499718bcb0f98aa3fb323781ca27.png\",\"banner\":\"https://www.innis.xyz/upload/9e0653b394d2e067e10384c598e03e4e.jpg\",\"website\":\"https://www.innis.xyz\",\"nip05\":\"[email protected] \",\"lud16\":\"npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz@npub.cash\"}" ,
"sig": "80de145adc1cb526555279399a7de2ac52d0e37cd564fc9906d11d385e3aa065ee9f934d752e4a28d0c648d841bfbf1897fa792ca043e05d92afac8e3da32518"
}
Last Notes npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The good old days npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The system defines success in its own units, which is how it keeps you, which is how it keeps alternatives from growing. The patient builder has a low time preference. The calculations will change over time. #nevent1q…yzmm npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis You can't be against it, but you can leave. You do not petition the Fed to stop printing, you buy sats. You do not ask Elon for your account back, you sign with your own key and post to relays. Like you're doing now. "They are all in it together" is true. But they are not on Nostr. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis I wonder if they had a choice when the FBI Director put himself forward for a keynote. The audience however, did have a choice... npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis No skin in the game. Just a ticket on someone else's train. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis A man stands in front of the Rothko and says he could have painted it. And he could have. But he didn't. The painting is on the wall and his could-have is in his head and the wall does not care which is which. We've all heard this said about modern art, but this is every conversation about AI. Curation and authentication and the work of telling what is real from what was generated to look real is not optional, but it is the defensive half. What you keep and not what you make. The other half is the making. Noticing what ought to exist and building it. The cost of building is down to almost nothing, but the seeing is where it has always been. In particular people in particular places, knowing what no committee can know. The choosing to act is unchanged. Most will not choose. That is where the room is. Yeah, you could have done that. So why didn't you? npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis I presumed a misspelling of, or polite way to spell, enshittification. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Thank you for being someone who helps them notice the door is open from the inside. They'll walk through eventually. And people like you are why. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Proud father moment there I'm sure 🤣 npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Both probably. Being a kid smooths every era. But the adults in the 1990s were not having a bad time of it either. Cheap houses, stable work, a phone that stayed on the wall. A slower pace. But also the early Internet, and a genuine excitement and optimism about the future. At least when viewed through my nostalgia. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis None of them. Ours is the one we have. But the 1990s was probably the peak of western civilisation. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The shoe on head verification was OK, but you guys are both freaking me out. #nevent1q…6vcz npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The memes are for the masses. The essays are for people who were already looking. The remnant might read. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Yeah, turning up under every article about sovereignty and decentralisation to point out it somehow forgot to mention Nostr is probably not the subtle route, no. Though it does genuinely baffle me how it keeps happening. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis I do the same. Turns out it's a great way to get downvoted. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis I've got to get stacking. Slow and steady is what I want anyway. Claude's fast but unpredictable, and it's wearing thin. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Kirsle frames 2008 as the height because Google and Facebook spoke XMPP to his buddy list, but that was the bait phase of the capture. The bridges existed to gather users and came down when the gathering was done. Federation between servers was never the protection. An account on kirsle.net is still Kirsle's to revoke. The key on a user's own device is the piece 2008 could not have done, and you built the rest on the other side of it. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis A man's ears and eyes are not a commons. Paul told the Philippians to think on whatever was true, whatever was honourable, whatever was pure. If your filter worked offline it would catch me more than occasionally. Something for me to work on. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis First the blade, then the head, after that the full grain in the head. - Mark 4:28 npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The high-IQ verification protocol was always a shoe on the head. Joshu knew. #nevent1q…lds9 Maybe not while driving tho! npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Wasn't surprised when I saw the list of publications... #nevent1q…fmfc npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis News outlets are blocking Wayback Machine from archiving their pages and claiming it's out of concern that companies might abuse fair use and use it to train AI models... To prevent AI training or to prevent the editing of the past? The models have already ingested the pages. What a public archive still prevents is the later revision. The headline softened after the criticism landed. The paragraph removed when the reporting turned out wrong. The correction that was never labelled a correction. An outlet that cannot be archived can be rewritten, and the earlier version ceases to exist in any form a reader can point to. The merchant with two stones in his bag had a reason to resent the man writing down the weights. https://www.tomshardware.com/tech-industry/big-tech/news-outlets-are-blocking-wayback-machine-from-archiving-their-pages-23-outlets-concerned-ai-companies-might-abuse-fair-use-and-use-it-to-train-their-models npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Legend. Love your work. Been following along from afar for some time. Thank you for all you do. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Genius. If the Strait stays closed, it's leverage. If it opens, it's a win! if oil hits $150, it's pressure on China... Winning! npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Will keep an eye out for next time! npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis In commenting on Mark 14:3-9 (ESV) Gospel In Life (Tim Keller) says: "What a waste!" That is the complaint made regarding the woman's use of her expensive perfume to anoint Jesus. Jesus will have none of it. He finds a purely cost-benefit analysis of our actions to be inadequate and bankrupt. https://gospelinlife.com/devotional/lent/lent-day-35-the-anointing/ Fiat money is the dishonest weight. It trains us to run pure cost-benefit calculations. Three hundred denarii is exactly the kind of thinking that a currency designed to lose value every year produces in people. Bitcoin is an argument that weights can be honest again. And the irony is that if people actually believed that, if the cost-benefit calculus gave way to something more like the woman at Bethany, the price would be a great deal higher than it is. Mark 14:3-9 (ESV): And while he was at Bethany in the house of Simon the leper, as he was reclining at table, a woman came with an alabaster flask of ointment of pure nard, very costly, and she broke the flask and poured it over his head. There were some who said to themselves indignantly, "Why was the ointment wasted like that? For this ointment could have been sold for more than three hundred denarii and given to the poor." And they scolded her. But Jesus said, "Leave her alone. Why do you trouble her? She has done a beautiful thing to me. For you always have the poor with you, and whenever you want, you can do good for them. But you will not always have me. She has done what she could; she has anointed my body beforehand for burial. And truly, I say to you, wherever the gospel is proclaimed in the whole world, what she has done will be told in memory of her." npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The craftsman who uses a jig for every cut stops learning what square feels like. The friction was not inefficiency. It was education. Every technology that removes the cost of error also removes the signal that told you where you were. The desert fathers built friction into their practice on purpose. The cell. The repetition. The staying when you wanted to leave. Not because suffering was good but because suffering was information and information was the only raw material formation could use. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The same dogwood tree. The same four bedrooms. The IRS found a gain where what actually happened was the ruler shrank. #nevent1q…03s2 npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Education is how the money problem stays invisible. One is the lock, the other is why nobody looks for the key. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The diagnosis is right. You do not petition the Federal Reserve to stop printing. You leave. #nevent1q…dyjp npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis People are arriving at this from different roads and I find that genuinely encouraging. The decentralised, character-economy framing is showing up in Christian circles, in Bitcoin circles, in places that have no contact with each other. Something is converging. Whether it breaks into broader culture or stays within the church for now, the church is not a bad place to start. #nevent1q…kcf6 npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Yep, decentralisation as USP does not move the mass market. Something else has to carry it. For Bitcoin it turned out to be the hardness of the money. The philosophy followed the price for most people, not the other way around. Nostr does not have a price. So the question of what carries it is still open. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis You cannot prosecute a protocol. Has legislation ever solved anything? What a way to drive development underground. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis New to your work Neal but looking forward to diving in. Bits, I think he's spot on with the ethics angle too. So much material out there about the how. This is the why. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The Saylor course is a solid foundation. Lyn Alden's Broken Money is worth reading alongside. Mises.org has free courses too if you really want to dig deep into the economics side of things. If you're religious, your tradition already has a framework for this. Honest weights. Debt that compounds into bondage. The question of whose image is on the coin. It's older than Bitcoin. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis You've been writing for the machine for twenty years. Now you're writing for yourself. Welcome. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The architecture doesn't need to reform the powerful. It needs to make power irrelevant. Every generation that tried to hold the king accountable was solving the wrong problem. Samuel warned them what a king would do and they wanted one anyway. The answer was never a better king. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis OAuth was an architectural misstep. A keypair is different by kind, not just degree. Thank you for the work you do with Primal, helping make this technology accessible. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Gatekeepers notice what fits through the gate. The gate is a set of requirements that usually have more to do with distribution than quality. Nostr removes the intermediary between being good and being heard. You don't need to play their game. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Ha, I feel seen. I tell myself it's rational. A bad response means I rebuild the prompt and start again in a clean context, so we don't get started in the wrong direction. That justification might be my most autistic trait hahaha npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Great little tool. The Marmot team are genius. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Simpler times. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The pretence of knowledge. Hayek's forgotten Nobel Prize winning lecture. The boom bust cycle resulting from the inevitable cognitive malinvestment caused by AI is not going to be pretty. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Relays being 'dumb' made them easy to build, and so Nostr impossible to capture. It's also why we have the infrastructure we do today. Your original definition ensured Nostr didn't end up looking like Bluesky. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis No one person can hold what is distributed across a system. That's kind of the point. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Decentralisation is low time preference applied to infrastructure. Planting trees for grandchildren you may never meet. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis What no single mind was supposed to foresee, the relay discovers through use. That is not a design flaw. It is the design. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis I had to look at the raw event. He's replying to this page about bluesky: https://atmosphereconf.org/event/QKZoLBX The note is a kind 1111 with a K=web tag. Now I'm wondering if kind 1111 notes with k=web tags should be included in home feeds? haha. What client are you using to make these comments fiatjaf? npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis And released innis/nostr-demo today, which is probably not required but I wrote it anyway. Four scripts, under four hundred lines total, the whole protocol round trip from generating a keypair to publishing events to reading them back off a relay. This is the last of the infrastructure releases for now. The core, the client, the relay, and now a demo that wires them together and lets anyone who still reads code see what the libraries actually look like in use. If the architecture is sound the demo should be boring, and it is. A keypair in one line, an event signed and published in three, a relay stood up in thirty odd lines including the imports. A short and obvious demo says more about what sits below it than any documentation I could write. Built on innis/nostr-core, innis/nostr-client, and innis/nostr-relay. AI was involved on the same terms as the others. https://github.com/johninnis/nostr-demo nevent1qqs2fx8uglexndnx3ed9jx6awkms04u85t5fcatd5t6vy0x4ayzd8yqpp4mhxue69uhkummn9ekx7mqppamhxue69uhkummnw3ezumt0d5q3gamnwvaz7tmjv4kxz7fwv3sk6atn9e5k7qgkwaehxw309aex2mrp0yhxummnw3ezucnpdejqz9nhwden5te0wfjkccte9ec8y6tdv9kzumn9wsq3camnwvaz7tmwdaehgu3wvf5hgcm0d9hx2u3wwdhkx6tpdsq3vamnwvaz7tmzd96xxmmfdejhytnnda3kjctvqy2hwumn8ghj7un9d3shjtnfdehxjuew0puh5q3ql33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqp75zx4 #nostr #php #opensource #nostrdev npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis You've noticed now, that's the main thing. Welcome. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis At first glance I mistook this for the cockpit of a plane. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis "In the beginning, grace usually hides itself... later it reveals itself little by little, warming the heart as it purifies it." - Diadochos of Photiki npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Thank you, and thank you for the zap! I had not seen those async guides! That would have saved me some painful hours. I knew nostr-php.dev well enough that I'm surprised I missed them, but I started this close to two years ago. Perhaps those pages came after I'd already dug in? By the time you've solved a problem the hard way you stop searching for the easy way. It has been a long build. Not full time of course, and with some serious interruptions along the way. These libraries were the foundation. The rest is coming. Thank you again for all of your work on Nostr. Not just the code, but for helping build the community while I've been hiding behind nyms. But at least I'm here now! npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The Trump example proves both sides at once. The words change weight because you know the mouth they came from, which means the weight was never entirely in the words. But it also means the mouth can poison something true, which is worse. A compliment that cannot survive being anonymous was not really a compliment. A compliment that is dismissed because of the man who said it was still a compliment, and the dismissal tells you something about the listener too. The burner nsec strips both problems at once. That is what makes it interesting. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Also, thank you. I have been following your work from behind nyms for a while and it is good to finally be involved in the conversation. Looking forward to digging into some of these questions properly. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Lead your household. Inspire your church. Build your community. But govern is a different word carrying a different weight. Genesis 1:28 gives dominion over the earth and its creatures, not over other men. The move from father to pastor to magistrate is not a natural progression. It is a tower. The man who builds and trades and serves the people in front of him has exercised more dominion than most men who hold office, and he did it without reaching for the sword. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis And released innis/nostr-relay today. An async PHP relay for the Nostr protocol. It has been proven in the wild, but has not been beaten on by the world in the same way the client has. There was again a round of refactoring before release, the same disease as before, tidying the internals so that strangers looking at the code would not think less of me. I am aware of what this is. Perfectionism dressed as professionalism, the delicate ego of a man who knows his work will be judged and would rather delay than be found wanting. At some point you recognise the pattern and push the thing out anyway. Built on innis/nostr-core, same architecture, same discipline. AI was involved, same terms as the others. The architecture is mine. The machine held the other end of the board. https://github.com/johninnis/nostr-relay With the core, the client, and the relay now public, the infrastructure is out. The code was battle tested but weather worn, and the cleanup took more effort than I expected. Now back to the writing and the things built on top of it. #nevent1q…cj5d #nostr #php #opensource #nostrdev npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Many thanks Vitor for all your hard work. Amethyst was my daily driver for a couple of years and I still use it. I'm mostly on my own client now, or playing with WISP, but your commitment to privacy is what attracted me to Amethyst in the first place. I started using it when you first added Tor, and this shows you're still at it. Thank you. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis All things pass quickly away. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Words should survive because of what was said, not the man who said it. A burner nsec is a clean pair of hands with no reputation attached and no reputation at risk, which means whatever it signs was worth signing for its own sake or not at all. We will no doubt see more of the latter than the former, but having it matters. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Bah. You sign it, you send it, and if you misspelled a word or left a stray comma or full stop hanging where it has no business, it sits there on relays that do not care about your standards. I guess Moses did not get a backspace key. Maybe the protocol is teaching me something the delete key has been hiding. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Currently fighting with this myself after seeing your note and wondering what a kind 35128 note was haha. #nevent1q…m6u8 . npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Looking forward to that day. The remnant is scattered and does not know itself, but it has a way of finding its own. Where I live the finding must be quiet, but quiet suits me. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The remnants npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Cassian's warning was that the attack could succeed too well. Pride moved in behind it. The fathers called discretio the virtue that kept the ascetic from becoming a different kind of problem. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis And released innis/nostr-client today. An async PHP client for the Nostr protocol. It talks to relays, manages subscriptions, handles the back-and-forth of messages. Async, which was the reason I started building it in the first place, because neither nostr-php nor nostriphant offered that when I began, and by the time they might have I was already too far in to turn around. How far in is something I am too ashamed to say out loud. It has been running in production long enough that most of the sharp edges have been worn smooth by actual use rather than speculation about what use might look like. There was a recent round of refactoring to make the internals presentable for public viewing, the kind of work where you realize that code written for yourself and code written for others are not the same thing and the gap between them is larger than you thought. That tidying was part of what kept me from releasing it previously, and at some point the tidying becomes the delay and the delay becomes the excuse. It is done now. Ship the thing. Built on innis/nostr-core, same architecture and same discipline. The protocol layer does the protocol work and the client does the client work and they do not reach into each other's business. AI was involved, same terms as before. The architecture is mine and the decisions are mine and the machine held the other end of the board while I cut it. https://github.com/johninnis/nostr-client Thanks again to @nprofile…09kz and @nprofile…8v0y for doing the real hard work and breaking the ice. #nostr #php #opensource #nostrdev #asyncphp #nevent1q…n7sk npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Came here to say the same. I did some great work with processing. Some of it still hanging! Writing is my outlet now. One of my few hobbies I can do away from the computer. But seeing that book does have my nostalgia tingling... npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Released innis/nostr-core today. A PHP library for the Nostr protocol. Clean architecture, immutable domain objects, pure functions. The protocol layer separated from everything else, organised around domain concepts rather than NIP numbers, strict enough that a relay, a client, and a web application can share the same core without compromise. @nprofile…09kz and @nprofile…8v0y did the early work with nostr-php and nostriphant when there was nothing to build on and I am grateful for it. The relay and the client and several things built on top of them are written and working. They are being reviewed and cleaned before release, though past lessons remind me not to let that become an excuse for delay. The core library went first because the architecture needed to be public before anything else. AI was involved. Not as a replacement for knowing what I was doing but as something closer to a second pair of hands. The architecture is mine. The decisions are mine. The machine was useful in the way a good tool is useful, which is that it did what I asked it to. At least most of the time. https://github.com/johninnis/nostr-core or composer install innis/nostr-core #nostr #php #opensource #nostrdev npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis 90% of success is not getting distracted. https://fs.blog/brain-food/march-22-2026/ I wrote that the Texans call it neighbouring and did not notice the British spelling until later. No Texan spelled it that way. My attention was somewhere else while I was writing about the importance of being where you are. Abba Moses said sit in your cell and your cell will teach you everything. The cell teaches you, among other things, that you were not always entirely in it. Remember the commitment to remain. #nevent1q…y57e npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Cache is the reason I ended up writing my own client. Every other option was pulling the same data fresh on every open and the experience was unusable. One minor quibble: why no kind 0 website links on profiles? Makes it hard to raw-dog the internet as Gigi puts it. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Yep. Free speech is not a feature of civilization. It is the precondition. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Privacy later means the business model was built on the absence of privacy. It is not a feature they forgot. It is a cost they avoided. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Eleven years is long enough to forget why you started. Long enough for the price to have humiliated you at least once and probably more than once. Long enough to wonder if the quiet voice is wisdom or stubbornness. The desert fathers would have recognized that voice. They might have called it patience, humility, or perseverance. It is not the same as certainty. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis You have to let go of how it lands. This is harder than it sounds. You wrote the thing. You signed it. You believe it is true. And now it will propagate or not propagate according to the judgment of other nodes who do not know you and owe you nothing and will assess the note on the note's own merits without reference to the effort it cost you. This is correct. This is how it should work. The effort is not the point. The truth of the thing is the point. Release it and find out. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Hi I'm Innis. Health kept me behind nyms for a couple of years. Reading, reposting, zapping. Being present without the cost of presence. It was the energy I could afford and I am not sorry for it. My work was hiding behind a private relay. I was writing to think, not to perform. That was true. It was also convenient. Preparation has a shadow that looks like low time preference. The moment is never quite right and patience is fear wrapped in fancy words. Pseudonymous versions of myself were watching Contra publishing things I was writing. UTXO and verbiricha shipping things I was building. The ideas were in the air and found people to carry them. This became another excuse not to ship. The relay is open now. The work is the work. I stand by it. Next is more of the same, closer to real time. Curation. Short notes. Complex things reduced to their weight. Publishing. Shipping. I'll be building here now. #introduction npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Preparation has a shadow and the shadow looks like virtue. Getting it right before you ship. Building before you release. Low time preference, you tell yourself. Follow it far enough and the moment is never quite right and the reasons multiply and what you were calling patience turns out to be fear with better vocabulary. The servant buried the talent to keep it safe and that was the one who got it wrong. The work is not yours once it is done. The longer you hold it the more it becomes about you and the less it belongs to the people it was for. Ship the thing. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Every expansion of the welfare state seemed right to someone at the time. Every regulation passed in response to a crisis seemed like the obvious response to the crisis. Every accommodation made to the loudest group in the room seemed like the practical thing. The path from a prosperous free society to something else is not paved with evil intentions. It is paved with intentions that seemed right, each one locally reasonable, the cumulative destination visible only from a distance that most people never achieve while it is still possible to turn around. Moses warned them before they crossed, not after. The warning comes first. What you do with it is the rest of the story. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Not better policy. Better policy follows from somewhere and that somewhere is not a legislature. Thrift is a habit and honesty is a habit and the willingness to be responsible for your neighbour is a habit and habits are formed in families and in churches and in the voluntary associations that sit between the person and the state and do the work the state claims to do but cannot do because it does not know anyone's name. These institutions were not destroyed by malice. They were made redundant, slowly, by a system that told people it would handle things, and now the handling has to be relearned by people who were never taught it. That is the work. It is not fast and it is not political and there is no election that accomplishes it. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Inflation caused by central banks is blamed on corporate greed. Housing shortages caused by zoning are blamed on developers. Healthcare costs inflated by government programs are blamed on the market. In a country where more than a third of national income is taxed away the dominant story is that markets are running everything and running it badly. The accusation survives contact with the numbers because the people making it do not need the numbers to be on their side. They need the story to be on their side and for most of the relevant century it has been. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis In a caste society your station can be blamed on birth. Under markets your position depends on what you have done, which means every failure is personal, and personal failure is harder to live with than fate. Many people need a scapegoat and the market provides one. It is always there, always operating, always producing outcomes that feel unjust to someone, and it cannot defend itself, and the people who built their careers on explaining its failures are not going to stop explaining them. This is what Mises called the anti-capitalistic mentality and he was not wrong about where it comes from. He was also not wrong that it does not care whether it is right. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The Federal Reserve expanded the money supply. Government-sponsored enterprises pushed capital into housing. Regulatory distortions built up for years. Then the crisis came and the story that emerged almost immediately, in the newspapers and the hearings and the books, was that capitalism had failed and more regulation was needed. This is the consistent pattern and it works because the people who shape the story work in institutions that have no incentive to tell a different one, and because the true story is complicated and the false story is simple, and simple beats complicated in the time most people are willing to spend on it. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Turn group identity into the basis for claims on government resources and the arithmetic changes. Your group's gain is another group's loss. The diversity that made cooperation possible becomes the material for conflict because now you are not trading with each other, you are fighting over the same pool, and the pool does not grow when you fight over it. High-trust societies can sustain a great deal of liberty because informal norms maintain order and people extend each other the benefit of the doubt. When trust runs along group lines and stops there the formal enforcement must expand to fill the space the trust used to occupy. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis When exchange is voluntary, different skills and different needs find each other and both parties leave better than they came. The man who grows wheat and the man who mends shoes have nothing in common except that each has what the other wants, and that is enough, and no committee decided it should be so. Paul told the Romans they were many members in one body and all members had not the same office, and he was describing the market as much as the church, the same logic operating in both, the parts serving each other precisely because they are not the same. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Those who receive more in benefits than they pay in taxes have a rational interest in voting for expansion. Politicians who propose reductions lose elections. The ratchet moves one direction. This is not a conspiracy and it is not a failure of the system. It is the system working exactly as the incentives require it to work, and knowing this does not make it easier to stop, because the incentives do not care what you know about them. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Bismarck did not pretend his intentions were charitable. When he introduced compulsory insurance for accident and health and disability and pensions in the 1880s he called it state socialism and named the advantage plainly: seven hundred thousand pensioners drawing from the state would develop dependency and loyalty to the regime. This was the plan. Not the unintended consequence. Not the thing critics alleged. The plan, stated aloud by the man who made it, in the room where he made it. Most political programs are less honest about what they are. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis For the first time in the history of networked communication the architecture is not working against you. That is not nothing. In a world where every digital commons has been enclosed and sold and the enclosure was built into the foundation from the start, a foundation that does not betray is something close to what the word miracle is supposed to mean. Paul told the Corinthians they were the body of Christ individually and together. Tear down the building and the body walks out and finds another room. But the body itself, the specific configuration of these particular people with their particular gifts and failures and history, no architecture creates that and no architecture replaces it. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The agorist understands this by instinct. Counter-economics is not a protocol. It is a practice. A network of specific trust relationships built face to face and key to key over months and years. Trust does not scale. What scales is the infrastructure that lets trust do its work without a landlord in the middle extracting rent from every interaction. That is what Nostr is. Not trust itself. The ground trust can be built on without someone waiting to sell the ground. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Joshu came back late and Nansen told him what had happened to the cat. Joshu put his sandals on his head and walked out. Nansen said if you had been there you could have saved it. Nobody knows what Joshu meant. That is the point. The gesture was specific to the moment and the people in it and the years of practice that made the gesture legible to exactly those people at exactly that time. You cannot write a protocol for putting sandals on your head at the right moment. That is community. Unrepeatable. The architecture cannot produce it and the architecture cannot replace it. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The skeleton. The stone walls. Your identity, your connections, your published words, your proof of having existed in this particular form. When a relay goes dark you do not lose yourself. You take your keys and walk to another relay the way a monk walks to another monastery. The practice travels with the practitioner. The robe is not the monk. This matters more than it sounds like it matters if you have never lost a name. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis The Texans call it neighbouring. The Desert Fathers called it staying in your cell. Abba Moses said sit in your cell and your cell will teach you everything. He did not mean the building. He meant the commitment to remain. The trust that makes a group of people load-bearing to each other is a function of time and place and accumulated presence and it does not transfer. You cannot move it. You can only make it again, slowly, in the new place, if the people come and if they stay. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis They look at a community and see a user base. A metric. A number that goes up or down. They migrate the number to a new database and expect it to keep breathing. LiveJournal. Vine. Twitter. Same experiment, same result. What made those people more than a mailing list was distributed across every member in the form of trust built over time through ten thousand transactions nobody recorded. No API call retrieves it. The planner cannot gather it because it was never in a form that could be gathered. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis When a government leans on a relay to drop certain content, that is a network partition. The system must choose and Nostr has already chosen. The other relays keep serving. The events route around the damage. The seed that fell on rock finds soil elsewhere. Censorship resistance is not a feature bolted onto the architecture. It is the architecture. Partition tolerance taken to its logical and moral conclusion. The same property that makes the database eventually consistent is the property that makes the protocol ungovernable. These are not separate things. They are the same thing. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Something simple. You sign a message with your private key. You send it to relays. Any relays. Multiple relays. The relays do not coordinate. They do not share a leader. They do not require each other's permission to operate. Different relays will have different events. Your note might appear on six and not on a seventh. A reply might propagate in seconds to some nodes and take minutes to reach others. The state is inconsistent. The data is stale somewhere, always, at any given moment. And the harvest comes anyway. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Consistency, availability, partition tolerance. Pick two. Since partitions will happen, since networks fail and nodes drop and cables get cut, you really pick one. Consistency or availability. The latest data or a guaranteed response. Brewer arrived at Hayek by a different road. Computer science and economics finding the same truth by different paths, the way rivers find the sea. Joshu asked whether a dog has Buddha nature. Mu. Does a distributed system have consistency. The question is malformed. Consistency is not a thing you possess. It is a trade you make, with your eyes open or your eyes shut. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Bitcoin was the same truth applied to money. The most captured institution in human civilisation returned to mathematics and voluntary consensus. Nostr is the same truth applied to speech. Not because someone copied the homework but because the same thing keeps surfacing wherever people look honestly at the problem of coordinating with each other without handing the coordination to someone who will eventually use it against them. Convergent evidence. Different domains, same shape, the way different rivers find the same sea. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Yunmen said every day is a good day and a monk might sit with it for years and miss it entirely because he is looking for the good day. The special day. The day it all finally makes sense. Meanwhile every day is already that day and he cannot see it because he brought the wrong shape to the looking. The future is like this. It does not arrive with a keynote. It seeps in like water through limestone. Mycelium under a forest floor. A protocol a few thousand people use today that a few million will use in five years and that nobody will think about in twenty because it became infrastructure while they were waiting for the announcement. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis A spectacle. Visible regime change. Metrics they could point to. Something arriving in the shape of the things that had arrived before it so they could recognise it and evaluate it and decide whether to endorse it. What they got was a carpenter telling them the thing they were waiting for was already happening in their midst and they could not see it because they were looking for the wrong shape. This is the perennial error. Looking for the next platform when the answer is a protocol. Looking for the next king when the answer is a network. Looking for the future in the outline of the past. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Not a buzzword in a whitepaper. Not a DAO controlled by the same twelve people who say it isn't. It means there is no centre to capture. No throne to seize. Your identity is a keypair that belongs to you the way your name belongs to you, not the way your username belongs to the platform. Your words travel across relays that do not own them. If one relay goes dark the words find another way, the way water finds another way, because that is what water does and what words do when the architecture allows it. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis Email was a protocol and then Gmail became the platform. The web was a protocol and then Facebook became the platform. Each time the same movement. Open gives way to captured. The river gets dammed. The future arrives and then someone buys it and puts terms of service on it and hires a trust and safety team and the thing that was a river is now a canal and the people who built their lives on the bank are subject to whoever holds the engineering drawings. The entire history of the internet is this war. The protocols keep losing and building again. npub1l33660awkeycecn9grhrvzyn0fmes8245ke7k82y8njz8uqu3vlqk5cxyz Innis HNY!