jimtalksdata: What are your views on proof of work and the need for a robust fee market? and do you have ideas for on-chain scripting, and what that would look like on Nyzo, or do you see off-chain solutions as more viable?

Nyzo: I personally think that proof-of-work is a non-solution to the blockchain problem. I’ve been studying digital money systems — reading the latest research, playing with implementations — since the late 90s. When I first saw Bitcoin, I thought that it was almost a viable system. But proof-of-work seemed like a bit of a joke for actually securing the chain, and I figured people would realize that soon enough and it would never really gain traction. I was very, very wrong about Bitcoin’s ability to gain traction, but I still feel that PoW is not quite a real solution to securing a blockchain.

Regarding proof-of-work, I don’t mean to be dismissive of Bitcoin or anything that came before us. I find inflammatory statements (like the one I made above) to be counterproductive and rude. A better way to position that statement would be to say that I wouldn’t want to have to engineer the problems associated with proof of work. And this isn’t me trying to be politically correct — I genuinely respect and appreciate the work that so many have done in the cryptocurrency space.

And to revisit the UX stuff with the website: I know it’s not beautiful by modern, conventional standards, but we’ve made a conscious decision to avoid spending too much time on the details of user interfaces, instead choosing to focus on the big UX issues of presenting the state of the cycle and mesh and the technical issues associated with the blockchain.

I think Nyzo has been around long enough now that everyone following the project can see the general work capacity of the Nyzo team. We have no plans to drastically change the rate at which we contribute to the project, and every little thing that we focus on means some other little thing that we can’t focus on. We have to pick our battles, and we’re a long way from caring which sans-serif font we use or using hero images on the website.

Regarding fees, we are very happy with the current state of the fee structure, with a few exceptions.

What we’re happy with: the 0.25% fee is really low by conventional payment standards, and it doesn’t inhibit real commerce in a substantial way. If someone pays you $0.02 for an article you have published online, do you really care that you are losing $0.00005 of that to processing fees? I think most people will be appreciative that they have a new opportunity for monetization that doesn’t involve adding crappy Javascript and serving annoying ads.

Where we are not happy with fees: cold storage for users and exchanges. This is responsible behavior that we want to encourage, and we are currently discouraging that with the fee structure we have in place. We’d like to work on that.

The whole set-your-own-fee idea seems terribly dysfunctional to me. Seriously, how does this seem like a good idea to anyone? (Again, I should avoid inflammatory comments) But we think that’s just a distraction. We set a fee that’s so low that it shouldn’t matter for ordinary commerce, but it should be enough to support verifiers indefinitely if the system really catches on.

Finally, we have no plans for on-chain scripting, for several reasons.

First, back to the general work capacity of the Nyzo team, we want to have a functioning monetary system that is scalable to whatever levels people want to use it, while remaining decentralized, democratic, and secure, and on-chain scripting is just too much to handle. But there’s a lot more to it.

I can see the value in a Turing-complete scripting option, but I also see the value in a more limited scripting option that offers more assurances of security and robustness in exchange for less flexibility

sidenote: I love that more people are starting to understand Turing completeness I remember with great fondness the first time a professor talking about a Turing machine, and in my notes for the class, I spelled it as “touring machine”

So, I can see the justification for two very different scripting languages, and do we want to implement both on chain? The modularity afforded by off-chain solutions is attractive in this case.

There’s also an advantage to the modularity of brokenness. Scripting is difficult. Languages are difficult. Secure scripting is almost impossible. If you have broken on-chain scripting, you have an emergency that needs to be fixed to continue using the blockchain. If you have broken off-chain scripting, you simply stop using that scriping until it is fixed.