RE: My Notes on Wren, the Language of EOS
I remember hearing Dan talk about the difference between his approach and the approach many others take. Instead of trying to make code "perfect" or building in error checking into every single step of the process, he prefers error detection and recovery. To many pure programmers of the academic type, this sounds like sacrilege!
To me, it sounds great. I've always been a pragmatic programmer and I appreciate that code is never perfect. Code can be great, useful, even excellent, but it can't be perfect. Perfection is the enemy of good enough. The approach, as I understand it, is to have validation in the beginning and then, once it's been validated and added to the blockchain, ignored. Since it's already validated data, everyone else just needs to replay it, not validate it again. That makes a lot of sense to me. I also like how things can be shut down (like individual apps) without disrupting the entire blockchain.
Tezos sounds interesting, but I kind of feel like it's trying for perfection when the real world is quite messy. Businesses involve humans and humans are messy. I'm signed up to the mailing list, but I don't know much more about it at this point.
I think the mentality you have over code is very healthy. I think there is a place in this space for both types of blockchain. DPOS already has some trade offs when compared to other consensus methods. I think there is a place for functional programming and the benefits it brings to the table. It will be interesting to see how the space evolves as more applications arive.