The Muselet #51: Nifty!

A while ago I found my old wallet.dat file. I had it backed up, unencrypted on my old dropbox account. wallet.dat is a file used for Bitcoin that holds your cryptographic keys. After installing a BitTorrent client, plugging in the wallet file, followed by a few days worth of downloading the entirety of the Bitcoin blockchain, I could see that at some point in time (many years ago) I had 9 bitcoin in my wallet.

If my memory serves, I bought those bitcoin for about $9 or $10 each, on one of many dodgy exchanges. I remember feeling uneasy about this, spending close to a hundred bucks on something as silly a virtual currency. Was this actually worth anything?

My transaction history shows I exchanged all BTC again a few weeks later.

Today, those 9 BTC would have been worth over $450k.

Patience is a virtue. However, it is not a virtue I possess.

But let me try to make me feel better about myself by assuming that I have other, equally valuable virtues.

If anybody knows what those virtues may be, let me know.

For a long time I stopped following crypto. It seemed rather overhyped. For some time, everything had to have a blockchain attached it. My standard joke while selling people on a project I was interviewing for was: “this project has everything: it’s fully serverless, the back-end is written in Go, the front-end is written in React, and they communicate via GraphQL. This project is everything that is hot right now, except a blockchain!”

I’m a funny, funny man. Perhaps not $450k funny, but I do OK.

Then, a few weeks ago crypto came back on my radar when the NFT craze really started to heat up. Pictures on the Internet, mostly avatar style ones, started to get sold for millions of dollarsSay what!? As silly as this seemed (at first glance, and to an extent still after many more glances), it deserved another look.

You will not be surprised that one of my go-to ways of looking at new subjects is to read about them. Ideally books.

One of the first ones I found was this beauty: “The Infinite Machine: How an Army of Crypto-hackers Is Building the Next Internet with Ethereum”

You had me at “Infinite Machine.”

For the last few weeks I’ve been diving back into cryptoland.

NFTs, Bitcoin, Ethereum, web 3.0, dapps, proof of work, proof of stake, proof of history, DAOs, DeFi, tokenomics, play to earn gaming — I had a lot to catch up on. My head is buzzing. However, I’m starting to get my bearings and I have to admit — I’m fascinated.

Let me share some of this fascination with you this week. Sorry, there isn’t much management to this topic. However, as much as this space is built on top of hardcore mathematical foundations — I don’t care much about that part. Where it gets interesting is where crypto interacts with people: how they think, what they value, and how they organize.

An excellent example of this is the NFT hype going on right now. So let’s talk about NFTs a bit.

Before we get there though, let’s start with a bit of history, for those that haven’t followed along too closely.

Once upon a time, in 2008 to be precise, there was a mysterious persona with the alias Satoshi Nakamoto who shared a piece of code that he had dubbed “Bitcoin.” It was a peer-to-peer, networked application that through the magic of cryptography could be used as a virtual, decentralized currency: BTC for short. It took off, has seen various surges and crashes, and at the time of writing 1 BTC is trading at close to $50,000. 

To send BTC from one person to another, you do not need intermediaries, you don’t need banks or payment providers. It’s fully decentralized, and anybody can participate.

However, money — while an essential part — is only where the interesting applications start.

In 2013 Ethereum was launched. Whereas Bitcoin focused solely on solving the money problem, Ethereum had higher ambitions: to build an Internet-wide, distributed programmable computer.

To program it, you write code in some programming language that compiles to EVM bytecode. This code can then be executed in the Ethereum Virtual Machine. Anybody can submit such a program (called a smart contract) to the Ethereum blockchain, and register it behind an Ethereum account address. Whenever anybody submits a transaction to this address, the code runs, and its state changes are persisted to the blockchain. Miners, validators and a lot of cryptography ensures that everybody agrees on the outcome of this computation and ensures it cannot be tampered with.

This isn’t free, however. The originator of a transaction pays for these computations with “gas.” The amount of gas required for a transaction depends on the cost of executing the code, as well as how much data it persists to the blockchain. Gas is one of the use case of the ether currency — the currency of Ethereum. The cost of gas depends on the pressure on the network. The more transactions waiting to be processed, the higher the cost of gas. In the case of Ethereum specifically gas costs are currently a problem, as the entire network can currently only process 30 transactions per second. However, this problem will be alleviated early next year with the go-live of Ethereum 2.0, which will allow scaling to 100,000 transactions per second or more — quite a different ball game. And many other projects exist to work around this problem until then, such as Arbitrum and Polygon.

Conceptually, submitting a transaction to a smart contract is like performing an RPC call: you pass in input arguments, potentially an amount of ether to transfer to the account, and a maximum of gas you’re willing to pay for the execution. In terms of gas fees, ultimately you pay for what you use. The more efficient the contract, the cheaper the execution.

Are you starting to see why I’m excited about this idea yet? Do you see the parallels with serverless? Do you see how this essentially takes the concept of lambda functions and pay-for-what-you-use, and makes it fully decentralized? Very expensive for now, but still.

These computations are not tied to a particular cloud provider, or any cloud provider for that matter.

It’s cloudless. 🤯

That’s cool, so what can you build with this?

Plenty of things. Let me focus on one that has been getting a lot of attention lately: NFTs. They are simple in concept, but have wide ranging applications.

In Ethereum (and other similar blockchains) you have two type of tokens:

  1. Fungible Tokens are interchangeable, they’re like money. You can exchange any $1 bill for any other $1 bill, there is no difference (kinda). Bitcoin are fungible tokens, as are Ether. Ether allows you to define your own custom tokens as well, simply by implementing a smart contract following the ERC-20 standard. Useful implementations of these include the various “stable coins” tokens that have mechanisms in place to closely track the price of e.g. the US dollar (such as USDC or DAI) or gold (such as AABB Gold or Digital Gold).

  2. Non Fungible Tokens are one of a kind. At any given time a non fungible token (or NFT for short) can only be owned by one account. You can implement your own NFT smart contracts following the ERC-721 standard.

The most famous, and likely first NFT project out there is CryptoPunks. CryptoPunks are a set of 10,000 collectible, programmatically generated avatars.

Here are some examples:

This project was launched some years ago. The two guys behind the project wrote a program that generated 10,000 24x24 pixel images, and allowed them to be claimed for free by having people invoke a smart contract on Ethereum. Initially interest was low, but after some press noise, all 10,000 were ultimately claimed. 

As I mentioned, NFTs are a mechanism to enforce that any specific NFT is only owned by one account. In terms of implementation, this is actually pretty simple to achieve. You essentially need to keep a big hash map on the blockchain, mapping the hash of the asset (a common approach is to simply hash the JPEG image file) to the owning account. Then you need to implement some calls to do lookups and to enable the current owner to transfer that NFT to another owner (in essence nothing more than updating the aforementioned hash map) and voila

Because NFTs can be transferred between accounts, you can trade them. If I like your zombie CryptoPunk, and I own two monkey CryptoPunks that you like, want to trade? Or: I really like that zombie CryptoPunk, I’ll pay you 2 ether for it. Deal?

It becomes a collector game.

This has lead to some level of crazy around these CryptoPunks. Currently the most money paid for a CryptoPunk is for CryptoPunk #3100, which was last sold for 4,200 eth, which translates to $7.48 million. That’s right million. However, bidding continues, checking that website it seems there’s currently offers for 38,890 eth, which at the time of this writing is about $154 million. These offers haven’t been accepted, so we’ll see if such deals happen.

Yes, millions of dollars for a 24x24 pixel picture that a few years ago was given away for free.

I should have kept paying attention to this space and picked some of those up when I could. The cheapest ones on offer today cost over $372k.

Long attention spans are a virtue. However, they are not a virtue I possess.

But, once more, let me try to make me feel better about myself by assuming that I possess other, equally valuable virtues.

So, millions of dollars for a picture on the Internet. Does that make any sense whatsoever?

This brings us to the philosophical question about the value of ownership. This is where we leave the mathematical crypto space and move into social constructs

CryptoPunks are art. You may not be particularly impressed by this art, but the value of art is in the eye of the beholder. In the “real world” I can buy prints of a Vincent van Gogh painting for a few dollars and put it on my wall. If I want to look at it, there’s no need for me to pay the millions of dollars of acquiring the original painting. So, why do people pay such amounts anyway? Absolutely, part of it is because that you can see the actual paint on an actual canvas. However, more importantly people simply want to own things, they like to collect. When you walk into their house and look in awe at their art collection, they smile and nod — yep, it is me and only me who owns that.

CryptoPunks, or any NFT for that matter, are just like that. You can look at any of them online for free. You can print them and put them on your wall. However, only one person owns them.

The concept of “the original” has no real meaning in the digital world. NFTs create a way of owning digital things in a verifiable and safe way. Anybody can check who owns which “punk” and there’s no way to cheat. If you keep your private keys (the keys to your Ethereum wallet) safe enough, it’s just as hard to steal an NFT as it is to steal a van Gogh. Again, through the magic of crypto and blockchain. 

There are various NFT marketplaces right now. OpenSea is the biggest. OpenSea now does over $1 billion worth of sales per week. CryptoPunks are sold there, but many, many other things as well.

I myself am the proud owner of ArtyPunk #20:

Yes, this is a clear CyberPunk knock-off. As you can see on the OpenSea page, I paid 0.004 eth for it (about $15). I just wanted to have some skin in the game, to go through the process to understand how it works. As you can also tell from the history, I tried to sell it for > 2x for what I paid for it, but nobody bought it. I’ll hold on to it.

At least, holding on to it is my plan right now, but I may change my mind in a few weeks, and once more, regret it in 10 years.

So, one use case is art. But that’s just where the fun starts. The next big thing that is happening right now are games

Decentraland is a 3D environment (SecondLife-like) where you can buy NFTs like plots of land. You can do what you want with the land you own: build things on it, or decorate it with other NFTs you own. The Sandbox is a similar game. And yes, you can trade assets in either of these via OpenSea as well.

However, probably the biggest crypto game right now is Axie Infinity, a Pokemon-style game. Whereas in Pokemon there are an infinite number of Pikachu’s available, in Axie Infinity, every “Axie” is one of a kind — an NFT. Axies can breed, and their offspring can in turn be sold again. Axies are, indeed, blockchain powered NFTs and are sold for ether. Not only is this game fun (I suppose, if you’re into this sort of thing), you can earn a serious amount of money playing it too. So much so that in the Philippines they now want to put income tax on earnings made by Axie players.

Are none of these to your liking, have a look some more games here.

However, NFTs have applications in more contexts. One, somewhat nerdy use case is ENS — the Ethereum Naming Service where you can register your .eth domain names. These names are stored and resolved on the ethereum blockchain and therefore not beholden to domain registrars or ICANN. As you can see on my OpenSea profile, I own zefhemel.eth and hemel.eth. And the fact that they’re listed there also means I can indeed trade these domain names — they’re NFTs.

However, since there’s no one centralized power who has the monopoly on this idea, there’s also Unstoppable Domains (such as .crypto and .coin) where you can register your blockchain-powered domains as well. Whereas on ENS you pay yearly, on unstoppable domain you pay once and keep the name forever. If you are a Brave user, you can now use an unstoppable domain natively without any browser extensions. 

Now let’s dream a bit and think what could happen if governments open up to the idea of leveraging NFTs.

How about we track who owns plots of lands in the real world as NFTs? Or to track car ownership? This would make processes like transfers between people significantly more efficient, transparent and safe.

One of the scarier moments of the last year for me personally was when buying a house. We had to transfer a significant amount of money and signing papers of ownership around the same time. What if the money wouldn’t go through? Smart contracts are a great solution to implement such transactions safely.

So, that’s it then? The future of computing is crypto? Not so quick. There is plenty of exploration to do of its sweet spots.

For now it’s a bit of a wild west, people are experimenting like crazy and many of those experiments will not pan out. Prices for all the hundreds if not thousands of crypto currencies go up and down like a yo-yo (except for the stable coins of course) and will continue to do so for some time. New crypto blockchains will pop up and die. There will be plenty of scamming too. In addition, governments are now looking at how to regulate all of this.

It is still early days for crypto. However, in my humble opinion, it’s an interesting space.

If I were you, while I wouldn’t put all my money into Bitcoin or Ether, I’d keep paying attention to what’s happening. And practice patience. It may make you a millionaire one day.