> As I mentioned in an earlier piece, these tokens are not simply "certificates of ownership"; they can be pre-programmed to behave in a certain way (for example, pay a dividend each time a predefined event happens). I don't get how you can pre-program a contact to pay a percentage of your earnings. Ethereum is very restricted as to what you can program. I don't think you can just write "check stock price of X on CNB…
You can't. Any agreement like this would still require a traditional, real-world contract to carry any weight. The contract would specify that the holder of the NFT is entitled to the benefits of the contract. Even in a hypothetical world where everyone gets paid on the Ethereum blockchain, the person could simply open up a second ETH wallet and collect payments there, because crypto wallets aren't people.
The unspoken catch is that these contracts would likely include a provision that the NFT is null and void in the event that it's lost or stolen. People entering into contracts aren't eager to give up their rights to hacks when they can simply add a contractual provision that limits it.
The NFT exists because it's a convenient placeholder to represent something that can be traded with commonly accepted (relatively speaking) tools.
A real-world contract would still be necessary to put any weight behind these NFTs.