Derek Ross

derekross@grownostr.org

The purple pill helps the orange pill go down.

🪺 NostrNests.com 🎙️ YakBak.app 🖼️ Zappix.app 🗓️ Plektos.app 🎶 ZapTrax.app 📈 Zaplytics.app 🎧 Podstr.org 📋 Nostrometer.com

es to keep earning our choice to stay.

i want someone i've never heard of to be able to build something better, without asking permission from the companies they might replace.


*researched and edited with the a

Source: x.com

i don't want our independence to rest on a company's promise to keep prices fair, policies reasonable, or priorities aligned with ours. i want companies to keep earning our choice to stay.

Source: x.com

l us too little.

freedom to leave

rules that make alternatives harder to build or release also weaken our ability to leave. i want intelligence i can run on my own machine. i want to change it, choose who sees my data, and keep using what i've built when a provider changes its mind. i want more than metered access to an API.

i don't want our independence to rest

Source: x.com
  1. Buy computer parts because pre-builts are fiat
  2. Assemble computer (don't forget thermal paste this time)
  3. Install Ubuntu Server because you're not a degenerate
  4. sudo apt update && sudo apt upgrade (pray)
  5. Configure static IP on your router
  6. Forward port 8333 (call ISP if CGNAT, they'll say no, cry)
  7. Install Bitcoin Core from source because you verify everything
  8. Wait 3 days for IBD (initial blockchain download, not insomnia)
  9. bitcoin-cli getblockcount (compare to mempool.space, panic if different)
  10. Wait 3 more days
  11. Create bitcoin.conf with txindex=1 because you'll need it later
  12. Install Tor because privacy isn't just for criminals Karen
  13. Configure Bitcoin Core to use Tor hidden service
  14. Install LND (Lightning Network Daemon)
  15. Create lnd.conf with bitcoind backend
  16. Generate wallet seed (write it down, NOT in a .txt file on your desktop)
  17. Wait for LND to sync (another day of your life, gone)
  18. lncli getinfo — confirm channels = 0, feel empty inside
  19. Send BTC to your LND wallet on-chain (pay $4 in fees)
  20. Open your first Lightning channel (pay another $2 in fees)
  21. Channel is pending. Wait 6 blocks. Go outside. Touch grass.
  22. Channel is open! You have 0 inbound liquidity. Cool.
  23. Open MORE channels with balanced liquidity
  24. Buy inbound liquidity from a peer because of course that's a thing
  25. Install RTL (Ride the Lightning) to manage your node
  26. Configure RTL with LND macaroons
  27. Generate a Tor hidden service for RTL
  28. Now install LNURL
  29. Clone lnurl-poole repo from GitHub
  30. npm install (it works first try, you lucky bastard)
  31. Configure LNURL with LND backend
  32. Create LNURL-pay endpoint
  33. Set up Nginx reverse proxy
  34. Install Certbot for SSL (Let's Encrypt, not your Let's Not)
  35. Configure DNS records (A record, AAAA record, TXT because why not)
  36. Wait for DNS propagation (1-48 hours, spin the wheel)
  37. Test LNURL endpoint (it fails)
  38. Debug for 2 hours
  39. It was a typo in the config
  40. Test again — it works!
  41. Now install Nostr Wallet Connect (NWC)
  42. Clone nwc-payserver or use Alby's NWC implementation
  43. Configure NWC to connect to your LND node
  44. Generate NWC connection string (this is the magic string)
  45. Format it as nostr+walletconnect://...
  46. Copy the string
  47. Open your Nostr client (Damus, Amethyst, or whatever)
  48. Settings → Wallet → Connect Wallet
  49. Paste the string
  50. It doesn't work
  51. Check LND logs
  52. Check NWC logs
  53. Check firewall rules
  54. The port was closed. Open it.
  55. Try again
  56. It works!
  57. Post a note on Nostr
  58. Someone zaps you 21 sats
  59. You cry tears of joy
  60. The lightning invoice settles
  61. Check your balance — 21 sats!
  62. Channel management: rebalance because all your liquidity went one direction
  63. Install Balance of Satoshis for rebalancing
  64. Run bos rebalance and pay more in fees than the zap was worth
  65. Install HTLC insurance (this is made up but you'd believe it by now)
  66. Watch your node 24/7 like a newborn child
  67. Set up monitoring with Prometheus + Grafana
  68. Configure alerts for channel closures
  69. Set up backup script for channel state
  70. Test backup restore on another machine (you won't, but you should)
  71. Update Bitcoin Core (compile from source again, 45 minutes)
  72. Update LND (another 20 minutes)
  73. Pray the updates don't break anything
  74. They broke something
  75. Roll back, try again
  76. Successfully updated
  77. Someone zaps you 1000 sats!
  78. You made $0.77!!!
  79. Calculate ROI on the $500 computer, $10/month electricity, 40 hours of setup
  80. At this rate you'll break even in 7 years
  81. Worth it
  82. Write a shitpost about the experience
  83. Get zapped for the shitpost
  84. 2100 sats
  85. NOW we're talking
  86. Configure auto-rebalance cron job
  87. Set up watchtower for backup channel monitoring
  88. Install charge-lnd for automated fee management
  89. Realize you've become a full-time Lightning Network administrator
  90. Quit your job
  91. Start a Lightning node management consulting business
  92. Charge 10,000 sats/month per node
  93. Get 3 clients
  94. 30,000 sats/month revenue
  95. That's $23
  96. But you're your own boss
  97. And you can accept zaps
  98. Copy paste one string
  99. Satoshi's vision achieved

For users: report interoperability bugs and unexpected behavior. We can’t fix things if you don’t tell us their broken.

For other developers: get involved. Whether on the NIPs repo or on NostrHub, I don’t care. But don’t let your spec rot in your application’s repository. Post it somewhere, tell people about it, open PRs to projects, contribute to

For nostr “experts”: go to NostrHub and endorse the NIPs you care about. Stress test Alex’s new system by proposing stuff there instead of on github.

I have reservations about NostrHub. I think Alex’s vision of NIP forking is still too permissive of spec divergence, social proof features notwithstanding. And a new piece of software does not replace the inherently social process of building consensus. Arguably it makes it more complex, at least until the meta-consensus has materialized around NostrHub. Unless someone (or many someones) put in the work to synchronize not only specification documents but also conversations across the NIPs repo and NostrHub, merge NIP forks into the upstream, and curate “community NIPs”, this will only add more noise and confusion.

Alex, on the other hand, has stepped up and built something that moves the NIPs off of a Microsoft product and onto nostr itself. Instead of setting himself up in competition with the NIPs repository, he has imported the existing NIPs, and created a default list of nostr “experts” which respects the 3+ years of contributions the NIPs repo maintainers have put in. This is politics at its best. He’s coalition building. He’s virtue signaling equally to all the different stakeholder groups. He’s solving the problem without burning down the institutions.

If the U.S. Treasury wants to expand its reserve to meet the "one million coin" target, but cannot spend tax dollars or print credit to buy them, the only remaining mechanism is to seize them. This turns federal law enforcement agencies (the DOJ, the IRS, and the FBI) into state-sanctioned bounty hunters. If the state needs pristine collateral to hedge against its own collapsing $39 trillion debt, it no longer has to mine it with energy. It can "mine" it by aggressively targeting the private keys of its own citizens under the guise of civil forfeiture.