From Skin Trader to NFT Expert - with Anish Agnihotri and Hasu
28 Oct 2021 · 1:39:25
Hasu of Uncommon Core interviews Anish Agnihotri, a research associate at Paradigm, about his path from early entrepreneurship into competitive skin trading and eventually NFT markets. They discuss how skills from trading in-game skins transferred to reading NFT primary and secondary market structure, along with Agnihotri's practical advice on how to learn quickly and build projects in crypto.
Speakers
Topics
Transcript
welcome to uncommon core where we explore the big ideas in crypto from first principles this show is so hosted by suzu the ceo and chief investment officer of three arrows capital and me hasu a crypto researcher and writer today i'm sitting down with anish agnihotri who is a research associate and colleague of mine here at paradigm anisha has a fascinating backstory from starting out as an entrepreneur at a really young age and later going very deep into skin trading a skill that then transferred very well to today's nft ecosystem [Music] in fact we talk a lot about the nft ecosystem and the structure of both the
primary and the secondary markets and nfts how they work and how they are going to develop in the future anish also shared some very actionable advice with me on how to learn and how to build projects in crypto overall we had a really deep and fascinating conversation and i think you will enjoy it a lot uh hey anish welcome so much to the show how are you doing today i'm doing well thanks for having me husband you're only 19 recently uh turned 19 but you have been in crypto longer than me and longer than most other people i would i would assume so can you give us a bit of your background so how did you find crypto like what did you do in your life before
sure yeah i'll give you the the two minute summary my name is nish of course nice to meet everyone i'm a researcher at paradigm and i moved to north america when i was four years old from india and my father was a traveling consultant which meant i moved from place to place a lot by the time i was 11 or 12 i had went you know across 20 or 25 elementary schools switching from one place to another what that meant was that i started to use technology my laptop that i would carry around everywhere as a way to stay connected with friends and just be on the internet at all times that was really beneficial for me frankly speaking growing up and because i meant i got exposed to a lot of like the online communities to reddit to
twitter really really early on yeah in my childhood and when i was 10 or 11 decided i wanted to make some spare cash you know as any kid at that age you want to make some cash you want to buy cool things that your friends are buying and i figured i might as well do something learn something out of it and then make money and for me that was learning how to make websites so i learned how to code from online places and then started to make websites for people on reddit on places like our slash for hire now as a place as a kid the only way to get paid really is places like paypal and so that's what i initially started with where i would you know get 100 200 bucks for each website and that would be incredible you know 200 bucks for an 11
year old this crazy amount of money and what happened though was every couple months i'd get banned from paypal to the point where now i'm lifetime banned from paypal and can't create an account for creating too many when i was a kid and what that quickly meant was i had to find another way to get paid because there was no way i was stopping programming and getting paid but i could definitely move away from paypal couldn't you have used um your parents account so as a kid part of it was i didn't want my parents to know that i was making money on the internet right part because it was you know it's very weird for a kid to be making money on the internet in part because i thought it might be like a distraction right they might think i wasn't doing school work i was spending you know my
nights building websites for people on the internet and they wouldn't let me and so part of the motivation was i didn't want to tell my parents i had to use a payment method that didn't require any identity and that's where bitcoin really came in the picture so in 2014 or so i was when i first got into bitcoin it was right around when it was first blowing up on reddit and there were a bunch of tip bots and change bots um which was really beneficial for me because it meant that a lot of people on reddit had exposure and that was primary place where i found people to build websites for so it was easy for me to get paid in bitcoin and so 2014 2015 i built websites for people getting paid in bitcoin 2016 i entered high school took some of the money i had made making websites and
bought graphics cards and decided i'll try mining and so i bought six r9 280x graphics cards and set up a heater in my room for basically a year which is a ton of fun a great learning experience got me into the ethereum community early on from there decided let me mix some of my passions let me put programming and crypto together went to a bunch of hackathons back then consensus had a huge presence in toronto where i lived which meant that it was really easy to get access to people and learn from people in the community at events so joined bitcoin in 2018 did a bunch of bounties got to work with cool people and eventually found myself getting deeper and deeper in the crypto development rabbit hole in 2019 for a brief period of time i went and interned at one password and
the consumer password management company because i thought you know maybe there is something beyond crypto and i should you know force myself to explore that what i quickly realized though was that for me there is nothing beyond crypto i enjoy it far far too much to do anything else and so i see it as a beneficial summer where i learned i definitely want to be doing crypto for the next you know five ten years of my life um that following summer decided to get into the crypto space and i applied for an internship at polychain and the way that i went about doing it was funny actually and it speaks to i guess the testament of crypto twitter where narage who's a general partner at polychain had put out a tweet of how he had applied for a job to snapchat in the 10th grade that i thought was
fascinating so i copied the same format and messaged it to him by twitter and that's how the conversation got started and eventually found myself at polychain that summer what did you remember what he said yeah so i think if i pull up the message it was something like he had sent three lines to evan spiegel at snapchat in the 10th grade where he said like hey my name's niraj i'm the tenth grade i can program with these languages and i'm not going to waste your time but i'd love to you know have the chance to work at snapchat and so i tongue-in-cheek took the exact same format and basically sent him hey i'm a niche you know i was kidding i think it was in the 11th grade then um these are the programming languages these are the cryptos that i've played around with and things i've
built uh won't waste your time but i'd love to have the chance to work at polychain and that's how the conversation got started um which is fantastic i'm really glad he took the chance um so yeah worked at polychain that summer i did six months on the research and investment team and doing venture investment and research and then six months i spent more on chain trading and learning the ropes around that and then after about a year at polychain eventually found myself where i am today at paradigm working with some super smart folks as a associate on the research team what is the most memorable thing that you did at polychain or your best learning experience sure i think i always tell people that i don't enjoy
investing because the biggest problem is when a team comes across the table i don't want to give them you know million dollars i want to be on the on their side building with them yeah and i think the thing the working at venture funds and crypto is very different than working at venture funds in the conventional world where you do get to do that it's the easiest way to get exposure to hundreds of teams and get to build with them day in day out so i think definitely my most memorable moments are the points where i helped you know build with a portfolio company and hopped into the code with them which i think is what i enjoy the most and how did that shape your decision to join paradigm is your next step i think it was a big decision factor i think paradigm is known for helping
portfolio companies very hands-on whether that's you know dan helping write the yield paper the unit swap papers whether that's dave shipping new primitives georgios helping ship code sam finding vulnerabilities and contracts and helping portfolio companies i think for me that was an easy decision to make where i realized there are already people who you know the way i like to think of research is you get paid to learn and you get paid to help with the learnings that you have and i think that for me was the motivating factor where i wanted to keep learning i wanted to learn surrounded by really smart people and then i wanted to apply that learning and so coming to paradigm was a easy decision yeah i would actually describe it in the very same way how learning is like has
is such a positive feedback loop right right you get rewarded so much for learning something new and and um you're making so many new connections over it right it's like right definitely your brain is expanding but not just the brain in your body but also sort of the second brain the social brain which is your network in crypto how was it for you to um to write your first paper how did that compare to like writing open source software it's far harder and to be honest i think writing code for me at least is far easier than writing words and i think it's because code there's a very strict de facto principle way of doing it right there's best practices if this is how things should be and there's very
little deviation that moves from there and when i make projects things that i've already learned i can just apply them in the same way i think writing is completely different i think every paper every essay every word is different than the one before and it requires a lot more creativity so i think for me it was a lot harder i think there was a lot more thinking involved than coding and but maybe that's also because you know i'm not a writer by day job so i think it's just harder to do something i'm not as familiar with oh it's curious right what if people could learn to write the way that they could learn to program because i'm i'm struggling with the exact same thing right when when i started writing i was like i was looking for the ropes like really looking for them like what are
some ways that you can do things some best practices some almost like looking for templates um that you can fill in and i didn't find anything like i i followed up with all of the recommendations that people gave me for like these are the books that like the the people who are the best writers in the world like here's like the advice that they give and it was so unstructured and you could say i'm still i'm still looking for you know adding more structure so it becomes less something creative and more like a you know like a craft almost like uh something that you can do uh even like when you're on your b game or c game which i'm still struggling
with i would say same for me maybe we can learn together um so how would you describe your job paradigm today and just in terms of like how you divvy up your time sure so i'm an associate on the research team which the way that i describe it to people is i'm the stupidest person at paradigm uh which is fantastic because there's a lot to learn from everyone else the way that i usually split my time is about 50 50. so 50 of my work is public open source contributions and to building things learning things and applying them and building resources that other people can use and then 50 of my work is more internal portfolio support and basically doing the same thing that i do publicly but now applying those same skills and
helping portfolio companies ship faster build cool things and expand their companies so what motivates you to write so much open source software i mean i'm going to your website um anisha agnihotri.com and you know there's like 30 different uh github repos um so like why spend so much time like writing this software i think it's two part i think the first is building code and then sharing it with people is the easiest way to learn where for me building open source projects is not just a way of you know sharing cool things that i'm doing but it's a way for it's almost like nerd sniping the smartest people or getting them really really excited about an idea
and then learning from them and the best examples are you know places where i've built hacks that have taken me two or three days and it's gotten really smart people curious great conversation started and then i've learned a lot more from you know the conversations after the hack than the hack itself so i think that's one big motivating factor of doing drops and building things i think the second part is i'm very very pro open source and i think i attribute that to starting off early with git coin where i think the easiest way to collaborate especially in crypto is to be very open with what you're building to share as freely as possible and to get people excited and involved and have that support how do you feel like
like we are holding up to that standard in crypto these days it to me it feels like even two years ago everybody would first put out an idea and then there would be like a period where everybody discusses it and then we would build it um and nowadays it's more like projects constantly ship new products but like they have been developed behind closed door basically do you feel like we're moving away from the open source approach and how do you feel about that i think there's definitely more privatization now than there was before where there's companies of people product builders coming together to build these things behind closed doors and then you know launching with a blast and shipping hey we've built this thing that you
think you should be excited about versus you know just a couple years ago like you mentioned it's like you know we'd go from research papers and things people were excited about to very initial implementations to the community interacting and then together all of us building it up i personally do like the open source nature better because i think it's not only just an easier way to get product market fit and get community buy-in but it's also just more fun that way right you get to build in public you get to collaborate with others and you never know what the benefits of that might be at the other on the other hand though i do see the benefit of the privatization that we've seen where i'm not a product developer right i don't work at one of a large crypto project building one of these things so
maybe my viewpoint is different but on the other side you could argue that by having it privatized you can ship faster right you can have closed development cycles you can have like this top down hierarchy of building things which means you can basically outpace many teams to building the same things and it becomes almost like a race um of course i can't tell what the best way is i personally prefer open source but maybe that's because i'm naive and i'm not a product developer working at a place like that yeah i mean maybe back in the day the opportunity cost of releasing information was much lower than it is today right where right that's just the market is overflowing with cash and whoever can launch a certain product first gonna get a huge
financial payoff it's not just it's not just like um basically admiration from the community and like nerd sniping other nerds which it used to be and having really memorable and great conversations nowadays you also have this financial element i think that's much more dominating i guess how people build right and it's almost cyclical in crypto right where with the bull and bear cycles you'll see more innovation happen and you'll also see you know more fast-paced development to capitalize on the abundant capital in the bear market yeah when the bull market yeah yeah um let's let's take one one thing that you built um which is party bit um i think
one of the i think one of the most memorable projects that you did um can you walk us through that project from sort of the whole idea and all the way to the release sure party bit is definitely one of my more favorite projects and the story behind it started when dave white who's my colleague at paradigm posted a thread on twitter on a friday night that said hey it's friday night let's design a mechanism together and quickly after he got a lot of great replies of which one of them was from dennis nazarov at mirror who said i'd like a way to pull together capital with my friends pull together our ethernet contract and bid for nfts together and you double dub the idea party bid where
you're parting together with pooled money and you're bidding on nfts yeah i saw this idea on friday night and i thought wow this is really cool this is something i'd like to build and so that weekend saturday sunday by monday morning i shipped the v0 of party bid contracts that let a bunch of addresses come together pool eth and then bid on an nft and monday morning i released it on twitter and there was great traction of course people loved it and so i decided let's take it a step further let's use this party bid to win an nft so a couple of days later i had the opportunity to bid on a nft by colin and samir who are two creator economy youtubers and so a friend and i pulled together capital and we placed multiple bids from
our party bid and eventually we won the nft this was like the first nft won by party bid we tweeted about it and this got a lot of people really excited i know i had mentioned the nerd sniping previously that's i think the best benefit of these hacks where you get people really really excited about ideas once they see them once they see like a very mvp stage in practice because of all the excitement dennis helped us do like a mirror crowdfund where we raised 25e in about nine minutes to bootstrap a dow that would help continue to build this v0 implementation into something that was bigger and better once we had that set up a lot of super smart contributors came together to build the v1 and these are people that
had you know full-time jobs and were doing this as a side passion as a hobby almost to build something they wanted to see as well so we came together and over about six or seven weeks put together party bid v1 which was a better and improved protocol and i think the most memorable part was the day after we launched uh we did our one of our first party bids was for a zombie punk uh dubbed party of the dead which got a lot of traction and i think uh was fantastic seeing so basically going from like a tweet thread from dave all the way to a working product that people are using to bid on one of the rarest crypto punks out there um sam that was basically the story behind party bid yeah it's i think it's really memorable just because people ended up using it
and winning one of the most well-known nfts right and people are still using it today which i think is awesome when hacks you know have usage beyond just an initial idea is there any kind of monetization feature enabled into a party bit or is it purely um like a free tool for people to use yeah so party bid takes five percent uh so the party dow takes five percent of the winning bid um only if you win of course to the doubt and that's basically what helps bootstrap future contributions grants things like that so for example now there's a full-time team of i think five or six folks who are actually continuing to build the v2 of the protocol and that's only been bootstrapped because we took a
five percent fee from initial revenues oh wow and are you still involved with the effort yeah definitely i mean when i get a chance and when i get time i definitely help wherever i can i'm not full time on it since i'm a paradigm but there's definitely folks who are very very excited and fantastic developers designers thinkers who are building it now cool and that that process basically that you applied for something like party bit and the one that you described earlier which is you like to focus on um projects that are like two to three day sprints um because that is what can best you know capture and con like maintain a high degree of like excitement about a particular project but how much would
you say um the like the learnings and methodologies from this from the the letter can transfer to building something like party bit and beyond so even like somebody was looking to to release a whole new project in crypto and like maintain it for years how much can they learn from your experiences sure for the hacks that i make i usually try to do them two to four days um something that can be shipped in that interval because i think that's like the sweet spot where anything longer than that and i get bored and don't want to finish a project anything less than that though it's something i can sprint over a weekend over a couple of days get it out into the world and have people using it i think for longer projects i focus on something completely different which
is maintainability where for the hacks it's more let me get something out that works and not worry about you know what does this look like a year from now versus for bigger projects i'm thinking more ahead a couple of months like how will i continue to maintain this i should build this in like a very sustainable robust way i think for developers building longer term applications there are learnings to take from the hacking model one of the best ones i think is you know to work in short sprints where if you can focus for three or four days do that then take a day or two break then get back at it in sprint and you can basically go back and forth and that's for me at least the most optimal way of working but also think about maintainability i think is really really important because
there were a lot of for example there were a lot of decisions we i made in party bid v0 that i built over the weekend that we had to rip out and rebuild for party bid v1 one of them was you couldn't re-bid on initial contracts so basically if you were outbid you had to redeploy the party bid b0 contract um and what that meant was that when we when my friend and i won the call in samir nft we were outbid three times which meant we deployed a contract four times paying all those additional gas fees having the stress of doing it in like a 15 minute auction period and so that was one of the decisions when thinking of maintainability with party bid v1 and you know having the time to build this in a proper way i figured let's do it so that you can have
multiple bids from one contract and not have to worry about redeploying so things like that are stuff to keep in mind how do you go about even like from i think i want to learn a bit more about how you go from like what you want to build to you know it's writing it into a contract like in the case of party but did you like spec out the things that it's supposed to do yeah so usually the way that it'll start is i'll have an idea or i'll see an idea it's gotten a lot easier more recently since people tagged me when they want something built so there's a good trove of ideas to pick from at any given point of time yeah once i have the idea i'll usually spend no more than five or ten minutes
to just spec out uh just the basic functionality like for party bid i would spec out something like this has to accept contributions for multiple people it has to be able to place a bid it has to be able to replace a bid if it's outbid once it's won it has to be able to hold the nft and it has to be able to let people claim their money if you lose so just five basic high level items um and that's basically just like guiding principles of what functionality needs to be there and from there i'll build whatever needs to get built so in the case of party but for example that might be actual contract functions right like withdraw eth or contribute to party and build from there that's usually the process
i tend not to make any mvps and iterate you know by versions i tend to just do something that's functional as the first go and then if there's interest if people want to keep building then i can definitely go and rebuild and enhance on it like party bit i just think i like to be very you know high fidelity but low time right get it out as soon as possible into the world so that people can play with it isn't that the definition of a prototype something that's very usable and that can see if people get excited about it i guess i guess it is i think with the prototype though there's like that implicit expectation that there will be something beyond a prototype um for a lot of my hacks that implicit expectation isn't there it's sort of
like this is a one and done idea um that i'm putting out into the world that people are free to build on it's open source and i might even build on it like party bid but there's no you know expected notion that there is something more than this coming i see how is this i mean party bit is a great example have there been any other projects where other people have picked up the prototype that you left them or like the one-off prototype that you left them and started to expand on it yeah there's been a couple i think more recently so a couple of years ago i had built a ipfs document signing platform which was picked up by a couple of teams to build similar things for basically document verification um i had built
more recently a hack called pon ft which is basically nft lending with and you have fractionalized commitments and there's a couple of teams that have reached out that are building on top of that or using similar code to build things and so and it's always fascinating to see hacks get put into practice by people and i think that's a role that i really enjoy in the community where i might not be someone that's you know building a protocol day in day out but if i can build some small hack in two or three days and nerd snipe people that want to keep building that idea i think i've done my job there then um which is what i find exciting do you think it is going to become increasingly important for
crypto venture funds to [Music] seed their own ideas in such a way and then invest in teams that might want to build on them i think it's a great idea i think the product studio mindset of building things in-house seating teams to build those things is fantastic and the answer to that is easy because capital is abundant in crypto right now right everybody wants to invest in crypto companies there's not enough developers there's not enough founders there's lots of ideas that need to get built but you know nobody to build them right now so what every venture firm wants to do is find that edge to be able to invest in those founders to be able to get early into
those deals and i think the easiest way to do that is to incubate those deals right get people who aren't ready to build a protocol yet but have cool ideas help support them at the fund you know and be able to support them through their journey and then that's an easy way to be able to you know be first into the round when they're ready to raise as a supported partner that they already know and trust so i think it's a great idea i think down the lane will eventually see more and more of it happening i think it already happens partly with paradigm where we build and ship and publish open source and there's definitely other firms that do it as well yeah i think it's almost like as a as a venture firm like you have the capital and you may have certain other benefits
like and it's it's certainly easier if you also have great ideas and only hiring trying to hire like a great founder for them instead of instead of trying to hire both at the same time like a great idea and a great founder which is much rarer right and there's much more competition for it right now that's pretty cool um do you have any advice for builders and crypto in general that sort of we haven't mentioned yet i don't think it's unique advice but i'd say to just ship and ship fast uh where i think they're in crypto you're afforded the benefit of your customers being literally a tweet away your first user is being tweeted away your community members being you know one message away and
i think that it's best to capitalize on that opportunity and to build in a way where you can ship and iterate as soon as possible not only because it'll let you build a nice following and people who can help support you but also because it's a good way to build it keeps you on your feet you know often when i mention that i i don't know how to program people don't believe me but um so if i if i wanted to to learn how to code and be able to prototype ideas like you can like in like the span of like two to five days or whatever um what would you say are the right steps for me you know to get up to speed as fast as possible
well i mean firstly jose you'd make a great programmer so i'm excited for when the day comes and you dive into it i think what i would say is probably pick a language that's very easy to use and pick up good examples being javascript or python and both of which also have great web 3 crypto communities and packages built around them and i say that because as a beginner the hardest thing is going to be just staying put you know getting past the initial hurdle of learning syntax getting past the initial you know actually just sitting down and spending an hour in front of a computer screen typing foreign letters is the hardest part of it so you want to pick a language that will make it as easy as possible for you and languages that are
very close to english don't require compiling don't need you to wait or you know wait and get distracted so javascript and python are great candidates for that once you've done that for a couple weeks picked up syntax or comfortable building some applications with it i think you already have good fundamental programming knowledge at that point to go and build other things if you want to get deeper into crypto once you've picked up those languages play around with web3 play around with ethers take a look at open source projects and that's the easiest way you know play with interacting with contracts on test nets and then finally when you're ready and you've done this for a couple weeks then i'd recommend you dive into solidity and pick up things like crypto zombies or open zeppelins ethernets which are
really great hands-on tutorials which once you have knowledge of javascript or python a lot of the knowledge carries over very well to solidity you know you already know how functions work the types parameters how return types work so it's really just moving the knowledge you already have and have built into a new paradigm learning new things and then being able to write smart contracts i i definitely recommend anyone to learn to code awesome briefly jumping back into your biography there's one thing that we haven't discussed and i think it's a great segue into our next section um so something that you did after making your first money building websites but before finding crypto was um
trading skins on steam can you describe what a skin is yeah for sure so skins are basically cosmetic items that upgrade items in game on in steam game so the one that i most popularly played that was counter strike global offensive where you would have weapons and you could skin these weapons with these skin items and after i had you know started to make some money making websites and before i had found crypto i needed to have something to spend my money on and like i mentioned my parents didn't know i was making any money so i couldn't just you know buy a television that would get delivered to my house because then it would be like okay where'd you get the money from yeah and so i had to spend this in digital economies and so the way
that i would do it is i'd buy skins stuff that i could play with stuff that looked cool in game and eventually i realized that it's an economy in and of itself right skins have floats which are basically like how aesthetically pleasing they are right their rarity from like battle scarred to factory new these skins can have stickers on top of them which are like additional cosmetic um things to add on there can be different appeals for the same type of skin so like case hardened skins can have you know more blue can have more yellow and that changes the pricing of all of these items and so as a kid the market economics behind it was far more fascinating to me than actually playing the game
and so i found myself doing a lot of you know building rarity tools before they were popular for nfts for skins and you know gambling with these skins match betting things like that um to play around with them so um by rarely gravity tooling you mean uh what exactly sure so in nfts we've seen a new popularized con like concept of rarity tools where you have 10 000 let's say 10 000 profile picture projects some will implicitly be more rare than others only because of the attributes that they have um so for example in the case of crypto punks zombie punks are far more rare than normal human punks and alien punks
are more rare than zombie punks and that's only because of how they're distributed right there might i don't know what the exact number is but there's like under 10 aliens i think yeah or somewhere around that number yeah right um in the same way in the skin economy you had the same thing going where some skins were rarer than others which meant that you could essentially build rarity charts of you know which skin would trade at a premium to another and letting you trade up and go you know make a profit trading between people and that's basically facilitated by open c today right where you're flipping for attributes and trading on openc how automated was that like how much software did you employ back then quite a bit uh i think it was an
advantage that i had where most trading at least early on was you could have like trade windows pop up where you would pick other people's items and you'd send them offers and one of the things that i did was make trade bots where people could you know purchase my skins at a slight premium with the benefit that my bot would automatically accept their offers um so they didn't have to wait for you know someone to get online approve their offer accept it for people that just wanted to play with these skins it was an easy way to you know send an offer instantly get the skin you were market making and maxing up liquidity right oh that's so quick you know make a slight profit on that so i think that's the bottom that i did um valve eventually did shut that down
and you know there's a whole slew of things that they did to restrict the market which is you know frankly why i don't do it today but it was a ton of fun while it was still around so when it finally nfts came around and have these collections this rarity you were like finally can you see that old stuff again exactly and there's a lot of paradigms like i've spoken to a lot of people that used to like snipe sneakers um so you know back when sneaker drop shoe drops were really popular people would write bots to get in as soon as possible so that they could get these rare sneakers and then flip them on the secondary market well we're talking physical truths here yeah like we're talking physically yeezys exactly okay so like there used to be drops for these yeezys where they'd have you know 500
shoes being sold and people would race in to bought it and get those shoes because they meant easy profit right you could buy them for 350 sell them for you 2 000 in the secondary market and i see the same parallels with you know skins with shoebotting coming into nfts now where people are building rarity tools like they did for skins to trade these things people are building you know market making bots on open c so that they can have resting offers the same people that built you know shoe sniping bots are using that infrastructure to now build you know first come first serve nft auction minting bots and it's fascinating to watch it sort of you know transfer over to nfcs now yeah it's like i play a fair bit of dota 2 and like every couple weeks there's a
new patch and then you can tell from the patch notes already like which hero is gonna be in meta because they get buffed and others get nerfed and that has a big effect on how much they appear in game because people want to play the heroes that recently got buffed and so on and you can immediately see how basically their items their skins get marked up in the marketplace like due to the buff so you have so many layers there right people like like basically analyze the text of the patch notes immediately probably using some kind of machine learning software and then bit up buy a boulder the nft said that you're uh no i said no i said nfts as well buy up all the skins that this hero is
going to wear in game which is kind of hilarious um yeah so um so we talked about skins um and we talked about um shoe launches shoe drops um so this is something that we also recently spent a lot of time thinking about right so basically the the difference between um primary markets for nfts and secondary markets can you briefly describe what the difference between those two is sure so the primary markets are essentially where the first distribution of an nft collection happens most recently what we've seen is that this happens directly at the contract layer where developers will ship new contracts that
mint nfts and they'll put up front ends and people will mint these nfts from the primary market which is the web their websites themselves an example is for example the larval labs website which has crypto punx back when crypto punks were still mintable you would go to the larval labs website you would connect your wallet and you'd be able to mint a crypto punk for whatever the predefined price was the secondary markets is where you can take your nfts and then trade them so these include things like openc rarible zora and a whole slew of other marketplaces exchanges and protocols that let you essentially either sell your nft either buy nfts on a secondary market or trade your nfts for other people's nfts and we focus with our paper designing effective
nft launches that some of you may have seen we focused on you know primary markets how nfts first first get sold in in like the primary marketplace why is this topic close to your heart that's a good question so like i had mentioned previously with botting and skin rarity when a collection is first sold on the primary market there's a lot of ways for people that are you know closely observing the collection to have an implicit advantage right and i'll give you a couple examples of that the first in our article which i recommend everyone read we highlighted a couple of ways that there's user harm that the average user
has a implicit detriment compared to everyone else who's competing one of the ones is exploitable fairness where if a contract is made public and developers like myself can rush in and immediately rank the rarity of items and mint the rarest items it's less fair for everyone else who can't do the same thing and an example of that is loot where a couple of weeks ago the nft world was taken by storm with these loot bags that contained eight adventure items and everyone loved this idea and we saw a lot of derivative projects pop up they did the same thing in different ways right eight numbers or eight items eight food pieces you know eight places to visit things like that
what was special about these contracts was that all of their metadata was on chain which meant that motivated individuals you know like myself could quickly scrape all of the tokens rank which ones the nfcs were the rarest and then buy only the rarest ones which made it difficult for anyone else to be able to have a fair chance there's other types of problems as well one of the most frequent problems with nft drops in the primary market is first come first serve auctions and sales which is basically let's say i want to sell 10 000 of my nfts and i want to sell them for 100 each i'll say whoever gets into this first is can mint freely now this is disadvantageous not just
because you know people have to sleep and there's different time zones but because you're moving the auction into a gas war right where people are now bidding these for these nfts paying high gas prices and overall that's just bad user experience and so in the article we highlighted a couple of these exploitable fairness gas options high skill gas and efficiency exclusive minting and trusted operators it's sort of like the six examples of user harm that we've noticed that just make primary markets um less fair for the average user yeah one star one stat that you extracted actually um and that made me like go wow is uh for the the the timepieces uh from
new york times uh in their job that uh i think it sold out in like three to four minutes but even more noteworthy was um what also happens every time you have these auctions play out in the mempool which is that um a lot of people try to get the transaction in but then the nft that are trying to buy is already sold out right and in this case it led to over 10 000 i think failed transactions right um costing users collectively almost almost a million dollars right um yeah 10 962 participants so that's a lot of people almost 11 000 people and they lost 252 eth
over 100 blocks which is crazy almost a million dollars lost you know minting these nfts that's kind of that's kind of crazy yeah okay so based on that we uh what we did was sort of we looked at how user harm had been caused you know objectively by by these launchers how people have lost money on them and on how fairness had been basically destroyed and we use that sort of to derive some almost like taking the inverse of that right looking at okay so here's how people got got wrecked so okay how can we do it better so let's have like these and these these positive properties and have them almost like objective functions right for your launch
right and what did we do next what we did was we unbundled nft launches right where we mapped out exactly what a launch consists of at its heart and i think the quote you actually the four things that we came up with were the bidding phase which is when the sale goes live you know this is when users submit their bids to buy an nft the clearing phase which is once you have all of these bids you decide who actually gets to win the nft you know especially when the demand significantly outpaces the supply of a collection you have the distribution phase where once it's cleared you've picked you know hypothetically your 10 000 winners how do you actually get the nft into their hands and then finally you have the
metadata reveal phase where it's once you've done all your distribution how do you actually show users what their nft is what the attributes are and this is important because the metadata reveal has to be at the end because as we saw in the loot example if metadata reveal happens anytime earlier it's easy to exploit its fairness yeah i think this was definitely like the most fun thing that i've worked on in a long time because i think it is this way of taking something that looks like one mesh of things and has like a bunch of properties and then breaking it down into into like its smallest component of parts that still make up a whole right and right this was such an educational experience for me and
i think in all of the best things that you end up that you write it's always like the thing that you end up doing changes multiple times completely over the course of like a couple weeks right so i think it was actually pretty late in the process that we arrived that you arrived at like these four stages i think part of that is because we had a very adversarial mindset when we were in this right it's like we were thinking of being the nft developers where we had a couple of ideas early on where we realized okay you know what this wouldn't work because this is how we would exploit it we just went back and forth trying to exploit the same mechanisms that we built and i think that was super fun yeah yeah i had an absolute blast writing this um and what i also like a lot is how
well it transfers basically is is i mean the metadata as the metadata reveal aspect is sort of unique to nfts but also to something like lotteries and so on right so to if somebody want where to run like uh some kind of gambling game on chain or actually any kind of game that involves randomness but all of the rest is is like also super relevant to any kind of token that people want to launch on chain which is actually super common right i think the practices carry on beyond just nfts right they carry on to initial token distributions icos you know pool offerings things like that
yeah so can you describe sort of what was the we we we summarized basically three main takeaways i don't want to get into like the whole paper here but there are three things that we isolated that are the most important to us and that we want everyone to take away um so can you first talk about unexploitable fairness and how to ensure it so the first takeaway we had was that your nft drop has to have fair metadata and the way to ensure that is to have randomization right don't let anyone not even you as a developer not the operator not any individual user none of no one should be able to figure out what an nft is before it's done minting
you know you might think okay why is this even a problem like who cares but the reality is that when these nfts trade for you know hundreds of you know tens of thousands hundreds of thousands of dollars in the secondary market the difference in between the average nft and your rare nft it might be like an order of magnitude difference so people are actually incentivized to have the rare incentives right you want to be unique what we figured out was you have to have randomness at every aspect so once you've minted the first thing we realized was that the nft metadata reveal has to happen after minting because if you reveal the metadata before minting then people can choose what to mint and you don't want to let that happen so
effectively your nft metadata reveal has to happen at the end and it has to have some random source of entropy in the example that we provided we use chain link vrf to get a random number from chain link in other ways you could use command reveal schemes you could have multiple people commit numbers that are used as entropy um various ways and to show why if you don't do this it gets exploitable right what are some approaches that people have used um when the metadata was revealed you touched on one earlier when loot made it just extremely easy for like the exploiter right because you could just tell the contract i want to mint the idea that has this and this id and i think this is like most most people who are not super technical don't
know this by the token only here any token it's just entry like in a database contract right it's just right this address controls uh this id basically yeah and like and this isn't this much of it um and the loot contract you could just tell i want him in this id and if it wasn't minted yet then it would meant it for you and if it wasn't the transaction would fail basically um so but there were other examples right so let's let's talk about the me bit auction for example and the amiibo doctrine is like it actually took a lot of precautions against people being able to um extract the metadata in advance but it still happened
yes and i think it just speaks to how difficult it is to do this perfectly um some ebits were a collection from larva labs the creators of crypto punks highly anticipated 20 000 of these block styled um nfts and it's like the most blue chip it gets right in crypto like lava labs or the nft ogs they know all about how to run these auctions exactly this is if there's any nft you want to exploit this is the one you want your eyes on right and so it did have a lot of eyes from people who wanted to do this one of the functionalities of the meebits website was that after you minted your nft they selectively revealed the metadata for your nft so for example if i minted nft123 i could see the metadata for nft123 but i
couldn't see then the metadata for any other unminted me bits so one would think that hypothetically this is fair right if i can't see the metadata for any bit then i can't mint one that's explicitly rare it's randomized what someone figured out though was by inspecting the code of the website and they figured out that there was a url on ipfs where all of the metadata was stored whether that was unminted or minted and this individual went and they went okay let me take from tokenid1 to tokenid 20 000 loop through it and pull the metadata for everything so even if the website didn't showcase unminted me bits they found a way where the data was still leaking and what this allowed them to do was to
pick the rarest me bits and know exactly what id they wanted to mint even then though it wasn't that easy for them to go ahead and just mint that desired id in the case of loot like the example you could provide the id you want to commit right if i wanted to mint 123 i could just tell the contract hey give me one two three and if it's available it was mine yeah in the case of me bits that wasn't there they used on-chain pseudorandomness to basically randomize the id that you got this exploiter though was smart where they wrote their own contract which is basically like a reroll contract and we include a sample of that in the article if anybody wants to dig in but what it let them do was they would pay for amy bit
and when on the callback they would receive their nft and they would run a check they would say hey does this nft equal one of the desired rare nfts one of the rare me bits that i want and if it did they would keep them ebit but if it didn't they would just revert the transaction they would cause it to fail what that meant was that instead of have them having to pay the mint cost which i think was something like 2.5 eth when me bits came out instead they only paid for failed transactions which was somewhere around like you know 0.01 eth so effectively they could loop through all the available me bits and over you know they had to spend some eath on a couple hundred transactions that failed but eventually they were able to get ultra rare me bits that sold for you
know many hundreds of eth in the secondary market and all that it cost them was a couple of failed transactions um in today's day and age this is even easier right with flashbacks you don't even have transactions you don't even have to pay for transactions that revert so we could run even the same exploit and loop through all the transactions and have zero cost unless you minted a super rare one um so that sort of just speaks to why we think unexploitable fairness is very very important for a metadata for a collection excuse me the second one that we discussed instead of preventing race conditions right and the race condition is any time that you have like a more demand than supply and then people are racing in order to
you know get filled basically on their bid and um in the case of a gas auction that just means you know the people who can get that transaction in mind first they will get the nft or those who have access to better tools like bots or access to power tools like flash words before it became like more democratic basically always have a huge edge right and in worst case this is just a miner who just controls like the entire block right and can decide which transactions to include um and not even to mention like all of the negative externalities that are created for users of ethereum so i think in our paper we gave like uh like 10 or what examples of
when uh nft launches sort of quote unquote outsourced their auction to the miners and i think this like this whole mental model of like outsourcing an auction like you're not making the auction go away you're just letting someone else do it and you're giving it to the miner and i think we showed like how this basically what happened to ethereum in these periods and the network just got completely clocked up and um yeah i mean gas prices went to sometimes over like a thousand way in some cases even i think a couple thousand gray um and basically becomes unusable for anyone else because somebody is utilizing this like public infrastructure
for something for like their own private endeavor basically and i mean they are paying for it so it's like not unfair in any sense but it's the there are better ways to do it right so what was sort of our core insight to preventing these race conditions yeah so i think you mentioned it perfectly and i think the stat we mentioned was in the month of september there were seven or eight periods of time when the gas price spiked past 1250 gray and every single one of them was because of an nft option so it says something where you know the entire ethereum network is held up for people minting nfts um so yeah so the way that we came about thinking about it was
the only way to resolve this is to not have a first come first serve auction it shouldn't be a rush to get into the auction there should be no race condition where the people who are fastest the people who pay the most gas are you know advantaged over everyone else uh when we dub this sort of sequential bidding and clearing where you can have people enter a pool of participants and then you can clear that pool of participants for example a raffle or a batched auction the way that we proposed was a raffle where you set aside a period of time let's say 24 or 48 hours and you let as many people as many addresses that want to participate commit some amount of eth and then enter this pool of participants
after that period of 24 48 hours has ended which to mention is also beneficial because keeping a long enough window allows people that are you know in other time zones are working are sleeping to be able to participate as well once that window has completed then you have a clearing phase where from your pool of participants you pick winners now i'll give you an example if you have an nft auction where you want to give away let's say 10 000 nfts and there might be two scenarios you hold a raffle and of 10 000 only 6 thousand participants enter in this case it's really easy you just simply allow those six thousand to mint their six thousand nfts in the alternate case where demand is greater than supply which is what we
most usually see you can have a raffle so let's say there's those ten thousand nfts and you have sixty thousand participants that come in now of these sixty thousand participants you have to pick about one in six and so you would use a raffle which takes some random number because of course you wanna be as fair as possible in our case we use chain link vrf to get a random number on chain and you would use that number to randomize your 60 000 participants and pick the 10 000 winners so in this way it's just as fair for everyone regardless of you know how much gas you're paying to enter regardless of how many tickets you have each ticket is only as sorry excuse me each ticket has the same
chance of winning as every other ticket so you mentioned the raffle is like one way of um selecting the winners um another one that is uh always brought up sort of in the context of blockchains but had never really caught on in big way in popularity is the batched auction in a batch or like you can have a bunch of different ways to do a batch to auction but the main idea is just to collect everyone's bids first and a bit is just is basically an expression of i want to pay i want to buy this amount of my tokens whatever can be anything at this price right so it's basically an expression of the user user's preference and then when all of the bits are collected then you run some algorithms that selects
uh which which are the winning bits and you have like really a huge design space there but um one very nice property is is that you can clear everyone for example at the same market price right so you can um you basically no matter how much people were willing to pay um you clear them all at the same price so that's very nice that's that's also another property that i think the first come first surf launchers currently break right where um people who are like are very good at bidding very good at guessing like the actual clearing price they tend to get pay far less than somebody who has to overpay for example because they are less skilled right right um
so batch auctions are catching catching up in popularity now i think also with some projects like housework for example that run a similar approach to dextrading but in general um it's sort of an approach that has not received a lot of love in crypto even though you would think that it just makes a ton of sense because the the blockchain itself sort of has this like very slow heartbeat right where there's a new block on average every 12 to 13 seconds and it really doesn't make much sense to like have like priority in between different different bits in between these blocks but uh and then like whenever you try to enforce it anyway then it just turns into like an auction of who can pay minus the most so basically any system that that has like uses sort of a
heartbeat that is faster than an ethereum block automatically leaks value to miners and i think that's something that like if you design any kind of application it's something that you definitely want to avoid not just because it leaks value but also because just poses a very bad experience for your users um so yeah those are i think high level the two approaches that we explained so the key is here turning it from an auction that and you can never avoid having an option you're always going to have an auction when people when there's like more demand and supply and i think that's one key inside and i think the second is that if you want to avoid all of these negative externalities and negative negative
consequences for users then you have to turn this into a from from what we call a continuous auction into a sequential one and in the continuous case you still you still have users bidding and you still have someone clearing so users submit the bids to miners and then the miners just look at the supply and they clear it every block um but in our case so we we say so hey first people you have this whole time to submit your bids and then we will clear it according to some algorithm whether that's importing randomness on chain but you can even clear it off chain if you give a great like an example of the launch that did this really well which is the um the spank chain launch in i think it was as early as like 2017 right
um it used like a very good uh a very good mechanism to do this off chain um and yeah and that's just it has like all of these advantages basically that i think would be very nice if um if people were using them more and that brings us to the last property um which is cost efficiency so there's actually one launch i think that we want to point out which is jpeg's auto mod [Music] and they use the batch auction they use sort of a very crude way it's sort of like i would say almost like the minimum viable batch doctrine where they didn't allow users to to say like uh how much they want to pay per nft which is you kind of would expect this to be possible they only
allow users to say how much if they want to commit but not the price at which they want to buy like each nft or how much they want to get right um and this had one downside so can you walk us through that sure so our third conclusion that we took away was that you have to consider cost efficiency from minute one and we realized this looking at the jpegs auto market batch auction on miso where while the idea was very novel and the mechanism was definitely unique and it had its benefits and its disadvantages both of that we discussed in the article one thing we realized was that it required a lot of transactions in the sense that there were a lot of on-chain interactions that a user had to do from the point of saying hey i want
to buy an nft to hey i have this nft and the metadata is revealed and this is problematic because every transaction on ethereum costs gas which means that the more transactions you make the more you're paying the more expensive it is for the end user in the case of miso we found that at the bare minimum i think it was four or five transactions that you had to make in order to be able to just mint an nft now this is contrasted to the first come first serve auctions where you only have to get one transaction in the mint transaction yeah and in the worst case there was something like seven or eight transactions that you had to make to just be able to get your nft so overall while in the individual stages you might have had you know cheaper gas prices because you were able
to time the market at the end of the day there was a huge burden to the user of having to pay for these transactions and so what we considered was when anyone designs a new mechanism when you are thinking of how to make your nft launch fair you have to keep in mind not just optimizing for the fairness but also optimizing for the cost that users will have to pay for that fairness or ideally most of the expensive operations you keep either open to everyone or something that you as an operator can do and you make it so that you minimize the number of actions that the user has to take to get their nft and sort of like socializing the gas cost so anyone who's looking to
launch a like new nft collection or really any token um on ethereum i think um i would encourage to you know check out this post and because at every step every of these four steps really break down what the different tradeoffs are that you can make and what sort of their consequences are on on the launch at large and the design space is really big i mean i'm sure there are a ton of options that we missed that you can do and i'm just really excited to you know check the space over like the next 12 months and see how it develops basically right so if you want to launch nft what do you think about the choice between using like your own rolling your own contract um and doing it like sort of directly on chain versus using
one of the available let's say like launch marketplaces and by launch marketplace i mean the one that people are maybe most familiar with would be something like miso right so basically we launch a token infrastructure as a service right so i think we're going to see more and more launch marketplaces pop up as nft designers as nft curators come into this space simply because not everyone is a developer and as we've noticed designing a fair nft auction designing a fair mechanism is very very tough and it's something that i don't think anyone has cracked perfectly yet these shared marketplaces the benefit that they offer is they give sort of one pre-built package that they vetted
that's been used before that these creators can come apply their metadata apply their images apply their artwork their video and be able to launch with those same best practices and it has its benefits you mentioned miso is one another one is the openc storefront um where the benefits that they offer for example in the openc case is someone who has no technical background can take their artwork can mint nfts and can do them without even spending gas because they have lazy minting on open c right so you can have yeah so lazy minting is this idea where you upload your nfts and they're stored on openc centralized until the point of purchase so i can basically
hypothetically mint my nfts for free and then when somebody comes along a buyer and says hey i like this nft i want to buy it openc will mint that nft to that buyer at the point of purchase basically avoiding the creator having to pay any gas fees oh so it's is it like the same as batch minting in a sense or is it oh it's like you're matching the mint and the distribute together right except in the case of the batch mint you do that up front right where when you deploy the nft you'll batchmate yourself let's say 10 nfts here the nfts aren't even minted until the point of purchase um so it offers quite a bit of gas savings for at least the average creator that doesn't want to spend thousands of dollars deploying a contract on ethereum
at any given point in time and these marketplaces have their benefits right they're easy to use they're convenient and one of the things that we've noticed is that they also have their detriments one of the key ones being the lock-in an example is with opencv there's been a lot of collections recently from artists that have come have launched a collection on openc and have had success that they didn't anticipate right people love their nfts people are minting a lot of these and now they want to build a community around it they want to expand it but a detriment that comes out of using the openc shared storefront and their nfc minting contracts is the fact that you're locked into those contracts you can't take your community anywhere else and because you don't have your own contracts there's only so much
extensibility that's offered to you and so recently we've seen sort of re-minting where people will migrate users from opencontracts to their own contracts by letting them mint one-to-one replicas so if you have you know id one of an opencnft you can mint id1 on a custom contract so i think there's a there's a balance to be had there where you can take the shared marketplaces for the convenience you can take the you know custom-made contracts for the extensibility um or you could you know go with something in between um i think manifold is one corporation building something like that um but it's like a balancing act of picking what's the best for your community and for your project
yeah i think what what do you think is like the long-term equilibrium here is it more like we are going to have like a an open source toolbox for developers to you know choose very specialized but standalone launch contracts form or is it more like that you know these launch as a service marketplaces will ultimately win out and also like offer like really good trade-offs for users sure i think the good parallel is back as a kid i used to make websites right when i was 10 or 11. yeah and business got really bad when companies like squarespace came out that let you build all of these you know take templates take existing examples that had worked and drag and
drop and build these fantastic websites i think we'll start to see the same thing happen for nfts right where right now there's a lot of custom contracts there's you know different people do different things different function names a lot of you know complication in the development process i think what we'll start to see is sort of like a squarespace moment for nfts where there will be you know projects that pop up that will offer open source well-vetted audited implementations of these distributions and they'll let people drag and drop what they want right like i could drag i want a batch to auction i want 10 000 people drag and drop my artwork in hit create and it just spins up a web 3 front end i pay and it deploys the contracts and it does
everything for me and i think that's really where we're heading yeah that's really super simple yeah i love that vision it's really cool i think the whole idea of like drag and drop contacts not even just for nfts but in general i think like some projects already like um experimenting with something like this right if i look at defy saver or insta depth i think they both have functionality like that i think that's that's really promising in the long run agreed but nft primary markets are only one part of the picture i think it's actually a very small it's an important but it's a very small part of overall nft volume most nfts are traded in secondary
markets um so can you describe sort of what is the current state of like the secondary markets and nfts how is like the the fragmentation looking who are like the winners and losers and how do you expect this market to develop over the next year sure so i think in terms of the nfc secondary market there's sort of two emerging categories that have come up one is catered to these projects that have many nft mints you know tens of thousands of mints and have various attributes and sort of entire collections and we've seen the clear winners there be you know for off chain you know things like open c wearable on-chain
projects like zora right and these are the exchanges and marketplaces where you can list these nfts filter by attributes purchase these nfts trade them have offers and whatnot can you expand on why the first two are off chain and the letter is on chain because as to me as a user i constantly have to like sign transactions and make transactions when i interact with them anyway sure sure so it's the varying degrees of centralization so if you've used openc before what you'll notice is that once you've approved a collection for sale you don't have to make an on-chain transaction to actually list your nft it's just a signature right it's like if i approve i have if i own 15 loot and i approve loot once i can sell id 1 id 15
id 100 without ever having to make an on-chain transaction and the way that that works is that openc essentially maintains a centralized order book right where they take your signed transaction and they hold it on their database and they list that signed transaction on their front end then when a buyer comes along the buyer makes the on-chain transaction where they bundle together their purchase transaction and your sell transaction that they pull from openc together and because you've already signed it it's verified that this is yours and you can immediately sell that nft and so marble open c the way that they do it is sort of these centralized order books um behind the scenes zora in contrast does everything on chain they like to ensure the
composability with protocols and whatnot and so the way that they do it is when you list your nft for sale you make an on-chain transaction that essentially moves the nft to a contract and so it's no longer owned by you it's owned by like a marketplace each has its benefits and advantages right simply you could expect that you know the centralized ones are centralized so it's hard to build adapters hard to build projects along with it and a good example is there's no party bidding on open cnfts right because it's it's almost impossible to do that on chain um versus in contrast zoro for example is on chain so there are party bids for zora nfcs and on the same way it has its instruments too right open c is great because you don't have to pay gas costs
to quickly sell a lot of nfts right and for some collectors that's a huge deal because some of these nfts the gas cost to sell them at times can be more expensive than the actual nft itself versus for zora every transaction has to be made on chain which means it's more expensive if you're listing a lot of nfts so there's disadvantages and advantages and so that's one series of nfc marketplaces i think it's really important i think that this is probably a trend in crypto that's going to accelerate in a big way where people are only going to sign transactions and then something happens to these transactions of chain um so can you like because i think this is going to like get more and more important in crypto can you can you explain like what really happens here
sort of behind the scenes with uh with openc and what guarantees the user gets so first to prove that to play the devil's advocate almost i'd argue that that's the opposite of what's going to happen all right i think we'll see more on chain interaction happen um and i think the only reason we're limited to making it off chain right now is because of how expensive everything is interesting i mean i'd like to hope that you know when layer 2 is at its peak when we have all of these ways where gas is super cheap then it won't matter to people if they're making transactions on chain right it just won't be a cost that they'll consider and it'll offer a lot more composability but to get to your point um how does
openc do it is in ethereum when you send a transaction there's two parts to that the first is you sign the transaction so you take your private key right that is you and you basically imagine like a figurative like autographing the transaction that says hey this is me this i am approving this transaction and then the second part is sending the transaction where you submit that signed bundle you submit those that signed code to the blockchain and the blockchain can verify that you were the one that submitted that transaction and this is basically what offers the cryptographic security that a blockchain does right where you can't i can't submit a transaction from hosu's wallet because i don't have his private key i can't sign and verify that i am hassu i
am the one submitting this transaction that's the same guarantee that storefronts like openc that exchanges and marketplaces use to offer off-chain transactions where i can sign ownership over some id over some item but not have to submit it and this is weird because for most people you've only used metamask right where you sign and send at the same time it's like just a transaction but with openc what you'll notice is that when the pop-up comes up to sell an nft after you've approved a collection or actually you know let me step back a bit why do you approve a collection so when you approve a token on ethereum you're basically giving a right to someone else to spend your balance so in the case of openc if i approve openc
to spend my loot i'm saying hey for a brief period of time or until i cancel this i'm delegating open c as being allowed to take loot from my balance and move it somewhere else once you've given them this this is really interesting right because most people when they think about ethereum they think payments are pushed but it's actually the opposite right every payment is can only be pulled from like another user or smart contract right exactly it's like you mentioned earlier with database entries right it's like i'm giving someone admin approval over my part of the database to change around the numbers as they see fit and that's basically what openc does in this case now the caveat here is that to do that they still need to have a signed
transaction from me right and so what the what actually selling in nfc looks like on openc is that i will sign that yes i'd like to sell nft number one and that transaction can be sent immediately to list it that transaction can be sent you know 24 hours from now when there's a bid or that transaction can never be sent and it can just get invalidated right but what it lets it do is it lets openc store that record that they can then pull and apply at any point in time and so essentially what openc does is they act as you know the marketplace that where people with signed sell transactions meet people who want to make on-chain buy transactions they match them together and then finally you submit the transaction on chain and it
executes like it should so that you know the seller gets the ether the tokens that they want and the buyer gets the nfc that they want um all while avoiding on-chain transactions as much as possible and there's no risk of getting executed at a bad price because you sign the transaction at a particular price right you say i only buy this nft at this price i only sell it at this price at a minimum exactly so your parameters are encoded in your signature and that's the best part of cryptography right if if openc tries to manipulate it they say you know instead of anish selling his loot for 100 bucks now he's going to sell it for one cent right even if they change that data that automatically voids my signature which means it no longer
applies and that sale isn't valid so which is super unique yeah i love it so what features taking a step back here what features do you think are missing from the current state of the nft secondary market that's a good question i think my answers might be different from someone that's you know trading nfc's day in day out or different from a collector i think every participant in the ecosystem will say something else i think for me personally the two biggest ones first is the creation aspect where i is someone who don't have enough time to look through you know all these nfts
follow every launch i want to know at a glance which nfts are the ones that people love all right which are the cool ones what is what what should i be purchasing and so i think filtering creation being able to you know go from a collection of 100 000 items like i think art blocks is a good example right where it's there's over like two three four hundred thousand different types of art blocks across playgrounds across curated and all of them are super fascinating but all of them have different prices if i search up art blocks it'll pull up all different types of collections and it's just really difficult to decipher in on like how do i how do i go to open c and find a fidenza right it's really difficult for me to do that um at least from an average user so
i think filtering and curation will become really important with these nft marketplaces i think the second part uh and that might be like the implicit trader within me wants an easier venue for liquidity right we've started to see it already with things like nftx and you know pooling together these things um to have like one price that you can apply to a collection but i think where we're headed is going to be almost an order book for nfts right where people can submit their bids and people can submit their offers and they'll be like matching like there is it'll be like the bitmex for nfts uh and i think that's where we'll finally get some super fascinating price discovery where people are trading these like not just as fungible assets but now as like entire collections and the price of the
collection ah okay and do you envision that to be like a global order book that spans a bunch of different venues or how does this work i think it would have to be a global order book unless all the liquidity is like trapped in one place right like i think larva labs could probably make do with just one order book for crypto punks because most of the crypto punk you know volume is done on the larval labs platform by their contract in contrast to something like you know art blocks where you know some is primary market some a secondary market there's various places where you can you know you could list it on zora you could list it on openc on marble or there might be a global one and i think i would prefer a global one because if this is something that's on
chain if it's something that's really accessible if there's an api there's a lot of composability that can be done right it's basically an oracle an accurate price oracle of a collection so yeah i hope it's global it'll be fascinating what is your theory for why custodial trading for nfts has not taken off like at all like because when we look at regular crypto tokens they trade their biggest volume on centralized exchanges but centralized chains have been really slow to list nfts why i think there's two parts to it i think the easy answer is we haven't seen it thus far because nobody's done it thus far right i think the first i
heard of an exchange doing nfts was like ftx and that was like maybe three weeks ago right and then coinbase last week so it's still really early uh where these exchanges are picking up and coming into the nft space i think the second part of non-custodial is i think it's the ethos of nfts as a whole right where the reason why nfts are special to many people is the ownership aspect you know it's like on twitter you'll go and there'll be people saying you know i just copy pasted your nft right this is my jpeg now and they'll reply with that and the reasoning it's special is because i own this nft right my address is the owner and i think that sort of even psychological aspect of owning something goes away when it's in like a custodial
way right where it's sitting in an exchange account where you're like okay is this really mine but when it's in your address when you can see it that feels real i mean it's so it would be so funny if like the paddy nft critics are the ones who drive people to more like self-custody right right okay so now um i want to change gears uh quite a bit i want to talk about ethics in crypto so for anyone with your skills who looks at so many contracts so many open source contracts who has also so much knowledge about like how contracts are vulnerable uh such deep experience and like
nft primary markets they have to grab it you know with the question if code is law and if you saw vulnerability in a contract what do you do with it what are your thoughts on this topic sure i think it's a heated topic i think personally i do believe that code is law although the prevailing argument against that is the law is what was intended not what not what is applied right for example if you write a smart contract that doesn't intend to give someone you know a million dollars in an exploit then if somebody does get that million dollars they're effectively breaking that law right they're breaking the
intended functionality of the contract the way that i see it is a little different and that might be my naivety you know i i don't run a protocol that has billions of dollars in it so it might be just my viewpoint but i think it's the similarities between solidity i think are closest to something like aeronautical engineering right when you're at nasa and you're building rockets where any decision that you make has its impacts and you can't change those impacts in the past but effectively the decision you make is the law right so if i you know go for flimsy parts to save costs if i accidentally miss a panel on a space shuttle and that space shuttle blows up i can't go back and say this wasn't intended functionality this was an exploit now this was a mistake i made
and now i have to deal with the repercussions of that mistake so i think that's the same way that i think of as code is law where what you write is what gets put on chain it's what people interact with and there's that implicit understanding that anything that happens even if it's beyond the intended functionality you have to adhere to i think there is the point of like what's an exploit versus what is arbitrage i think exploits specifically to me at least are where the functionality that a developer didn't intend for is exploited right where a good example would be something like the meebit arbitrage right where the ipfs data was leaked off chain and that was used to have an unfair advantage over the minting process that is an
exploit right or if one of these you know various unit swap v2 forks that has you know some variables changed or some code flaw is exploited that's an exploit alternatively for me arbitrage is a situation where you adhere to the intended functionality of a contract but you're still able to make a profit out of it and a good example that in the nft world is sort of the punk uh nftx meebit arb where for a brief period of time the nftx pool that held punks you could basically redeem a punk and claim the free meebit associated with it and then return the punk and you could rinse and repeat this multiple times to get freemie bits now one might think okay you're exploiting the meebitz contract
and a lot of people did think that i don't consider that an exploit though that's more an arbitrage right you're using your information to adhere to the contract right the contract said one punk will get one free me bit you're not changing that and for a brief period during that transaction you did own the punk so you were the owner and you were doing the rightful action so i think that's more in arbitrage and the way that i think about it yeah i think i would agree but i i feel like isn't that almost a canonical view in crypto that they didn't didn't you like confirm that you think what um that if it breaks the intended behavior of a developer then it is an expert that's correct uh although i don't think in the sense of in the
sense of code is law i don't think it's like uh the exploit shouldn't be punishable in that sense all right okay where if if something does happen again i preface this with this might be my naive view and you know maybe five years down the lane when i'm maybe running a protocol i'll be like okay you know whatever i said five years ago forget that but i think the way the code is written um is the way that it should be executed is the way that there's there's no aspect of the social law there all right it's the code is the hard and truth law at the end of the day well that that doesn't mean that you can't be a white hat though right like i'd consider myself a white hat if and vulnerability came up i wouldn't be running to exploit it i'd be running to
you know hopefully help save those funds um so i think the social aspect comes one layer on top of that where even if code is law there's like an implicit social understanding that you choose the decisions you make right the code might be wrong but you choose to exploit that code right you can you can either save the money or you could you know run away with the money that's your choice so yeah you could be governed based on your choices i don't think you can be governed based on you know the contract in the code okay so if if like as happened like in the last couple days a protocol gets hacked and then the attacker gets doxxed by whatever way i mean usually there are like smart people at work trying to figure out
who's behind the exploit and then they threaten to dock someone or certain with legal action um what do you think about these steps do you think that they are valid to take for protocol developers sure so i think at a high level protocol developers choosing to go the way of regulation is a potential outcome i can't speak i can't say it's a you know a guaranteed i don't know for sure um do i think doxing is a good thing i don't i'm very strictly opposed to doxing i think it's only as it's only a negative something where not only does it hurt the project but it also hurts the people that are involved and so as minimal boxing is possible if none really is what i'd advise for um
in terms of the law can you get tried for being a black cat yes right we've seen that in the conventional world if you break into your bank even if the code is the way that they've written it you will get tried for being someone who broke into a bank and i think the same thing will eventually apply to crypto as well the only added advantage here though is that there is the middle ground of being a white hat of being a grey hat and being someone that's rewarded for finding these vulnerabilities right and in the case of crypto you get rewarded far more than you do in the conventional world right like bug bounties for a bank might be in the you know five to ten thousand dollar range um like we saw with like the miso exploit and sam says son he got
nearly a million dollars right his amount for that and and there's i think a lot more incentive where it'll be easier for someone who's you know thinking of exploiting a protocol to step back and be like okay i can make the correct choice and still walk away with you know potentially life-changing amount of money and make a good name for myself and whatnot and i think that's something that's unique to crypto that isn't possible anywhere else yeah 100 i really really like um sort of the size of the backbone bounties that yeah projects offer in order to incentivize you know honesty right so i think a topic and this is our last topic of the day a topic that always comes up like when talking to someone
who's really young and already like really experienced and obviously like a super high performer in crypto how do you learn it's a good question and you flatter me um i like to say and i mentioned it before that i'm the stupidest person i paired on and i stand by that i think the easiest way for someone like myself to learn is to surround themselves with super smart people and it'll just rub off right just getting to work with the smartest minds in the industry the smartest minds in a space you learn from them you learn the way they do things and you pick up on it and so that huge motivation for why i'm at paradigm is to get to learn with you know people i look up to you know people like yourself who i get to work with on blog posts on articles have this
conversation get that question yeah i think that's probably the easiest way that i learn is to just be surrounded by smart people and crypto offers that very easily through twitter and you know being accessible telegram groups where it has never been easier i don't think there's a single industry where it has been easier to reach out to the smartest people in space you know their twitter dm away i could not imagine saying the same about you know reaching out to an astronaut or reaching out to the president of the united states versus here i can reach out to the leader of a multi-billion dollar protocol and there's a very high likelihood that they'll say yeah gm and then they'll reply with what they you know think about yeah
yeah that's something that has also worked for me i think in a huge way i think always trying to be the dumbest person in the room um and if you're no longer then i think maybe it's time like to move to the next challenge and level up and i mean even even as long as you don't i think this is probably the case for like most people uh well listening at this point they they they may not have access to all of the people who they want might want to have access to one day but they can still aspire to and i think twitter is such a good way honestly um to feel close to people and almost everybody responds like you can tweet at everyone like 90 chance you will get a response many people even have dms open i can only like
reiterate exactly what you said i think it's it's like because twitter is so prominent in crypto i think that plays a huge role in how accessible it is and how fast people catch up and how fast people learn so i think this is just a like twitter being the center of the space is just such a huge asset it's almost like impossible to overstate definitely what skills what skills do you still want to acquire like if you if you think ahead of like the next one or two years what skills do you want to acquire that you do not currently have and why it's a good question i think things that i want to learn i can break them into technical and non-technical almost on the technical side i think
i'm still very very novice in terms of even programming i think i'm surrounded by people that have been programming for decades and i've only been alive you know 19 years and there's people that have been coding for longer than that so lots to learn from them i think next on the list is getting deeper into rust um thankfully to my colleague georgios who's been helping with that and learning more about zero knowledge cryptography i think getting deeper i think zk will be huge in the next three to five years maybe even sooner than that and so want to learn as much as possible about what's going on there and how i can get involved and stay on top of things in terms of outside of the technical aspect i think the thing that i'm still learning and continually working
on the biggest one is learning to say no i think as a young person what i optimized for was saying yes as much as possible right having as many opportunities getting as much exposure to everything the detriment of saying yes to everything though is that you can only spend so much time on everything right it's like splitting your attention across various things only taking you know very high level understanding of everything so it's something that i'm slowly learning you know how to say no to things yeah yeah i think i would definitely mirror that i think saying no is probably something that like a lot of like that's something that a lot of people struggle with to get sucked into this open source world because when it's so easy to inter interface with so many people then you're
constantly getting nerd snipes and like people act like actively use this in order to suck you into like various kinds of projects and discussions and so for me i would say like saying no is a big part also like maintaining a more healthy work-life balance i would say um this is something that i've been really trying like last couple months after like burning out for like the i don't know like that how many time but definitely too often and uh it just leads to lower output overall like it leads to lower happiness it leads to lower output overall when i have like a bunch of projects that i finish 80 and it's like it's like literally like a couple days of like concentrated work to
get them over the finish line but i just bit off too much and you know invested too much in like too short a period of time and then i i do burn out and then i never finish them um so i think yeah that's that's for me a big one um and i think also can i can always like only repeat like how important sort of the the positive some mindset is right like playing like really long-term games with long-term people twitter is a medium like as much as we love it is it's a medium that is also optimized not only for learning but also for conflict and twitter like really rewards the twitter algorithm really rewards whenever two people get in conflict with each other it's almost like it invites
everyone you know who follows both parties like to join the fight and like jump on and reward you with a lot of attention and rewards you also with like a lot of dopamine and so on and i think one really has to resist the urge to criticize in public um and rather like try to find like exert influence in like more constructive ways and like really resist urge to dunk on people um for me that's definitely something that i'm actively working on you and i both and trying to look trying learning to code i think that would be a big level up for me and that that might be something that i i would really
like try very hard in the next 12 months okay one last question um you started to you started programming at 11 you found crypto at like 14 15 whatever um and now we are seeing like more and more very young developers in crypto it's like it's a complete change almost like from how cryptos they used to work like five to six years ago um what do you think about you know this next generation of talent is it is it like is our crypto developers why are crypto developers so much younger than you know developers anywhere else and is this a trend that is go do you think it's going to continue or is it ever going to reverse
sure first i'm really glad that there's really young kids who are getting into crypto and are building because it reminds me of myself and where i am still today and i think it's not a lot of good for me so i'm sure it can do a lot of good for other people as well i think the reason why kids are entering is two part one is the same reason that i entered right it's it's a way of money that doesn't isn't doesn't restrict you to anything right and as a kid growing up getting to spend money is really cool right making money spending money is fascinating and that's one of the easiest draws for people into crypto is the fact that all of these you know 12 13 14 year olds now have a way that they can have a wallet on their mobile phone before they even
have a bank account and it's programmable money right it's like building blocks of you can automate this process you can automate this sending of money between people splitting money etc which is really fascinating i think the second part of it is that kids have the benefit and the advantage of being so young that they don't know the best practices they don't know the de facto ways of doing things and that's really important for something like the blockchain which is young in and of itself where the same principles from like the centralized world don't apply right you learning database theory in a college class is not going to apply one-to-one to you making smart contracts on ethereum right and smart in writing smart contracts writing solidity isn't
the class that's taught in college and that's one of the benefits i think the folks at ryrie capital they have this phrase neuroplasticity now which is a bit of a meme but it's like you know your your brain is continuing to grow as your kid and i think that's one of the benefits of kids entering into crypto and building early on is that they learn the new paradigm solidity might be some people's first language right they will be the blockchain developers because that's all they will know right and not to say that you know past world experience isn't relevant but the new thinking way the new paradigm of thinking is also really relevant do i think this will keep happening in the future yes i think there will be younger and younger developers they might not look like what they look like
today all right today we've got you know fantastic fifteen-year-olds writing solidity maybe five years down the lane the next language that 15 year olds are learning is cairo right people doing zk math at 15 and i think it'll continue to evolve but so long as we have an open protocol that allows anyone to participate i think the window of talented developers will continue to get younger and younger as people are excited about building it feels like it feels like that it's almost like how much productivity was unlocked for like humanity at large when women started entering the workforce right which was sort of socially prevented for a very long time um it's very interesting to think about
what could happen if like all of the creativity and neuroplasticity of like the average like 15 year old programmer could also you know start to shaping our world the last ex last explanation i would maybe offer is sort of one that plays off your own story right it's like almost like a selection bias right so if you're a very talented and smart 15 year old where can you even go and make money like it is only crypto like they they all come to crypto because crypto is like the best way right um it's the only way it's the only way yeah um so yeah i think i i think i would second order what you said i mean it's just i think we will see more and more
uh young people in crypto and i mean this plays so well together with the fact that you don't have to trust them right i mean sort of the one thing that that i would say probably about like teenagers definitely about myself at that age is that you know they may not be the most reliable um right right they may not have the you know the the highest like ethical standards and the high like the strongest values it is completely natural you're not like a complete person at that age nobody is but when we're working with smart contracts then you don't have to trust someone you only have to trust like what they put in the code and i think that's a really beautiful combination that's a great point yeah agreed anish thank you so much for having this
conversation with me i had an absolute blast are there any closing words uh or messages for your followers likewise thank you khasi for having me this was fantastic i think the only closing message is keep building and do it open source oh yeah that too open source as much as you can so that uh i can hop in and play around and we can go from there amazing thank you so much thanks asi take care [Music]