Joel talks with head of open source for the Calibra project, Eric Nakagawa, about the Libra project. Libra's mission is to enable a simple global currency and financial infrastructure that powers billions of people.
On this episode of The Diff, Joel talks Libra with Eric Nakagawa. Libra's mission is to enable a simple global currency and financial infrastructure that powers billions of people. Eric is the head of open source for Calibra, who is building a wallet for Libra. Eric describes how Libra works, how validator nodes work, what parts of Libra are open sourced, the difference between Libra and Calibra, and much more.
- Libra Developers
- Libra Assocation Announcement
- Libra 5-month status report
- Libra September Roadmap Update
- Libra on Twitter
[00:00:00] Joel Marcey: [00:00:00] Hello, this is Joel Marcey, host of The Diff podcast. The podcast you're about to hear was recorded on October 2nd, 2019 and today is November 18th, 2019 and while the content of the podcast is all still relevant and still awesome, there are a couple of things that have happened that you may be interested in.
[00:00:20] For example, on October 15th, the 21 initial members of the Libra association formally signed on to the Libra association charter and formalized the Libra association council. And on November 15th, the five month progress report about Libra was also published. you can find this information on Libra, libra.org and developers.libra.org/blog.
[00:00:46] And in the podcast, I made a prediction that this podcast would get out before November, and that was wrong. But hopefully you still enjoy the content anyway, and now let's get to it.
[00:01:00] [00:00:59] On this episode of The Diff, recorded October 2nd 2019, Eric Nakagawa returns to talk about the Libra project. Libra's mission is to enable a simple global currency and financial infrastructure that powers billions of people. Hear Eric describe how Libra works, how validator nodes work, what parts of it are open sourced, the difference between Libra and Calibra, and hear me make up a new word related to philanthropy. Let's get to it.
[00:01:27] Hey Eric welcome back. You were on episode 1 of The Diff, our first inaugural episode, when you were a developer advocate on the open source team. I think we talked about open source at Facebook a little bit, and now you're the lead on the open sourcing of Libra. So thanks for coming back. Can you tell us a bit about what Libra is and how you ended up leading the open source efforts there?
[00:01:53]Eric Nakagawa: [00:01:53] Hey Joel, thanks for having me back. For folks who are listening in my name is Eric Nakagawa. I'm heading up [00:02:00] the open-source effort on the Calibra team at Facebook, which is helping to build the Libra, the Libra blockchain project that was announced back in June.
[00:02:11] And you're right. It's a quite big of a change last time we met I think we were talking about dev advocacy. And all the things we love about that particular role at Facebook and just in general and it's changed quite a bit now. I think the the work that I'm doing now is a little bit wider in scope and at the end of the day, I feel like it's really exciting project.
[00:02:33] The project is very ambitious and be happy to talk about I think some of the things that we're working on.
[00:02:39]Joel Marcey: [00:02:39] Excellent. Can you kinda for our audience kind of give an overview just just at a high level? What is Libra? What does it do?
[00:02:49]Eric Nakagawa: [00:02:49] Got it. So Libra or the Libra project is a blockchain project which is a financial technology that allows for financial transactions to happen [00:03:00] in a public way that the public or the, you know, the rest of the world can kind of peer into and and see what's happening, who's doing what who's sending things here and there which is very different from traditional sorts of financial models and it's not the first Block Chain project but it is one of the first blockchain projects from Facebook and its really it's been built off of a lot of Technologies and progress that's been made by other projects like Bitcoin, Ethereum, like all those projects that a lot of folks may know about now only really came up about in the last, you know, 10 or so years.
[00:03:41] Joel Marcey: [00:03:42] So you mentioned Bitcoin and I think a lot of our audience probably has heard of it is is Libra just another Bitcoin or is it does it have to serve a different purpose? Can you kind of describe the differences there between
[00:03:57] Eric Nakagawa: [00:03:57] got it
[00:03:57] Joel Marcey: [00:03:57] Libra and another cryptocurrencies? [00:04:00]
[00:04:00]Eric Nakagawa: [00:04:00] So yeah, let me explain every single cryptocurrency kidding. I....
[00:04:03]Joel Marcey: [00:04:03] No
[00:04:03] Eric Nakagawa: [00:04:03] I know this is kind of the currency projects out there. And the great thing is that since Bitcoin was launched it introduced kind of a new way of thinking. So the way I look at Bitcoin itself as it was written starting with a white paper written by the famous, Satoshi Nakamoto who we don't know if it's a real person or a group of people but they that person released a white paper and alongside of it was an implementation for what the white paper had outlined and that was a you know, a Bitcoin mining software application and it did two things one it connected with other nodes so it created a network and two it did it this thing called proof of work. With proof of work what's required is all computers on the network, all the miners quote-unquote, are trying to solve complex mathematical equations to come to an answer for a [00:05:00] particular set of transactions and we call this a block reward and this is a very common idea of like doing work or having a computer to work either a CPU or GPU is becoming quite a common method for proof of work type blockchain projects.
[00:05:17] The project the Libra project though is very different. It doesn't have that component. So it doesn't have something called a proof-of-work. It has something more of like a proof of stake or even then it's like it doesn't really have the same methodology for determining whether or not a transaction is legitimate and what makes it different is there are or will be in the future I think a hundred nodes or hundred partners that are part of a large organization helping to guide along the Libra technology.
[00:05:52] And each of them are going to run a node and a node is more than just one particular server or or computer. It's actually [00:06:00] several individual components either servers nodes either full nodes or things that kind of keep track of activity on the network and and then there's going to be validators that will go through and determine the validity of transactions that are trying to be processed and it happens quite quickly. But it doesn't have the same component of the sense of mining. So there's no you know, there's no room full of gpus or special special Hardware that's running in a room somewhere. That's just chugging along consuming a bunch of electricity trying to solve mathematical computations instead. The system is set up in a way where a certain amount of the nodes themselves communicate with each other.
[00:06:45] And they determine, by keeping track of the history of previous transactions, whether or not the next transaction or the future transaction is accurate, and if it is they all come together and then decide whether or not they agree [00:07:00] that something is valid and if it is if they all they all agree and they all right that to the you know, the blockchain itself and it kind of creates another sort point in time or state for for the Libra Network itself.
[00:07:13] Joel Marcey: [00:07:13] So Eric you mentioned about all these nodes they work together to kind of you know agree that a certain transaction has is its true and has the right Fidelity.
[00:07:24] Hopefully I got that right but what happens if the nodes don't agree.
[00:07:29] Eric Nakagawa: [00:07:30] All right. So that's a that's a really good question. What if the nodes don't agree? Well in the case of the Libra core technology, I think with the current, the current technology itself or the algorithm that we're using. I think we require something like that 30% I need to check my notes. But if this is a we're dogfooding here the network should not get into that particular state if it [00:08:00] does....I actually don't know. What happened? How would a project how would the how would the network get into state where it did not agree?
[00:08:10]Joel Marcey: [00:08:10] Yeah, I don't know if like it's something can some intermediary inject itself into the process where like, you know, the first few nodes or agreeing and then something happens then all these other nodes don't I don't know.
[00:08:24]Eric Nakagawa: [00:08:24] It's actually really good question. I think the best way to take think about the network is how does it get set up right? Like what what is a note on an hour? If you look at something like Bitcoin, it's a completely trustless Network and it has a lot of benefits here. It's permissionless. That's a common method for describing Bitcoin permissionless trustless.
[00:08:47] And in that case any node on the network could be submitting transactions in and if there's so many transactions in you kind of you don't if there is no trust so you don't know if it's valid or not [00:09:00] and you specifically. Require that particular Network and all the other kind of nodes or minors to determine on their own whether or not a transaction is valid and that's why in most cases you have to wait a certain number of transactions or certain number of blocks before your transaction is complete.
[00:09:22] Okay, so in Bitcoin, I think. The current state the expected amount is like six transactions after six you generally okay, and that's because it's had enough time. The network has had enough time to kind of independently solve for and include valid transactions and other blocks. With with Libra Network each node joins the network, but there's only a certain amount of nodes and each of those nodes, and what makes again Libra different, is each of those nodes is run by a founding member and...
[00:09:58] So let's talk about what a founding member [00:10:00] is and let's also talk about the kind of the core difference between something like Libra versus something like Bitcoin or Ethereum....
[00:10:07] The Libra project built by the team at Calibra and soon the rest of the world thanks to open source starts off started off with a set of kind of founding members and these people are people that believe in the idea that you know financial technology could be improved and this is a chance to kind of prove that theory out. And in part in partly in joining the association, the association is an organization that helps to administer the technology keep advancing it and also to support the members themselves, as a part of joining they pay in some money into the association to kind of bootstrap and get us started and this plays out further down the road. But in addition to having paid a put some skin in the game, they also must run and maintain a node. And [00:11:00] so the total number of validators at this point in time is estimated to be a hundred. And the reason for that is we expect to have a hundred founding members. And these hundred founding members hundred founding members, they are..they are sort of...they are whitelisted. So there's only going to be a set amount of validators on the network. And as long as I think as long as like 60% or 66% percent of the network agrees, then everybody agrees. And the reason for this sort of this sort of wiggle room. Is that sometimes there's network latency sometimes, you know things take longer to arrive. And in doing so you still have to move forward. So the network still has to you know, get to the next point and needs to agree on the current set of transactions. And the way that they currently do that is by communicating with all the other nodes. And so if for example someone tries to one [00:12:00] inject a node into the network, well that won't work because the hundred all know about what each of the hundred knows about the others.
[00:12:07] Joel Marcey: [00:12:07] Yeah
[00:12:08] Eric Nakagawa: [00:12:08] And if a new one tries to join well. That's gonna be a problem because they won't have been configured to know about it. So in that from that kind of viewpoint, I don't think it's likely for someone to kind of like suddenly add a new node and then suddenly they are transacting or submitting false transactions.
[00:12:28] So that whole subset of issues I think is kind of, you know, not a potential problem. I mean that could change as the quarter implementation changes, but that's kind of currently how I see it.
[00:12:38] And then now let's talk about how transactions get onto the network. So for a transaction to make it to the network, it has to go through a validator and the validators again would their own are only going to be about a hundred actual validators at do the work...Over time I could see the design of this expanding so that you have maybe transaction receivers. I don't know making stuff up here. But [00:13:00] like it's unlikely for the general design of it to change too much... And so those transactions have to go through at least one node validator and in going through one note validator if that note validator thinks that it's valid then then it would come, you know kind of confer with other notes to determine if that is true.
[00:13:21] So for it to for someone to fool the blockchain, they would have to one be able to fold the node for getting the information in and then second they have to fool at you know a majority of the network itself now when the never network is small if the network was only you know, three people then getting 66% of the nodes tricked would seem, you know, maybe a little bit easier than trying to fool, you know, sixty six of them.
[00:13:48] So there's a lot of I think piece technology or software built-in configuration wise or kind of limiting how people would kind of like submit fake [00:14:00] transactions.
[00:14:01]Joel Marcey: [00:14:01] You've said like you said a bunch of awesome stuff here and it tell me for going down like too much of a rabbit hole on these nodes in the network.
[00:14:08] But so you mentioned there's a hundred founding members, each of which will have a node. As those, as the number of supporters of Libra increases. So let's say we get two a thousand or something at some point. Does that mean like over time the network becomes more reliable? Because now you're having more percentages of nodes having to agree that transaction is truthful and valid because that that if they have a thousand you have 600 that have to agree. Is it better as it gets bigger? Does it make it more stable or does it or can there be too many nodes where it becomes kind of not the latency becomes too big that these transactions become slow? So I'm kind of interested you know how that might work.
[00:14:57]Eric Nakagawa: [00:14:57] Yeah, so I mean I think you're talking about an area [00:15:00] of like Focus research. So I think it's an area where people are trying to determine what the kind of theoretical limit is on the network and I think we chose a hundred for you know, for simple reasons. I think the the founding members being a hundred makes sense at that particular at the time of the launch. I think the reasoning for having a Libra Association was so that the project was an effort that wasn't just built by Facebook, but it was built by other organizations that care about the future of financial technology. And so I think as it that as that number expands are as people get more and more interested or as a network becomes more proven, I could see the algorithm having or you know parts of the Libra core technology having to react to a kind of different state of the world. I'm not necessarily a big believer in saying, you know, there's an unlimited need for these nodes. Actually. I would love to know, you know, even for myself like how would I in my house [00:16:00] keep like a you know, a full backup of the Libra Network that be kind of cool to just kind of have or especially if you like building apps like it'd be cool to like on AWS just run like a cache copy of the network.
[00:16:11] Joel Marcey: [00:16:11] Yeah
[00:16:12] Eric Nakagawa: [00:16:12] It would speed up development and make it easier to not have to hit or you know go through like a single choking point.
[00:16:19] And so I think the network will change I think having spoken to some of the researchers they've I think looked at the cost of like running more than a hundred nodes and I think there's a certain point where you write like the transactions the communications... I...I think the increase dramatically as you add more and more nodes so like going from ten hundred to a thousand is is non-trivial and it may take some research and inventiveness of you know, the the people building the actual algorithms for a consensus to come up with a solution for for something like that.
[00:16:57] From like a personal level and not a non corporate level. I [00:17:00] think there's interest in. Kind of running your own node or doing something like that. It's a common thing in crypto currency or blockchain technology as you want to like run your own node. I mean who hasn't spun up, you know at least a Bitcoin a full Bitcoin node. I mean, maybe not a lot of people haven't if you've not done any mining or try to mind it's almost impossible nowadays on BitCoin but on Ethereum even like five years ago, it was actually you could you could do quite a bit of work. I mean the network wasn't as big and so if you're early you could like mine some Dogecoin or you know, Lightcoin or whatever other kind of coins.
[00:17:37]Joel Marcey: [00:17:37] Now people move to don't they move to like lakes and oceans to get hydropower to start mining now, you can't really
[00:17:45]Eric Nakagawa: [00:17:45] Yeah, it's pretty intriguing.
[00:17:47] I think the folks that work for folks that are using proof-of-work it comes down to it. So it really comes down to like a mathematical financial model. How cheap can you get the land how cheap? Can you get the electricity and how [00:18:00] clean can that electricity be because you know, like you don't want to have a little blip or spike here and there but a lot of the folks who still run miners there in like areas where cost electricity is relatively low.
[00:18:12] You know having lived in the Bay Area, I think my kilowatt per hour is like. It's it's multiples of people living out, you know up north next to some sort of hydro dam. But that being said, I think even those technologies, things like Etherum, I think is trying to figure out a new consensus algorithm that they want to move from proof of work to proof of stake as well. And the reason for that is it just it becomes much more accessible if more people can contribute. But that requires major changes to their consensus algorithm and how they determine whether or not transactions are valid and I think Ethereum's model is something like, you know, they want to be the distributed computer right there. They are cryptocurrency there a blockchain project, but they are also trying to be a distributed [00:19:00] computing Computing platform and how does that change when you no longer have proof of work it might free up some of that CPU power to be doing. You know...possibly more useful like type work. It could be running applications instead.
[00:19:16] And so anyway, like I think other technology are trying to figure out their solutions, we're living in a world where you know energy is not unlimited yet, right and maybe one day we'll be ..
[00:19:25] Joel Marcey: [00:19:25] Yeah
[00:19:26] Eric Nakagawa: [00:19:26] ...maybe not but it still has a cost.
[00:19:28] And so I think from the Libra perspective. You know if we were to take a huge step back. I think the reasons for it existing aside from it using blockchain technology is is I think a lot more hopefully nobler than it than just trying to you know, one build cool technology or two you know, build something that generates a lot of value. It's trying to build something that's a lot more stable.
[00:19:53] And so that's why a lot of decisions around the number of nodes the methods of managing, you [00:20:00] know, even the changes to the code itself and the, you know, the white listing of who can run a know and who can who cannot like that is all trying to stick, you know, trying to work towards idea of having a stable blockchain, slash you know project that that I think people can have find more predictable than some of the other cryptocurrency projects or blockchain projects out there.
[00:20:26] And so I think anyway, I think what I'm basically trying to say is like the goals are different. And the approach is going to be different and that's really it's just trying to be done in such a way where it's living more fair than you know, even a couple years ago in the blockchain crypto cryptocurrency kind of industry or whatever the space in general. It was very frothy. A lot of people were like getting rich really quickly becoming billionaires and when you know, one thing I've learned about this project is I still not figured out how I can [00:21:00] become extremely wealthy from the work I do and to me that's mind-boggling but also really intriguing and one of the reasons I'm so attracted to this project is I can't tell you how I would get rich and I think the one way you would build value is by actually building value building financial tools financial software financial applications that generates value for people versus buying this thing and then holding it sitting on it for five years and it's selling it for six thousand percent return. And some people may disagree with that. Some people may agree with that model and I think it'll the project in general or attract certain types of people.
[00:21:36]Joel Marcey: [00:21:36] It's a really interesting perspective Eric. I never even considered it that way. So you're almost saying that there's there's more of a...I don't know...like a non philan... like a more philanthropal reason that Libra exists versus like like something where other cryptocurrencies it's more of a [00:22:00] you're trying to make as much money as possible and selling and buying at the right times. That's the way I kind of hear it from you. Is that true?
[00:22:08]Eric Nakagawa: [00:22:08] Yeah. No, so so I think. I've been in the space for a while. So my last start up before I joined Facebook was acquired by a cryptocurrency company called Ripple and back in 2013. I sold a small start-up it just so happened that you know, the reason we decided to even have our company acquired was there was this feeling back in early 2013, late 2012 where you know this blockchain technology felt like kind of like uh it just felt different and I'm not trying to say like I was a genius and I knew.... I did had no idea. I just felt like huh...are we gonna like I at the time I was building like a consumer application like a wish list app for basically Amazon like Amazon's wish list of just isn't great and I wanted to build a better one and I was like, huh? Do I spend five more years trying to build a wish list app to help people buy, you know, [00:23:00] nests and, you know, devices for their home? Or do we try this thing that like huh I don't really understand it, but Bitcoin seems really interesting I think back then it was like $90. I was like maybe I don't know this seems this feels different and the way that we Justified having our company, you know get acquired was one we needed to raise money, so we did it needed to decide if we're going to you know, put in 5... 5 more years of our life into something. And you have to be have conviction if you're going to raise and take money from people you like trust or you know, you know, you want them to believe in you and support you and I'd we just didn't we couldn't find it, we couldn't have that feeling and then when we looked at this cryptocurrency project, the blockchain project, we thought wow, if this could work, right like if you could make at that time Ripple was trying to be faster better than Bitcoin and I think they're still trying to find their Niche their Nation like the world of financial technology. Maybe they found it. But at that time we were like huh, you know, This could be really [00:24:00] interesting and I didn't know what was going to happen. But I knew that it felt different and so that's why when we joined it felt like a right decision, even though the way that acquisition played out wasn't ideal. I still think I made the right choice because I got to learn so much about kind of how the world works and from exposure in that acquisition, I got to learn about other countries more so than the work....I mean it kind of led me to the work i did at Facebook, but for example, I learned that there's a bunch of people all around the world who don't have bank accounts. They're a bunch of people all around the world who remit money back to wherever they live. So, you know, if your Filipino you send money back to the Philippines, but you're living and working in Dubai or who knows where in the world as some sort of, you know, housecleaner nanny or something like that.
[00:24:49] And there's this whole world that I had no idea existed. You know, I live... I'm from the West Coast now, but I used to live in Hawaii and I don't see I mean I see some of that information, you know, like [00:25:00] I would see some family and friends receiving money or sending money back home to the Philippines and things like that, but it didn't seem... it wasn't like something that I could relate to and the more I got to learn about this...I would learn about things like, you know, folks in Africa who you know, they have this concept of money, it's not really money. It's like it's good as good as money, but instead of money it's minutes on a cell plan. So they have this thing called airtime, and I learned this through my work with, you know, an early blockchain which was like, they're all these people that for example, you might buy minutes off of a friend or off of a stranger even to make a call or if you have extra minutes, you would sell them in it so you could get the money to buy a thing. And so to me, that's kind of like a cryptocurrency.
[00:25:47] Anyway, so like people are already doing all sorts of stuff like this and there really wasn't a solution for doing all those things and I think like being exposed to that was... like I wouldn't [00:26:00] call it philanthropy. I would say it's more about kind of expanding your idea of what life is like because the life that we have in the, you know, Western United States is very different from what people have you know, what lives people have all around the world and even within our sliver of whatever, you know State we are and you know in the Western World, there are people that live very different, you know, even next door or across the street.
[00:26:22] So I think the idea for me of, you know, blockchain cryptocurrency is not about philanthropy. It's about providing people to better tools. And better access to financial technology to kind of do whatever they need to do right, but but not be, you know, be restricted or have to pay incredible fees to send money around the world.
[00:26:45] One kind of quick anecdote is if you've ever purchased a online ticket or give her purchase like a movie ticket or like a...the worst thing like a concert ticket or something like that and you see these convenience fees that are built on to...
[00:26:58]Joel Marcey: [00:26:58] Oh yeah.
[00:26:59] Eric Nakagawa: [00:26:59] ...that [00:27:00] ticket price.
[00:27:00] Joel Marcey: [00:27:00] Yeah
[00:27:00] Eric Nakagawa: [00:27:00] ...that stuff is frustrating. But like you know what I'm going to go see you know, what's the what's the common thing? Right? I'm gonna go see Hamilton and then you're like, okay my tickets $79 and then processing fees 12 and convenience fee is 6 right and that's before taxes. Right? So like there's all these these crazy fees and I'm like, but wait a minute technology costs them nothing. There's an investment. Yes, but like. Aren't you making all the money back on like having lower costs for running their business?
[00:27:27] Joel Marcey: [00:27:27] Right?
[00:27:27] Eric Nakagawa: [00:27:27] Right. So it's like really confusing for someone like me to explain kind of experience that.
[00:27:31]Joel Marcey: [00:27:31] There was lawsuits. There was lawsuits all over the....bunch of lawsuits from artists right? Or....
[00:27:37]Eric Nakagawa: [00:27:37] Sure well...
[00:27:37] Joel Marcey: [00:27:37] Those fees
[00:27:38]Eric Nakagawa: [00:27:38] I'm not really trying to go and Hound on the The Ticket Company is more like, okay, I would say if I didn't see a movie for the rest of my life in a theater and if I didn't see a musician play for the rest of my life, I'd be okay, you know, it doesn't....it won't ruin my life. Now imagine instead of those fees that you're seeing lumped, glommed onto [00:28:00] ticket sales. Imagine that's you remitting money to your mom. Right? Like you work in a foreign country, but you send money back to your kids or your family and then you're getting like a getting a transaction fee, which is like several dollars, and you're getting like another fee on top of that. Then you're getting a convenience fee, then a withdrawal fee, a deposit fee, a security fee and like at the end you're charging getting charged like 30 40 percent to send a hundred bucks. So to send a hundred bucks, you just spent $30 right? Like that to me is insane. Right? Like the cost of transferring money should cost nothing. Like there's nothing moving. There's nothing nothing moving around. It's just bits...
[00:28:37] Joel Marcey: [00:28:37] Bits
[00:28:37] Eric Nakagawa: [00:28:37] ...In a database getting updated.
[00:28:38] Joel Marcey: [00:28:38] Yep
[00:28:39] Eric Nakagawa: [00:28:39] And so the cost to me is egregious and that and that's what attracts me even more to these blockchain technology companies is because hey, you know, I'm not having this problem. I'm very fortunate. I work in Tech and I'm lucky but. Not everybody my family does it I'm the only one really so if I'm the only one and and I can already see that life is very different much harder [00:29:00] for folks that aren't in tech. I can't imagine what it's like for people that like, I don't know, you know, and so I hears these stories and I hear the stories of people, you know, like in South America in Asia and Africa, and I'm not saying this as some sort of thing like we're going to change the world. We're going to make the whole world better. Shouldn't we tried it at least give it a shot? Right? Like, of course you want to work with the folks that are already there and provide solutions that make sense. But at the end of the day, there are a couple options that are out there and one of those options are proof of work type technologies.
[00:29:31] And then there's technologies like Libra that are trying to build a stable type cryptocurrency that allows people to exchange value and also do it in a way where they're not being charged crazy fees, and I'm not saying like, no fee is a goal. I don't know what the exact goal is, but it's definitely not going to be a large percentage of a transaction's total value.
[00:29:55] And I think that's good what happens if all like okay if I run those [00:30:00] businesses, I'd be I'd be kind of upset. I probably try to lobby to change regulation. But you know, I think not everybody in the world is trying to send money as a business and so for folks that aren't it for the everyday people, it just seems obvious that exchanging value should not shouldn't have as much of a cost to it. And I think Libra provides that by the goals that it's aiming to do, by the structure that it's kind of taken to get to this point that we're at...
[00:30:27]Joel Marcey: [00:30:27] Right
[00:30:28] Eric Nakagawa: [00:30:28] and then
[00:30:28] Joel Marcey: [00:30:28] I was going to say Eric. I like even today like with me. I want to send money to a family member, for example, I'm I am considering things like a wire which has cost. Or I am considering things like going to the bank and doing a transfer in person which has its own cost...time and money, right? It's yeah, we haven't solved that problem where you can efficiently send send currency in a cheap way really fast.
[00:30:55]Eric Nakagawa: [00:30:55] Well, yeah, and so that's that's the thing that's intriguing to me. And that's why I'm [00:31:00] attracted to this project. Yes, like you're right like it. It doesn't seem solved but I don't know man. It seems pretty solved to me for like the Western world. Like it's just they're just hacking on a fee because somebody has to process a piece of paper right and like...and even then like is it really worth $20 and send a wire and 40 if you're not a member and 50 if you need like, you know, I mean starts getting a little crazy, you know, if you're sending $1000 $10,000.
[00:31:25]Joel Marcey: [00:31:25] Well, even, yeah, even in the western world though, not not everybody has PayPal and everybody has venmo and they're still they're still going to their Bank daily to withdraw cash and and even even just here right that it's still hard for folks to have kind of wrap their mind around. I have to install this app and then I have to configure my account and I have to go to my bank to make sure like everything set up correctly. I don't know. I don't know. You're right in the western world, it is it is kind of solved but it's not fully. Yeah.
[00:31:57] Eric Nakagawa: [00:31:57] I think what it is is not solved but it's easier [00:32:00] and then most of the stuff we're doing...It is like it's I don't know it's different when it's like your livelihood. It's different when you're trying to wire money so that someone can like, you know, fix up their house after some sort of, you know...
[00:32:17] Joel Marcey: [00:32:17] disaster
[00:32:18] Eric Nakagawa: [00:32:18] Natural event, like maybe the roof broke or something like that. It's different when you know in those cases, I would pay those fees, right? And so I think that's where I start. I think it starts getting unfair and I don't think this is like the only way to solve this problem. I don't think Libra is going to solve all the financial woes in the world. But I think it's good to have this option so that other people can kind of determine where and how to use these things.
[00:32:41] And to take a quick step back regarding kind of Libra in general like it's trying to be stable and that's why I said earlier like I can't figure out a way how to buy this thing and then sit on it and become, you know, to make a million dollars off of a very small investment, whereas if you look at [00:33:00] other projects in the space, a lot of folks have looked at it as like a lottery tickets and because of that I think...it like when I get that feeling with the project it tends to I tend to reject it because I'm like, you know, so what's the strategy... I buy it. I sit on it. I type it up and then I sell it. For like a double my money like that. That's a nice just seems unfair right? Like I didn't really do anything. I was just lucky and I think like there may be more of opportunity where you could build software that's actually used, right? I would like to see people sending money here and there I think that could be interesting. I like to see people using it to buy stuff to to build tools and that to me is the most interesting stuff or interesting parts of this project.
[00:33:49]Joel Marcey: [00:33:49] So let's shift gears a little bit. Although first. I think I think I used a word "philanthropal" earlier. I'm not even sure that's a word so
[00:33:59] Eric Nakagawa: [00:33:59] From Merrium-Webster. [00:34:00] No.
[00:34:00] Joel Marcey: [00:34:00] But I think my meaning was understood, I hope. But I'm sorry for butchering the English language. I had a tongue-tied moment there.
[00:34:11] Any way to shift gears a little bit and talk about libra and open source. So Libra like a core principle, like even like just a first principle of when even Libra came about right was that it was going to be open source. The blockchain, the technical, the technology, the spec a bunch of other things are going to be open source as part of this. What parts of all first of all why was that decision made? Why did you decide to open source Libra and what parts of Libra are actually open source?
[00:34:42]Eric Nakagawa: [00:34:42] Got it. So that's a good question. The reason I joined the project was... I actually joined from a very skeptical point of view right having again been in the space for a long time. I was like, I don't know. I mean can can Facebook launch a project that people are going to trust with their money.
[00:34:58] I'm [00:35:00] quite skeptical and so when I talked with folks on the team they had suggested. Well, what can we do to make people trust the project more I said well, you know, I didn't say that. I didn't make the decision to open source. I thought like well, you have to increase the trust right? You have to provide people more insight or find a way to look at stuff to inspect it and open source provides that path right?
[00:35:21] It provides you a way to inspect the code before you run it it provides you a way to contribute to that code to change the way that it does this particular thing and to your question of like what of the Libra core technology is open-source and I would say all of it is. So all the technology that is used to that runs on the current test net is open source, you can go to github.com Lieber Libra and if you download that you will get a project built in Rust primarily that runs the actual the network itself.
[00:35:55] You can even spin up your own...you could run like three different nodes or [00:36:00] on your laptop. You could run a couple notes, you know on different windows and you could simulate your own network. And so all this technology is there and it's, you know, open source is a critical part of how we look at the the project itself.
[00:36:13] We want to provide access, yes, but we also want to provide a way to inspire people to get involved to help make this be better than it currently is and I feel like open source provides that. And then in addition to that we are trying to involve other people like other companies and you know, if it's like a closed source thing and have a contract and you have to agree to like sign this contract to then take a look at the code and maybe make suggestions... the world is much faster nowadays.
[00:36:40] And so I think having access to the project allows people to contribute directly and get involved and there are other things in the works that will help make access to and changes to or influences a lot of influencing more easy through more I'd say formal processes. And the reason that it needs to be [00:37:00] formal is again like at the end of the day, this will be a system for managing or facilitating, you know billions of dollars of value. And so we want to make sure that the changes that are made are done in a way that people can agree to and I know it's mark my last, you know, it's famous last words, but like I think there's a way to do it properly. Some of the things that the team has been looking at have been around different types of improvement protocols.
[00:37:27] So if you're familiar at all with python python has the pip process and the Bitcoins Improvement protocol is inspired directly by the pip process and Ethereum's improvement protocols inspired by Bitcoin's Improvement protocol. And so it all kind of feeds off of the open-source thinking.
[00:37:44] And to kind of give a quick explanation of what a improvement protocol is it's a series of processes and steps to allow for major changes minor changes within the specification of a technology or the actual code itself. So if they want to add a feature like, [00:38:00] you know, if we want to change how how many you know, how many things you can do per unit of time, based off of whatever sort of algorithm change, that could be a formal improvement protocol piece and the team is trying to figure that piece out, but they want to involve the founding members and the public in general to kind of help move this and usher along this process and so being open source allows this to happen.
[00:38:27] But if it was again a closed source, you would have a lot of discussions that happen, you know in the back in the back rooms privately, and although that may not be the intention, like the intention is not meant to mislead people, it feels better when people can have in it and some sort of way to kind of inspect and see these things and so as a as it stands the project is very simple, but I think it will expand to be much more formal and allow for much wider diversity of opinions to make to make changes to Libra core or more possible or more [00:39:00] easy to.
[00:39:01]Joel Marcey: [00:39:01] One of the parts of Libra is a new programming language, which has been dubbed Move. So you can use move to basically program for the blockchain and do other things with it. What what prompted having a new programming language created? Why couldn't existing programming languages be utilized for Libra?
[00:39:29] I think is if I recall correctly Move is based on Rust which is you know, a very good systems programming language. But why did you have to build an entirely new language for this?
[00:39:40]Eric Nakagawa: [00:39:40] That's a good question. So to kind of like talk about what move is move is a smart contracting language and the difference between a smart contracting language and a general programming language is it's built from the ground up to be a language that is used on the blockchain.
[00:39:57] And why didn't we just take [00:40:00] one of the other languages that existed out there? That's a good question too. And I think the reasoning for this was a lot of the languages that exist right now, there's a few just things like Bitcoin script; there's Etherium solidity the might also have other versions coming out. I think there's one called Viper. I don't actually know what the next language is for smart contracting for other programming languages is, but a lot of those languages were organic and so the evolved over time and take certain things into consideration certain sort of like I think they tried to solve it their own way as they could as it came along.
[00:40:37] Whereas with the Libra project, there was an opportunity where it could be sort of built from day one with the the prior knowledge of kind of security challenges that have already played some of the other languages for example there have been some smart contracts that have kind of wreaked [00:41:00] havoc on the Ethereium space the most famous one.
[00:41:04] Is that the dao, the Dao, in this case someone found a way to return back the balance like I don't know if it was the entire balance of a tran... of a contract to a place that it should not have gone and this caused a lot of problems for people that had supported this particular project. And so rather than kind of work with kind of work with a language that's that's evolved to to combat some of the stuff. I think the team believed that it was better to kind of use the state-of-the-art in research and provide a language that could solve for these problems not by having a way to work around them, but by removing entire subset of you know flaws in the in a particular language. And so that's why move was created; Move is a smart contract smart contract contracting language and idea there is like actually it's [00:42:00] really exciting. I'd say of the... if you look at the whole labor ecosystem the thing that I think developers including myself like find most intriguing I actually like I am learning Rust, I'm not an expert in Rust I don't have much exposure to to building on it. But...
[00:42:15] Yep, same here.
[00:42:15] I'm really yeah, I'm really intrigued by move itself. Like I think there's this idea of like, wow, you know, if you could build a.... imagine you could build a financial smart contract that's used by billions of people that to me is super exciting. Now. How would you do that? I'm not so certain on like how you would get a contract in front of so many people. There are many different ways for that to occur. They could happen on a primitive lower level where they're like the functionalities big tin earlier like lower level or it could be something that's kind of run externally or run as your own kind of script. But the end of the day these these transactions these smart contracts are meant to provide programmatic control of money, right? And so for [00:43:00] example, like what's a good example of a smart contract? Well, I think a really good one would be like I want to borrow $5 from you and I promise to pay you back right and at the end of whatever and if I don't pay you back I'll owe you a dollar more the next week right?
[00:43:16] I could write a smart contract that said, you know, I deposit a certain amount of money you take the money that's been deposited and then you deposit so another place and then you wait. A certain amount of time to then, you know get paid back and if that time if the balance at that time in the future is not the expected amount then change the expected amount to be one dollar more. You know, like like really simple things like that are examples of what a smart contract provides but there can be much more complex things like if you ever bought anything of value like a house or something like that, the idea of escrow were if certain certain things certain requirements must be met before the amount of money that is currently being held in [00:44:00] escrow can be transferred, smart contracts are allowed there as well.
[00:44:04] And then there's a whole class of solutions and ideas that don't exist yet. And I don't know what they're going to be and I think that to me is where where I think move is really exciting is like what's people are what are people going to build when when they have this technology that's built on a stable currency that's being used all throughout the world. And and one thing I think we should talk about is the opportunity and be happy to talk about that after.
[00:44:30]Joel Marcey: [00:44:30] Yeah, one question about getting started with Move. Is this something that's approachable by anyone any developed anyone with development and programming experience? Or does it take a while to learn? Is it if you know... is it if you know Rust you're familiar with move, but if you don't know Rust, you're going to have a big learning curve? Kind of what's your take on that?
[00:44:56]Eric Nakagawa: [00:44:56] So I would say my take is the functionality of [00:45:00] Move is relatively straightforward. So I think someone that has programming experience should be able to pick it up rather quickly, I think. There are certain like it's still early. So like don't expect the best experience. And the reason for that is not because we didn't try to make it good. It's because we're trying to make the system stable before we can make the system look really really nice. And I think that's also kind of a cop-out, but I think it's fair to say that people really do care in our thinking about ways to make Mov smart contracts better and anybody can picke it up. I don't think it's that hard. There are challenges though, like things aren't completely formalized in set in stone. And the reason for that is there's a lot of changes that are going underway. Not that the major parts are changing but. That we're still trying to define, you know, what what is Move what's the spec and until the spec exists?
[00:45:53] I think like anybody anybody who's tried to join a language or use a language when it first comes out like version one or people before version. [00:46:00] It's painful, right? Like it's not that it's not that things don't work. It's just that like things the way you do things may change. So it's sort of like a flag. It's like a it's a flag for people that are interesting interested in doing this but realized if you build an app and you come back one year later, no guarantees that it's going to be able to run the same way without some sort of changes.
[00:46:22] So it's still worth pursuing. I think we have a couple of white papers that are already out there. You can take a look at developers out Libra dot-org. You can also visit Libra dot-org to kind of get a bigger bigger picture of you. I tend to skew more towards the technical side of opportunity, but I think developers at Libra dot org can help you get started run a node connect to a node really quickly and then run your first Move transaction script and kind of go from there.
[00:46:51]Joel Marcey: [00:46:51] Awesome. So I just have a couple last questions. You mentioned calibra earlier. What is [00:47:00] Calibra? I know it Calibra is the wallet right that Facebook is developing. Is is that part of the open-source process? Can you kind of just give a high level overview of what's going on in the calibra world?
[00:47:12]Eric Nakagawa: [00:47:12] Got it.
[00:47:13] So let's first talk about why I think okay. This is like I think the most exciting part. There's a lot of exciting parts... I've already said Move is the most exciting part from a technical standpoint.
[00:47:23] Joel Marcey: [00:47:23] Yeah
[00:47:23] Eric Nakagawa: [00:47:23] But from an opportunity standpoint Calibra is extremely exciting. And the thing that makes Calibra exciting is Calibra is building the wallet and the wallet is basically a way for people to you know, store and trans... transfer, trade, whatever they want to do with their Libra it's theirs, but from the perspective of the Facebook world. So Calibra building a wallet and what that's going to do for the cryptocurrency blockchain technology communities is open [00:48:00] the largest flood gate that's been ever like provided into I would say a space before and this is me thinking like everything works out great, right? But like I think Facebook has I think a published like 2 billion at least two billion if not more members across or users across active users across their the Facebook application, Instagram, Whatapp. And Calibra is is and I think will work...I don't know how the details of this... will provide basically the function... wallet functionality for Facebook.
[00:48:37] And granted it's a totally separate thing. Totally separate project. And information is separate completely separate doesn't share phone home back to Facebook. But imagine imagine for a moment that you are a blockchain developer and you're building on, you know, a technology like let's say if Ethereum. [00:49:00] So you built building on Ethereum. Or you're building on like something like Cosmos, one of the you know projects that are have learned a lot from Ethereum, and like are building on improvements.
[00:49:08] The total amount of people that you will have access to are at least even from the developer community is under 30,000 people. So the amount of people that can code in Solidity. The more people that have built or can build blockchain or have contributed to blockchain technologies in general. If you put them all together probably less than six figures. So less than 100,000 people, and I'm being very generous here, I'm okay, I'm double counting, the amount of people that when Calibra turns on its wallet for, you know, like an entire property, even one percent of let's say 2 billion of the active members of the Facebook world, even one percent of that is going to be more than the entire current ecosystem [00:50:00] for cryptocurrency blockchain technologies.
[00:50:02] Joel Marcey: [00:50:02] Wow!
[00:50:02] Eric Nakagawa: [00:50:02] So in terms of opportunity, there is a huge opportunity for people who are building on Libra or building Libra smart contracts and things like that to have access to these people coming in through Calibra. And so like that to me from a business standpoint is a huge opportunity. You could try to be first you could move quickly and try to build some sort of application. I don't know.
[00:50:27] And from the context of Calibra, their wallet and the way that it's being built, and from the Libra core technology standpoint, we're trying to keep...we're working to keep the the idea of interoperability as a high priority; and idea there is Calibra builds a wallet, it should be able to send Libra from Calibra to any other wallet. And the reason for this is, it just solidifies the opportunity that I [00:51:00] mentioned before which is, you know, hundreds of million potential active users of a new financial technology to me. That's extremely exciting and if interoperability is in place, it means that people can, you know, they can get involved; they can try things out; they can send money here and there and not be worried about, you know, being cut off from this giant spigot of brand new people that aren't we coming in and learning.
[00:51:24] And part of the the work that the Calibra team has been doing is trying to understand their user base. And so they're spending a lot of time in the different countries learning, and and building for what, again, like I mentioned like I'm West Coast Centric right? I'm American. So like even though I travel, my life primarily is in the United States and yet the world is a bigger place. And so they spent a lot of time traveling the world and making sure that the technologies that they're building a solution that they're building work for other cultures in a to talk about their open source contributions. So a lot of the work, primarily the work that's [00:52:00] done on Libra core is built and being done by the Calibra engineering team. There's a small team, that's not really that small...in the world of Facebook, it's a small team but like in the larger world, there's a lot of people building Libra core and there's a lot of people building Calibra and those teams are very, you know, they're different. They're not the same people and the folks on Calibra, the work that they're doing that's going to lead to the wallet technology that I've talked about the folks that are building the Libra core, there's also folks on Calibra doing research. And so the research work that is being done. Generally research tends to be a very open type of work like you see publish your results because you want people to replicate it. And so if you have code or anything related to that if you have a paper you want to disseminate that as far and wide as you can.
[00:52:50] And so one core part of the Calibra story is that the research, that work that is being done by the the engineering team research engineering [00:53:00] team, is being shared through white papers and then through projects and code that's released on Calibra's research GitHub repo. So that's a big part of the work that they're doing. And really what they're trying to do here is to share their lessons learned that the share their experiences to help further, you know, the Block Chain space and further the state-of-the-art, for the space in general.
[00:53:26]Joel Marcey: [00:53:26] Did you did you say that there was a Calibra GitHub repo? So is that github.com slash Calibra that were...
[00:53:33] Eric Nakagawa: [00:53:33] Yeah github.com slash Calibra slash research. There are a couple other projects that are in there that maybe dependencies of the Libra project and some of these are there because... you know in open source in general like when you using a package that needs to be patched to support a new function or feature, you can build it into the core project itself through their improvement process, which may take you know, several months or you can fork and add it and then, you know, [00:54:00] hopefully wait until that process is completed. So there are a couple projects that are in there that are Forks of other open source projects that have had certain functions and features added to help make the Libra Project work better. And it's all open source.
[00:54:13] There's also other projects that will be coming out soon. There's some in the rust space that are aimed at helping package or helping maintainers kind of keep an eye on open source contributions and any sort of changes related to their packages. Like if you ever worked on a package or a project that has package manager and someone adds or slips in a package that you didn't know about like LeftPad? I'm not... I'm not going to like it go tease that, but like if they sneak in a certain package that you know, maybe you're not aware of you. Don't know what it does. It may increase or provide a security concern.
[00:54:46] Joel Marcey: [00:54:46] Yeah
[00:54:47] Eric Nakagawa: [00:54:47] There's a project that'll be coming out soon by the research from not from research, but from the open source team on Calibra that will help people. Just keep an eye on those sorts of things and if the change is too too too large, it [00:55:00] may even allow people to fly get in there in there on their PR's themselves.
[00:55:06]Joel Marcey: [00:55:06] So a lot of our listeners just gotten really broad and really great background on both Libra and Calibra. Can...Eric, can you tell us what's next? What's next for for Libra? What's next for Calibra? What should what should we expect in the next six months a year? What's going to happen?
[00:55:26]Eric Nakagawa: [00:55:26] That's a good question.
[00:55:28] So just today I don't know when this podcast will go live. It may go live in a month or a week. Just today the first announcement around the roadmap was released. We just published it to the blog. And in this blog the high level features have been outlined and this provides some insight into kind of where the engineering team is focusing their efforts.
[00:55:51] In addition to this a kanban was created using the GitHub projects that identifies again to high level features and allows people to kind of [00:56:00] track the progress of those features through through the board the project board. And this is one good way to kind of see what's coming in the future expect to see like a monthly or bimonthly update towards the roadmap. And the roadmap is like the the set of features that are required for for the Libra Network to reach main net...main network from the current test network. And there is a lot of work there.
[00:56:27] And so basically I would say keep an eye on that and then for folks that are interested in participating you can take a look at the online Libra Forum, which is its Community dot Libra dot-org. This is where all conversations we try to kind of have the conversations. They're in addition to the GitHub issues. As a way to have like fewer methods or you know, fewer places to keep an eye on. Because as the as the number if you have too many places to watch it's just hard to know where to pay [00:57:00] attention and if you've ever been like...if you ever communicated with somebody who messages you on Messenger or an email and then on WhatsApp and then on text message, like it gets a little confusing where to have that conversation. So the preferred I would say forum for discussions is the deliberate Discourse.
[00:57:18] And in addition in addition to that, there's going to be more updates regarding how to get involved, and like we keep saying this, but the reason is the Libra Association then itself is kind of functioning as if it's been finalized but that actually doesn't happen for another two weeks, when the actual Libra Association Charter is ratified. And in that ratification process the the founding members that I've talked about or mentioned formerly will have joined the association, and that's when I believe there will be there will be this kind of renewed energy and certainty around the project that I think right now a lot of us are [00:58:00] just functioning as if that will happen. But once that occurs, it will be a sort of outside a new world. I think it's going to be a very different place. Once that stuff is done once the ratification occurs.
[00:58:09] And then finally the formal processes for making changes I think will be phased in over time. But I believe that those things are going to be done with the support of that Libra Association founding members who ratify so that they all have their say and then the scope will over time increase and increase to include more and more people especially as processes are put in place so that contribute...people that contribute or try to contribute know that their contribution is being at least acknowledge if not accepted.
[00:58:41] And then one final final Final point is, you know, one of the biggest challenges and opportunities i saw when I saw this project was that you know, hey, this is a chance to kind of create an open source program from the ground from the ground up build it from scratch and facebook has all these really great tools [00:59:00] like shout out to the tooling team at on open source team, you know, they have great tools to help keep things in check for legal reasons...things like CLA's things like, you know adding people to repos. Right now, that's pretty much me and a small group of people on the Calibra team. And the there is work being done and it will be completed soon to allow for automated CLA identification on PRs to make it easier for...
[00:59:29] Joel Marcey: [00:59:29] Awesome.
[00:59:30] ...the engineering team and soon the maintainers to know if a contribution can and should be merged in if it's of some sort of marital value like if the changes useful, and and you know adds some functionality that a large amount of people our users would want then, you know, they can accept those things, but currently right now it's a very manual process. And it's like it's a growing pain but I feel that the work that we've done to identify the flows and all sorts of things like that soon that will [01:00:00] be taken care of and then people will feel like this project is is more than just, you know, a Calibra project or a Facebook project. It's it's a project that's like its own. It's on its own and I feel like October 14 plus the coming tools to help automate certain things like this will really give what I think like the minimum necessary tooling and feature set to kind of grow to be hundreds, if not thousands, of developers throughout the world.
[01:00:30]Awesome, and just to clarify the date were recording this podcast is the 2nd of October 2019. I really hope this goes out before November. Hopefully, it's not a month later.
[01:00:41] I'm going to provide a bunch of the resources that you mention Eric and the show notes. I wanted to give just at a high level places for folks to go if they want to learn more. It's Libra dot-org to learn about Libra; if you're a developer and want to learn how to interact programmatically with Libra its [01:01:00] developers dot Libra dot-org; and if you want to learn about Calibra, which is the wallet that Facebook developing, go to Calibra dot com, and I'll provide more links to the blog post that Eric mentioned and and other resources as well.
[01:01:15] Eric thanks so much. You're you're first repeat guests I believe on the program. I'll have to double check that but I believe that's true, and I really appreciate you talking about Libra, Calibra and the open sourcing of it, all the details. I hope you agree to come back three six months down the line to give us an update about what's happening. I think this is a very. It's just a it's just a transformative project that I'm really looking forward to being a part of as a Facebook employee and just as a person who really has an interest in these things in general. So really appreciate you coming on to give us the current lay of the land. Thanks so much.
[01:01:58]Eric Nakagawa: [01:01:58] Cool. Thanks for having me. I love [01:02:00] talking about this stuff and I hope people can get started. And one other thing is if you find something that could be done better, please try to get a hold of one of us either, you know finding us in the Discourse and flagging us or tagging us or, you know, somebody an issue and and giving us a heads up there so that we can try to improve this the work that we're doing.
[01:02:19] We really want to expand the projects that a lot of people that want to contribute can contribute and we want to do it in a way that, you know, that I think makes sense for the stage of the project and as it gets bigger, I think your impact or ability to kind of like influence this project could be hopefully more more something that's more possible and or easier to do, so thanks for having me.
[01:02:45]Joel Marcey: [01:02:45] Yeah, and that's the call to action everyone. Go try Libra and provide feedback as you can. We really appreciate it. Thank s Eric.
[01:02:53] Hi, this is Joel Marcey, creator and host of The Diff. If you like what you heard today, tell your friends, [01:03:00] like it, share it, review it. Learn more about our program at open sourced at facebook.com. And if the content you heard today, or if any of our podcasts piqued your interest, check out facebook dot com slash careers to learn more about the challenges we're solving and running an open source program at scale. I'm out.