Last week I spent $1000 & 15 hours trying to make a NFT as my metaverse ID card.
Here’s how it went & why blockchain as a digital identity solution has a long way to go 🎬
Why do I need a metaverse ID? Cuz I’m desperate.
My Twitter account has a rampant impersonation problem. I get messages from followers abt new ones every week just as I block/report old ones.
Imposters sell fake investment courses or paid memberships pretending it’s me. Wish I could tell you nobody fell for them. But people do. Confused & angry peeps end up coming to me for answers (I know). It’s become a reputation risk.
I asked Twitter to verify my account multiple times. They refused. Yes it sucks. But not much I can do.
So when Twitter rolled out NFT profile pic, I had an idea. NFTs are unique tokens tracked on chain. If I make one called Tascha Che & link to twitter, it’s like an ID card in the metaverse to easily verify I’m me, right?
For a sec there I thought I was a genius.
I found a computer graphic artist from Russia to make a pfp image from one of my Youtube videos. She did an amazing job. Me gusta!
But when I tried to make it into a NFT, there came so many problems. It turned out I was no genius after all. I’ll walk you through the steps so you see what the issues are & why we’re far away from creating metaverse identity for everyone in a scalable way.
Step 1: write NFT contract
Since I need to own my ID, it makes no sense to create the NFT via a platform like OpenSea since they use a shared contract that they own. Plus on OpenSea your NFT is not minted until it’s sold/transferred.
So I created a contract from scratch. It was easy. A few lines of copy-paste codes. But you can’t expect everyone in society to deploy their own contract manually. Roadblock #1.
Step 2: deploy contract
Should I deploy it to a new chain like Avalanche or Polygon? Or stick w/ good old Etherum?
Since Twitter will fetch NFTs from your Metamask wallet where all EVM compatible chains can be connected via custom RPC, technically it should be no problem for them to pull your NFTs from non-ETH chains.
Deploying to Avalanche would cost me $10, vs north of $1000 on ETH main net. No brainer, right?
But if cost is low, what’d prevent an impersonator from deploying a NFT using same name & image as mine? Yes, hash token is unique. But metadata doesn’t need be. Who is to say token ID 0x98a4ff8d… is the real Tascha & another equally unique token is the fake?
In real world your identity is pinned down by social context. Context is thin in digital world. Blockchain can help but doesn’t really solve the problem, yet.
I decided to deploy to Ethereum as I figured few impersonators would take on the large cost to deploy their own NFT to Eth L1 w/ my pfp for the highly uncertain payoff of scamming people.
It’s a twisted “proof of stake” if you will.
But I’m sure you see the irony— high cost is as much a value prop for Eth L1 as slowness a value prop for horse & buggy.
To fulfill its potential as internet of value, blockchain needs to be cars & airplanes, not horses. Requiring people to prove the validity of their ID by paying a lot for it is not scalable.
But that’s what we do now. Eth NFTs on average are worth more than those on other chains cuz it’s expensive to deploy & a game for rich people only.
Anyhow, I spent $1k & deployed the contract. But issues only got started.
Step 3: mint NFT
As you know, NFT metadata— image, video, texts— are not stored on blockchain since on-chain space is limited. That leads many to think NFTs are a joke, cuz creators can change metadata or swap out image file in off-chain storage after token is deployed.
But whether ’tis a bug or a feature is up to debate. On one hand, allowing metadata to be changed w/o restriction undermines trust in any identity system even if most creators have no incentive to alter metadata.
On other hand, as the owner of your metaverse ID, you *should* be able to change its metadata, just like you change your pic for your passport or driver’s license renewal every few yrs.
Alas, NFT is a general purpose tech & we don’t have tools yet to meet needs of these different use cases. So I created a bucket on AWS to store metadata & included the AWS link in my NFT. The fact that I can change metadata turned out a blessing, as you’ll see in a sec.
Step 4: render NFT on OpenSea & Metamask
My NFT was minted. I went on OpenSea to check it out. Usually when you connect Metamask, OpenSea automatically renders all NFTs you created. But oddly my new NFT showed blank page w/o name or description :(
The page didn’t give any clue what was wrong. After poking around for several hrs, I gave up & asked NFT patron saint @nftchance for help, who found an extra comma in my metadata JSON file, which explained why it wasn’t being parsed by OpenSea 🤦🏻♀️
I fixed the file in AWS & finally it’s showing. Imagine if creators weren’t allowed to change NFT metadata— I’d have wasted half Eth & got a half-assed token under my account to confuse the hell out of everybody.
You say, Tascha that’s what testnet is for, you should have tested deployment. Yes u r right. I was dumb. Yet it shouldn’t be hard for OpenSea & Metamask to throw an error & tell creator they have a problem, no? At times it feels like we have the dumb leading the dumber in web3.
Anywho, token deployed & rendering under my account. All good now? No.
(BTW, like this so far? I write about ideas on investment, macro and human potential. Subscribe to my newsletter for updates 👉 taschalabs.com/newsletter .)
Step 5: Connect NFT to Twitter
I chose edit profile pic-> select NFT on my bird app. It routed me to Metamask app but couldn’t fetch my NFTs.
It turned out you have to enable OpenSea API in your Metamask security setting, as neither Metamask nor Twitter actually query NFT data from blockchain. They simply rely on OpenSea to tell them what NFTs you have.
So after all this hype abt blockchain-enabled sovereignty, my metaverse identity still rides on a SQL database sitting in OpenSea cloud server. LOL, I know.
Nonetheless, I complied & enabled OpenSea API. My NFT pfp finally showed up on Twitter. And that’s when I realized…actually…only difference btw NFT pfp & normal ones is simply the former has a hex-shaped frame & the latter is round 🤔
To casual onlookers the two look almost same. You have to click on the pfp from one’s profile page to get the NFT details.
I suppose the reason Twitter made the distinction vague is b/c the problem that the NFT pfp feature solves is in itself vague— is it just to allow people to show off their pricey NFT or is it to enable metaverse identity?
At end of day I’m still not sure if my NFT ID will actually help people identify my real account from fake ones. Time will tell.
Don’t get me wrong. I have no doubt blockchain/NFT as a general purpose tech will change the world. But we’re at such primitive stage. Apps are poorly implemented & infra for any real use case sorely lacking. It’s good to keep a realistic view of where the industry is at.
For better or worse, here’s my new metaverse ID. You can view details of it from Twitter, OpenSea, or Etherscan. And sorry, this one’s not for sale.
Like this? Don’t forget to
• Retweet 1st tweet in thread
• Subscribe to my newsletter for more ideas to help you get smarter, richer, freer 👉 taschalabs.com/newsletter
Questions? Thoughts? Put in the comments & I’ll address interesting ones in future posts. Be civil.
• • •
Missing some Tweet in this thread? You can try to
force a refresh
a) stable exchange rate,
b) free capital flow &
c) independent monetary policy, at same time.
Most fiats choose c, prefer a & sometimes sacrifice b.
Most cryptos choose c, prefer b & completely ignore a.
A token that pays attention to a would have an attractive value prop given extreme volatility of every other token.
It'd help attract long-term investors rather than speculators that count on exchange rate appreciation forever.
It's surprising that no L1 or L2 token pay any mind to stable exchange rate in tokeneconomics.
It's def not for lack of tools. They have mint/burn policy. Also capital control, i.e. sacrifice b), is not taboo (e.g. staking unlocking period is a form of capital control.)
Since I stared sharing my writing regularly on this bird app last yr my twitter account grew from nothing to over 100k in 6 mos.
So many people told me my articles changed how they look at the world forever & I get asked a lot how I came up w/ the sh*t I write abt.
Here's how.
Hint: Having visionary insights is not abt intelligence or experience. It’s a lifestyle that you can learn 👇
I’d be lying if I said making innovative ideas is easy. Obv brain work is involved & an active brain needs more calories & nutrients than even hard physical labor. I wrote abt how I keep my brain healthy a while ago.
Short-term mkt volatility obscures long term view.
In uncertain times, good to remind oneself of latter & ask “Do I still believe this is where the world is going?" If so, stay the course.
10 predictions for the web3 age that I expect to manifest regardless of mkt cycles 👇
Note: Making prophecy is tricky biz. Many of these won’t play out exactly as I describe. But being directionally right is better than being precisely wrong. I expect the predictions below to fall in former camp.
1. Hyper tokenization of everything
All assets— stocks, bonds, real estate…— will be tokenized. Anything w/ a cashflow will be tokenized. Companies, governments, nonprofits will all have tokens as a tool for attracting supports & distributing values.
IRL when a currency depreciates, it's good for the country's exports b/c products are now cheaper.
That's exactly what happened w/ NFT.
In past mo ETH depreciated 40% vs USD--> NFT sales volume ballooned...
It's interesting that sales vol increased almost 80% in same period. implying a price elasticity of 80% / 40% = 2, which puts NFTs square in the luxury goods category, i.e. if we assume eth prices of NFTs are sticky as eth depreciates.
In reality price elasticity is lower b/c prices denominated in eth did change at least for some bluechip projects.
e.g. while eth depreciated 40%, average eth price for Cool Cats increased 40%, making average price in USD roughly same as before eth depreciation.