Monthly Archives: June 2018

Smart Contracts, Luke, and Music

A recruiter for DFinity, a nonprofit cryptocurrency company working in Haskell, reached out to me the other day.  I did some research, read their whitepaper.  The tech is pretty clever and interesting, in particular providing solutions to my main two misgivings about cryptocurrency: (1) proof of work, which always seemed like a huge waste of computational resources, and (2) immutability (which some cherish about the technology, but I don’t personally think “pure capitalism” has humanity’s best interests in mind).  The alternative to proof-of-work in particular is quite appealing, instead delegating block generation to a series of randomly-chosen “committees”.  The immutability solution, “algorithmic governance”, has some clever premises and ideas, though it gets a bit abstract for me, that I remain unconvinced that it would actually work as intended (but it’s possible, I just need more time and information to digest).

Some context in my life: I left Google for “mini-retirement” in early 2016 after I had earned four years worth of savings––I wanted to find out what I would do when there was nothing I had to do.  Not really to my surprise, I ended up spending most of my time on music, and have improved vastly as a musician in that time.  I still spend some time coding as a hobby, since I still enjoy it.  It’s a great life, and I have learned a lot about myself.  But one thing I notice that is missing in this life is a sense of purpose––when I try to justify that my music helps people, it always feels like I’m talking out my ass.  So, while dedicating myself to my art, I’ve also had a radar out for things to do that will tangibly help humanity.  But I’m still in limbo––am I just avoiding my True Purpose as a musician because it’s scary?; am I wanting to help people just for the status?; is believing that my music doesn’t help people actually some self-devaluing belief that I need to let go of?, etc. etc.  And I wonder if such questions are just what being alive is like and they never really go away.

ANYWAY thanks for reading my little journal entry there.  I’ve been asking myself, if I did take a job with them, how might that be of service in ways that matter to me?  And I can think of ways, and it’s getting me excited.  I’m not really very deep in the cryptocurrency world, so these ideas are probably either naive or old news.  Nonetheless I’m an invent-first, research-later kind of person.

The idea of financial contracts being written precisely and formally is a great idea to me, replacing pseudo-precise legalese with actually-precise math.  But smart contracts don’t actually improve anything if they are so complicated that humans, who they ultimately serve, can’t understand them (and we know how quickly code can get unbearably complex).  It’s also possible to write misleading code, and in a world based on smart contracts, there is a great incentive to do so.  We need excellent tools for understanding and verifying contracts: assurances that they actually express the intent on the label.

Indeed, in a world of public contracts, there are new possibilities for “integration tests” that could detect instabilities, possible market crashes, and the like (though it is difficult to comprehend the magnitude of such an undertaking).  There is a story about Simon Peyton-Jones formalizing the Enron scandal, which was allegedly built on an series of impenetrably complex contracts, and finding its error.   The story might even be true, since he and others published a functional pearl about financial contracts.

Imagine a continuous integration system of our global financial system, monitoring it for health, automatically rolling back unhealthy contracts, protecting people from shit like Enron and the subprime mortgage crisis before it happened.  Imagine also moving to New Orleans and getting deep in the music scene.  Imagine doing both at once.  Does that sound like a good life, Luke?