WBD671 Audio Transcription

The Limitations of Lightning with Matt Corallo

Release date: Wednesday 14th June

Note: the following is a transcription of my interview with Matt Corallo. I have reviewed the transcription but if you find any mistakes, please feel free to email me. You can listen to the original recording here.

Matt Corallo is a Bitcoin Core developer and open-source engineer at Block/Spiral. In this interview, we discuss the nexus of ordinals, mining rewards & decentralisation risks. We also talk about the impact of a permanent high fee environment on digital transactions, the challenges faced by Bitcoin wallet developers, and the new wave of talent working on Bitcoin Core.


“It’s kind of the most important thing in Bitcoin; ignore all this lightning crap, and Bitcoin core, and future soft-forks, and whatever, if we can’t get mining decentralisation right we should just give up.”

Matt Corallo


Interview Transcription

Peter McCormack: It's been a while.

Matt Corallo: It has been.

Peter McCormack: I can't remember the last time we spoke

Matt Corallo: I don't know.

Peter McCormack: I remember the first time, it was in London, wasn't it?

Matt Corallo: Yeah, I think so.

Peter McCormack: Downstairs. 

Matt Corallo: Yeah, downstairs in some conference.  I don't remember what it was.  Back when you were willing to change the colour of your website for me.  Back when I was a big get for you.

Peter McCormack: Well, you were TheBlueMatt

Matt Corallo: Yeah.

Peter McCormack: We've only ever changed it once.  Do you remember that? 

Danny Knowles: Yeah.

Peter McCormack: Were you on it then?

Danny Knowles: I don't think so, but I remember it happening.

Peter McCormack: Yeah, it's the one blue one.  We went from pink to blue.  But you don't have blue hair anymore. 

Matt Corallo: It's true. 

Peter McCormack: Have you not thought of going back?

Matt Corallo: No, too much upkeep.

Peter McCormack: It's a Starbucks haircut!  Well, it's good to see you, man.  A lot's been happening.  We haven't made a tech show in quite a while, have we?

Danny Knowles: A long time.

Peter McCormack: Yeah, so it's all on you to update us all. 

Matt Corallo: All right, well, I'll try. 

Peter McCormack: Are you looking forward to this week?

Matt Corallo: Yeah, it's going to be really good to see lots of people.  Living in SF, I don't get out enough.

Peter McCormack: Yeah, how's that, by the way?

Matt Corallo: No bitcoiners there anymore.  SF's great, but there's not enough bitcoiners there anymore.  A lot of the bitcoiners have left.  Just after the VC world shifted to, "We can make more money in things that aren't Bitcoin", and then a lot of the people who either were into Bitcoin either moved to New York or Austin, and then the people who were into other cryptocurrency stuff stayed in SF, and there's not that huge of a Bitcoin crowd there anymore.

Peter McCormack: Do they still have the meetup?

Matt Corallo: There is still a meetup there, it's gotten smaller.  It's like 20 people usually now.

Peter McCormack: That was a good meetup.

Matt Corallo: It was a huge meetup.

Peter McCormack: Yeah.  I went to it a few times.  Always a good crowd.

Matt Corallo: Yeah.  A lot of those folks have moved to New York.

Peter McCormack: Yeah, that's a good meetup as well.

Matt Corallo: Yeah, New York's great.

Peter McCormack: We get more at our meetup at the football club.  Come on, man, you're San Francisco, we're Bedford!

Matt Corallo: We're trying.  We're going to grow it back up.

Peter McCormack: You should be kicking our ass.  Right, man, look, loads to catch up on, stuff that I don't understand that you'll be able to explain to me.  We should definitely start with Ordinals because that's been the fight of the last year that came out of nowhere.  These Bitcoin topics now, they kind of tend to operate like almost the left and right divide.  When there's a topic, I'm like, "Okay, I know what Udi and Eric are going to think, and I know what the Maxis are going to think", and then they douche it out.  And Ordinal's appears to be one of those, and I've got really mixed feelings about it.

Matt Corallo: Yeah, I think I try to separate it out between -- I mean, there's a few parts of it, and I try to separate out how I feel based on the different parts of it.  So, there's just the core like, "We're doing NFTs on Bitcoin".  And it's like, "Yeah, that's not really what it's for, but if you really want to do collectibles, go knock yourself out, whatever".  Then there's the part of it where it's like, "We're putting images on the chains".  "That sucks, but man, you're paying miners, and we've really got to pay the miners".  So we have to pay the miners in a sustainable way, and it's not clear to me -- the Ordinals thing might have legs.  Certainly this BRC-20 crap is clearly inflated right now, there's clearly some people pushing up that market and it's Ponzinomics kind of crap, it's not going to stick around. 

So I'm not like, "Oh yay, we're paying the miners with this token issuance crap on Bitcoin", it's like, "No we're not, because it's not going to stick around, it's not sustainable, it doesn't really help in any way".  But the Ordinal stuff maybe a little bit, I don't know, we'll see.

Peter McCormack: Well, the NFT thing, I expect to follow the same path as NFTs on Ethereum, in that there's this fad period that people are buying, trading, and then once the market dies out and people realise they've lost a bunch of money, they're done with it.

Matt Corallo: Yeah, I think it'll definitely cut down a lot and we'll see where it goes there.  I do worry about all this stuff and how it might impact MEV on Bitcoin.  I guess we have to separate out the MEV versus M-evil.  It's like MEV is just, "Well, we have to pay miners".  It's the Miner Extractable Value, which is the transaction fees.  All right, great.  And then there's the M-evil of, if you were a miner and you can take the transactions that you're putting in a block and reorder them in some way or select different transactions and you can make substantially more money than just looking at the transaction fees, then that's really dangerous, right? 

So, I've worked a lot on decentralising mining with Stratum V2 designs, the goal being that a normal, average miner can run their own full node, select the transactions they're going to mine, and still mine with a pool, but the pool is just handling the reward-splitting and the payouts.  And if such a miner, like a normal miner, just running their own full node, selecting their transactions, can't just run Bitcoin Core and get a competitive high-value block out of it, then that's really problematic, because now they need to -- they, some Podunk miner who might only have however many machines, has to go hire full-time engineers, pay somebody, probably somebody super-competent, so they're going to be paying somebody $150,000, $200,000 a year to design, "How do we select the best transactions in the block and get the most value out of our block?"; they can't afford to do that.  And so then, if they want to be a competitive miner, suddenly now they have to mine with a pool again.  They have to have a pool doing that work because the pool can afford to hire these people. 

This is what we see in Ethereum, right, where Ethereum did this split where you have the people producing the blocks and the stakers, and whatever, but then because they understood that this was super expensive to do MEV, they separated it out and they said like, "We're going to have these competitive MEV marketplace things.  It's never turned into a competitive marketplace.  There are two or three companies who select all of the transactions that get into the blocks, and can censor and can do whatever, and that's where M-evil is a problem, it's evil MEV, it's really evil and it really harms the censorship resistance of the system.

Peter McCormack: So what's the solution; how do you get away from that?

Matt Corallo: I mean, there's not a clear solution.  You know, don't build these protocols, don't use these protocols that allow reordering.  And just Ordinals doesn't itself have that problem necessarily.  Ordinals which encourage people to want to be the millionth minted NFT or something, that's a problem.  Don't encourage that, don't pay for that, don't want that. 

Ordinal marketplaces, decentralised marketplaces actually also often have this problem.  What if someone fat fingers, right?  If I'm selling my NFT or I'm selling some asset or whatever and I fat-finger it, and I sell my thing that's worth millions for a penny, well all right, now it's a decentralised marketplace, Bob's going to try to buy it, but it doesn't matter what Bob tries to do, the miner's going to be the one who claims it.  As long as the miner is running this kind of software and has invested a lot of time and resources into designing software to monitor for these cases, then they're going to be the ones who claim it and they're going to make a bunch of money doing that. 

So actually, ironically, for Ordinals and stuff like that, you really want to prefer a centralised marketplace, not these kind of trustless ones.  You can build a trustless one that doesn't have this problem, so where you don't necessarily have to deposit something and then trust them with your money, but the pure decentralised ones, where you're just posting bids and asks as partially-signed Bitcoin transactions, they often have this M-evil issue, and we don't really want to encourage that.  So, it's not something I'm worried about as, "Oh, we're really screwed right now", it's something that I worry could be a problem as these kinds of protocols get adopted if we don't do it right.  And so it's kind of on the tech world to be aware of these issues, to consider these issues when designing systems. 

It's also, when people say this is a problem, this has a MEV issue, this introduces MEV on Bitcoin, if you see that as a user, you should be running away.  You shouldn't want to use this, even if it claims it's all kinds of great and decentralised marketplace and whatever, that doesn't make it good that it actually puts Bitcoin's decentralisation at risk.

Peter McCormack: So what is the difference between an NFT and an ordinal, because I thought they were the same thing?

Matt Corallo: Yeah, it's semantics almost.  Ordinals, every satoshi is technically an Ordinal and it just has a number assigned to it, and then you can take an image and assign the image to a given satoshi.  And that makes it an inscription, which is kind of an NFT, but the Ordinals are also NFTs, but they don't have images, they're just every satoshi has a serial number.  I don't know.  People collect things.

Peter McCormack: I still haven't fully understood the Ordinals thing in that, is it a separate protocol that sits outside of Bitcoin that basically numbers all the satoshis?

Matt Corallo: Yeah.

Peter McCormack: From start to finish. 

Matt Corallo: That's it.

Peter McCormack: So basically, you might want to buy a certain number or you might want to buy something attached to it, and one of the arguments against it is it kind of destroys the fungibility of Bitcoin?

Matt Corallo: Yeah, I mean, potentially.  So, the Ordinals thing never took off, right?  The serial number itself like, "I want to buy the millionth satoshi [or] the billionth satoshi", or whatever, never took off, and for good reason.  It's hard to find the specific satoshi.  It's kind of, why?  It's not, whatever.  People just didn't seem to want to collect those.  I guess I don't understand the collection psyche, so I can't comment as to why, but people didn't want to collect those.  People did want to collect images assigned to them, and that's a whole lot better from a fungibility perspective and also kind of a M-evil perspective and all these other things as, "I'm just going to attach an image to a satoshi I already have", versus, "I'm going to go comb through my wallet and start picking out satoshis and using those for something". 

One's much more separate, it's, "I'm just going to build this protocol on top and on the side and we're going to play around with our images, and whatever".  One's very, "I'm going to go scan through all my wallets and every transaction I receive, I'm going to try to see whether there's something that's worth more or less".  That gets into a real fungibility issue.  Versus the images and the NFTs.  "Well, no one's going to accidentally send you an image, or if they do, probably it's worthless and you don't care.  So, the concern with fungibility is in part, what happens if fungibility is broken?  There's all kinds of downstream issues, but one of the most immediate issues would be that suddenly your wallet software needs to care about the individual satoshis. 

If chain analysis becomes broadly used so much so that certain satoshis become worthless, that is a huge issue, because now you as a wallet software author or you as someone using Bitcoin, well now you have to go look at the transaction you received and see whether any of your satoshis are worthless because chain analysis has said no.  Same thing applies to the Ordinal numbering thing, where now there's all this complexity and mental overhead with, is one of your satoshis worth more because it has some clever serial number?  Less of an issue for the images, where no one's going to accidentally send you their NFT image thing, so you don't need to do this kind of scanning.

Peter McCormack: Okay, so an NFT is attached to a specific satoshi?

Matt Corallo: Yeah.

Peter McCormack: So, if I didn't know I had one, say somebody sent me, I don't know, a Bitcoin, and one of the satoshis in there had an NFT in it, could I receive that without knowing it?  Of course, because it's my wallet it. 

Matt Corallo: Yeah, you could.

Peter McCormack: If I then send 0.5 Bitcoin to Danny and that's got that NFT in there, am I paying a higher miner fee, because it exists?

Matt Corallo: No.  So, the image is a one-time thing, it's tagged to the satoshi and then it just follows the satoshi through the history, but after that point, there's no evidence on chain, there's nothing different on the chain about that satoshi.

Peter McCormack: Okay, so when you are sending -- again, I don't understand this.  When you are sending an NFT, why is the -- I mean, I know it's probably something to do with file size, but why am I paying a miner fee; what's actually happening with that image within the protocol?

Matt Corallo: They're literally just putting it on the chain.

Peter McCormack: But when you say they're putting it on the chain, what is it; what's going on the chain?

Matt Corallo: Yeah, so they take the transaction with, I don't know the exact specifics, but basically, you take your satoshi that you want to tag, and you spend that and as a part of spending it, you also put some additional metadata in the transaction, you also add a bunch of data where the signature goes,  So, there's space where you can just add additional data to the transaction, it doesn't impact the transaction in any way, just makes it bigger and thus, of course, you have a higher miner fee.  And you just pad that data with the image.  You literally just take whatever your image is that you want and you just shove it in the transaction right next to the signature, and then you have your normal Bitcoin transaction with a ton of extra data and it becomes a huge transaction, has to pay a big mining fee, but that's kind of it.  Other than that, it's a normal transaction. 

Peter McCormack: And so, do I have to have a specific wallet to receive that?  Yeah, when you're creating that, you have to use specific software to construct this transaction in the correct format, and then from there on out, if you want to maintain that image, that NFT satoshi, you have to have specific software that is aware of this protocol so that when it constructs a transaction, it doesn't accidentally send it to somebody else. 

Peter McCormack: So, you probably just have a separate wallet which is just those ones, so you could have 20 satoshis in there but it's 20 images, and that wallet can maybe display what these are.

Matt Corallo: Yeah, the NFT stuff is completely segmented into a separate wallet, you're not going to accidentally spend that because you're just going to keep it in your NFT wallet.

Peter McCormack: Can you ever see a scenario where you would buy one?

Danny Knowles: No, I've got no real interest in it.  The thing that I've never really understood though is you can't inscribe every single satoshi because you can't send a single satoshi, right?  Is the minimum amount 500-and-something satoshis?

Matt Corallo: Yeah, I mean you're inscribing a specific satoshi within that transaction.

Danny Knowles: So, does it not happen where people sometimes inscribe 2 satoshis that would almost fall under one batch of a 500-satoshi transaction?

Matt Corallo: Yeah, I mean there's some protocol for deciding which of the satoshis within that number is inscribed. 

Danny Knowles: Right. 

Matt Corallo: Yeah, I don't know exactly.  It doesn't matter, you pick an arbitrary one basically, but the protocol defines a way to pick exactly this is the 1 satoshi that got inscribed of the batch.

Peter McCormack: Yeah, I just can't see where I'd buy one.  I could see where I'd sell them.  With the football team, you could do one for each of the players, and you could do that and raise money for the players.  And so then I think if I did that, it'd be great, you'd raise some money for the football team, whatever.  But do you end up, do you piss a bunch of people off as well, don't you?

Danny Knowles: I mean, they're valid transactions, but I just don't care about them.

Peter McCormack: I don't care about them, but at the same time, the flip side, if I don't care about them, but I care that other people want them.

Danny Knowles: Yeah, I mean it's a different way of fundraising, I guess.

Peter McCormack: Yeah, but I'm questioning, is it bad for Bitcoin?

Danny Knowles: I don't think so.

Peter McCormack: I know they're valid.  Well some people think it is, that's the point.

Danny Knowles: But you're not breaking the rules, and you pay miners.

Peter McCormack: Of course, but you're not breaking the rules by putting certain images on chain, but is it ethically right? 

Matt Corallo: It's weird, it's not really the purpose of the system, but it doesn't break the system in any meaningful way.  I mean, there again, we talked about there are ways it could creep into the system and cause problems, but the kind of naïve and common usage doesn't really.  And, who cares? 

Peter McCormack: Can you wipe an inscription and replace it with a new one? 

Matt Corallo: I think you can replace it with a new one, I don't think you can remove it.  I think once a satoshi is inscribed, it is inscribed, but you could, for example, replace it with a white image or something.

Peter McCormack: But it's not inscribed in the Bitcoin protocol, right, it's in the Ordinal's protocol?

Matt Corallo: Right, in whatever this protocol is that interprets the blockchain in some different way. 

Peter McCormack: So strictly speaking, could you have multiple Ordinal protocols each inscribing them separately? 

Matt Corallo: You can and there are other ones.  So, there's one that whatever Ordinals backwards is, I don't know how to read it, and it just defines a different ordering scheme.  Because all Ordinals is is just an ordering scheme of how we assign numbers to satoshis.  Well, we can just define a different one, we can define a backwards one, in fact, and someone has done this and implemented it, and you can go use that. 

Peter McCormack: But couldn't somebody do two forward ones?  Sure.  Yeah, so you could have multiple.

Matt Corallo: There are infinity possible protocols for how you could number all the satoshis. 

Peter McCormack: Right, okay, but the only thing that's really happening in Bitcoin is you're just adding data to a transaction. 

Matt Corallo: Right, and just without inscribing, you're not even adding any data, right?  If you're just assigning serial numbers to every satoshi, there's no data, there's nothing new about it, you're just giving them all a number. 

Peter McCormack: Yeah, because there are certain things in life I wouldn't buy but I would sell outside of this, you know, you run certain businesses, and I'm not going to do it -- people are going to be listening going, "He's going to put up Real Bedford Ordinals", but it is quite a cool way to raise money for players, isn't it? 

Danny Knowles: I mean, you're just piggybacking the Bitcoin community thinking they might spend more satoshis than they would pounds, I guess.

Peter McCormack: Yeah.  It goes to that point though, I remember I was in a meeting in LA, it was the guy who died about a year ago, the 50-year-old; he was involved in, oh, what shitcoin?  But he also was involved in a company that made skins for computer games.  And he was telling me about, there was one game and there was a, I don't know, a sword or a gun skin, and it was like $32,000.

Matt Corallo: Oh yeah, that's a huge market.

Peter McCormack: Yeah, this guy bought it and I was like, "What?"  He said, "Listen, do you play golf?"  And I said, "Well occasionally, but my dad does".  He said, "Does your dad love golf?"  I said, "Yeah".  "So, he's got a nice set of clubs?"  I was like, "Yeah, actually he has".  He's like, "Well, your dad wants to play golf and he goes to the golf club and he gets the best set of clubs that he wants".  It's like tennis players.  Some will go, they're not great tennis players, but they're going to spend $1,000, $2,000 on a tennis racket, because that's them.  He said, "This is their tennis racket, it's just in the digital world".

Matt Corallo: Yeah, people want collectibles.  There's nothing wrong with it.  I don't buy collectibles, but there's nothing wrong with it.  People have bought baseball cards for -- you're talking about selling pictures of the players; that's no different than baseball cards.  People have been buying those things for decades.

Peter McCormack: Well, I do it with trainers.  I've talked about it on the show, I do it with trainers.  I've got like 600 pairs of trainers.  I collect trainers and I love it, and that's my thing.  So, I'm reticent to be critical of people doing their thing when it's what they like.  Like Scarlett had this game, what was it called?  Roblox, my daughter.  And she would buy a, I don't know, a giraffe skin, she would run around and order it, and she loved it.  And so I'm just thinking, if there are people who like that, want to collect that…  The guy from Minneapolis, what was his name?

Danny Knowles: Oh, yeah, Edgar, he came across to Bedford.

Peter McCormack: Yeah, Edgar, he might be like, "I'm going to buy all the fucking players".  So yeah, interesting.  Well, look, I'm not too bothered, I the miners getting paid. 

Matt Corallo: Yeah, big fan of that.

Peter McCormack: Yeah.

Matt Corallo: And it's flushed out a lot of bugs in Lightning, so that's great. 

Peter McCormack: Yeah we're coming to that.  Is there any use case for Ordinals beyond images?  Could it be tickets to a concert; could it be, you turn up and just flash everything and here's a ticket, and if you can't go you can send that Ordinal to somebody else? 

Matt Corallo: Yeah, I mean there's been a million attempts at people trying to come up with different uses for NFTs and tokens, and whatever, beyond the collectible use case.  And we can look to Ethereum and that space for those kinds of things.  But almost none of them have really taken off because most of them don't really have a compelling reason.  It's like, okay, well you issued a ticket.  Well, guess what?  Ticketmaster's absurd, overcharged, and they charge however much to resell a ticket, and it's obscene.  And then, you know, your blockchain fee's $10, and it's all the same at the end anyway.  So, why did you put it on a blockchain?  You're not adding any value. 

Peter McCormack: Yeah, that's fair.

Matt Corallo: So, I think it is a little challenging to come up with something where you really do want that kind of more trustless ownership, and that is part of why the Ordinal's inscriptions NFT took off, is because unlike the Ethereum NFTs, where it's basically like, "Hey, here's a URL to an image", and then you claim that you own really the URL, not the image, the inscription stuff's actually, "Here's the image, it's on the blockchain", which is both wasteful, it's a ton of extra data on the chain, but also really compelling to people who want to collect an NFT and really own it and say, "I really own this image.  It's actually on the chain and no one can take that from me".

Peter McCormack: Yeah, because if it's on the URL, the URL dies or it goes…

Matt Corallo: Which has been a problem for many NFTs.  Like, FTX went down.  When FTX got taken down, a bunch of the Solana NFTs died because they were hosted on a server run by FTX.  And so, a bunch of the Solana NFTs disappeared and all of a sudden we're just 404s and now you own a 404 page! 

Danny Knowles: Yeah, although weirdly that might be more valuable now! 

Matt Corallo: Yeah, I mean it's an FTX seized-by-the-government 404 page; I mean that's compelling!  Yeah, you said it's flushed out a bunch of bugs in Lightning, but also is it fair to say it's exposed some challenges, weaknesses in Lightning? 

Matt Corallo: Yes and no.  I mean, certainly it's always been the case, like when you're sending 1 millisatoshi in Lightning, obviously that's not enforceable.  It's under a satoshi, that could never appear on-chain.  Similarly, if you're sending 10 satoshis in Lightning, it's also equivalently not enforceable.  We mentioned the dust limit, you can't send less than 500-and-something satoshis without getting a miner to kind of directly incorporate your transaction. And so, we can't enforce those in Lightning either.  If you're sending under some threshold, then it's not enforceable on-chain, but it'll still be reflected in your total balance. 

So, it is the case that with Lightning, as fees goes up, that number also goes up.  If it takes $10 to go to chain, should you really go to the chain for $9 in HTLCs that are expiring or something?  You probably shouldn't.  And so now, those $9 payments become kind of pseudo-unenforceable.  They're not something you're going to go to chain over.  If your counterparty misbehaves, you might lose.  If you had $9 in flight in pending transactions, you might lose them.  But once they clear, once they've completed, you won't lose them, that's a completed transaction.  And so, there was this weird thing, some people were like, "Oh, yeah, every Lightning transaction is completely enforceable from the moment it sends to the moment you get the preimage", and it's not really true, it's more like once it fully completes, but that happens too, so it doesn't really matter. 

Peter McCormack: Hold on, can we back up a sec, sorry.  Just so I'm clear, we're talking a difference between custodial and non-custodial Lightning, right?

Matt Corallo: Even for non-custodial. 

Peter McCormack: So in custodial, I can send 1 sat?

Matt Corallo: Right, in custodial, you can send 1 sat.  Even in non-custodial Lightning, you can send 0.001 sat.  Certainly, when you close the channel eventually, and you go to chain, that 0.001 sat is just going to disappear.  But if you send 1,000 of those 0.001 sat, then you'll actually get that sat on chain at the end of it, and that will change your balance.  And so, similarly again, when we're talking about dust, if that payment is still pending and you close the channel while it's pending, you might lose it.  But if that payment completes, it's a completed payment.

Peter McCormack: So what you're saying is, if there's a channel open and I've only done one transaction that's $9, and when I close the channel, fees are $10, I don't get that.

Matt Corallo: You wasted that.  And on top of that, if it was still pending.  So even worse, if I send a $10 payment on Lightning, and fees are $11 or whatever, and that $10 payment's still pending when I close the channel, which has been a problem due to some issues in Lightning implementation, due to some bugs over the last week, then not only do you pay that $10 in fee or $11 in fee, but you also lose that $10 payment, so you lose both.  And so that's a concern, but in general you just limit the amount that you have pending at any one time, and then you don't care.  You have some risk threshold, and you say, "I'm willing to have $50 pending at one time, and then once it's clear I can send another $50 and it's not a problem.  It's just if we close while this thing is pending, I might lose it". 

That's always been a risk control that Lightning has had, that's been in the protocol since day one, and it's just becoming more relevant now.  And so, it's been an issue some of our users had actually on LDK.  We had that risk threshold turned all the way down and the default was very low, and so we had some people show up like, "I can't send payments at all".  We're like, "Yeah, you're exceeding your risk threshold.  You should turn up your risk threshold".  So, we had to change the defaults there.  But yeah, I mean it has exposed Lightning is not perfect and it has these risk thresholds in it and it has some risk associated with payments that are not yet completed, and people had kind of swept that under the rug or ignored it and it's like, "No, it's there, it's really there and you have to be aware of it". 

But I don't think -- you asked, "Did it expose shortcomings in Lightning?"  I don't think that's a shortcoming because, again, once that payment completes, it's completed, even if you sent 1 sat; once it completes, it's completed, and if you close the channel now, you will have 1 sat more than you would have otherwise.  And so I think it's known it's a risk, but it doesn't affect the eventual outcome and the normal outcome.

Peter McCormack: Yeah.  So, let's look at a scenario where we get into a permanent high-fee environment.  We had Michael Saylor in here a few days ago, and he put a wild idea out there, but he said, "Look, people are used to, if you buy a multi-million dollar painting, you're used to paying a commission, which is 10%, and if you buy a house, a $20 million house, there might come a day where someone's buying $20 million of Bitcoin and they might be paying --", I mean, I think he's wrong, but anyway, "-- hundreds of thousands in fees". 

I think the main point in that is if we get into a permanently high fee environment, imagine an on-chain fee was £1,000 or $1,000, even $100, and that's kind of the average, you can't get away from that.  Have we created an environment where, there's certainly an environment where some people just can't afford to use the basechain, that's fine, but can we get people onto Lightning without them having to use the basechain?

Matt Corallo: Yeah, I mean I think that's definitely the non-custodial, mobile, small-value Lightning becomes a concern, and a lot of those people get priced out.  I think it's kind of the best we can do now, right?  I always view the custodial, non-custodial question as custodial will always win.  Custodial is always going to be a better user experience, it's always going to be just easier to use for everyone.  There's costs associated with it, regulatorily, but aside from the regulatory costs, it's just going to be better. 

So, my job as a software engineer, and our job as the Bitcoin community and the Bitcoin engineering community, is to improve non-custodial as much as we can to get it as close as we can to the custodial user experience.  We'll never beat it, but we can get as close as we can.  And maybe with the regulatory costs, we can actually beat it.  That is an iterative process, right?  Historically, the non-custodial experience has just been on-chain, it's been a ten-minute transaction time, it's been basically unusable.  I mean, ten minutes for a transaction to even show up and it's still pending is an unusable, garbage user experience, right? 

With Lightning, we've improved it a lot and we've improved both the scalability of it and the instant transaction times, which is great, huge win.  But there are still steps to go for scalability.  So there's whether you do channel factories, there's potentially other designs around covenants and payment pools.  So there's a lot in the future that we need to add to make Lightning and Lightning-like systems better, and I think there's a lot of grey area between custodial and non-custodial that's largely unexplored. 

Peter McCormack: Can you ever be non-custodial in lightning without having a basechain transaction?

Matt Corallo: I think that's where this grey area comes in.  So I think there's a lot of grey area between custodial and non-custodial.  There's some of it that's been explored.  There's the Liquid model where it's just a multisig, and now there's these e-cash mints, the Cashu and Fedimints, that are also kind of multisig.  So there's kind of this multisig model that's exciting.  But then I think there's other models.  There's payment pools and Lightning channel factories, where you maybe get together with four people and you collaboratively own a UTXO.  And then with channel factories, you can be, "All right, we're going to have the four of us own this UTXO and then we can dynamically create and reshuffle the liquidity between the channels that we all create within this UTXO without ever going or without ever creating on-chain transactions. 

I think there's similar models where we can also take another step towards custodial where we can say, "Okay, we're going to do something like that, but currently the problem with those designs is everyone who owns the UTXO collaboratively has to be online at the same time to update it".  That's obviously a concern.  So, can we do better; can we say, "All right, we're going to have a sort of custodial entity that manages the UTXO, but then at any point, any one individual who has ownership rights to it can go to chain and unilaterally withdraw their funds from their shared UTXO", and they can go off and leave or maybe they're being censored, or maybe that centralised entity misbehaved, then people could leave and take money from them, or whatever, they could be punished like in Lightning where if you misbehave, you broadcast an old state, you lose your money. 

So, I think there's a lot of models like that, that have yet to be explored and certainly yet to be implemented.  People have some ideas for how to do some of these, there's new ideas coming out for how to do other ones, let alone getting to implementation years down the road.  But I don't think it's fair to say that Lightning today, yeah, if you're talking about a $100 transaction fee, and you're someone who maybe only has $500, you're not going to have an on-chain Lightning UTXO.  But I don't think that means that you can't use Lightning and Lightning-like systems, we just have to build different ways to get people into those systems.  And multiparty UTXO ownership is going to be figured out.  It's complicated and it's going to be really complicated to implement, but I think there are directions that we'll get to by the time we need it.

Peter McCormack: Yeah.  I mean, I almost think if I open up a Lightning channel, I kind of want it almost semi-permanently open.  That's my Lightning wallet now, what reason do I want to close it? 

Matt Corallo: Right, and I think that's how it will certainly be.  I mean, I mentioned in the last week or two, we've seen a lot of bugs show up in Lightning implementations that have caused forced closure that maybe shouldn't have, and those are things we need to fix.  Those are things that certainly the LDK team has been working on, improving some defaults, changing policy so that we're less aggressive about force close.  And then there's some bugs in other implementations that we're working around.  We have workarounds to, if the other implementation gets stuck, making sure that we can unstick the protocol, and trying to help other implementations debug their issues as well. 

So, that's an area that needs improvement and is being improved upon.  But yeah, I mean aside from just bugs, I agree with you generally, especially if you're a consumer and you just have a lightning channel, you're never going to move that around.  It's really only people who are redoing their channels to move around where the liquidity is in the network.

Peter McCormack: So we're really just talking about layers of trust models?

Matt Corallo: Yeah.  Really, Bitcoin needs to evolve into a many shades of grey.  It's historically been white or black, and we're slowly starting to fill in some of the greys, but we need way more shades.

Peter McCormack: What do you think of things like Fedimint?

Matt Corallo: I mean, yeah, I think these kinds of models are really cool, this kind of multisig model.  Again, we need shades of grey and it's a really cool shade.  The only question for all of these, I think once you get into the shades of grey, the question very quickly becomes, what are the regulatory burdens, and how expensive is it to comply with whichever rules we need to comply with; and often, how expensive is it to figure out what rules we need to comply with?  Like, how much do we have to pay the lawyers to tell us which rules we need to pay attention to and what we can get away with?

So, I think especially for the multisig models, that comes into play, where you're talking about e-cash schemes.  I think the Fedimint folks have always argued more community banks, where it was everyone knows each other and so you know you don't necessarily have a heavy regulatory burden because you actually know your users, and you could argue certain things which might or might not hold legal water, I don't know, I'm not a lawyer.  But it would also be awesome if we could really scale them, but probably for regulatory reasons you can't.  And so we'll really see where it goes.

Danny Knowles: That's why I quite like what Calle's doing, because he's basically ignoring the regulatory thing.  He's just created a protocol that works now, you can use it, and he's --

Matt Corallo: Right.  I mean, yeah, that's obviously the first step, but Bitcoin has a long history of engineers building stuff and then users ignoring it. 

Danny Knowles: True!

Matt Corallo: So, there does need to be something that leads to people really using it, and it'll be interesting to see how adoption looks for that kind of thing.  I mean, we've seen it with Liquid and Rootstock, and Liquid has no users.  They invested how much money into building this thing?  It's a cool, multisig model, it has better privacy properties, but nobody really wants to use it.

Peter McCormack: Yeah, so I think in a high-fee environment, something like Liquid might make a comeback.

Matt Corallo: Maybe.  People are quicker to move to Litecoin.  If you're really doing a normal, end-user transaction, you're just going to move to something else that's some shitcoin.

Peter McCormack: I think that's in an environment where we've got temporary high fees.  I'm thinking more permanent high fees.  You know, if you could park a Bitcoin within Liquid and you could send Liquid Bitcoin around to people, I see that could be a helpful scenario.

Matt Corallo: I mean, we've seen this across the cryptocurrency space how many times, where one chain will start with low fees, their whole reason for being is, "The fees on Bitcoin are too high.  We've created this chain, it's going to scale better.  We're going to have low fees", and then either it goes nowhere or fees on Bitcoin go up, people start using it, and suddenly it has high fees too, and then people move on to the next thing.  And so you really have to look at what are people trying to accomplish for having this Bitcoin?  Are they trying to have this Bitcoin to actually spend; are they trying to do economic activity?  They're just going to dump it and go use Litecoin, or whatever.  And they'll hold Bitcoin on Binance and then when they want to transact, they'll buy some Litecoin and they'll go use it, or they'll buy some Monero, or whatever it is; versus, someone trying to trade Bitcoin, or maybe they're trying to invest in Bitcoin, they're worried about the Fed, whatever, they've bought a bunch of Bitcoin, they have a stack, and then maybe they transact occasionally.  Again, they might just have it in a custodial service, the part that they want to transact, they'll keep it in a custodial service, they'll use Litecoin, they'll use whatever, and then just that investment, they don't care what the fee is.  A $100 fee on their million-dollar investment is not a huge deal. 

I think in practice, we haven't really seen that outcome where people are like, "Oh, yeah, I want to switch to Liquid [or] I want to switch to using Lightning".  In general, people just kind of -- Bitrefill had a long Twitter thread.  Matt Ahlborg there, I think Head of Data, had a long Twitter thread basically doing some analysis on this and basically concluded, during high fee spikes, their data, which is more kind of consumer wanting to use cryptocurrency for transactions, less invest in cryptocurrency kind of users, really doesn't show an uptick in Lightning during high-fee environments, it shows an uptick in Litecoin.  Also, because people have their money on Binance.  Binance doesn't support Lightning.  When Binance supports Lightning, that might make a big difference.

Peter McCormack: Well, so firstly, we need the exchanges to be supporting Lightning, I mean that's a really important thing, and it's surprising more haven't.  I've been impressed with what Kraken have done there, I think it's very cool.  But you present an interesting use case there for Litecoin, in that there's maximalists who think everything that isn't Bitcoin is a shitcoin.  But if Litecoin is, I mean, it's basically the same protocol as Bitcoin, basically?

Matt Corallo: It's similar.  I mean, people aren't investing in Litecoin.  They're buying Litecoin and then dumping it on the other side because it has as much liquidity as Bitcoin.

Peter McCormack: What I'm thinking is, it's a pressure valve for Bitcoin.  And is that such a bad thing?

Matt Corallo: Kind of.  These things have acted that way in the past.  I don't think it's a bad thing, I certainly assign no moral judgment to that.  What do I care what people use?  People are going to use the system that works best for them.  I hope we can make Bitcoin that system, and Lightning is a part of that. 

Peter McCormack: Of course, but while we wait…

Matt Corallo: But while we wait, these things exist, and people will use them, and that's how it is.  And if you're a, what does Jameson Lopp call them now, Bitcoin puritans?  Every time you say something negative about Bitcoin maxis, a bunch of people show up and are, "I like Bitcoin, and why are you shitting on me?"

Peter McCormack: Scammer!

Matt Corallo: It's like, "You weren't who I was referring to.  I was referring to the people who are Puritans about it and scream that everything's a shitcoin, not you person who just likes Bitcoin".  So, every time you say "Bitcoin maxis", people show up and get offended, so we're calling them "Bitcoin puritans" now.

Peter McCormack: Okay, so the ideological ones who won't see reason with anything.  What was that wallet; the guy we met in New York, who has got Bitcoin, Litecoin, Monero?

Danny Knowles: Cake

Peter McCormack: Cake, yeah.  So, there's an interesting argument for a wallet like Cake, where you've got your Bitcoin balance, you've got your Monero balance, you've got your Litecoin.  Fees are high on Bitcoin, but if you can just switch some of that, auto-trade that into Litecoin, send your transaction or receive it, and auto-switch it back, and if you want to do a private transaction, you can switch it into Monero and do it, there is an argument for that.

Danny Knowles: The coolest thing about that wallet is that you can buy gift cards with Monero with no KYC. 

Peter McCormack: Very cool. 

Danny Knowles: So, you can actually buy real life things with no KYC. 

Matt Corallo: Yeah, that's nice. 

Peter McCormack: And it's a cool wallet, I've seen it, I've used it, and they sponsored the show for a bit.  But I'm tired of the ideological fights.  After six, seven years, it's like, "Oh, please".

Matt Corallo: It's just annoying, yeah.

Peter McCormack: Yeah, and I come down to use cases.  If someone wants to use it, it has a use case.

Matt Corallo: Yeah, and I really hope we can build out Bitcoin to be that compelling for everything. 

Peter McCormack: But in the meantime…

Matt Corallo: But in the meantime, they exist, and they're going to get used, and whatever.

Peter McCormack: And Litecoin is never going to be number one, it's never going to overtake Bitcoin, there's no threat in that scenario.  I've always had a soft spot for Litecoin anyway.  I mean, I like Charlie Lee a lot, I think he's a great dude.

Matt Corallo: Yeah, I mean again, I assign no moral judgment to people using whatever system they want to use that works for them.  I think if you're a Bitcoin puritan and you get mad that people are using Litecoin, fix Bitcoin; that's on you.  You don't get to be mad about people using Ethereum or Litecoin or whatever.  Go improve Bitcoin, go spend your time and energy doing something other than tweeting.

Peter McCormack: Stop just being mad all day, every day.  Obviously we had SegWit a few years ago, and then we've had Taproot.  Is there another big update being discussed? 

Matt Corallo: Yeah, I'm probably not the person for that question, but I think it's going to be covenants.  

Peter McCormack: More than I am!

Matt Corallo: Maybe.  I think there's been a lot of attempts at addressing --

Peter McCormack: You should explain covenants again.  We covered it before.

Matt Corallo: Yeah, I'm realising I should probably go back and do that.  Yeah, so covenants is a broad term and there's really several different use cases that I think are relevant and can be accomplished in different ways.  And so, that's kind of where the covenants discussion gets muddled by like, "Are we just doing covenants?"  Like, "Yeah, we're doing this set of use cases".  So there's a few things. 

So, I mentioned already this concept of multiparty UTXO ownership, and how do we get to a world where multiple people can collaboratively own a UTXO and dynamically create Lightning channels or do payments, but not all have to have their own separate set of UTXOs?  And so, that's one important thing where more flexibility in the Bitcoin script format can enable that much more efficiently; specifically where, if we have a UTXO and the three of us have collaborative ownership of this and we each have some right to some portion of the balance, some balance within that UTXO, within that transaction output, then having the ability to, say, have that UTXO, but have the Bitcoin script in that UTXO restrict the exact format and the exact details of the next transactions.  And you can't really directly do that in Bitcoin today. 

You can have a public key which has to sign the next transaction, obviously, I mean, that's how Bitcoin works.  But the best you can really do then is you create a multisig, 3-of-3, and then we pre-sign a transaction like Lightning, and then we store that transaction, and if we want to update it, we create a new one, but then we have to have some mechanism to revoke the old one.  So, it gets very complicated, and this is when Lightning is very complicated.  But if we can, say, have that Bitcoin script format explicitly say, "The next transaction has to look exactly this [or] has to have exactly these things set", then that enables a lot more flexibility to do these kinds of protocols. 

Similarly, that goal of being able to restrict exactly what's set in the next transaction is useful for a lot of these large custodial enterprises, who have maybe potentially large hot wallets or certainly very large cold wallets, where they want to say, "Okay, I have all this money in my cold wallet.  If those private keys get hacked, even if those private keys get hacked, the next transaction that is created spending that money in my cold wallet, spending my cold wallet, must still pay to here [or] must still --"

Danny Knowles: You can have whitelist addresses, kind of thing. 

Matt Corallo: Right, basically.  And there's all kinds of variations on that design, but that kind of thing could be enforced on-chain.

Danny Knowles: A predetermined set of rules for whatever the next transaction is, yeah.

Matt Corallo: Right.

Peter McCormack: Okay, so it hops it to another address first, which is predefined, okay.  That kind of makes sense.

Matt Corallo: Yeah, and there's a million variations of that.  You could have, pre-hops it to something, but then you have some additional time to cancel that and bring it to some other address.  There's all kinds of different schemes people have for that, but potentially useful improvements to security of cold wallets.  So, there's all kinds of these overlapping use cases for this fundamental concept of, "I want to restrict what the transaction spending this output looks like", but exactly what is available to those restrictions and in a soft fork to Bitcoin, which things are you able to restrict and how are you able to restrict them, etc, is a huge discussion and has a ton of back and forth.  Jeremy proposed his OP_CTV design, there's several other designs.  James is now working on this OP_VAULT stuff.

Peter McCormack: James.

Matt Corallo: James O'Beirne. 

Peter McCormack: Okay.  Jeremy went through a rough time with that.

Matt Corallo: He did.  Yeah, I mean I think it was hard, right, because he wanted to move this stuff forward sooner rather than later, and I think a lot of other people were still busy with other stuff.  One big issue with proposing a soft fork in Bitcoin is, you really need a lot of the technical community to weigh in, and the technical community tends to be a bunch of people who are very busy with 20 projects, because there's so much shit to fix!  And so, he wanted to make forward progress and felt he was going to people and being like, "Here, look at this.  Do you think we should do this?"  And people were like, "Maybe, I don't have time to look at that".  And so he felt like he was not really making progress and not really getting the kind of critical feedback he wanted.  And then, yeah, he got very frustrated with that, understandably. 

But I think, the design also wasn't super-composable with existing -- it was pretty generic, and I think it missed some of...  So, now James O'Beirne is trying to push for basically OP_VAULT, which is similar to this old OP_TLUV proposal, but then James also wants CTV, which is Jeremy's thing, as a part of OP_VAULT, so basically you can compose the two of them together.  Yeah, there's a lot of discussions on it.

Peter McCormack: Can I tell you something I want?  And I'm sure I'm not the only person who does this.  When I do a big Bitcoin transaction, say if I had to send Danny, I don't know, $20,000, sometimes I'm going to send you $5 first.  Can you just confirm you got it?  And then I've still got the same copy/paste and I do it.  I would love to be able to have a wallet or something whereby, over a certain amount, say it's over $1,000, all it does is sends $5 first, I phone up Danny, "Danny, you got it?", he says yes, and then I say yes and it sends the rest of the transaction.  I don't have to actually create two transactions, it just does it in one.  Is that something that a wallet would do?

Matt Corallo: A wallet could do that.  I mean, there's probably better protocols for that than this, right?  You don't have to actually do a transaction in order to accomplish that.  You just need some protocol by which your wallet communicates directly with Danny's wallet and Danny can see a thing at the top that says, "Someone's trying to send you $100,000.  It looks this is correct?"  "Yes, go", and then the wallets could communicate.  There's room for this kind of protocol, it doesn't have to be an on-chain thing.

Peter McCormack: Right, because I'm sure I'm not the only -- I bet you've done that.

Danny Knowles: Yeah, I totally know what you mean.  You're still nervous the second time.

Peter McCormack: Yeah, you're still nervous the second time!

Danny Knowles: It would be nice if you almost sent the $5, you got a pop-up box saying, "Did this confirm?"  You just say yes and the rest goes, or whatever.

Peter McCormack: Yeah, because I know I can't be the only one.

Matt Corallo: No, this is a common thing.

Peter McCormack: But why is no one going to fix this?  Come on.

Matt Corallo: Yeah, I think Bitcoin wallets tend to also be similarly overworked.  And Bitcoin wallets, it's a tough game, right?  You historically haven't made any money on it, it's not like you get a cut of the transaction fees.  With Lightning, you might, so maybe with Lightning, you have a better, more compelling business model.  But historically, you don't make very much money on the wallet, so you have a small team.  Probably, the only real way you make money is by selling shitcoins.  You sell Bitcoin, but then really you make more money by selling shitcoins.  So you integrate some brokerage service into your wallet, and then you have to add support for all these shitcoins because that's where you make the money.  And so none of them have time to do these kinds of features. 

Some of the more Ethereum-specific ones have a little bit larger teams, they've raised VC money, they have bigger business models but they also have even more complexity because supporting Ethereum in a million contracts is even harder.  And you have to make that secure somehow and that's not easy.  So historically, Bitcoin wallets have had a real tough go of getting enough resources to build out compelling features like that.  Especially, if you want this kind of feature, you really need it to be a standard adopted by a lot of wallets. 

At one point, a few years back, we did try to create like a wallet standards group, and we had one meeting and it was great.  We had a lot of really great discussion around all kinds of standards we wanted to build, and then we all went home and no one ever looked at it again or any of the things we agreed to.

Peter McCormack: Typical!

Matt Corallo: And because no one did follow-up, I didn't have time to do follow-up, everybody else was super-busy.  It's mostly on me, I didn't do any follow-up, but I was busy.

Peter McCormack: It's all your fault, Matt!

Matt Corallo: Yeah, but this is the kind of thing where we really need to revive that, and maybe we will with Lightning.  Lightning's even worse.  There's so many different overlapping protocols in Lightning and everyone wants their Lightning wallet to support zero-amount invoices and BOLT12 and LNURL.  Now they want Nostra wallet connect and there's all these different protocols and there's this huge proliferation, and it's becoming a nightmare, honestly, "Oh, your Lightning wallet here, can you scan this QR code?"  "No, it didn't work".  "Oh, I don't support that protocol.  Can you select this other protocol in your wallet to receive?" 

Peter McCormack: I know.

Matt Corallo: It's nightmarish UX.

Peter McCormack: I mean, I very, very rarely have it in a basechain transaction where an address isn't supported.  Very occasionally you have it come up, but it's very rare.  It does happen on Lightning a lot.

Matt Corallo: It's frighteningly bad UX, and so it's something we need to fix.  But yeah, so every time you add one of these protocols to this compatibility matrix, the UX gets an order of magnitude worse, because all of a sudden you have -- no normal user is going to scan a QR code and be like, "Oh, it gave me an error.  What do I do?"  You just give up and you go use Litecoin, really.  So, keeping that compatibility matrix down is something I worry a lot about. 

Peter McCormack: Maybe Litecoin should have just been Lightning.  Just create wallets that jump between the two. 

Matt Corallo: Yeah, I mean, the problem is when you want to do an atomic swap into Litecoin, you probably have to do an on-chain transaction on Bitcoin, and now you're fucked again.  But yeah, I mean, so I think we'll see what happens over the next few years, but I think there really is a lot of room to revive some of that wallet standards work. 

Peter McCormack: Well, get on with it! 

Matt Corallo: If someone wants to PM this, and someone wants an awesome thing to do for Bitcoin, someone should run a wallet standards body.  We can revive, what did we call it?  We called it S3ND.  You can revive Send and you can have another meeting. 

Peter McCormack: Go on, Danny. 

Danny Knowles: This is not a job for me! 

Matt Corallo: But if someone wants to do that, I think that would actually be really huge and you'd be able to push stuff like this.  You'd be able to really cut down the compatibility matrix in Lightning, improve things.  I think there's a lot of room.  I think we might end up doing something similar in the Lightning world, not now, but some folks on our team might try to push something there.  It's just a matter of finding somebody who has the time and the motivation to really do it.  But I don't think this needs a hell of a lot of -- this needs more organisational work.  It needs someone to wrangle people and pick a date and book a conference room somewhere that you can sit in.  Getting those people together, they'll have good conversations.  It really just needs someone to do the organisational and push it, you know?

Peter McCormack: How are we doing on the recruitment of devs at the moment; and also adding to that, the loss of Core devs over the last year?

Matt Corallo: Yeah, that's a good question.  I think Lightning's doing very well.  On the Lightning side, Lightning Labs raised, a year ago maybe.  LND was pretty short-staffed before that and I think now, they were able to hire a lot more people to work on LND after that raise, and those people have finally kind of -- it takes people a while to ramp up.  Around a similar timeline, us on the LDK team, we hired three more, so we're now seven full-time engineers on LDK, plus some other folks doing our huge grant program, etc. 

The Core Lightning team, I think, also hired around a similar time.  I don't know where they are now.  I know some of their folks that they hired were doing research projects.  I think Eclair is similarly doing fairly well.  I think they did a raise not too long ago as well.  So on the Lightning side, we're doing well.  All the different groups maintaining one of the four big Lightning implementations has either raised over the last year or got more budget, or whatever, and has hired for it, and everyone seems to be doing great.  So, don't worry about that. 

On the Bitcoin Core side, it's complicated.  I think it's useful to talk about Bitcoin Core in kind of a historical perspective.  So, there were a bunch of new Core devs in late 2010, early 2011; this is when Bitcoin first made it to the front page of Slashdot.  It made it to the front page of Slashdot three times, I think, late 2010, early 2011.  And so that got a lot of geeks into Bitcoin.  That's why you see a lot of people who heard about Bitcoin first in early 2011.  It was mostly either directly or indirectly via Slashdot.

Peter McCormack: Was it for you?

Matt Corallo: I heard about it via a podcast I watched regularly where they'd heard about it on Slashdot. 

Peter McCormack: Right, okay. 

Matt Corallo: Indirectly or directly, it started filtering through certain geek communities in early 2011, and so you saw a bunch of Core devs get involved throughout 2011.  And slowly more and more, but not a huge growth through all the Blocksize Wars.  There continued to be some, but a lot of the Core folks who have been working on Bitcoin Core for a long time worked on it from 2011, 2012, 2010 through the Blocksize Wars.  That was a stressful period, obviously.  That was not a fun few years, but everyone I think working on Bitcoin Core at the time felt it was a little existential, right?  It was this thing that you'd been working on for multiple years by that point and you wanted to see it succeed, and so you were going to fight like hell to have the outcome you wanted through the Blocksize Wars.  And that's why they were so stressful and it was so existential and there was a lot of angst around it. 

After SegWit and after SegWit2x kind of face-planted, a lot of us had a lot of side projects we wanted to work on, either Bitcoin or non-Bitcoin.  But just a lot of us had other Bitcoin projects we wanted to build that weren't necessarily working on Bitcoin Core, whether it be miniscript and descriptors, or whether it be Bitcoin FIBER, and eventually Stratum V2, or whether it be Lightning stuff, or whatever.  So, a lot of people stepped back a little bit, and that created a vacuum.  You had a lot of long-time contributors step back around a similar time, and at the same time a lot of new folks wanted to get into Bitcoin Core and started contributing, but there wasn't a large long-time contributor base to help mentor and help really build that out. 

So, that created a lot of problems in Core in the year or two or three after SegWit and after the Blocksize Wars was resolved, and I think that took a long time to filter through.  Again, because you had that kind of sucking out of old folks who knew the codebase well and could help mentor, it was hard to grow with a new talent.  There was a lot of new talent coming in that wanted to grow, and it was really hard to help them grow.  And so that really created a lot of problems for a while.  I think over the last few years that new talent has figured it out.  And so we see great new people working on Core.  Gloria is now a maintainer, I think.  I'm blanking on names, and someone's going to yell at me for not mentioning them, I'm sorry. 

Peter McCormack: Did I meet Gloria in London?  I met someone in London.

Matt Corallo: Maybe.

Matt Corallo: But I think that that talent that got involved either then or not long thereafter has finally figured it out and finally learned the codebase well enough, and either found mentors or just figured it out on their own, or whatever, has been working on it long enough to really grok what's going on and add really valuable contribution.  At the same time, some other older folks have gotten more involved again.  Pieter Wuille's gotten more involved again.

Peter McCormack: Cool.

Matt Corallo: And I think a few other people have gotten more involved again as well, and so that has also helped.  And so I'm not that worried about it.  Obviously the Craig Wright drama and that crap, where it's just frivolous garbage, but frivolous garbage that's still legal threats and harassment, is not great to deal with.  Especially, courts are not well-suited to dealing with someone who's just going to flat-out lie in all of their correspondence with the court, they're just not well-suited to handle that, they expect some level of honesty.  And so working through the like, "No, that's a lie.  No, that's a lie", in court just takes a lot of resource and a lot of time.  And so, those kinds of things do stress out some developers and also, the Bitcoin puritan crowd is obnoxious sometimes, and it's over stupid crap.  

I think there was some interesting debate around Taproot activation.  I wasn't a fan of a lot of the takes, but at least there were takes that had some semblance of a strong argument behind it, an argument you could stand behind.  And then there's a lot of Bitcoin puritan crowd who get mad about a variable name change in Bitcoin Core, and you're just like, how do you expect anyone to want to work on this?  Or you have Bitcoin puritan crowd running around screaming about how no one should work on Bitcoin Core, that Core should be frozen, and no one should touch it again for the next two decades, never mind that there's some denial of service security fix in every release, because this stuff is really fricking hard, and people are still figuring it out 15 years later, or whatever it is now.  And so, dealing with that kind of crap is really annoying. 

So, it's understandable that there's people who flame out, let's say, and just get frustrated and don't want to work on it.  But at the same time, I am encouraged by the newfound enthusiasm.  And I don't really work on Core anymore, so I am a little bit of an outsider, but at least the folks that I talk to who do seem to have and also find this newfound enthusiasm that exists within the project that we haven't seen since maybe before the Blocksize Wars, where there's really just new blood who gets it who's excited about Bitcoin again and isn't just old and jaded and annoyed about everything.  So, I think Bitcoin Core is doing fine.  Yeah, do we want to talk about mining decentralisation?

Peter McCormack: Yeah, update me on Stratum V2.  We had the Braiins guys on.

Matt Corallo: Yeah, I mean they probably know more than me.  I don't have time to work on anything any more, it's awful!  But yeah, I mean the Stratum V2, they released the reference implementation in alpha or beta, or whatever, so that's super-exciting; more work to come there, but this is really critical stuff.  I mean, if you're a developer, they too have very few resources, doubly so now.  Some of the folks who were working on it half-time, or whatever, got cut because of the price going down.  Their company said, "You can't work on that half-time any more", or whatever.  So, if you're a developer, I mean it's kind of the most important thing in Bitcoin.  Ignore all this Lightning crap and Bitcoin Core and future soft forks, and whatever, if we can't get mining decentralisation right, we should just give up.

Peter McCormack: So, why is it taking so long?  You and I spoke about this three-and-a-half years ago.

Matt Corallo: It has been a while. 

Peter McCormack: Maybe longer.  It might have been four-and-a-half years ago.  I mean, the pod's been going nearly six years.

Matt Corallo: The pod's been going for too long!

Peter McCormack: Hey, behave!

Matt Corallo: When did you start; three-and-a-half years ago? 

Danny Knowles: Four years ago, maybe.

Peter McCormack: When was the show?

Danny Knowles: It was February 2019.

Peter McCormack: Wow!  So, the show had been going a year and a half.

Danny Knowles: It was just before I started.

Peter McCormack: Yeah.  Hold on, that's over four years.  What the fuck have you been doing, man?  You've had four years!

Matt Corallo: Working on lightning, man.  Yeah, I drafted an initial version of some software, super-alpha, and then the Braiins guys were like, "Your protocol sucks, you don't know shit about mining", and they were basically right.  And so, we retooled it, we incorporated the ideas from it, we designed the Stratum V2 together, and then I got pulled off on Lightning stuff, started working full-time on that, and then we really struggled for a while to hire.  We had a grand budget, and we were like, "We want to fund someone to implement this.  This is really key work", and we were loud about it on Twitter.  And it took us six months or a year before we got anyone who even was seriously committed and wanted to do it. 

So, that took a while and then people had to ramp up on the protocol, they didn't know the protocol had just been invented out of whole cloth.  So they had to ramp up on that, they had to actually go start implementing stuff.  And then of course, implementing alpha software, it took me two months, or whatever, to implement some alpha quality crap that could spit out a block versus implementing not just production quality stuff, but stuff that could run on firmware on a device, which is a whole different world.  It takes a while.  But that's also a project that does need more resources. 

I mean, we talk about, does Bitcoin Core have enough developers?  Stratum V2 does not have enough developers and needs more developers and is really fucking important.  And we're happy to fund more people.  If people want to work, if there's developers who are like, "I want to work on Stratum V2, I want to make Bitcoin seriously decentralised and improve the key property of Bitcoin that is, mining decentralisation provides a censorship resistance".  If I want to make Bitcoin censorship-resistant again, if you want to work on Stratum V2, we will fund you, we will give you a cheque.

Peter McCormack: Yeah, so how many people do you need and how long should it take?

Matt Corallo: So, I think there's maybe two, or maybe one working full-time, maybe two.  We had a third who was half-time, and then there's some other contributors.  They're overlapping pieces.  You always want to be careful.  There's this famous thing in software engineering where it's like, if a project reaches a certain point, every new person you add to the project slows it down.  Basically, it's a classic management thing.  If you have a team and they're not finishing it fast enough, you add another person, you're just going to slow them down, so you want to be careful about that.  But there's other pieces that can happen and lots of work to be done.  And so, I mean, I don't know.  Another one or two would be great, I think. 

Peter McCormack: What is it, a year of work to get it finished; two years? 

Matt Corallo: Yeah, I mean there's different pieces, but I think it's probably closer to a year out than two years out.

Peter McCormack: It just needs to happen. 

Matt Corallo: It really needs to happen. 

Peter McCormack: Yeah, well I hope it does.  Matt, great to see you again. 

Matt Corallo: Thanks for having me. 

Peter McCormack: Did we do a show in between in remote during COVID? 

Matt Corallo: I don't know. 

Peter McCormack: How many times have we had Matt on? 

Danny Knowles: I don't know.

Peter McCormack: I kind of thought we did. 

Danny Knowles: No, just one.

Peter McCormack: Fuck.  Four years is too long. 

Matt Corallo: It's been too long now. 

Peter McCormack: Let's not leave it four years next time. 

Matt Corallo: All right. 

Peter McCormack: I don't know when I'll be in SF next.

Matt Corallo: Well, sometime I'm in New York or something.

Peter McCormack: Yeah, we'll make it work.  But it's good to see you, man, and thanks for everything you do.  And it's always been good to follow you and see you move around.  Oh, you know why I got confused?  Because when I interviewed the three people up here; Chaincode.  Yeah, I think that probably threw me.  But yeah, look, good to see you, keep doing your thing.  Anything we can do to help you, let us know and, yeah. 

Matt Corallo: Thanks, yeah, thanks for having me. 

Peter McCormack: Thanks, man, enjoy the conference.