 You're watching the Daily Decrypt Welcome to Currency Competition. I'm your host, Amanda, and today's episode is brought to you by Crypto Cloud Hosting. With the recent excitement developing around Ethereum, we at the Daily Decrypt wanted to ask some questions that we weren't seeing answers for in other places. Core developer of Ethereum, Taylor Gehring, agreed to answer our questions for us in this interview. Taylor, tell us why you are the man to talk to about Ethereum. Basically, what's your background? Sure. So I kind of fell into Bitcoin a few years ago and was really interested in blockchains and cryptocurrency and excited with everybody else along the time. But as a tech nerd, I wanted this stuff to kind of happen a lot faster and I was a little dismayed by how slow Bitcoin as a whole community was moving towards some of these visionary ideas. That was right around the time that I had met Mihail Elysee, who had started Bitcoin magazine with Vitalik Budurin. And Vitalik was working on the Ethereum White Paper at the time. And I had gotten my hands on it really early on and happened to be around in the right groups and in the right chat rooms and just kind of started working with the Ethereum project and doing what I could to help Vitalik out in realizing this vision. And I've been working with them for the last two years now and it's been a real wild ride. Will you please, in your own words, Taylor, give us a general overview of what is Ethereum now? And is it different from what you believe Ethereum will be in the future and if so, what's the roadmap? Because I know it's so early stage. I know that the frontier version of Ethereum, which is basically being interacted with at this point, only by people who are A, running full Ethereum nodes and B, interacting mainly just from the command line, basically programmers, developers, that's who is using Ethereum right now. And so is that what Ethereum will remain? If not, what is the vision of, I guess, a year, two years? Sure. Okay. Right now, what is Ethereum? Ethereum is a blockchain platform for developers to build decentralized apps on. The vision is something that I think a lot of people see different possibilities of this type of platform. Can I stop you right there? Tell us, what's ADAP? What is, like for a real world person who just has surfed the internet and they know what it means to surf the internet, what would it mean for them to use ADAP? What is that? ADAP is a decentralized application. The idea is that right now, we use individual servers hosted in data centers to host our applications and using blockchain and decentralized technology, we can actually take the application itself off the server and have it live in a peer-to-peer way, kind of how BitTorrent works. So like the internet's applications, say like messaging or searches or shopping or whatever, but not coming from central servers, rather coming from nodes of lots of different people? Absolutely. And the idea is basically that you take the logic components of the application and this is something a developer would do, but that they would take the logic components and put that onto the blockchain. And then the traditional parts of the web page, the page itself, the graphics, the fonts, all that sort of thing would be delivered from a decentralized storage kind of system, storeJ, BitTorrent, IPFS, or all technologies that would allow for this kind of system to exist and then combined with messaging in a decentralized way. You effectively can replace the web as we know it now into be a more decentralized version that can't be controlled or manipulated by any individuals, corporations, or governments. So let's talk about the user interface, as you say, the landing screen that someone sees when they visit one of these DApps. And you say that that could be delivered via something, not so much the Ethereum blockchain itself, but IPFS. I am vaguely familiar with IPFS. Will you please expound upon what that acronym means and how it could work delivering Ethereum-based DApps? Sure. So IPFS is interplanetary file system. The basic idea is that they took some of the interesting data structures known as Merkle trees, very high technical thing, but they took that idea and then said, how can we solve the problem of the web where content disappears? You click on a link, you get a 404 error, it's gone. And why does that happen and what can we do to kind of work around that? And IPFS attempts to do that using these specialized data structures to make sure that content never disappears. In the same way a blockchain is always appended to and never deleted from, something like IPFS would always have files added to, but never really deleted. Okay. So now would IPFS have required its own nodes, basically storing its own eternal version of a blockchain or how do they guarantee page permanence? It's not entirely clear how the incentives will work with IPFS. Right now they have focused primarily on the technical side and getting the actual data structures and the peer communication to work, but how you actually ask one of those nodes to retain that information for a long time and guarantee that they do it, that part's not as worked out. And I think this is one of the areas where Ethereum and technologies like IPFS will work closer together in the future. Ethereum, because of the smart contract system, allows users to have bonds and insurances and traditional financial instruments, which can then be used to create the right incentives to ensure that the data is actually stored for long term. Okay. So now the grander vision of Ethereum, is it dependent upon either IPFS or something like IPFS developing in functionality in tandem with it? Is Ethereum dependent upon something like that for its grander functionality vision? So Ethereum, the blockchain and smart contract system absolutely does not depend on any of that. But the larger vision of replacing or decentralizing the web does depend on some sort of distributed data system. Let's talk about the switch to proof of stake because that will change the incentives to run a full node because running a full node will basically be the same as mining. So let's talk incentives and the mining algorithm switch. Sure. So the current plan with proof of stake is to switch to an algorithm that's known affectionately as Casper. Okay. And there's a lot of fine technical details within there and some of them aren't all solidified. But the idea is that you can have a consensus by bet system instead of having mining hardware. And Vitalik recently wrote about this on the blog post and what this will effectively allow. And you can, I think in the end, instead of having to wait a certain number of blocks to come in and knowing, okay, well, six blocks is secure, you have kind of a sliding threshold of saying, well, when people, the validators bet that this will be the right transaction or the right block that succeeds in the network, as those bets come in, you have greater finality, greater assurance that this will be the truth because people are putting real money behind it. This differs from kind of the system with Bitcoin where they have physical mining hardware. There's a lot more capital invested at the moment. But the lead up to actually provide capital and provide assurance that that transaction will go through, there's a lot of effort that has to go into you actually put that miner online where in a proof of stake system, you're basically putting up a stake of coins or some sort of asset to say, this asset has value and I'm backing these transactions with this value. Therefore, it also has value just like transactions backed by mining hardware have value. And now I know that some proof of stake coins reward those holding coins, even if those people are not running full nodes, will that be the case in Ethereum or will one need to run a full node in order to receive proof of stake rewards? At this time, it does appear that the node will have to be online to make the kind of decisions and guesses saying, I think this transaction will be the right one. That's where the roadmap is currently taking us. And so what are you aware of how this sort of switch will take place? I mean, I can't even, I just, I can't imagine like how a coin would switch mining algorithms. There's no clear answer. It remains to be seen on how we're actually going to transition. We have practiced, I say we as a technical team at working on the core software of Ethereum right now. We practice some network transitions and we're going to have that opportunity again here with the homestead rollout to transition from frontier to homestead. But switching a whole mining algorithm or from proof of work to proof of stake, I don't know if any projects have attempted that this far. Not that I'm aware of either. So it's going to be an interesting process to not only develop Casper proof of stake system, but also the way in which to transfer from proof of work to proof of stake. That totally remains to be seen and might be a large part of work in itself. And so tell us why, why this switch from proof of work to proof of stake? I think there are a lot of reasons why cryptocurrency would be interested in switching to proof of stake from proof of work, although none of them are necessarily proven. I think that we can all see the amount of energy expended by all the mining hardware is not particularly good for this planet and perhaps there may be some sort of system that's more efficient, less wasteful in that way. I think that's yeah, cheaper. There's also the argument that it would be relatively difficult in Casper with the particular proposal they have on in place would be relatively difficult for someone to kind of lie in the system versus the benefits associated with telling the truth, right? So it would be very expensive to go against the grain and very easy to go with the grain of truth. And I think that makes the whole incentive system a little bit better. Right now you have the problem with mining in the lottery system they use where you have to get a number with a certain number of zeros to start and that effectively allows you to be the block mentor for that block. The way I look at it is that actually kind of sets in a benevolent dictator for one block. They can once they found that kind of lottery ticket, they can manufacture the block to be any sort of valid transactions that they want. And in a proof of stake system, you instead have dozens of validators working simultaneously to all say, yes, we think this is the truth. So what do you imagine the switch from proof of work to proof of stake will do to Ethereum's node count, which last I checked was about 1,400? It's hard to say what it will do to node count, primarily because right now the number of nodes is the number of full nodes is simply because we don't have a lot of like client solutions. Just today, somebody, one of the developers sent the first transaction from a like client and we have lots of efforts to produce Ethereum software for mobile phones and embedded devices. And when you combine those two technologies, then we're going to have a lot more nodes that are running in like client mode and probably fewer full nodes. Now, that said, I am personally not a miner. I don't have GPUs to mine and so forth, but in a system of proof of stake where I only need to keep a server online and not hardware mining constantly, I would be more interested in participating in the validation process because it is quite a bit easier or so it would seem. Sponsored shout out from Free Press Publications, or FPP, which is an independent alternative media outlet with the mission of ensuring a free press for the freedom movement. FPP provides a short daily podcast of world news, as well as written commentary on all things peace, love, and liberty. You can find these daily offerings complete with a Bitcoin store at fpp.cc. I had one, primarily one last question, which is what how what gas is a set amount of ether? Is that correct? Gas is not its own thing. Gas is a set amount of ether that is tell me about those things. Yeah. So gas is kind of a difficult concept to understand and I'm not sure why that is. I have had a lot of difficulty with it myself, but it can be explained really simply. Yeah. Because it's gas, I like to use a car analogy and you know, when you're going to go on a trip with your car, you need to put a certain amount of fuel in it. You don't know exactly how much, but you know it's going to take a rough amount to get where you need to go. And going straight on a road is going to cost less gas than going up a hill. All right. In the same way, operations on Ethereum have different costs. Something simple like addition is cheaper and faster and easier versus something like multiplication or storing some data. Okay. So to make these operations kind of have a certain amount of balance that that seems relative to the amount of resources they consume on the network. They apply an arbitrary number to them. Right. And the number that they happen to apply, they call gas. So addition might take one gas, multiplication might take three gas and so forth. So just as with our car analogy and having to put gas in the fuel tank to get to where you're going, when you want to execute a contract, you need to kind of fill up the gas tank and say, well, I think this contract execution will take approximately this much gas. I'm going to put some fuel in the fuel tank. Whatever the course of that trip takes or the execution that contract takes, it will use up that fuel to pay for those operations and whatever's not used gets returned to the sender. And the gas is a denomination of ether, correct? It's actually ether that's being paid. So this is an interesting thing. Just like gas stations have prices per liter of gas. Sure. You also in the Ethereum network can say what price you're willing to pay for unit of gas. So for example, right now, I think it's a seven zeros and a five, point zero zero zero zero zero zero zero zero seven or five rather is the current price of gas in ether. So if you have a hundred gas, it's going to be a hundred times that long decimal. But that's entirely up to the miners and the users submitting the transactions what price they're willing to pay. And I think this has some analog to what's being attempted now in the Bitcoin community with floating fees and replaced by fees. They want a system where the fee to pay for a transaction can float and doesn't have to stick necessarily with the internal price. And this was something that was built into Ethereum early on understanding that kind of problem and anticipating it. So the amount of gas that I pay will determine how quickly my transaction is processed, basically. The price per unit of gas that you're willing to pay price per unit of gas that I'm willing to pay. So just use some rough numbers. We can say, for example, maybe a contract execution is 150,000 gas for some particular operation. You would say, OK, it's 150,000 gas. I'm going to give it 200,000 just to be safe. And the price per gas I want to pay is going to be zero zero zero zero zero six hoping that that will make it in a block sooner and faster. Now, the reality of the situation is that most miners are accepting transactions altruistically at the stage and are taking anything. But assuming the system grows and does come under pressure of transactions, I would expect to see transactions kind of become ordered and those high value ones will probably get executed first. So then that naturally leads to the question. Is there a block size cap in Ethereum? So the way the block size limit was determined in Ethereum was to actually have a floating cap. And this is something that BitPay has put forward, I think, as one of their proposals. Right now, there's a limit in each block of pi million, so 3.14 million in every block. But the miners can vote on a certain algorithm to increase or decrease that. So when the blocks begin to get full, they can vote to say, I'd like to increase the headroom of the block and actually have that increase up from 3.14 million. And so how would a miner make this vote? Is it like in Bitcoin where they would, I mean, at this point in Bitcoin, a miner would need to switch the variant, the reference client they're running to one that supports higher blocks. How would the miner vote in Ethereum to change the block size cap? Right now, there's just some parameters and I believe some default strategies that are built into the client that the miners are welcome to use. It seems from the behavior of the network that most miners are running the default settings. But if they want to elect to allow a lower gas price to be processed or use a different strategy, they can use what's already built in the software or force fork it and try to implement some other strategy. Okay. And then I think my last question is, so the gas that is paid for deployments, is that being awarded to miners? Is that being awarded to nodes? Where is that payment going? Right now, miners are rewarded both with a five ether per block subsidy in addition to the gas consumed by the actual clients, by the actual contracts executing in that block. So they're paid for the actual processing. And the deployment of a DAP or a contract that's of course paid its one-time gas fee to exist, will that be hosted forever? Say a DAP is deployed and will it be hosted forever based on a one-time payment of gas? Currently, yes. Paying for a contract to be deployed is a one-time cost and it always exists on the blockchain. There were some discussions early on about charging rent on the blockchain, but I think it's a very complex topic and was kind of distracting for the main goal of actually launching. So that was left as is. It seems like there are already discussions in place to reevaluate that going forward. There is a place on GitHub repositories for Ethereum and they've created a new one for these kinds of discussions. They're called EIPs, Ethereum Improvement Proposals. Oh. Yeah, so people are already going there to discuss the pros and cons of all these different proposals, whether it be about rent on the blockchain or some of the different semantics of proof of stake. All that stuff's pretty much in the open. All you need is a GitHub account to jump in and three ideas in. And would you say that that is the current, I guess, governance process within Ethereum? Submitting an EIP via this forum and hoping that it makes it into a future development patch? Right now, it seems like that's probably the current route. Obviously, we have a lot of development going on concentrated by what the Foundation is paying to have developed, right? So there's an Ethereum Foundation. They're paying for the development of all this. So there is a lot of kind of governance that's still internal to the organization and Vitalik as the inventor kind of leads the pack in a certain way. You know, a lot of people listen to what he has to say on this matter. But over time, I think that the Ethereum community would like to see a more decentralized governance in place and something maybe a little more structured than what the Bitcoin community has going on right now, seeing that the pain points that totally decentralized decision-making can have. Right, right. And I guess that does spark one last question for me still, which is what is the, if it has been disclosed, what is the funding of the Ethereum Foundation? So the funding of the Ethereum Foundation was originally kickstarted by the crowd sale that happened in 2014. I will remember, yes. Yeah. So the, I believe the majority of those funds have been depleted primarily for getting the actual network launched. The runway has been extended now because as part of the crowd sale, the Foundation received a portion of the Ether that was being allocated to the purchasers. Right. Oh, okay. Yeah. So there was a percentage and I don't remember off the top of my head, but it was based on the number of purchases. Okay. So the recent rise in Ethereum price has been funding at least a portion of the Ethereum Foundation, then I imagine. Yeah. So most of the Bitcoin has been spent. There's still some Bitcoin. The primary asset, I would say that the Foundation has is Ether. With the price rise, it certainly helps. I think before the recent bump in price, we are looking at another year of development funding, which would be great to get us to proof of stake. If the price stays up, you know, that only helps our situation to hire more developers, work on more technology faster, et cetera. Right on. Yeah. Well, you have answered all of my questions. Taylor, thank you so much for coming on the Daily Decrypt. And do you, do you have, where can people follow you as far as Twitter or whatever? So people can follow me on Twitter at TaylorGaring or TaylorGaring.com has my contact info. I'm on Reddit is under the same name and GitHub as well. So anywhere you're active, I'm snooping around. Taylor will be there. Very good. I'll be there. All right. Thank you so much. Thank you. Bye-bye. Bye. Today's episode is brought to you by CryptoCloud Hosting, which is a new web hosting service that accepts upwards of 30 different crypto currencies. And they're a crypto-only business, just like the Daily Decrypt. They offer one-click installations of popular backends like WordPress and Drupal. And I have experienced a highly responsive support staff from them as they host our website for us as well. You can check out any of their customizable web hosting packages at CryptoCloudhosting.org. And that's all, folks. Leave us a comment below if today's video has got you thinking and have a great day.