HomeTezosInterview: Arthur Breitman talks Tezos development, baking, and zk-SNARKs

Interview: Arthur Breitman talks Tezos development, baking, and zk-SNARKs

Tezos Insider had the privilege of speaking directly with Arthur Breitman, Founder of the Tezos project, to discuss many important topics including protocol development, on-chain governance, baking, and the future of the Tezos ecosystem.

We want to once again thank Arthur for his time and for answering our questions so we can bring you the most complete and informative coverage of Tezos that you won’t find anywhere else in crypto media.

Full Interview Link: YouTube

Subscribe to our YouTube channel to make sure you don’t miss future interviews with key Tezos newsmakers and developers.

Here is a transcript of the complete Tezos Insider interview with Arthur Breitman:

Nathan: So there’s a lot going on with Tezos since the main launch in September…


Nathan: Which followed the betanet launch, that was on June 30th, and so that was very positive, there were no issues there from the beta to the main net. So, now there’s a lot of exciting stuff happening where we are coming up with the first test of the on-chain governance model, sometime in 2019, and that’s something that really sets the project apart, because most major Blockchains don’t have anything like that right now, can you tell us a little bit about what that is going to mean in the next couple of months, what do you see as some of the first protocol upgrades that might come from that?

ARTHUR BREITMAN: So, indeed Tezos has this ability to upgrade its own protocol. And we are not the first Blockchain which is going to upgrade this protocol, many Blockchain have gone through iteration. But typically the way they do it, they have to go through a hard fork, they have to kind of change rules or you can go through the soft fork but you still basically need massive coordination to make it happen and you are not always able to have this type of coordination.

And the way it is done in Tezos is that, you have a procedure, a on-chain procedure which starts out with something simple like a vote, we vote and then the protocol seamlessly changes. And I have to insist on the seamless part because it is pretty important, this is not just telling people, hey, this is going to be the new version. Literally the Tezos nodes are capable of understanding that there is a new protocol of grabbing the source on a peer-to-peer network, compiling them and running them on the fly. So, you can think of it as an auto-upgrade functionality, but instead of just being signed by your vendor, like you would have an upgrade from Android or Microsoft, that one is kind of signed by everyone in a sense, that’s voting.

So, what that might look like, at first… in general, I advise to take things slowly, and what it is going to look like at first is probably something like a very simple protocol change, just to really oil the mechanics and get people used to voting, how to use the voting operations, until recently, there wasn’t an RPC to make it easy to vote. Now that RPC is present in the node, so step-by-step, we are going to get to the point where there’s going to be a proposal and people can vote in the proposal. And at first, I can’t imagine that the first proposal would be something huge, I think it needs to be something very simple and non-controversial, just to give like a one run to the procedure.

Nathan: So you say non-controversial. But could you envision where you have, perhaps, a controversial proposal, what kind of support does something need to pass in voting, like a simple majority or something higher than that? I mean, you could still have friction even if you have this kind of procedure on the chain.

ARTHUR BREITMAN: Absolutely there is going to be some controversy around proposals, maybe some people would say, oh well, I wish this went in, or this didn’t go in. But at the end of the day, I think that the time of the proposal is not really the time to debate, it is like, by the time you actually inject it in, it should pretty much have been discussed and people know what it is, and then it is a formality of actually doing it on a Blockchain. But I don’t think it is going to look like, hey, here is a new proposal, you have eight cycles to decide if you want it or not. The debate happens before, I think, that’s the way it works.

Nathan: Right. And that makes sense because a lot of this is going to have to be, have a lot of time spent developing, before you could just throw something on the chain and so you are going to do a lot of work on that in run up to this. So, do you know what the schedule is for when the first test might happen?

ARTHUR BREITMAN: I don’t know, I think sooner rather than later, my guess would be a matter of weeks, as opposed to months.

Nathan: Weeks. And who starts that process? How does something like that happen on the chain?

ARTHUR BREITMAN: Well, really, anyone can start that process, right now, anyone who has one role can inject a proposal, and try to get people excited to do the proposal and vote on the proposal. So, it really could be anyone, I think that probably the first proposals are going to come from some of the development teams which are involved with Tezos, that strikes me as the most likely, but it could be a dark horse.

Nathan: Right. and those are thing I haven’t seen… there is some information coming out about those kind of specifics, like how this whole process works, and I am sure we are going to learn more about that with more documentation and more people writing about it. So, let’s talk about smart contracts with Tezos… because this is something of course that also… why it is kind of called an Ethereum competitor or maybe Ethereum killer as some people would call it, it has made those kind of lists, but differentiating it from Bitcoin, of course it doesn’t have that functionality.

So, what do you see as use cases for Tezos where maybe Ethereum has failed in some areas, to really find that killer app, the use case that is out there. You know, there is a lot of use cases for it, but nothing that is really stuck with, okay, we got a better way to do this on the Blockchain and it is going to be widely adopted.

ARTHUR BREITMAN: Yeah. So, basically I think there are 3 broad… and I have to separate 2 things, one is like, what are the use cases for smart contract platforms? Because Ethereum is a smart contract platform, Tezos is a smart contract platform, I think their benefits to Tezos compared to Ethereum, and that’s one thing. And then, what are good use cases, I think that should be a separate question.

So, first what are good use cases? I put them broadly speaking in 3 categories, one is ‘Censorship Resistance’, you want to have platforms where you can make censorship resistance payments, this is helpful if you live under an oppressive government, if you are doing illegal activisms, this type of extreme situations. For me, that remains the main value prop from cryptocurrencies, that’s the main goal.

The second one is going to be large scale coordination between various entities that don’t necessarily trust themselves. So, in this case, in theory, you could do it without Blockchain, but it still makes it a lot easier to have a Blockchain, so you could imagine some sort of club or organization of association that wants to organize and then they have members a little bit everywhere in the world, so they want to have a loose structure as opposed to having a very, very hierarchical structure.

And I think building these types of organizations, they’ve been called “DAO” also on Blockchain, that’s a very useful use case. And the third one is basically commitment not to be a monopoly, so you are a company, you are going to be using a lot of people’s data for example, and you want to attract people to your platform, and one thing you can tell them is, say look, I commit to be an open standard, I am not going to trap you, and that trapping has happened, it has happened with Facebook, it has happened with Twitter,  you had a lot of companies build on the Facebook API, build on the Twitter API, and then they kind of cut those APIs and you don’t have access anymore.

So, how do you compete with large, entrenched companies, well maybe one way to do it, is to say hey, I am not going to be evil, I commit to have a very open standard and I think these are the 3 things are in order of importance. And the first one, in censorship resistance, this includes more than payment, this includes the ability of having a financial system, and I think that’s why smart contracts are very important, and that’s one of the things that’s missing from Bitcoin.

If you want to have money, having the ability of actually making financial contracts, like insurance for example, directly on the Blockchain is something that is valuable.

In terms of what differentiates Tezos from Ethereum, I would say that the emphasis on formal language, formal method is going to be different, the emphasis on government, so why would you build on Tezos as opposed to Ethereum, in a nutshell, it is because you believe that the governance is going to give some permanence to Tezos. Let’s say you’ve got a company you are going to give like 5 years or 10 years of your life, to something, you want to know that you are going to build on a very solid footing.

The second one is, you are building your smart contract, you want to convince yourself that it does exactly what you want to do, and for that I think most people are going to turn to analysis and in particular, formal analysis of smart contracts. If you want to do formal analysis in of Michelson, it is going to be a whole lot easier than if you try to do formal analysis of the EVM for example.

So, those would be the reasons. And then, the third thing is like, what are Ethereum’s use cases, and you have to make the difference between what people say they are and what they are. Just because people are wrong about good use cases for Ethereum doesn’t mean Ethereum is necessarily bad. So, I think we are going to have dapps and use tokens to pay for the dapp and so on and so forth.

I don’t think that is a good model, and people are saying like, oh, it turned out it is not a good model so Ethereum sucks. No, it just means that one particular narrative is wrong, but the technology itself is neutral. So, you have to be careful not to judge people by the narrative necessarily that they push, but what they are actually building and what it lets you do.

Nathan: Right. So, one reason why I think maybe some industries and Fortune 500 companies, they are kind of dabbling in this stuff, but we’ve seen a lot of security bugs and hacks and things of contracts and Ethereum and another place it’s like, does this need to be like… you said the long-term viability of this has to be stable and has to be something that can be invested in now and still be lasting 10 or 2 years from now… So, the formal verification in Tezos, does that make a big difference for perhaps creating an environment where you’ve got a more secure code base for making smart contracts?

ARTHUR BREITMAN: Right, and I want to clarify that formal verification, that is not a feature of Tezos, that’s something you do, and right now in terms of tooling, there is not a lot of tooling for doing formal verification with Tezos, I just think that Tezos is a better footing, a better base level on which to build the tools, because fundamentally, the way things are expressed, the semantic of contract, the semantics of the transaction, there is a lot more amenable to it. So, it may seem like a subtle distinction, but I think that in the coming years, the development of the tooling around it is going to make a huge difference.

Nathan: So, let’s talk about the other big differentiation for Tezos, which is a proof of stake algorithm, which I think… are we calling that “liquid proof of steak”?

ARTHUR BREITMAN: Yeah. I like the name liquid proof of stake. I mostly want to say like this is not “Dpos” this is delegation, this is proof of stake, but this is not Dpos, it is very different, just because there is delegated proof of stake you still see people saing, oh, the Dpos from EOS. No, it is a very different algorithm. Basically, the idea of the delegation is that you have to play a balancing game when you are designing a proof of stake system. So, if you give no delegation at all, what I fear will happen is you will have bonding pools, what I feel will happen if there is no delegation is that people will take their funds and just say, I am going to find the most trustworthy delegate possible and I will just lend all my funds to that person, just because I want that extra percent that can be done, by staking.

So, if not having a delegation pushes people to say, oh, I can’t delegate, man, I guess I will do it myself, that’s fantastic, but it could also push them in the other direction of extreme centralization, and that depends on the ratio of how easy it is to do at home, versus how risky it is to trust one person in the system, and so Tezos tries to strike a balance where you basically can keep the custody of your funds so that you don’t have to give that up, while still being able to participate in consensus, because you do make a choice, you do have the ability of saying, actually, I’ve looked at those figures, and you can rely on pseudonymous reputation, so it is kind of a way to stretch proof of stake a little bit by using pseudonymous reputation.

There are various ways that Tezos have… like the fundamental idea of Tezos is that these things can evolve and react to different circumstances. I think right now this is a model that works, but of course it is something to keep an eye on.

Nathan: So, what about where… the way that proof of stake affects, it kind of gives an incentive to hold all your coins and there seems to be… this is still kinda young, but Tezos, that is in terms of exchange trading, but it seems like the volume is lower on a lot of exchanges for Tezos and I wonder if that is because this model kind of incentivizes you to hold on to your coins because you may be delegating them, you are baking them, they are earning a return, and so there is not just as much. Do you think that that affects trading or behavior?

ARTHUR BREITMAN: I don’t think that it is true that it incentivizes holding. In some systems, when you stake, you have to lock your coins for a period of time in order to participate. And that worked great when you are in the phase of expansion where everyone wants to hold anyway and so on and so forth and it kind of breaks down if you have period of contraction.

But Tezos is not like that, there is no real benefits in holding because there is no time limits, everything is offset by a few cycles so you start delegating, it takes a few cycles, but then the same is true if you stop delegating, you know you still get the same cycles. So, I actually don’t think this incentive is here, and it is important, you don’t want to… basically, if you want to design a good system, a system that is going to be money, you don’t want to muck too much with the circulating supply, because if you have a circulating supply that really gets frozen in periods of extension, and then gets suddenly unfrozen in periods of contraction, I think that actually creates volatility. So Tezos tries to target about 8% frozen of the money supply.

It might seem that you can get more security for free by asking for a lot more, so I think like Polkadot is trying to target 80% of the money supply frozen, at any time. And it is great in the sense of that, if there is Byzantine Fault, you can slash a lot more, like you can impose more harsher penalties, but on the other hand I think that creates volatility on your circulating supply, and that’s not a good thing.

So, just really how is there volatility in your circulating supply if you fix staking supply, and the answer is, in order to fix the staking supply, you have to play with the yield, that what they do in Polkadot, you play with the yield, then you create insurgency on that, on the emission of token.

So, Tezos target 8% of the money supply if frozen, and I try to look at Bitcoin, estimated value of how much capital is crystalized in Bitcoin, so what is the value of all the Asics that currently secure the Bitcoin network.

Because when it comes down to it, a lot of the mining incentives in Bitcoin will say, well, I don’t want to render all my Asics worthless, I am a miner, and I estimated about 2% of the Bitcoin market cap was in Asics, but that was like a few months ago, so right now, probably that number has increased, so it is a few percentage it is still less than 8%, and that is one interesting parameter to play with in terms of governance.

Nathan: What do you think about… right now, there is a lot of delegation services, baking services that started with the Betanet, they became popular then. And at this point, most of them are over-delegated, in terms of they’ve got too many coins delegated to them beyond the point where people who delegate after a certain point are not going to be getting the rewards… Trying to communicate that is difficult, because you’ve got a lot of people that are delegating by default in their wallets and that kind of thing and they just don’t know that this service may be over-delegated.

Do you see that as being fixed by a protocol update, maybe they can be limited, up to a certain amount, or just more education, for people to understand that they got to look at this closer?

ARTHUR BREITMAN: I think better UX probably, so it’s your wallet and people delegate, that is something that the UX could check, I don’t think you need to do that at the protocol level, you could even develop some sort of standard for bakers to indicate their capacity and then have the wallets be able to react to these types of things. And you don’t need to clutter the protocol with that type of thing, but it is important to do.

On the other hand, I would say this, the fact that over-delegation is increasing, it pushes towards decentralization, because somehow you are big baker and you are like, you know what, I am big, but I don’t want to grow bigger, that’s fantastic, we want this to happen, we want the smaller bakers to collect on that, but the reason this may not be happening is because of a UX problem, so you if you have a dropdown box and it just shows you the same three, that’s not helpful for the network. So, I would encourage anyone who is doing bigger wallets, to give a wider array of options and present a difference in baking services, that would be helpful.

Nathan: Yeah, I agree, I think that the tools need to kind of grow a little further in this area, so that when a user who is maybe totally new to it, signing up and want to delegate their tokens they activated from fundraiser or something.

They have more information, they can understand that at some point, everybody can’t delegate to the same place. And so, I think that is why right now, it is still great for other smaller delegation services to startup because there is this opportunity, there is more demand for it than there is availability right now.

ARTHUR BREITMAN: Yeah, absolutely. And I think that was one of the benefits of the token is that you can use them in order to place these safety deposits and actually secure the Blockchain.

Nathan: So, right now, I know you have talked about this before, in the past, but you have to have a minimum of 10,000 coins right now to be able to… I guess it is just to bake… I think I have read you say you see the number coming down perhaps with code optimization be able to handle more rolls, changing the amount of the rolls from 10,000 to something lower?

ARTHUR BREITMAN: Yeah… actually that would be a good protocol upgrade. So, the main reason basically is database limits, you have to do snapshots of all the rolls at every point and so if you make it smaller, your context is going to be bigger, you are going to have more I/O.

And in general I think one of those things that I am focused on as a sore point in Tezos right now is that there is a ton of disk I/O that’s happening on every block and the content storage is inefficient, so that is something that I am personally working on and interested in optimizing. Once we get a much better… and I think it is possible to get a much better storage for the context, much faster storage, I think it becomes easy to reduce the size of the rolls. I don’t think the roll will get down to 1 tez, but with some optimization getting it done by a factor of 10 over the next few years is pretty doable.

Nathan: Okay, and that in itself, probably coupled with better user tools is going to help baking proliferate, because if you only need say, 1,000 coins and you’ve got the software and everything that makes it really easy, that’s going to be more widely adopted.

ARTHUR BREITMAN: So, right now, if you have a Mac or if you are capable of using Linux, just install a docker for baking. Actually I have had some feedback from people who are not technical, but they were like, look, I read the tutorial, I ran the docker and I got it, and it’s working. So, if you are motivated, it is doable, but ideally you want to get to the point even if you are not motivated, even if you say, you know what, I just want to use my tokens for baking and so I am just going to run this thing.

So, getting it to that point, I think would mean having some Windows software, Windows is still very popular, what you run in having some UI around it, that would be helpful. So, if you are out there and you are wondering, what can I build for this system, and I think like Windows-friendly and UI-friendly baking tools, that is something that is very helpful.

There is also the fact that Tezos has been live for about 6 months, so it is still fairly fresh, and there still needs to be some reactivity from the bakers. Over the past few weeks, there was a bunch of bug which were addressed by a bunch of patches and so the bakers had to be reactive, like, okay there is a new version, I am going to do this, I am going to do that… Now, if you wanted to, you can create a very user-friendly version that auto-updates, so if there is a new thing, you just update it.

But I don’t think that is a good idea, because anything that auto-centralizes its update, that is a single point of failure and you really don’t want that. So, I think for baking to become really user-friendly, you want to get to the point where the Baking software, just basically never changes, and I think that could take a few years of running in production and really polishing to make sure that pretty much can happen. So, it started with experts, now we have experts and hobbyists, and from experts and hobbyists to really just like anyone.

Nathan: Yeah, and I see that perhaps even in the next 12 to 15 months, you see some devices coming out, there’s the Coinone Miner which is backed by Coinbase, which is kind of at home box, that looks like an X-box, if you are going to do it with an app and you can just turn on, like I want to bake Tezos, so you can turn that on. I think stuff like that is going to push that to be more widely adopted and used.

ARTHUR BREITMAN: Absolutely. I don’t know if you remember the 21 toaster, like the 21.co had the idea of putting mining chips inside toasters, and at the end of the day, I don’t think the economics made sense because, we know there is just a little bit of electricity at home, you are not really producing that many Blocks, however with proof of stake, you have a different dynamic, and I think that model, of having appliances, something you plugged to your router and it can be a proof of stake system, maybe not just for Tezos. Imagine something like a NAS, network storage where you install apps, so you can basically have the equivalent of a NAS and you can install also proof of stake validation apps. That I think is an interesting model, and something we’ll see.

Nathan: So, right now, we are looking at…  I don’t how much attention you pay to the price of Tezos on exchanges, and obviously there’s been a dip, because the whole market is in a dip right now, Bitcoin is down over 50%, and Tezos suffered from that and I think probably because it doesn’t have as much volume perhaps, because it just came online and it is not on all the exchanges. Do you think that that affects maybe developer adoption, or trying to attract people to the platform?

ARTHUR BREITMAN: I don’t know, but I mean… when I talk to people, when I talk to developers in general, I don’t think that is something they bring up, like most people I see who want to build on Tezos, they come and they say, oh my God! Tezos is well designed and that’s why I want to build on it. There’s a lot of people who would build by default, as a default platform, so if you don’t have any strong preference, you are going to look at Tezos, you are going to look at Ethereum and you say, well there is more development on Ethereum, everyone is building on Ethereum, so you are probably going to build on Ethereum, and that’s fine.

The people who are going to start building on Tezos now, are people who are really opinionated about this thing and that’s how you grow. So, I think it starts with like… I am not going to say ideology, because I think there’s something fundamental behind it, there are going to be people who really see the technical benefits of Tezos, who really buy into the governance model, and who like the design of Michelson.

They’ll say , yeah, that’s always how I have been wanting to develop my smart contracts and these are your first adopters. From there, you get social proofs, you get social validation, and then other people say, hey, there’s successful engineers who are building this stuff on Tezos, now I want to build on Tezos, and that’s how you progressively grow from there.

Nathan: So another thing we were talking about earlier, the protocol upgrades, the voting. One thing that came out recently was the possible addition of shielded transaction, the privacy option using zk-SNARKs. How closely are you following that, and do you think that’s important?

ARTHUR BREITMAN: Yeah, pretty closely because that is fundamental because… One of the same that really got me interested, really into Tezos was that Bitcoin basically turned its back to zk-SNARKs and it turned its back to proof of stake and it turned its back to smart contract and those were three things I was super excited about, I was excited about smart contracts, about privacy in transaction and I was excited about proof of stake.

And these are things which are mentioned in the Tezos position paper. I think it is fundamental to have privacy in your transaction, on your ledger… in some sense, if you are using Bitcoin, you can have less privacy than if you are using PayPal, because in PayPal, you know the transaction in PayPal is not broadcast to the entire world, that would be VenMo… you want to have some privacy and privacy doesn’t mean that you have to keep it secret, it just means that you choose who you want to give that information to and you can be selective in disclosing your transactions, and I think that should be the norm, the norm shouldn’t be, I am going to broadcast everything to the public, everything in the open, I want it to be private.

So, I am super excited about it, and some people have said that Tezos has developed SNARK, no this is a binding to the Sapling library from the Zcash team, so really standing on the shoulder of giants who themselves are standing on the shoulders of giants… because there is amazing research, amazing engineering behind all of this, and it is beautiful that there are sometimes you can see a lot of acrimony sometimes in the industry, but it reminds me that this entire industry is built on open source software. At the end of the day, almost all of these projects are open source and they are all bettering the state of technology and the state of research, I think that’s fantastic.

Nathan: What are your thoughts on… On that kind of line, you said privacy is important and it is all built in open source, but what we are seeing right now is, a lot of the industry is, in crypto, is being forced to comply with a lot of banking regulation about money laundering and that sort of thing which is kind of antithetical to I guess keeping you privacy and that kind of thing. What are your thoughts on how that’s being pushed, it seems to be a necessity and it seems to be like you can’t get around it when you are dealing with this kind of money all over the place, but it’s an unfortunate byproduct  I guess?

ARTHUR BREITMAN: Right, I don’t see an incompatibility, if you look at Zcash for example, Zcash was actually approved by the New York Department of Financial Services when it was listed by Gemini and so they’ve had a good interaction with regulators who have been able to understand that there are benefits to privacy. Also, just because your transactions are private, it doesn’t mean that you can be sneaky, so let’s say for example, tomorrow you get a legal order that says, hey, you’ve made some transactions, you have to show us what the transactions are, you still have to comply with that legal order and that’s why there are things like viewing keys in Zcash. So, it doesn’t mean it is going to be anonymous forever, no, it means that you have out of your own will, you can actually reveal the transaction, so it is no different from encryption in this sense.

And also, in general, if you want to have any type of enterprise adoption, I think there is going to need to be some sort of privacy. Let’s say you are a big manufacturer and you have like a small supplier, it can be important that this supplier be kept secret because otherwise your competitor could try to buy this local supplier or can try to outbid you. So, as a company, keeping your payments private is extremely important, it’s not going to happen if you don’t have this type of privacy.

Nathan: Yeah, I agree, I think it is moving from… at least having an option on there, you can support multiple kind of transactions like that.

ARTHUR BREITMAN: Exactly, and if you receive a shielded payment, it can be like, I want to know who I received the payment from. You can still comply by the regulations in doing so, it just means that you are not broadcasting everything to the public.

Nathan: So, for this kind of change to be implemented on Tezos, this will be part of like an on-chain governance upgrade, is that right?

ARTHUR BREITMAN: Yeah, most likely, yes.

Nathan: So, it’s not something where we just decide, you decide, it is not an individual, the Foundation, nobody decides what happens, this is kind of organic and people will end up voting on this sort of addition.

ARTHUR BREITMAN: Yeah pretty much, that’s the idea of governance, so… The way it would look like is a proposal for changing a protocol, and if it gets adopted you can have shielded transaction in the protocol. And now, I will mention one technical thing… So, proposal upgrades are just about the files that are inside the protocol, but here we have a new library.

So, technically, it would be a little more than protocol upgrade, because it would also need to be a change in the standard library. So, protocol doesn’t re-implement all of the cryptographic primitives, it calls other primitives, most of them from a library called HACL*, so it doesn’t re-implement, for example, elliptic curve signatures or any of that. So, in the first phase, you would basically say, okay, you need people to upgrade their nodes in order to say we want protocols… future protocols, we want them to have access to the functions in a sapling library, and then in the second phase, then you can say, okay, now we actually want to use these bindings. I have a blog post called ‘There is no need for hard forks’, which basically outlines scenarios where you want to have hard forks, like emergency bug fixes is one and the other one is changing the standard library for adding new functions.

Nathan: We’ll link to those sorts of things, I think that’s information that needs to get out there too, more people need to be able to read that and understand how your view of it, in designing this whole thing, is kind of supposed to work like that.

ARTHUR BREITMAN: Yeah, and sometimes a misconception is that proposals are just like anything, it is like… I propose that we change the logo for Tezos, you write something like that and you propose a vote for the network. And that’s not how it works, the way that the proposal system works in Tezos is that the proposal is a piece of code, this is how you change the actual protocol.

Nathan: So, let’s talk about from now, over the next 12 months, what you see happening. Now there is no roadmap in Tezos, of course, which is something that is sometimes requested, which can’t make sense in a decentralized system. And I have seen that you have spar back and forth with people on Reddit about that, who demand such a thing, but really it is not possible for one entity or one organization to say this is where we’re going to go, because anybody can work on parts of this and eventually just submit proposals for upgrades.

ARTHUR BREITMAN: I think it is not true that there is no roadmap, it is just there are many roadmaps, so when people say “what is the roadmap,” the word that I object to is not roadmap, it’s “the,” like there shouldn’t necessarily be one, because many people are going to have their own views and so I have bit of a roadmap, I had a blog post explaining what I saw as probably a roadmap for Tezos, mostly improving the mempool, that’s a big one, improving storage, better randomness generation, changes to the proof of stake algorithms for having finality on every block, and then some improvement to the governance process.

So, I forgot the title of that blogpost that I wrote. So, that is my roadmap, that is what I am interested in working on, different people have different roadmaps, different people have different point of view. Oh, and zero-knowledge transactions. But different people have different knowledge and I don’t want my roadmap to be their roadmap, I don’t want people to say this is Arthur’s roadmap therefore it’s the roadmap.

No. I think that goes against the principles of the network. So, I am proposing a roadmap. I do have some clout, but I also have some ideas that other people disagree with and that’s completely fine, I don’t want to be in a position where somehow, I am dictating what’s happening on the network, and that’s why Tezos has governance, is to avoid the need for coordinating around a single individual in order to make changes.

Nathan: Yeah, and that’s part of the whole decentralization model, I mean, you don’t have a company… we see there’s plenty of chains that have that if you want to follow that, if you want to watch over the next 12, 18… this is where we are going, quarter one, quarter 2, quarter 3, that’s out there, and they’re just kind of different goals and different ways of trying to.

ARTHUR BREITMAN: And it’s totally fine for a company to have a roadmap, but at the end of the day, what gets implemented in the Tezos network, basically depends on what gets coded in, that’s very central if you read the Tezos position paper, from 2014, one of the explicit goals is to protect the network against the influence of centralized core development team, that’s like, I see in the first few paragraphs, that’s one of the things that was mentioned.

Nathan: So, what do you see right now that is kind of missing in the ecosystem? The community is growing, the social media is growing, all that kind of stuff, there is new applications I see coming out, new tools, new websites… Is there any area where you see somebody who can step up and do some work?

ARTHUR BREITMAN: Absolutely. Anyone who submits PRs or improvements to the protocol and code, all of that is always welcome, there is a list of issues on Gitlab and there are some people who have done that, there was this man named Tom Jack, who many of us thought it was a supernatural entity, but he’s a real person who’s just been finding and fixing bugs.

Strangers coming in and finding bugs, and of course that’s very helpful. But to answer your question more specifically, in the ecosystem, I think tooling around developing contracts, that would be very helpful. So, there is a good Emacs mode for Michelson, that not many people necessarily know about, there is also a good plugin for IntelliJ, for Michelson, but in general, having more resources in one place, a lot of good tooling for running contracts, running them on the test network, deploying them, testing the contracts, sending them to theorem provers, because like I said, Michelson is a really good target for theorem provers, so there is a project going on right now, which is another formalization of Michelson in Coq, it was a year ago, so this one is more up-to-date.

So, using automated theorem provers… so developing all these tooling, all this infrastructure, to make it easy and safe to deploy smart contractors on Tezos, I think that would be tremendously helpful. In the same vein, contracts compiling languages, high-level languages compiling down to Michelson, so one example is Liquidity, there’s also fi from Stephen Andrews. So, something like a Python or a Pascal type of language, that would compile down to Michelson, I think would be very helpful.

At the end of the day, I do see that most contracts that actually get deployed on the Blockchain will end up being hand written in Michelson, the reason is that we want to squeeze as much efficiency as you want, and the code is going to be short, but for prototyping, absolutely High Level Languages will be very helpful.

Nathan: This is kind of a theoretical question, but you know how right now, we’ve got a situation where… let’s just say for smartphones, okay, you’ve got Apple phones, you’ve got Android phones, and you’ve got development teams that they don’t pick one platforms, they kind of make an app that works across multiple platforms. Do you envision like tools, for example, let’s say I want to develop a smart contract and say, I want to support 5 Blockchain platforms, so having portable tools.

You are you going to have competing Blockchains over the next several years, so maybe if a company doesn’t want to pick one. They want interoperability I should say, to be able to put something out on Ethereum, put something on Tezos and build on them overtime.

ARTHUR BREITMAN: Yeah. So, one thing we could do is… One of the advantages of Michelson is that you get some strong guarantees about the semantic of your language and you can deploy that fairly easily but with more time, what could be done is, a certified compiler from Michelson to web assembly. So, if you can prove that all the properties of Michelson you have in web assembly, then you can replace the Michelson interpreter inside of Tezos with the web assembly interpreter and then use the certified compiler in order to migrate all the other contracts. So, I do think that there’s going to be some convergence on web assembly, it seems to be what most platforms are adopting including Ethereum, Polkadot, and a few others.

So, that’s one way to do it, another way to do it would be to try and take some languages like Solidity and compile them down to Michelson, I don’t like this approach too much because I don’t think people should be writing smart contracts in Solidity, I don’t think it’s a good language for that.

Nathan: So, let me ask you one last thing here, we talked about how baking is becoming more popular, and we want to encourage more baking, and so another project I am involved with is a delegation service called Tezos Tacos. What advice would you have for individuals or larger groups, it could be at an enterprise level, in starting a baking company to offer that service to coin holders?

ARTHUR BREITMAN: So, I actually have a blog post, it’s called ‘It’s a baker’s life for me’ where I give this type of advice. Mostly I would say if you are going to be, even a little big and get some sort of delegation, absolutely use some form of a hardware protection for your keys.

So, it could mean just using a Ledger device, actually the ledger app that was built by Obsidian for baking on Tezos, they give you some high watermark protection and pretty good protection for your keys, so in terms of bang for the bucks in security, that’s actually a really good choice, and you could even have physical custody of the ledger, on a signing machine and then use a remote signer where you can have for example, your node running on a cloud but using signature from a server you have at home, that’s a setup that some people have and I think that’s a good idea.

And the better idea would be to have everything at home, but you know, if you are going to have your server on a cloud, then at least, maybe keep custody of your signer. The other one would be using something like a cloud HSM for example, so you have that on Amazon, you have that on Google cloud and a lot of HSNs don’t necessarily support the Ed25519 curve which is a tz1, the Tezos supports three curves including Secp256k1 which is the most standard.

So using HSM is also probably a good idea. I would also say SysAdmins have a tendency to really care about liveness, because let’s say you have a store, and you are selling shoes, and your store is down for even half an hour and all your customers go to the store and say, oh, that’s terrible, the website is not even up, and if you are up 99% of the time, you are losing a lot more than 1% of your sales, because people may not come back because they think your website doesn’t work.

Here it’s different, if you are up 99% of the time, you are going to get 99% of the Block, so the penalty for not being live is not that high. However, the penalty for double baking and double endorsing is very very  high, and so if you have a temptation to say, I’ll have redundant system for my signer, just in case one signer goes down, I’ll have the other one pick up. Don’t do that, because maybe something would go wrong and both signers would start signing and you will be double baking or double signing.

So, by all means just sort of having some sort of funnel where you have the narrowest interface with your signer and a high watermark, where you can say, I am never going to sign anything higher than I have signed before. So, that’s pretty good protection, and I think one of the things to look for.  Another one, would be DOS prediction, it is a good idea to have a fleet, and that fleet starts getting bigger, having a fleet of nodes, public nodes that protects the private node to be sure they can connect. And there are tutorials for doing this type of setup.

So, just a few pieces of advice… There is another thing that few bakers are doing, and that’s very different. A lot of bakers are based on the model where we just delegate to them, and then they will find out, that you delegated on the Blockchain, and then based on that they will pay out. I think that at the end of the day, we are going to start seeing more bakers asking you to register, like create an account with them, and on their website say, I am delegating and only if you actually go through the steps of the action, and that’s something I would recommend doing.

Nathan: And that might help with over-delegation too, because you don’t just have random people delegating…

ARTHUR BREITMAN: Yeah, absolutely.

Nathan: Is there anything else that we didn’t talk about that you want to add about what’s going on with Tezos right now??

ARTHUR BREITMAN: That’s pretty thorough. I guess I can talk to you about a few things, which are not necessarily glamorous, and not necessarily a thing people pay attention to, that I think are very exciting and I think they are very important. If you look at the activity on the Gitlab, you will see a lot of things, and you can say, what is this thing? These things are things to make Tezos, all of these things are things to make Tezos progressively, and that’s a ratchet.

So, there’s a lot of work being done on the peer-to-peer layer, we have a stronger peer-to-peer foundation, a lot of the projects out there, for example, we are using things to connect to all their peers, but they are using technology that was not designed for adversarial conditions. And don’t necessarily protect well against attacks, so the work on the peer-to-peer layer I think is important and useful, the work on the mempool management is also super important, the work on improving storage and garbage collection of the storage.

These are things that are not as glamorous and sexy as saying, we are getting the zk-SNARKs, but at the end of the day, what you want is reliability and speed, and this gets you there. So, I would say, pay attention to the little unglamorous things that are going on in the code, because they are actually very important.

Nathan: Alright. Arthur, thank you so much…

ARTHUR BREITMAN: Thanks for having me…

Nathan: …for spending your time with me today, and I appreciate it.


Tezos Insider is, for the moment, an ad-free self-funded media venture. Your donations are welcome to help keep it that way:

BTC: 12myJiCgyhhqqsaM3WscvDsQsrFv1HhQcU
XTZ: tz1MU7FoztU9W7XK3kyyC6mHRFEKvtiQQESm
Written by

Managing Editor of Tezos Insider. Nathan is a full-time software developer with a love for studying and learning every facet of cryptocurrency and blockchain. He is also an avid blogger and enjoys writing about crypto and other technology-related topics.