Friday, 30 December 2016

Satoshi's lesson

Bitcoin 0.1 was amazingly complete. It had few bugs, and even fewer really bad bugs. Additionally, it had great forward-compatibility, with explicit support for future softforks in the form of the OP_NOPn opcodes. Before anyone knew how a decentralized cryptocurrency would even work, Satoshi was figuring out how to add to Bitcoin things like smart contracts and payment channels. This is incredible, and a lot of people look at Satoshi's amazing accomplishments with Bitcoin and say stuff like, "Satoshi must be a crypto super-genius, the next Einstein." This, I think, is very much missing the point.

When Satoshi was working on Bitcoin in 2007-2009, almost all of the core ideas of Bitcoin were well-known in the cryptography community. In 1996, a summary of previous academic work on electronic cash was published, talking at length about most of the low-level cryptographic primitives used in Bitcoin and using familiar terms like "double spending". Hashcash proof-of-work was well-known, and I remember reading about it prior to Bitcoin as an idea to prevent email spam. git uses the same unbreakable chain of hashes as Bitcoin's block chain, and was first released in 2005. Satoshi made one major leap: combining all these pieces to prevent double spending through a PoW block chain. This was impressive, but the same flash of brilliance could've happened to anyone who was following this stuff.

Satoshi is not awesome because he was watching the crypto world and had a brilliant idea. He's awesome because upon having this idea, he carried it out. You know what I would've done if this idea had come to me? I probably would've mentioned it to a few people, maybe written some very basic code if I was feeling especially ambitious. You know what Satoshi did? He spent 2+ years contemplating every possible aspect of the system he could think of, and wrote code that worked brilliantly in the real world. Satoshi's code was good, but anyone who had read a good book like C++ Primer could've written similarly-good code. Anyone who had taken an intro crypto course or read a few books on the subject would understand Satoshi's usage of crypto primitives. The task of creating Bitcoin required a small flash of brilliance, moderate skill, and an unbelievably huge amount of dedication to thinking about, coding, and testing the system until it worked exactly as envisioned.

Satoshi's lesson is that you don't need to be the next Einstein in order to change the world. You just need to be put in the effort. Satoshi, probably just an ordinary hobbyist like anyone here, saw that something was lacking in the Universe, and he fought tooth-and-nail for 2+ years until this imperfection was corrected. We should strive to do the same (and not just in Bitcoin).



Submitted December 31, 2016 at 06:12AM by theymos http://bit.ly/2hUYhtH

No comments :

Post a Comment