Skip to content
Swan logo
Log InGet Started

Rockstar Developer and Jeremy Rubin: Swan Signal Live E9

Posted 7/14/20 by Brady Swenson

Join two of the best Bitcoin devel­opers, Rockstar and Jeremy Rubin, as they discuss their most recent work, the state of the Bitcoin code, working on different levels of Bitcoin, and hyper­bit­coiniza­tion. This episode was hosted by Brady Swenson, Head of Educa­tion at Swan Bitcoin, and Yan Pritzker, CTO of Swan, contributed as well. 

Subscribe to the Swan Signal YouTube channel and Swan Signal podcast.

Transcript

Brady Swenson:

Welcome to Swan Signal podcast, a produc­tion of Swan Bitcoin. The best way to accumu­late Bitcoin using automatic recur­ring buys at Swanbitcoin.com. I’m Brady, head of educa­tion at Swan.

Brady Swenson:

Every week I host a conver­sa­tion with Bitcoiners along with our founder, Cory Klipp­sten and sometimes co-founder, Yan Pritzker joins us. We broad­cast these live on Twitter, Facebook, YouTube and Twitch and then we publish the audio here on this feed. We call these sessions Swan Signal Live. We pair up two Bitcoiners you have likely not heard together before and we talk about the latest Bitcoin and micro­eco­nomic news and musings about Bitcoin’s future.

Brady Swenson:

In this one, we dive into Bitcoin technology. This week we’re joined by Bitcoin Core devel­oper Jeremy Rubin, @jeremyrubin on Twitter and BTC pay, Zap and Strike devel­oper, Rockstar Devel­oper, @rockstardev. Yan joins us, of course, on this episode as our CTO to nerd out what these tech guys.

Brady Swenson:

Be sure to follow @swanbitcoin on Twitter so you can tune in live whenever you can. We also broad­cast, as I said, on YouTube, Facebook and Twitch. You can find us there. But if you can’t do it live, you’ll be able to catch all the Swan Signal live conver­sa­tions here on this podcast. I’m really glad you found your way here. Hope you enjoy.

Brady Swenson:

All right, so we’ve got a couple of great guests for you today as you could see when I was reading the intro. The shadow man in front of the giant pile of burning cash, Rockstar Dev, is with us today. Rockstar is a crowd favorite among Bitcoiners, and he’s been working on several very impor­tant Bitcoin projects: BTC pay server, ZAP, Light­ning Wallet and Strike. We’ll get into all of those today, of course.

Brady Swenson:

And Jeremy Rubin is with us. Jeremy’s an MIT alum. He’s now a code wizard freelancing his magic, and he’s also of course a Bitcoin Core contrib­utor, the author of Bit 119, which proposes a new op code called Check Template Verify and we’ll obviously discuss that more as well today. So, welcome to both Rockstar and Jeremy. Thanks for joining us, guys.

Jeremy Rubin:

Thanks for having me on.

Rockstar Devel­oper:

Yeah, thank you. Glad to be part of this group, man.

Brady Swenson:

Yan, welcome to you, as well. Our co-founder and CTO of Swan is joining us to nerd out with these guys today.

Yan Pritzker:

Hey guys, super excited here to talk to some of the best devs in the land.

Brady Swenson:

Awesome. All right, so we’ve got to start with the topic du jour at the moment and that of course is Bitcoin’s third halving. It’s just about 750 blocks away at this point in this very moment. Let’s start with Jeremy. What are your thoughts on the Bitcoin halving? Why did Satoshi choose this partic­ular algorithm over, for example, a linear distri­b­u­tion? Do you think that the halving drives price cycles?

Jeremy Rubin:

So, I do think that there should be some impact of the halving on prices just in the sense that if it didn’t exist, then Bitcoin wouldn’t be a defla­tionary asset. We’d have perma­nent but decreasing propor­tional infla­tion. That actually might not matter that much if the relative infla­tion drops down to zero over time. Maybe Bitcoin would’ve been fine as well.

Jeremy Rubin:

I think the halving is sort of an inter­esting artifact of Bitcoin’s history and it creates a shock in the supply, which I think maybe can stimu­late some growth or something. But ultimately, I think whatever those effects are, they’re either pretty long term, so we end up seeing them much later or they’re relatively priced in.

Jeremy Rubin:

I think if you look histor­i­cally, a lot of these things happen 18 months out and then that’s almost halfway to the next halving. I think some of these things are just pushing a longer term narra­tive for Bitcoin.

Rockstar Devel­oper:

Yeah. When I look at the halving as an event, I love the social part of it. Like what Bitstein said, last halving, we had a few pizza parties. Now, we have this quanti­ta­tive easing to infinity and people going wild. It’s way, way more emphasis than it was like first halving that we had.

Jeremy Rubin:

It’s almost like a religious obser­va­tion, right?

Rockstar Devel­oper:

Yeah.

Jeremy Rubin:

It’s a holiday.

Rockstar Devel­oper:

Yeah, man. It’s really crazy and now we also are having special streams and the stream that I will be partic­i­pating with BTCPay server team is Bitcoin Magazine’s, what they’re organizing. I love that. I love that and I’m just focusing on the social aspect, to be honest. Price, couldn’t care less, man. I love the memes, man. I love new terms. What is new term? Halva­tion? Right.

Jeremy Rubin:

Halva­tion. I love that one.

Rockstar Devel­oper:

Yeah. Some new Bitcoin. What is halva­tion? Now it will be Hodl.

Yan Pritzker:

I think it’s great like you said, it’s a celebra­tion. It’s almost like a religious celebra­tion but what is it a celebra­tion of? It’s actually a celebra­tion of the fact that Bitcoin’s monetary policy is unchange­able, right? We’re gathering here to say that, “Wow, it’s still happening and nobody’s been able to stop it, right?” So many people have tried to inflate Bitcoin in a lot of different ways and it’s still going on. It’s contin­uing on its path.

Yan Pritzker:

So, either Satoshi was a marketing genius, was devel­oping this kind of events based thing that draws people together or it was just a happy accident, one of many happy accidents poten­tially that makes up Bitcoin. A lot of things could’ve been different about it but this is the one that we have now and it does create this impetus for us to talk about it, which is always good.

Yan Pritzker:

It’s good for the media, gives them a chance to write about Bitcoin for another time and remember, hey, it’s not dead yet. Last time we wrote about it, it was dying and it seems like it’s not dead yet, so maybe there’s something more to it than we think.

Jeremy Rubin:

I can see in the future, some news editor being like, “All right, it’s that time again. Let me go and dust off my nice halving article. Hasn’t changed for the last four years.”

Rockstar Devel­oper:

Yeah, that was-

Jeremy Rubin:

I think it just builds on itself and it’s going to be… This is how Bitcoin’s going to be.

Rockstar Devel­oper:

What’s really inter­esting is how similar the position is when you do look at the price. It’s almost exactly the same graph So many happy coinci­dences. I know there is that theory that Satoshi is an artifi­cial intel­li­gence from a future world. When I look at all the happy accidents and Bitcoin halvings being in same year as a presi­den­tial election, man, I’m, I don’t know, an alter­na­tive conspiracy theorist or something.

Jeremy Rubin:

Same year as coron­avirus and the markets completely crashing and burning. There’s a lot of things that are coinciding right now.

Rockstar Devel­oper:

No, this dump with coron­avirus was one of the most idiotic dumps ever. It was down to 3000 and then the pump. I don’t know man. I feel sorry for all the people that got scammed out of holding Bitcoin, but what can you do?

Brady Swenson:

Bitcoin is a painful teacher, so you either learn from other people’s experi­ences or you learn from your own. I mean, I learned from my own. I’ve sold Bitcoin at the bottom many times until I learned that selling Bitcoin is a bad idea. So, I don’t do it anymore.

Rockstar Devel­oper:

Yeah, we’ll see just how that unrolls in the US with the IRS now having special question on tax forms.

Jeremy Rubin:

I think also there’s sort of a portfolio alloca­tion question where people allocate Bitcoin in two different categories. They allocate it as a system-wide hedge and you allocate it as a tech stock. During a crash, you end up shaking out a bit of both of those, so there is some sort of odd behavior that that manifests, but I think you shake out less of the people who are holding it as a system-wide hedge.

Jeremy Rubin:

But you can see if you are holding Bitcoin as an indepen­dent asset and you need to cover for whatever position is unwinding, you kind of have to sell that Bitcoin. It’s not like a choice. Even if the price is low, you have another position that’s going to be way more costly if you don’t cover.

Jeremy Rubin:

Then the tech stock side, if you’re just gener­ally having Bitcoin as you think it’s going to go where the tech market’s going now, you’re getting out of tech markets and you have to liqui­date some of that position as well. So I think that that hybrid angle, I think that obviously people who sold the Bitcoin lost, but I don’t know if it was the incor­rect move because we don’t really know what else exists in their portfolio and what exposures they’re sort of mitigating and if they sold all their Bitcoin or they have an amount that’s their system wide hedge and they’re like, “Yeah, I have…”

Jeremy Rubin:

I’ll just put random numbers. “I have three million Bitcoin. One million I don’t touch, one million…” And this is not me who has three million Bitcoin. I wish. But one million is allocated to tech stock behavior and the other is allocated to just generic this is an asset that I think appre­ci­ates. And maybe people have different alloca­tions along that that you see some shake out on.

Rockstar Devel­oper:

I don’t know. When I think about Bitcoin, for me, the only alloca­tion is it’s long term invest­ment that you don’t touch. I don’t think about it in any other sense. Somebody also mentioned that lots of those sales were pressure because of the liqui­da­tion. People were getting liqui­dated and Arthur was celebrating. That’s one that makes a lot of sense, if you’re not hodling but you’re trying to go along.

Yan Pritzker:

They had that Unchained Capital hoddle waves analysis and they were saying that the majority of the Bitcoin that was moving during that crash was really the six month or newer coins. It was mostly people who had just gotten into the market and then realized they had bitten off too much or they didn’t know what they were getting into.

Yan Pritzker:

Once you make it past that one year or two year holding mark, you’re not touching those coins. Most people are just sitting on them at this point, where they’ve lived through a couple cycles and they know they’re not supposed to touch the coins. But the ones that just got them, they’re still learning that lesson, so they’re going to dump a couple times, then they’re going to… Some of those coins will age into the one and two year bands and then they’ll be safe. They’ll be in safe hands.

Rockstar Devel­oper:

That actually makes me even sadder, because people, especially newbies, when they get wrecked like that, man, it’s terrible. But that’s why I’m so thankful for the service you are doing because I really believe for people new to the Bitcoin, it’s DCA your way in. I don’t know. Yeah, it’s not as exciting man when people get into Bitcoin, I’m going to get…

Yan Pritzker:

Yeah, that’s the think. Saving is not exciting but it’s very exciting in terms of what it provides for you because you’re buying option­ality for your future and people don’t really think that way anymore because of our broken monetary system. That’s why we’re all here, right?

Rockstar Devel­oper:

Yeah, yeah.

Brady Swenson:

All right, guys. We want to move into some nerdy stuff because we brought you guys here not to just talk about halving and price and all that stuff. We do that. The last three weeks, we’ve done that with econo­mists and getting into macro and all that stuff. We want to get nerdy. Let’s dive into your specific projects. We’ll start again with Jeremy.

Brady Swenson:

Jeremy’s been working on Bip 119. It’s a pretty simple bip in terms of code. It’s just a little over 100 lines if I’m reading the git correctly, the Git Hub correctly. But it enables a lot more flexi­bility in terms of Bitcoin contract design. Jeremy, can you take us through the impli­ca­tions of Op Check Template Verify, in plain English please?

Jeremy Rubin:

Yeah.

Brady Swenson:

As much as possible.

Jeremy Rubin:

Essen­tially, Check Template Verify allows you to imple­ment something like a certi­fied check. When you go to the bank and you have a normal check from someone, you don’t actually have a guarantee that the money is there. So, maybe it bounces or something. It takes a few days to clear.

Jeremy Rubin:

When you have a certi­fied check, through whatever magic that process has at the bank level, they actually kind of create an atomic account and that atomic account has locked up the funds so that that instru­ment is fully collat­er­al­ized and it’s actually deducted from your account as soon as you create it and it’s guaran­teed to go through when you deposit that check.

Jeremy Rubin:

A certi­fied check has some nice proper­ties. If you give somebody a certi­fied check, you know that you can move the funds into your account. It’s locked up. Check Template Verify gives you a similar thing for Bitcoin where you can send to an address and that address is guaran­teed to be able to partic­i­pate in another transaction.

Jeremy Rubin:

If you do that, then what you get is an ability to create a system where you’ve pre-defined the flows, locked up the funds ahead of time. There are certain appli­ca­tions you can do that are sort of common sense, where you can say, “If I want to pay out a million Bitcoin users, that would take a really long time.” As an exchange, that’s a hard problem paying out people. You have issues with demand spiking, but if you use Check Template Verify, what you can do is you can make a sort of tree of certi­fied checks where you can say, “Okay, I issue one certi­fied check that covers all million people and then one certi­fied check that covers 500,000 people and one certi­fied check that covers 250,” and so on and so forth.

Jeremy Rubin:

You have a tree expan­sion and then at the end of that, you have a payment out to an individual that’s a certi­fied check as well and then they can claim at any time. What that lets you do is it would allow you to, for example, postpone the bandwidth require­ment on chain but still get a full confir­ma­tion that your funds have been made avail­able to you.

Jeremy Rubin:

That’s a relatively simple to under­stand appli­ca­tion of Check Template Verify, but it also has the ability to write much more sophis­ti­cated smart contracts where there’s not just one path of execu­tion but different paths that open up with different amounts of time that go by.

Yan Pritzker:

What’s an appli­ca­tion of the time based approach there?

Jeremy Rubin:

One example that I like is an annuity. Let’s say that you are thinking that you want to pass your Bitcoin on to your children and you’re worried that one day, you might die. If you’re not worried about that, then this isn’t for you. What you want to do is you want to set up a basic trust fund for your kid that pays out over, let’s say, the span of ten years and gives them an amount of liquidity.

Jeremy Rubin:

You really don’t want them to have access to all that money up front and you might even want to program that when they’re supposed to start college, they get tuition sized payments that are bigger. You might want to struc­ture all these things. If you want to do that in Bitcoin today, you can do that but you end up having to sort of lock up the funds today into those contracts. But if you don’t die, then you don’t want to lock up the funds.

Jeremy Rubin:

Check Template Verify, you can have an address that has baked into it the ability to pull out that money over time if you don’t die. You can say in a normal case, I can do this but if my key becomes inacces­sible, then this automated path can now get activated after some amount of time. After, let’s say I’m gone for two years.

Jeremy Rubin:

You can have those be relative time locked so that essen­tially it’s not two years from having this coin created, it’s two years after somebody’s noticed that you’re dead. They’ve taken the first step in saying you’re dead and then it goes two years and yes, you’re now legally by the blockchain dead.

Jeremy Rubin:

What’s nice about this as well as a system is you might be able to build certain things like this in Bitcoin today but they require coordi­na­tion and signa­tures among the partic­i­pants and your kids don’t want to talk about what’s going to happen when you die, right? That’s not a conver­sa­tion that you want to have with them. People get upset when you decide I want to allocate my assets this way or that way. They might disagree with you that that’s a reason­able alloca­tion. You might cause fighting.

Jeremy Rubin:

With Check Template Verify, you can set up the program and it’s just your choice and you don’t have to have the attrac­tion. You can just share what the result is. Now, maybe for inher­i­tance, this isn’t exactly what you want to do but there are a number of appli­ca­tions that are similar where this is a really powerful primi­tive to be able to work with.

Yan Pritzker:

In the case of this kind of… It’s almost like an on-chain will, right? You’re setting up essen­tially a will and a trust all in code which is awesome. But what is visible on chain? Could somebody go and analyze the tree and see that’s exactly what it says? Wait two years, then this key unlocks. Or what does it look like from a privacy standpoint?

Jeremy Rubin:

For that, it depends on the contract that you want to write. You can specify that this is the will and testa­ment, that this set of 10 heirs, let’s say those are the ten people you’ve decided get something, are entitled to. That serves as your base layer, so if nobody can agree that that’s what’s supposed to happen, then that’s what happens and it rolls out on chain.

Jeremy Rubin:

Options that aren’t taken, so if there’s two paths and you go down path one, you don’t reveal those. You can also add a path that says, “Look, if all ten of the heirs agree that this is how the contract is speci­fied, then we can get rid of all of the condi­tions.” Now, you might not want that exactly because you might really want to restrict this timing thing where at any given time, this is the max amount of money available.

Jeremy Rubin:

So, you can struc­ture contracts as well that do have multi-sig cooperate and agree out but if you’re one of those people and you’re dead, you either need an attorney to be serving this role or you can’t use it. Or you would have some backbone that’s timing events and then each timing event, a certain amount of funds becomes avail­able and then all those ten people have to agree or you do the default thing.

Jeremy Rubin:

You can kind of pare down the program to the minimal amount of infor­ma­tion you would need to reveal and from there, it’s just normal Bitcoin once they’re unencum­bered. There might be some privacy trade off, but gener­ally you’re able to hide a pretty substan­tial amount of the contract in the normal use cases.

Yan Pritzker:

How is this similar or different from Mast – the idea of I guess hashing together contracts and revealing just the hashes that… Am I getting that right?

Jeremy Rubin:

Yeah, so you are getting that right. An analogy that like to use is that things like Mast or Caproot, mini script, those gener­ally, at least as we’ve been talking about them in Bitcoin because this is a Mast, it’s just a different level. Those operate at the key level. That’s your house key, your car key, your train pass and your office key.

Jeremy Rubin:

Check Template Verify operates at the commute level, so if I just gave you a bag of keys and I said, “Here’s your commute,” you would go, “What am I supposed to do with this? Where do I go? How long does it take?” Things like that. Check Template Verify operates at the level of saying, “Okay, look. Your commute is that you leave your home, you go to your car or you go to the train. You go to your car, unlock the car, start the car, drive the car, get to your office, park the car, go to the office, unlock the door. If you take the train, then use your pass to take the train, then go to your office, walk three blocks and do the same thing to get in.”

Jeremy Rubin:

It’s much tighter control flow and the Mast that exists with Check Template Verify expands at the trans­ac­tion level, whereas the Mast that exists in Caproot expand at the script level. The script level, it’s not unimpor­tant but it’s not neces­sarily a new capability from what you can do today, if you could just have arbitrarily big scripts.

Jeremy Rubin:

But you can’t. You can’t have as long a script as you want. It’s limited and so, the Mast construc­tion at the script level helps you compress that. At the trans­ac­tion level, it allows you to do control flow program­ming. If you want an equiv­a­lency relation­ship, I can tell you that if you were able to tag a UTXO and say, “This UTXO has to be spent in this block in order for that parent trans­ac­tion to be consid­ered valid”, then there would be a direct mapping from Mast into Check Template Verify.

Jeremy Rubin:

But because Check Template Verify plays out at the trans­ac­tion level, this expan­sion can happen over the span of multiple blocks. It’s not atomic in the same way that a Mast and a key would be atomic. You have to expand down the path and execute it. Check Template Verify lets it happen over multiple blocks.

Yan Pritzker:

So, it gives us basically the ability to execute more complex instruc­tions over time because over blocks really is over time for normal people.

Jeremy Rubin:

Yeah, and you can have instruc­tions over time in a normal key level Mast. The differ­ence is that those instruc­tions are moneton­i­cally increasing. That’s a big phrase. What that means is if you say, “Jim can spend the funds at any time and then Carol can spend the funds after a week and then Alice can spend the funds after two weeks”, then the end result is at two weeks, all three parties can spend the funds because you are only adding new ways of spending.

Jeremy Rubin:

In Check Template Verify, because you have a sequence where you go actually transi­tioning from key to key, you can remove things. So, you can say, “At the begin­ning, here are all the possible pathways that it can be spent,” and then every step you take, you’re pruning off one possible pathway.

Yan Pritzker:

Very cool.

Jeremy Rubin:

Or multiple possible pathways, but depending on the struc­ture of your paths. You’re pruning off a branch at every step.

Brady Swenson:

So, Rockstar, what do you think about Bip 119? Have you taken a look at it? Do you see it being poten­tially useful to any of the projects you’re working on?

Rockstar Devel­oper:

I actually wanted to encourage every­body that’s following this stream, podcast, whatever we call it to look into Jeremy’s work because I actually wasn’t so… I didn’t follow what he was working on and for me, it’s quite inter­esting from the scaling stand­point. On the other hand, right now at this moment, I doubt I can contribute much to the discus­sion because I haven’t looked into exact technical details of working.

Rockstar Devel­oper:

I guess I’ll take my own advice and watch more of the videos Jeremy created and explained the motiva­tion and execu­tion, because it is quite inter­esting. I especially liked that idea about having payment channels that you can bring up trans­ac­tion that estab­lishes payment channels between multiple partic­i­pants, kind of like mini light­ning network. If anything, maybe Jeremy can talk a little bit more about that right now.

Jeremy Rubin:

Yeah, I’m happy to. If you go to UTXOs.org, there’s some pretty pictures under use cases and then you go to non-attrac­tive channels. I think that that’s what you’re talking about, right, Rockstar?

Rockstar Devel­oper:

Yeah.

Jeremy Rubin:

I’ll paste a link to that in the Telegram group just in case anyone wants to follow along. What that enables you to do that you can’t do today is it enables you to have an address for a channel. Right now, when you want to open a channel with someone, you first decide on okay, we’re going to open a channel. Then you go and say, “Okay, let’s define what the initial state is of this channel. Who’s got which money?”

Jeremy Rubin:

Now, let’s pick some specific UTXOs that we’re going to spend to create this channel and the trans­ac­tion that we’re going to do to create it. Let’s not create that trans­ac­tion yet though. Now, let’s create all the the trans­ac­tions that stemmed from that trans­ac­tion that we’re going to create and sign off on all of those using whatever either multi-party or multi-signa­ture scheme that we have.

Jeremy Rubin:

Then once we signed off on all of those, now let’s go ahead and sign off on the root trans­ac­tion that goes and creates this. That’s a lot of work and there are a lot of contexts where that’s probably not going to be an accept­able way of using it. One example is if you’re withdrawing from an exchange. To create a light­ning channel, normally what you would do is you would withdraw from the exchange to your wallet and then you would create a channel.

Jeremy Rubin:

So, that means it’s at least two trans­ac­tions to create a channel if you’re keeping your funds on an exchange. With the system that I’m building, you’re able to just specify an address that actually handles all of the logic that I just mentioned before. Let’s agree on the initial state of the channel, exchange the signa­tures and you can generate all of that non-attrac­tively, so just one party in a channel can create that, send that address to the exchange and then fund the channel and the channel is full operational.

Jeremy Rubin:

Then you take that channel that you created and you go to your counter party and you say, “I created this channel for us,” and they go, “Great. Now we can use it.” But if they say, “I don’t know who you are, I don’t want to do anything with you,” then you’re automat­i­cally able to wait your two weeks and then get your funds back out of that channel.

Jeremy Rubin:

I think what Rockstar was alluding to that’s really cool is for larger multi-party systems that you might want to build and the example that I have on the website is called Batched Channels, you can actually build an entire tree of channels. You have, let’s say, a tree where at the end of those channels, you have a bunch of two party channels and then you have four party channels and then you have eight party channels, 16 party channels, all the way up to the top.

Jeremy Rubin:

What you can do is you can build a system where at those base nodes, everyone has channels that can all inter-operate and work fine and then anytime those channels get sort of polar­ized or maxed out, you can go up a level and try and operate with those four people, with those eight people to rebal­ance across the higher order channels.

Jeremy Rubin:

But if you can’t get that many people online, then you don’t have to use that at all. What this is opening the door to is much more sophis­ti­cated, multi-party channel constructs without having to get every­body on board to begin with. If you have to get every­body on board to begin with, you open yourself up to a denial of service oppor­tu­nity where one person holding up stops the entire roll out of your channel system which bounds the number of people who can be wrapped up into one of these oppor­tunistic cooper­a­tion channels.

Rockstar Devel­oper:

What I was alluding to is Batch Channels as you called it, right? Because for one on one channels and exchanges, opening channels with our customer, I’m actually quite optimistic on that end, how likely that work will unfold and support that because I really believe when it comes to light­ning, it will be enter­prise play. It will be play where you do have exchanges.

Rockstar Devel­oper:

Exchanges are the ones–

Jeremy Rubin:

If I can convince you in one sentence why even if exchanges do integrate, this is a really big deal which is just privacy. If you open a channel from a Check Template Verify template, the exchange does not know that you opened a channel. If you tell them, “I want to open a channel,” then they know that you opened a channel. If you don’t tell them, it just looks like a normal multi-sig trans­ac­tion. To me, that can be a pretty big deal that you gain an additional privacy benefit.

Rockstar Devel­oper:

I person­ally, man, I’m always the more the merrier type and especially when I’m saying I wasn’t so informed about your work, actually I’m sad about that because of stuff that I’m working on, it’s quite inter­esting to think about a future that does include options like that, especially when it comes to payments and applying all the work that’s done in Bitcoin core and your proposal. In the end, it needs to reach that end user and how it will reach it, it’s an inter­esting journey.

Rockstar Devel­oper:

I’ve joked before we started this podcast that it will be full stack podcast, an inter­esting manner, because you and I, we work on different layers and it’s really inter­esting when you look at Bitcoin ecosystem from that point how you have different people covering different parts of Bitcoin ecosystem. Yeah. Glad to spread more infor­ma­tion if any dev is listening to this how they will take all the infor­ma­tion we’re sending and use it in their programming.

Brady Swenson:

Let’s skip up to the appli­ca­tion layer and talk about the work that you are doing, Rockstar. We’ll start with BTC Pay and I also want to get into Strike a little bit. I think most of our listeners will know what Zap is and obviously people know what BTC Pay server and Strike is, but let’s talk about the latest release of BTC pay.

Brady Swenson:

Probably the biggest aspect of it is Pay Join, at least in my opinion, what I’m most inter­ested in. Can you give us a quick descrip­tion on what Pay Join is and why you think Bitcoiners should be excited about it?

Rockstar Devel­oper:

Yeah, man. Now because it’s technical talk, I need to switch to different background, right? Let’s go. This. Do a little bit of flex. With Pay Join, Pay Join is awesome because it really helps to get to that point where Bitcoin is electronic cash. I would say one of the biggest advan­tages of cash is that anonymity.

Rockstar Devel­oper:

When you have cash and when you pay with cash, it’s such a beautiful trans­ac­tion because there is no trust involved and if I’m buying something, the other person just needs to… The counter­party just needs to validate that amount of money I’m giving is correct and that’s it. There is no under­lying mecha­nism of cash, doesn’t have that KYC and this and that.

Rockstar Devel­oper:

With Bitcoin, the biggest problem is when you’re performing Bitcoin trans­ac­tion, anybody can see how much money you’re giving to your counter­party. It can follow your trans­ac­tion chain and then we also have chain analysis guys who are suppos­edly saving the world and whatnot.

Rockstar Devel­oper:

When I listen to those guys, I’m just, I don’t know sad. Sad a lot, it seems. But with Pay Join, we get to the point where you will have ability with jobs that can coordi­nate trans­ac­tion with whoever is performing the payment. So, you get to the point where you can’t do chain analysis in that sense. The trans­ac­tion, you can say, “Oh, somebody paid 0.1 Bitcoin for this service,” because in the blockchain, you’re not able to deter­mine amounts and it will look as if both inputs are owned by one person.

Rockstar Devel­oper:

I’m just excited to see how the whole thing will unroll and how it will be used because Pay Join, it’s been in the wild for quite awhile but it never got the mainstream traction because it wasn’t so easy to make a shop that actually supports a Pay Join. Wallets were imple­menting it, but some wallets were imple­menting it in one fashion and some wallets in another fashion.

Rockstar Devel­oper:

I just like that we’re at the point where it’s really bigger than BTC Pay Server. It’s a commu­nity push to make this something that’s easy to use in the end, because again, for majority of people, they want to make it good user experience.

Brady Swenson:

One thing that I really like about Pay Join and I’m curious for your perspec­tive on is that I think it’s always hard to justify a privacy improve­ment in certain contexts. Users tend to not neces­sarily care and it’s a herd immunity benefit. But Pay Join is also just more efficient anyways, right? If you wanted to make an efficient Bitcoin wallet, you would do something like Pay Join, whether or not you cared about privacy.

Rockstar Devel­oper:

Well, it’s also that UTXO consol­i­da­tion for merchants which is a benefit. I don’t know. By the way, I can’t take any credit for PayJoin because that’s actually worked on by Nicholas and Cooks. I want to make that clear that Nicholas and Cooks are the ones that are driving that. I’m just supporting the effort, reviewing what I can review, which is not a lot and then cheering it on because in the end, I look at it from commu­nity perspec­tive and how it will be benefi­cial in the long run which is…

Rockstar Devel­oper:

We don’t want to know when I’m paying something. I don’t want somebody to know it was exactly 0.1 Bitcoin. I want to have privacy and preserve privacy and UTXO I didn’t think as much about that benefit, but it is huge. Consol­i­dating UTXOs can be quite something.

Brady Swenson:

All right, right on. Yeah, Pay Join’s very inter­esting to me too and just another way to try to improve privacy on the base layer and absolutely offer that. Let’s talk about Strike a little bit. Strike made a big splash, Jack made a big splash with Strike a few months ago. I’m curious to hear an update on how things are going.

Brady Swenson:

I’m definitely excited about the idea that merchants will be able to accept Bitcoin much more easily, a lot less friction there since the customers are required to have any Bitcoin with Strike. That dovetails really well with your working on BTC Pay as well. So, yeah, what’s an update on Strike? How’s adoption coming along?

Rockstar Devel­oper:

Man, you can see in my background, right? Because a lot of those commits are work on Strike.

Jeremy Rubin:

I was going to say, that background’s more on fire than the last one.

Rockstar Devel­oper:

For the discerning devel­oper eye. 50 more for 2000. Strike is awesome, man, I’m telling you. I feel so blessed to be able to work on something as exciting as Strike and also working with my nephew, Jack Mallers. My virtual nephew.

Brady Swenson:

Did you just dox yourself there?

Rockstar Devel­oper:

No, no, man. It’s an inside joke and I think maybe Jack is watching this podcast, so yeah that’s quite fine. But it’s going really well. We are still not out of private beta but the usage of Strike is just phenom­enal, man. People that are in are using it everyday. It’s working awesome. We are using light­ning for a lot of our settle­ments, but we’re even looking into some other options which I guess for that one, you will need…

Rockstar Devel­oper:

For business details, you will need to get Jack on the podcast because he is the main product guy on this but it’s going well. I’m really looking forward to public beta where we will be able to accept anybody that wants. It will still be US limited which is not ideal but you got to start somewhere. Yeah.

Yan Pritzker:

Are there not any KYC type issues that you run into with Strike since it does go through the banking system or how does that work?

Rockstar Devel­oper:

Man, there are a lot of KYC issues but it’s exactly something that we’re trying to address and working with Jack is awesome for that also because he’s a Bitcoiner at heart. So, any KYC that we need to perform, you can bet that we tried every­thing in order to make it as little as possible. I think he will announce something that we’ve just working on, we’re finishing feature where you will be able to use Strike with almost non-KYC burden.

Brady Swenson:

That’s cool. That’s exciting.

Rockstar Devel­oper:

Yeah. I’m sure every­body will be blown away when they see exact details of where we got and that’s really thanks to Jack and all the work he’s been doing in the back end because yeah. At the end of the day we have all the regula­tors pressuring us. You saw what happened in Europe with the bottle pay and all the other exciting Bitcoin startups. It’s just terrible.

Yan Pritzker:

Are you guys looking at peer-to-peer payments or is it primarily for merchants? What’s the primary use case there?

Rockstar Devel­oper:

We are looking at it from a lot of perspec­tives but at the end of the day, especially because Jack is such a big product person, we are looking at it from the perspec­tive customer is the king. We want to do every­thing for the end user, for our end user who is in the system and making payments through Strike. So, peer-to-peer payments, absolutely. Payments to merchants, absolutely.

Rockstar Devel­oper:

But at the end of the day, it needs to be really, really good end user experi­ence and you will see, I’m really optimistic. I’ll get you in some private details that I can’t talk in public podcast but I’m really optimistic. Be sure to follow Strike handle in next week or two. We have big announce­ment coming up.

Yan Pritzker:

Exciting.

Brady Swenson:

That’s definitely exciting. We have a question I think fits nicely in right here from our chat room. This comes from Phil Gibbs. He asks, “What’s the key to devel­oping great UX and UI?”

Rockstar Devel­oper:

Yeah, I saw and he has a lot of great questions.

Brady Swenson:

Yes.

Rockstar Devel­oper:

I don’t know how many, we’ll run out of the time but I would say for user experi­ence and user inter­face, it’s getting your devel­op­ment team stacked, filled with good people. What I told to Jeremy is we’re covering full stack here when it comes to devel­op­ment on this podcast with him working so much on Bitcoin core and me working more on appli­ca­tion layer.

Rockstar Devel­oper:

You really need to have people who are great when it comes to user experi­ence and usually those people are not the ones imple­menting. They’re not program­mers. I would say focus on that, because the biggest problem that I made with myself and in my career is when I initially started. I was expecting that after five, ten years, I’m going to turn into this awesome technical guy who knows everything.

Rockstar Devel­oper:

That’s just impos­sible. You can’t cover all the bases, so also advice for young program­mers. Don’t try to be every­thing. Find your focus and then start working, being the best on whatever it is that you’re focusing on. Then you do graphs like this one in the back. You focuse, keep churning out code and it will fit right in the right team. So yeah.

Brady Swenson:

Nice. Thanks for that. I’d like to get into… By the way, Cory Klipp­sten just joined us, CEO, founder of Swan Bitcoin, so just wanted to say, hey Cory, welcome you to the call.

Cory Klipp­sten:

Happy Wednesday. I’ve been listening all along. I enjoyed the price chatter at the begin­ning. That was fun and good to do some learning. Thanks, Jeremy and Rockstar for joining. This is great.

Rockstar Devel­oper:

Thank you for the invite, man.

Jeremy Rubin:

Thanks.

Brady Swenson:

Yeah, so next thing I’d like to get into is another question from Phil and one that I’m definitely curious about too and would like to get into. What do you guys think is the next debate that could plausibly or poten­tially cause a hard fork or do you think that those debates are behind us at this point? Jeremy, you want to start us off?

Jeremy Rubin:

I don’t think there’s anything on the horizon that’s hard fork level. But one thing that I do worry about is a lot of the work that I do is motivated by trying to solve long term issues for Bitcoin today. There’s a response that I get sometimes which is, “It’s not a problem right now.” That’s sort of the same thing as when you go to the doctor and they’re like, “You should probably get on a statin for your choles­terol,” and then you go, “I’ll worry about it after I have my first heart attack.”

Jeremy Rubin:

That’s the wrong time to start worrying about that kind of problem and I think a lot of these solutions… I work on conges­tion control. Conges­tion control has two benefits for Bitcoin. One, it makes it more… As peak demand goes up in Bitcoin, it makes it possible to keep on using the system as you’re using it before. But it also helps create a more robust back log of trans­ac­tions for the mem pool to be able to process that exists at lower priority, which means that you’re going to have more robust mining incen­tives longer term.

Jeremy Rubin:

So, I do think one thing that we might see is issues around mining incen­tives. We’re near halving so it’s a little bit topical, but if we don’t see… I do believe long term, we’ll see the fee market match mining but there might be periods of time where that’s not the case and that will make miners very unhappy if there’s ever sort of short term mining is not profitable.

Jeremy Rubin:

We’ll start see people saying, “Hey, we need a solution for this.” The obvious solution is turn off your miners, but miners have OpEx and CapEx and there’ll be a point where no, they really can’t turn off miners to down cost. They have to get this. They’re getting negative revenue, but it’s a smaller negative than if they completely shut off.

Jeremy Rubin:

I think that’s something that possibly if we don’t sort of solve the problems that are going to come up in five or ten years now, that we’ll start seeing more contention around disagreeing what solutions are possible rather than having the solutions deployed today. That would be something I could see on the horizon.

Rockstar Devel­oper:

Yeah, I actually 100% agree with Jeremy and if I may build up on his answer, I think one of the biggest differ­ences looking back if you’re also talking about halvings is four years ago, I think we’re now way better when it comes to commu­nity building. There is this running joke that what’s the main use of blockchain, it’s conferences.

Rockstar Devel­oper:

We’re getting way better at commu­nity building and people connecting. We absolutely need to stay in the mindset that Jeremy is mentioning where we need to keep being proac­tive and not wait for the problem to happen but actually if we can do something at this point of time, let’s do it.

Rockstar Devel­oper:

I like the free space that Light­ning Labs is leaving behind them with their great VC raises and the confer­ences that they organize or are involved with. Company like yours, other compa­nies in Bitcoin ecosystem that are being estab­lished and created and the commu­nity building that happens behind of all that.

Rockstar Devel­oper:

In the end, we need to keep improving Bitcoin and all the stuff that we’re mentioning about scaling and poten­tial problems and addressing those problems, we need to keep getting better at solving the problems because as soon as you solve one problem, you have a more complex problem in front of you and we need to keep evolving.

Rockstar Devel­oper:

The idea that Bitcoin is now here and it will just indef­i­nitely stay in this shape and somehow survive forever, I don’t believe in that.

Jeremy Rubin:

I think the other thing too is the ecosystem moves at, let’s call it a glacial pace on integrating new features. It’s sort of one of the things where I want to get Check Template Verify out there as soon as possible so that people who really want to use it today can use it today, but it’s really realis­ti­cally not going to get integrated for three years at exchanges and things.

Jeremy Rubin:

That’s why to me people say it’s not urgent. It’s like, well, when it becomes even a little bit urgent, it’s going to take three more years to deploy. We really have to get things out there sooner than later because we’re going to get into a timeline where we’re adopting changes out of panic and urgency and then that’s going to be a more vulner­able moment for Bitcoin to consider a change.

Jeremy Rubin:

There’s going to be more aggres­sion, more people who are feeling pain. While I like that Bitcoin should have sort of overwhelming assent on any change, where every­body’s like, “We need this,” there’s fragility in that as well. I think that right now, we just don’t have the right sort of balance of that fragility of dire need and the ability to coordi­nate on something today that’s maybe not dire but hopefully prevents us from having that in the future.

Rockstar Devel­oper:

Listen man, as long as we’re not merging PR like [Przyck?], We’re good, man, we’re good.

Brady Swenson:

Yan, do you have any thoughts on the question that kind of started this discus­sion? Poten­tial contentious issues in Bitcoin that you see possibly on the horizon.

Yan Pritzker:

Sorry. I think these guys have covered it pretty well. I do think if anything, there’s always these people that are putting out papers and concerns around miners stick around post this halving, the next halving or 20 halvings from now. What should we do when the fees are too small?

Yan Pritzker:

Some of the stuff that Jeremy mentioned is legit­i­mate and if we can work on solutions ahead of time, that’s great but I don’t know. I’m less concerned because I think there is a game theory compo­nent here. If mining is not profitable, that means people aren’t inter­ested in using Bitcoin. Mining in and of itself isn’t the end all be all. Mining is a service to Bitcoin and if people want to use Bitcoin, they’re going to pay fees. That’s what it comes down to.

Yan Pritzker:

I think over time, as the price of Bitcoin goes up, these things will naturally work themselves out and if it doesn’t, if the price is not going up, then these people aren’t inter­ested in Bitcoin, right? If the black space isn’t filled, that means people are inter­ested in Bitcoin and we shouldn’t solve problems that don’t exist.

Yan Pritzker:

To a certain degree, I agree with being preven­ta­tive where we can be but we also have to recog­nize that these problems may never happen if there’s actually interest in Bitcoin.

Jeremy Rubin:

I think that’s a tent question, right? What’s the tam of Bitcoin? I agree that the system is dynamic enough that it sort of game theoret­i­cally has to function for the set of people who are partic­i­pating but I worry that Bitcoin also should be growing its tam and there’s a world where Bitcoin continues to function for the set of people who are using it right now and continues to be profitable among some people that are using it right now, but it doesn’t grow in terms of the number of people who are using it. If we go back to price, it’s not that useful today for example.

Yan Pritzker:

Right, countries can’t settle trillions of dollars with each other on Bitcoin today.

Jeremy Rubin:

Yeah.

Yan Pritzker:

I would agree with that but again, if that need arises and Bitcoin wouldn’t neces­sarily grow to fill that need and the mining would be insanely profitable. If it never rises, I mean it’s kind of a chicken and the egg, right? Which needs to happen first? I would kind of argue that demand needs to happen first and as demand happens, that creates incen­tive to do more and more stuff, including more devel­op­ment as more money flows into the ecosystem because people are inter­ested in seeing the protocol move forward.

Jeremy Rubin:

There’s an inter­esting thing there and at least from my perspec­tive, maybe a good time to do my shame­less plug of I’m trying to raise open source funding to promote some of the projects that I’m doing, get more devel­op­ment time. I’ve got a lot of things going sort of under the radar right now that are up the stack that I think people are going to be really excited about but light on details right now to share more. But if you are inter­ested, get in touch after the podcast.

Jeremy Rubin:

I initially started looking at doing it as a venture capital related thing, saying, “Okay, I have a real business that I could build here,” and the overwhelming feedback that I’ve been getting is, “Hey look, you’re depending on a change to Bitcoin. That’s not something that we… That’s too risky.” I think in the chicken and egg issue, the side of the shell that I’m on is that anything that predi­cates what Bitcoin will evolve to support, people funda­men­tally just don’t try Bitcoin or don’t expect that Bitcoin can do it.

Jeremy Rubin:

I think that there’s an element to where people know what Bitcoin can do. They read these papers about these issues in Bitcoin and they don’t want to put Bitcoin into a long term relia­bility context for a system that they’re building. I think that solving some of these issues earlier, even if they’re more academic, longer term out, that actually lets people have a theoret­ical basis that they know that what they’re building will be robust for the very long term.

Jeremy Rubin:

I think that that’s sort of encour­aging people to come in. It’s increasing supply and then that will have sort of feedback loops of demand.

Yan Pritzker:

If you open it up, if your system was avail­able today and I could easily set up a will for my children, I for sure would get all of… I’d get lots more people on board and say, “You don’t have to worry about it.” Especially older folks who are poten­tially like my parents. My parents have bought some Bitcoin and they don’t have a will or a legal struc­ture on that Bitcoin, so we have to figure that out.

Jeremy Rubin:

Also, you’d be comfort­able holding more Bitcoin, right?

Yan Pritzker:

Right, totally.

Jeremy Rubin:

If you want to make more hoddlers, you’ve got to have robust solutions around this stuff.

Yan Pritzker:

Yeah, I agree. Definitely when it comes to building things for the future, it does create its own demand. There’s definitely that sense. I was just kind of commenting more on people who are panicking around mining death spirals and stuff like that that you hear about.

Jeremy Rubin:

Oh yeah. I mean, we have solutions. We can solve these problems. It’s just like, we actually have to deploy. We can’t just not deploy.

Yan Pritzker:

Mm-hmm (affir­ma­tive).

Brady Swenson:

Nice. I remember talking with you Jeremy last week on the Drinks in Quaran­tine gathering about this idea and you called it the 1% Hoddle Pledge, which I really like that idea, that framing. I hope that Bitcoiners out there can figure out how to make this happen and just organ­i­cally start contributing to organi­za­tions or trusts like Jeremy’s setting up. Just 1% of your funds, man. We’re all bought into this. We all have tons of skin in this game at this point collec­tively, so makes sense that we should all volun­tarily pledge a bit of our stack to help the Bitcoin devel­op­ment along.

Brady Swenson:

I have one more question about dev, about tips for new devs. You guys are both devel­opers, both have I assume been doing this for quite awhile now, from young ages. Can you share any tips with people who want to get into devel­op­ment now? I think increas­ingly, people need to have some dev skills, at least minimal dev skills to kind of persist and exist in this world today. As we move into a world with digital money and digital native money, that’s going to become even more so, so you can have more control over your money, develop scripts, Bip 19 scripts for yourself so you know what is happening for your money, don’t have to trust somebody else to do that kind of thing.

Brady Swenson:

What tips do you guys have for people just to get started in devel­op­ment? Yan, I want you to get in on this one too please.

Rockstar Devel­oper:

I can do a whole podcast on this.

Brady Swenson:

You go first.

Yan Pritzker:

Me? Am I going first? Yeah, it’s really tough because I started coding at a young age and when people ask me what they should start with, it’s almost like in certain cases, devel­op­ment has gotten a lot easier and in certain cases, it’s gotten harder because there’s so much more out there and so much more rapidly evolving.

Yan Pritzker:

It really depends on which side of the stack you want to work on and we have two guys that can comment on this at very different levels. I’m probably at the highest level of the appli­ca­tion stack. I’ve spent all of my life building web appli­ca­tions and stuff like that and overseeing mobile apps. When it comes to Bitcoin core devel­op­ment, it’s super scary to me.

Yan Pritzker:

I can read the code, I can under­stand what’s happening but I would never touch it. You don’t want me in there.

Jeremy Rubin:

I’ll help you get to that if you ever want to.

Yan Pritzker:

I’ve actually commented on some PRs trying to get my skin in the game but that’s actually what I would recom­mend for young devel­opers starting out is you have to have an idea for what you want to build. Other­wise, if you open a book on Python or something, it’s going to be very boring for the most part and you’re not going to get very far. You need to have an idea.

Yan Pritzker:

Maybe it’s just building a to-do app for your phone or for your web or something. Or go and look at an open source project that you like, like BTC Pay server or something. Look at what people are doing in there. Open up the code and try to read what somebody’s doing and try and interact with people and ask questions. I think that does help you learn a lot.

Yan Pritzker:

I’m just going to kind of leave it off there because I don’t want to answer for you guys but for me, it’s about finding a project that you’re passionate about that will force you to learn the things that you need to actually execute on it.

Brady Swenson:

Rockstar, tips for new devs?

Rockstar Devel­oper:

Yeah, I’m watching to see if Jeremy will be on but then I can be a closer as usual.

Jeremy Rubin:

Okay. Yeah, so I think first off, it’s never been a better time to start trying to learn how to program and code and build stuff. The amount of leverage you have as an engineer right now, not just salary or compen­sa­tion wise but in terms of how much work you have to put in to get something really cool and compelling together, it’s magical right now.

Jeremy Rubin:

I started doing web devel­op­ment awhile ago and you have let’s say this massive javascript that doesn’t really make sense and it’s just unstruc­tured and now you have these really powerful frame­works like React that have every­thing very logically and consis­tent set up and all these sort of messy things previ­ously you had to do to get something even half decent, now it’s very sort of baseline concepts to get going.

Jeremy Rubin:

I think there’s never been a better time to just start working on these things. I know Swift also has really good learning stuff if you want to make apps. I would definitely encourage people to start.

Jeremy Rubin:

I would also say find a sherpa or a mentor, somebody who can give you some sage advice, who’s been there and done that. It can be really frustrating to get going and there’s a lot of people online who are very patient and willing to help get new program­mers going and kind of share the joy of programming.

Jeremy Rubin:

I also think that the last thing would be to just sort of temper your expec­ta­tions early on. Every­body thinks that they’re going to start devel­oping and then they’ll have the next Facebook. That can happen, but devel­op­ment is really hard and can be really diffi­cult to do and there are gaps between something that you can be proud of and something that’s going to be Facebook complexity.

Jeremy Rubin:

Just one thing that I like to do is just know that you’re going to throw away projects until you get one that you’re proud of. It’s kind of like the clay pots thing people talk about. Every­body’s got 200 bad cups in them or 200 bad poems. You’re going to start, you’re going to build something, then you’re going to have learned and you’re going to look back on what you’ve built and you’re going to go, “Why did I do it that way? That was not right.”

Jeremy Rubin:

You have to be okay with moving and learning and throwing away and then building. That’s how you’re going to get all those green dots on your background like Rockstar is, contin­uing to build, improving on your skills and techniques, and moving forward. I guess just a last one is to just do it. Just get started.

Jeremy Rubin:

I think there’s a lot of things that you can discourage yourself on and you can say, “This is too compli­cated,” or, “I’m going to run into this or run into that”. Find out if you do run into it and you’ll learn something along the way there, but maybe you won’t hit that obstacle that you thought you were going on.

Yan Pritzker:

Yeah, I want to just add that what devel­opers are really good at more than anything is Googling. I think every­body will agree with this, that most of the time when you’re writing code, you’re doing something for the first time that you’ve never done before and you’re going to google, “How do I do this? How do I do that? How do I build an app in my web browser?” Okay, Google that. What happens? What comes up?

Yan Pritzker:

One layer behind that. What language should I use? Just keep asking questions and get really good at Googling and under­standing the answers because that’s what devel­opers do at any level. I’ve been coding for 20 years and I google the hell out of every­thing I do because there’s just too much knowl­edge out there to keep in your head. So, getting really good at just processing that and learning quickly. That’s what it’s about.

Rockstar Devel­oper:

Yeah, and I always laugh at that when people expect that… Job appli­ca­tions or somebody asks you on a job appli­ca­tion to describe bubble sort, how stable after 20 years of coding, but I really believe it all comes down to not getting discour­aged to the point of quitting because going back to what I said about my biggest mistake when I was initially getting into the program­ming was expecting that after five, ten years, I’m going to be this awesome technical person that every­body respects and I’ll be able to code anything.

Rockstar Devel­oper:

That won’t happen after 50 years, not 10 years. Just find how not to get discour­aged. That’s all and as long as you make a sustain­able cycle where there is an issue, you create a PR, PR is reviewed and closed and you can repeat that cycle and not starve, because I saw Jeremy was joking. He’s like, starving indepen­dent researcher.

Rockstar Devel­oper:

But what you’re mentioning, you’re now way beyond that, having investors inter­ested and stuff. It’s all about that. How do you get from being able to see an issue, create a PR, close it and then repeat the cycle and sustain that? I actually do a lot of one-on-one talks with devel­opers, wannabe devel­opers, especially from Bitcoin community.

Rockstar Devel­oper:

I was even organizing weekly meetup on Wednes­days. People join in and we just talk about code. Yeah, what we have said. Just also find the mentor, find somebody who is willing to answer your questions and just don’t be an ask hole. If you ask your question, you get your answer, then you need to put in the effort for at least a week and then after a week, if you did put in effort, come back with another question. If you haven’t, then find a more exciting mentor.

Rockstar Devel­oper:

Because I always go back to the social compo­nent. I really started thriving when I under­stood that I work way better in groups of people and then if you can find a group of people that sustain you person­ally, then every­thing becomes easier. Even if you have some issue or you don’t know how to code something, you can ask somebody.

Rockstar Devel­oper:

Back in the ’90s, man, I had the huge wish and I wanted, but you can’t even find… Nowadays, you have stack overflow. If you’re stuck, there is somebody who will help you and as for apps being exciting, man, apps today are way more exciting. Jeremy talked about Rehack. When I think about apps, I was building in ’90s with Windows forms and the rest. It’s terrible. You put a week into that and you have this ugly Windows form. Just don’t get discour­aged and keep at it.

Brady Swenson:

I started coding when I was young, probably about 10 or 11 years old and it was completely absorbing. It’s how I got into computers and I never became a profes­sional devel­oper, but I’ve used coding and the princi­ples that I learned while coding throughout my profes­sional career. You know it taught me logics, systems thinking, I can throw together scripts and automate some things when I need to.

Brady Swenson:

One thing that Rockstar just brought up that’s really impor­tant, don’t be an ask hole. An impor­tant aspect of that is don’t ask until you’ve at least Googled a bunch, stack overflowed, and tried to solve it yourself. Then you can ask a really good question like, “Here’s what I tried, here’s what I know failed, here’s what I learned, but I’m stuck and I need some help.”

Brady Swenson:

That’s my little bit of advice and pitch on why to program. Oh, another good thing that occurred to me when Rockstar was talking is about learning how to use Git Hub and the source control. There are a couple of sites, Bitcoin infor­ma­tion sites that you can contribute to like Bitcoin.page, – Lopp’s site you can contribute to with pull requests and he’ll review them and put them in there.

Brady Swenson:

I’ve done that many times. Bitcoin resources, Bitcoin-resources.com is Gigi’s list of resources, also up on Git Hub. If you just want to kind of test that process out, find the resource that you want to throw up there and suggest it with a pull request, really simple to do. It’s all user inter­face on the web.

Rockstar Devel­oper:

If I could jump in there, if there are people listening to this specif­i­cally for devel­op­ment, like want to become devel­opers, just come to chat.btcpayserver.org. Four of you also, we need you there. Join in there and there are a lot of great people already in commu­nity. If you do have any devel­op­ment questions, just DM me and we can go over them, see if you’re ask hole or you’re future Rockstar Developer.

Brady Swenson:

Cory, you want to wrap us up? I know you hopped into the call and I wanted to hear some of your thoughts on what we’ve been talking about and whatever else you want to get into.

Cory Klipp­sten:

Yeah, well you know, I like to come on toward the end of some of these and just do a little industry update, Swan update, shill a few things. But yeah, I just wanted to actually start out… I’m going to take it way off topic here, but if anybody did not see the music video that we posted yesterday, you should definitely go to the Swan profile. We’ll pop it up there again. Lot of your favorite Bitcoiners are in that. It’s a remake of Good Riddance. Good Admit­tance is the title of the song. It’s Bitcoiners in quaran­tine, so that was super fun for the team to put together and got people from around the world in that, so hats off to Brekkie Von Bitcoin for singing it and doing the editing and Al’s Lacrosse for the lyrics on that one. That was pretty awesome.

Cory Klipp­sten:

Let’s see what else. We’ve got the halving party, so BTC Media Bitcoin Magazine halving party all day Monday. Is it all day Monday? Is it Tuesday as well, Brady?

Brady Swenson:

Yeah, the halving is estimated right now to be late Monday, the 11th, eastern time right now.

Cory Klipp­sten:

The event with BTC Media, is it Monday and Tuesday or just Monday? I forget.

Brady Swenson:

Yeah, it’s going to be 21 hours around the halving, so it’s going to go both from Monday into Tuesday for sure.

Cory Klipp­sten:

That’ll be super fun and I know we have a special Swan Signal Live that after­noon. I think it’s 2:00 PM Pacific, 5:00 PM Eastern on Monday. Yeah?

Brady Swenson:

That’s right.

Cory Klipp­sten:

Should be Monday. I know Stephan Livera is going to be joining you and one more guest to be announced, so that should be really, really fun. There’s also a big confer­ence that went down in Germany this time last year, the day after the Light­ning confer­ence. There we go. Nice. Bringing up the music video.

Rockstar Devel­oper:

Here we go, man. I told you I’m best support but I’ll just need to leave.

Cory Klipp­sten:

Yeah. We can let you go, Rockstar. That’s totally fine. We’re just going to finish up for five minutes here but thank you so much.

Rockstar Devel­oper:

Thank you.

Cory Klipp­sten:

Awesome.

Brady Swenson:

Later. Later, Rockstar.

Rockstar Devel­oper:

See you guys.

Cory Klipp­sten:

So yeah, this one’s called the Value of Bitcoin confer­ence and a lot of your favorite Bitcoiners are on that. We’ll throw it in the comments here, on Twitter, and in the Swan Signal chat room on Telegram. Tune into that, it’s free. You just register and they got a lot of really good speakers coming to that. Should be some really inter­esting content. I’m going to moderate a panel with people like Alex Svetski and Meltem Demirors and a few other people talking about investing in Bitcoin startups on Tuesday morning.

Cory Klipp­sten:

Then we’re actually doing a Bitcoin startup showcase, so CEOs from some of the top Bitcoin startups in the after­noon on Tuesday. You can just basically see people like Sergei from Bit Refill, Joe Kelly from Unchained, Will Reeves from Fold, Nick Newman from Casa, and myself just kind of giving updates and product overviews and roadmap, just talking about what’s going on with some of the Bitcoin startups. So, that should be pretty cool.

Cory Klipp­sten:

Anything else you wanted to cover? Oh, just a quick update on Bitcoiner Ventures for people that are aware that some of us are also involved over there. Yan and I and Stephan Livera and Louis Liu are the partners at Bitcoiner Ventures and we’re rounding toward home right now on the very first steal there. If you want to check out the Bitcoiner Ventures syndi­cate on Angel List and partic­i­pate in the first deal, can’t solicit and actually talk about the specific deal on social media, so banned from saying which it is but if you’re a Bitcoiner, it’s probably one of your favorite Bitcoin compa­nies and they were kind enough to give us an alloca­tion into their current round, so it’s a nice oppor­tu­nity to support the Bitcoin ecosystem and poten­tially get one of those early sage invest­ments that have a lot of upside poten­tial. We Bitcoiners know a lot about upside poten­tial, don’t we?

Brady Swenson:

Cory, before you move on from this, to Jeremy’s idea earlier about supporting Bitcoin devs, does Bitcoiner Ventures have any plans to support Bitcoin devel­op­ment as well as companies?

Cory Klipp­sten:

Yeah, absolutely. If you check out BitcoinerVentures.com, you can actually just hit us up. I believe it’s hello@bitcoinerventures.com to submit requests for grants. It’s more of something that Stephan is good at, finding those people with his platform, with the podcast and all the open source inter­views that he does. It seems like both the donations and the requests are largely heading through the Stephan Livera funnel.

Cory Klipp­sten:

But yeah, we’re firming up and trying to get better advice on how to do these gifts in a tax advan­taged way, how to take Bitcoin as donations, things like that. It’s a slow burn at first, but we hope once we get good at it, that will be a really nice way to sort of aggre­gate donations and help them find good homes and awesome open source projects.

Brady Swenson:

Awesome, awesome. Anything else before we close out, from you Cory and then Jeremy and then Yan?

Cory Klipp­sten:

Price is pumping, baby. I missed the price chat at the begin­ning, but this is great. That’s very good. No, listen, just on the Swan side, obviously we’re thrilled at where we are just over a month in. We’re about 5x to 6x ahead of schedule, so that’s really cool to see. It means that Bitcoiners, they like this whole dollar cost averaging thing, they like this recur­ring purchase thing.

Cory Klipp­sten:

You saw Marty put out an event today just talking about creating a price floor with the sort of constant buying pressure from people that are just on this automatic stacking program. We’re really pushing that narra­tive about it’s very cool, it’s very zen, Swan and chill, stacking is better than trading. It really is… I’m thrilled that I just don’t have to think about it anymore and I’m not just sitting there like a crack fiend just setting limit orders hoping that they hit and ignoring my wife and kids.

Cory Klipp­sten:

It’s just awesome to know and just check my account every once in awhile and just see that Swan’s been stacking for me. Really glad to be live with this product. I think it’s not just good for Bitcoin, it’s good for people and good for humans that have been masquerading as traders a little bit too often over the last years.

Brady Swenson:

Jeremy, any closing thoughts?

Jeremy Rubin:

I’m super glad to have been able to come on here. This is a lot of fun. I’m hoping that we’re going to make a lot of progress on getting Check Template Verify in and through, so I hope anybody who has tuned in, if you have a chance to go check out UTXOs.org, read a little bit about Check Template Verify and I’m going to have some more exciting content coming out soon hopefully. So, hope everyone can just get excited and we can get this stuff through.

Brady Swenson:

Awesome, awesome. Yan, any final thoughts from you?

Yan Pritzker:

Yeah, again, I just want to reiterate that I think Jeremy’s project is very cool. I wasn’t aware that UTXOs.org website which is really a shame because it’s a great site. Really explains these concepts really well. I had a chance to talk to Jeremy earlier and we had a more deep dive one-on-one about his project.

Yan Pritzker:

I really think it’s going to be a big deal for Bitcoin and I agree with him on the idea that we should be funding progres­sive ideas in Bitcoin that move it forward, that aren’t just reactions to “problems”. I would love for other people to look at that and take a look at see if it’s something that’s inter­esting to them, because I do think that enabling people to do things like long term estate planning and stuff like that on the blockchain is very, very cool and will bring in new people.

Yan Pritzker:

So, I’m very excited for your project, Jeremy, and thanks for coming on board and yeah, just looking forward to the halving and I’m sure we’ll all get disap­pointed, we’ll have a little price dump there or whatever, sell the news. But the impor­tant thing to note is that we’re all here for the long term and we’re accumu­lating Bitcoin.

Yan Pritzker:

That’s exactly why we stack. We stack because we’re not trying to time events. We don’t care if the price goes up or down during the halving. We’re here for the next 10, 20, 25, 50 years and this is a long term process. So, keep stacking and just chill. Chill and stack.

Brady Swenson:

Swan and chill. All right, everyone, thanks so much for your time. It’s been a ton of fun, another great Swan Signal episode. We’re out. That’s it.

Brady Swenson:

Thanks to Jeremy and Rockstar for joining us. You can follow Jeremy @jeremyrubin at J‑E-R-E-M-Y-R-U-B-I‑N and follow Rockstar @r0ckstardev, that’s at R‑0-C-K-S-T-A-R-D-E‑V on Bitcoin Twitter. On behalf of the Swan team, thanks for joining us. We hope you enjoyed the episode.

Brady Swenson:

Join us next time live. You can jump into our Swan Signal Telegram chat room. We have a lively crew in there that chat during the live episodes and we have conver­sa­tion all week as well. It’s a great group. It’s at t.me/swansignal.

Brady Swenson:

Swan Signal is a produc­tion of Swan Bitcoin at swanbitcoin.com. The best way to buy and accumu­late Bitcoin. We have easy set up of automatic recur­ring buys. We’re focused on stacking sets, not trading. There’s no distrac­tions here at Swan. We are forever Bitcoin only, we have just launched automatic withdrawals and we’re committed to Bitcoin education.

Brady Swenson:

Follow us on Twitter @swanbitcoin and subscribe to the podcast at swansignalpodcast.com. That’s it for this week. Thanks for joining us.

Other Episodes

Episode 8 –Andy Edstrom and Ansel Linder

Episode 10 – Bitcoin TINA and CK Snarks

Episode 11– Gigi and Knut Svanholm

Episode 12 –Adam Back and Preston Pysh

Episode 13 –Alex Gladstein and Matt Odell

Episode 14 –Robert Breedlove and Tuur Demeester

Episode 15 –Isaiah Jackson and Max Keiser

Episode 16 –Gigi and Udi Wertheimer

Episode 17 –Aleks Svetski and Jimmy Song

Episode 18 –Stephan Livera and Marty Bent

Episode 19 –Mark Moss and Ben Prentice

Episode 20 –Samson Mow and Parker Lewis

Episode 21 — Lyn Alden and Jeff Booth

Links

Swan Bitcoin

Rockstar Developer

Rockstar Devel­oper on Twitter

Light­ning Zap

BTCPay Server

Jeremy Rubin

Jeremy Rubin on Twitter

Jeremy’s Personal Webpage

This blog offers thoughts and opinions on Bitcoin from the Swan Bitcoin team and friends. Swan Bitcoin is the easiest way to buy Bitcoin using your bank account automatically every week or month, starting with as little as $10. Sign up or learn more here.


Brady Swenson

Brady Swenson

Brady is the Head of Education at Swan Bitcoin, the best place to buy Bitcoin with easy recurring purchases straight from your bank account. Brady also hosts Citizen Bitcoin, a podcast focused on documenting his journey learning Bitcoin, featuring some of the biggest names in the Bitcoin world.

More from Swan Signal

Thoughts on Bitcoin from the Swan team and friends.
The Bullish Case for Stratum v2

The Bullish Case for Stratum v2

By Pavlenex

Stratum v2 is the missing piece of the decentralization puzzle for Bitcoin.

Read More
A New Age Dawns for Financial Advisors

A Blockbuster Moment

Read More
Dollar Cost Averaging vs. Lump-sum Investing

The best strategy is the one that allows an investor to hold through Bitcoin’s volatility and sleep well at night, whether it's DCA or lump-sum.

Read More

Join our mailing list to receive new articles from the Swan Signal

Swan Bitcoin
© 2023 Swan Bitcoin

Electric Solidus, Inc.
26565 Agoura Rd Ste 200
Calabasas, CA USA
hello@swanbitcoin.com
+1.218.379.7926
© 2023 Swan Bitcoin

Electric Solidus, Inc.
26565 Agoura Rd Ste 200
Calabasas, CA USA
hello@swanbitcoin.com
+1.218.379.7926

Swan Bitcoin does not provide any investment, financial, tax, legal or other professional advice. We recommend that you consult with financial and tax advisors to understand the risks and consequences of buying, selling and holding Bitcoin.