67
Nick Berlin
671597832fb8337c868e78d9dcacab0d2801b01f2beefb489febec229f87abea
Replying to Nick Berlin

nostr:npub1k7vkcxp7qdkly7qzj3dcpw7u3v9lt9cmvcs6s6ln26wrxggh7p7su3c04l you talk about Bitcoin being a liquidity sponge. Is a ringing of the sponge on the horizon?

I think this question was addressed here: nostr:note1r67sdqrtezsy5u03jhczvu2dmyudcjy4w6ff94fxa58qmgtddmfq8krr8m

nostr:npub1k7vkcxp7qdkly7qzj3dcpw7u3v9lt9cmvcs6s6ln26wrxggh7p7su3c04l you talk about Bitcoin being a liquidity sponge. Is a ringing of the sponge on the horizon?

Replying to Avatar paul keating

I don’t get it. The bottom was 15k.

Replying to Avatar walker

Looks like nostr:npub10qrssqjsydd38j8mv7h27dq0ynpns3djgu88mhr7cr2qcqrgyezspkxqj8 broke 1000 followers here on Nostr āš”ļø

THANK YOU to everyone who has followed and subscribed to ā€œTHE #Bitcoin Podcast.ā€

I’m just getting started 🫔

(If you haven’t subscribed already, you can do so here: https://bitcoinpodcast.net/podcast )

Not exactly related, but I’ve been listening to your reading of the six lessons, and your voice work is great. Especially, the wining opposing view voice. I get a kick out of it every time, and it brings clarity to what could be confusing. Thanks and nice job.

I especially like the modern thinking on top of middle age art memes.

Oh, congrats on finding the bug btw. One less thing….

Also, thanks for the transparency/humility. It’s nice to know that accomplished developers are human too.

Do the asserts compile out in release mode? Should a return value be checked instead/also?

Replying to Avatar Pleb34

nostr:npub1cj8znuztfqkvq89pl8hceph0svvvqk0qay6nydgk9uyq7fhpfsgsqwrz4u nostr:npub1a2cww4kn9wqte4ry70vyfwqyqvpswksna27rtxd8vty6c74era8sdcw83a Let’s say the economy (GDP) is represented this year by the harvesting of 10 apples, and that is the whole economy. Let’s say that there are $10 total in circulation. In this case, each Apple would be worth about $1.

Let’s say there was some technological advancement and the economy was able to harvest 40 Apples in the next year. Let’s also say there are $20 in circulation in the next year. Now, each Apple is only worth about $0.50 each.

Money in circulation is generally correlated with GDP of course (money created through bank loans and central bank money ā€œprintingā€, generally goes up with GDP growth) but in theory they are independent of each other.

So we had monetary inflation of 100%, but the general price level DROPPED by 50%. The actual economy is infinitely more complex of course but I think this explains the general idea.

Agreed, thanks!!

Replying to Avatar Rusty Russell

#cln #dev

So, we've had this annoying intermittent bug where UTXO spends would get missed. Sometimes it meant that we would keep gossip for channels which had been spent, and sometimes we'd miss opportunities to sweep funds (more concerning!). Eventually I started to suspect our (my!) hash table implementation. It's extremely efficient, but if it had some bug it could explain the issues: it has a random seed for the hash function, so weird corner cases would appear random.

I wrote some random churn tests, nothing. I could get more elaborate, of course, but then something else happened.

Shahana wrote some code to create all our new documentation examples, which involved getting nodes into all kinds of weird states, and hit a strange bug. I tracked it down to a case where the recovery code was putting a new peer into the hash table, where one already exists. Easy bug fix, but it made me wonder: were we doing this elsewhere?

My hash table code allows duplicate keys just fine. But it's actually unusual to want that, and there are APIs (get, delkey) which only handle the first one vs getfirst, getnext which are fully generic.

So, I wondered. Did we make this mistake anywhere else? I bit the bullet and split the APIs: up front you now declare what type of hash table you want (duplicate keys or nodups) and you don't even get the deceptive APIs for each case.

As you might expect, the only code which had a problem was the various places where we watch UTXOs. You can absolutely be watching for the same thing in multiple places, and indeed the code was not iterating, but only handling the "first" one.

And this was all my own code, front to back. Mea culpa.

APIs matter. The natural use of an API should be the correct one. And of course "don't patch bad code, rewrite it" a-la Elements of Programming Style.

So was the fix to iterate or use no dupes?

#poemstr nostr:note1z0qgy6247n9ydz5m98ae707783rkuml3xmkfmkh8svjswpt5ljlsh6uua0

You’re cradled and codled as you first arrive.

Slowly you grow, and take a deop dive

Into the world of colors, sights, and smells,

Where everything has a story to tell.

After, a while you become just as large

As the ones who held you as you cooed at the stars.

A change starts to grow, a gift or a divide.

Changing you, making you wonder what’s inside

Quite quickly your world view then changes too

It's sometimes about us, but mainly about you.

You see eyes judging and saying you're unworthy.

No matter what you do, no one else seems to see.

And then you stand, facing a decision.

Do you want peace, or do you want division?

Your gut tells you yes, your heart tells you no.

But it’s up to you to decide how far you plan to go.

- Saydee

Replying to Avatar Derek Ross

nostr:nprofile1qqsvn0dkjt80raqrxd470c98n7zrdehmcvj6p5hgw3kyku6zyd8z0fqpr9mhxue69uhhyetvv9ujuumwdae8gtnnda3kjctv9uuerzfy is now available in the UK. Strike can be used for Zaps, both receiving and sending.

Strike is also my favorite way to buy bitcoin. I use the send "cash" feature. I send "cash" directly from my bank account into my Lightning wallet by sending to my Lightning address. It makes stacking sats incredibly easy. You can also setup DCA purchases if that's more your thing too.

I've been using Strike for years and highly recommend this app. Why? The UI is slick and simple. Plus, nostr:nprofile1qqsvf646uxlreajhhsv9tms9u6w7nuzeedaqty38z69cpwyhv89ufcqpzamhxue69uhhyetvv9ujumn0wd68ytnzv9hxgtcvd6gmf is an incredible human that also goes into the trenches and does tech support, directly helping his users. Most Bitcoin exchange founders aren't going to do that. I love the work ethic.

Enough shilling 🄹 I am just happy to see the UK finally get access to Strike.

> I send "cash" directly from my bank account into my Lightning wallet by sending to my Lightning address.

How do you do this? I’m probably missing nuance, but does your bank have this feature somehow?

Why is ā€œcashā€ in quotes?