 Hey everybody, my name is Renee Yeah, so Eric and I We work at artisan and artisan helps communities crowdfund new grants and afro algorithms is Really amazing project made by an artist named Anatola who's part of our community We funded it earlier. We funded about 150 grants so far. So one of many example grants on the platform So my name is Renee and this is Eric. Hello, we're so excited to be here I feel like we've been in the wilderness Exploring public goods by ourselves and it's lovely to actually meet in real life with other people that are dreaming the same crazy Dreams that we are so I'm really really jazzed to meet you And I know that I've made so many friends over the last couple of days And I'm excited to see you wherever the next event is in the real world So I'm gonna talk briefly about What we're doing at a high level at artisan and then I'm gonna hand it over to Eric for the real meat of our talk Which is about fluid quadratic finance And it looks like our font got fucked up somehow it normally doesn't look like that our designer like worked so hard on this but there it is so It's kind of whimsical and fun. We'll roll with it So yeah, again at artisan what we do is we help communities crowdfund new grants for art Science and public goods. We take a very broad view of what public goods are We think that you know, it's really the core infrastructure For civilization and that we need to find new mechanisms for funding it at scale At our last startup we helped raise a good deal of money for creators and We discovered a couple of things so first we discovered after raising money from every imaginable scheme You could think of we discovered that grant funding in many ways is the ideal source of funding And it's because it comes with very few strings attached It's non-dilutive and most importantly it gives folks creative freedom. So grants are really great Because of those reasons But we also discovered that everything else about grant funding is pretty broken First of all, it's highly biased the vast majority of funding goes to just the top 1% of creators It's highly bureaucratic. That means a lot of waste and finally It's really complex for everyone involved whether you're applying for grants running a grant donating to a grant It's kind of a mess And the truth is we've really lost trust in our institutions to use our money wisely You know governments and charities they spend trillions of dollars on public goods But because decisions are made behind closed doors We're really excluded from the decision-making process and we're really disconnected from the work We end up funding and all of this leads to a lack of trust in these institutions to use our money in an efficient and effective way So at Artisan our big mission is to restore trust in public funding and to do that by inventing new mechanisms that are transparent That are fair and that are effective and at Artisan Sort of the big functionality that we've built is that we've worked really hard to make it very easy For communities to come together to crowdfund new grants Once that community has pooled their money together. We spent a tremendous amount of time Figuring out how do you allow them to curate the winning projects? And how do you ensure that those projects that receive funding have the support of the community? Meet the eligibility requirements of the grants and are subjectively of a high quality and finally we feel that donors Should should not just be thought of as like a passive Participant but rather an active owner in the work that they help fund and we do that through NFTs and tokens So when a donor contributes to a grant they actually have an ownership stake and the work they end up funding via NFTs and tokens and So we've been around for about two years the first problem that we saw as a Major question mark in our own heads as to whether or not this idea was viable was the community curation aspect Once people have pooled their money together. How do you get them to agree on which projects ought to receive the funding? And we've run over 150 grants. We've awarded a little over five hundred thousand dollars So, you know, it's still relatively small scale, but it's been battle tested to a degree And this is the basic model of how grants work on our platform. So you have creators. They submit a Project you have the people who created the grant They elect curators who review all of those projects. They then select the finalists We didn't used to have that curation layer, but we found it was really important for a couple of reasons One is it was the best way to ensure that the projects adhere to the eligibility requirements of the grant And the other reason is that a good curator can pick a project out of obscurity And we've seen this I helped curate a lot of the major film festivals and a good curator has an eye for talent the same way that a VC or an angel investor has an eye for talent and they don't follow the crowd and they can Pick a project that maybe doesn't have many followers on social media is relatively unknown But they see talent when they when they see it and they can elevate and put a spotlight on it by having it be a finalist Finally once a project becomes a finalist That's when we open it up to the community to vote on the winners So if you donate you get some review tokens that you can then spend via quadratic voting For the winner and another interesting thing there. We do proportional funding So if the number one project receives 80% of the vote they get 80% of the funding So just a lot of little subtle things that we learned the hard way for how to do community curation So that's the grant level the next step for us was okay. We are so inspired by get coin and quadratic funding How do we provide match funding? That's like, you know, I'm gonna be inspired by those platforms But how do we do it in a way that delivers a amazing user experience and that's where Eric comes in because we love What get coin and Vitalik, you know pioneered and all the co-authors behind quadratic funding, but we saw some Limitations from a user experience perspective and for us our big mission is to scale You know public goods funding up and to do that. I think we need to make this an amazing user experience so to those ends My best friend for ever and ever Eric Worked over the last five months on a new version of quadratic funding that we're calling fluid quadratic funding So I'll hand it over to Eric now. Thanks Renee. Hi everybody again. I'm Eric I'm an R&D mathematician at Artisan and yeah, I'm gonna speak a little bit about what we're calling fluid quadratic funding So before we get into the fluid part, I'm just gonna spend a moment reviewing Quadratic funding. I know a lot of you already know a bit about quadratic funding And that's amazing. I'm just going to go over some basic ideas to ground us for the rest of the talk so as you may know quadratic funding is a funding mechanism that takes a pile of money from a so-called matching pool and Assigns some matching funds to deserving grants that have received some contributions from users and the value of the grants is sort of measured by the number of contributions and the sizes of contributions to those grants and One of the nice features of quadratic funding is that it provides these matching funds in such a way that gives a louder voice to Large numbers of smaller donors as compared to small smaller numbers of large donors donors with larger pockets So now the fluid part of the fluid funding mechanism is overall powered by our artisan community fund and The community fund is fueled by revenue from things like NFT raffles Renee mentioned a few of these just a moment ago donation drives interest on funds in the system and royalties from NFT sales the Way that I like to think about the fluid aspect of this model is in terms of just dollars per minute So you can imagine our large matching pool our community fund as dripping Cash continuously at a rate of some number of dollars per minute Down through our fluid quadratic funding mechanism And then the question is really how do we split this continuous funding stream between the grants? so again, I'm going to dive into the details of Basic vanilla QF just a little bit again to ground us for what's coming We've come to call the Results of the vanilla QF formula the match units for a grant G and I'm just abbreviating abbreviating it here MUG and The formula is you look at the donations that users just indexed by I here a little hard to see the I The DI are the donations to grant G you take the square roots of the donations You add those square roots together and you take the square of that sum and This is the result of this vanilla QF formula, and it's what we're calling the match units for a grant G and Vitalik buterin on his blog a few years ago where he was elucidating the paper that he co-authored He Included this really nice geometric interpretation of this formula, and if you'll indulge me I'm just going to spend a moment going through it. I think it's really worth Going through at least once to understand we use it within artisan to communicate these ideas quite a bit the square the area of the big square represents the result of the the vanilla QF formula The smaller green squares on the diagonal the area of those small squares like D4 for example The area of each of the squares on the diagonal represents the amount of some donation made to the grant like D4 here and Since the area of these smaller squares represents the amount of a donation and the side length of one of the The length of one of the sides is the square root of let's say D4 as noted there And if you add up these side lengths of these donation squares So the square roots so square root of D1 squared square root of D2 and so forth And you get the sum the sum of the square roots Which is the length of the side of the big square you multiply that by itself to get the area of the entire Vitalik QF square right so that was probably more detail than you wanted to know about This QF square representation of the formula, but again I think it's a really nice way to communicate the idea behind the formula itself so we're going to be thinking of these match units of a grant G somewhat abstractly and It might become somewhat clear why in a few minutes later in the talk but if you like whenever you see one of these MUG squares you can think of the Vitalik Squares on a diagonal and the subsidies on the off top off the diagonal if you like and I should mention the Rectangles that are off the diagonal here represent the subsidy or the matching amount That is going to be awarded to the grant in addition to the donations so Just to bring all those ideas together the donations are on the diagonal the subsidy or the matching amount is represented by the area off the diagonal here and We summarize all that together in this MUG the match units of grant G square so the best known example of quadratic funding in the wild is Gitcoin grants as Renee mentioned we're big fans of get coin grants. We think what they're doing is really great Yeah, really really great stuff. We love it When we were designing the mechanism for artisan grants we identified a couple of potential challenges with The implementation of quadratic funding match funding that get coin grants is using in a get coin grant matching rounds namely the first Challenge for us with Renee's vision of get of artisan grants is That get coin grant matching rounds are very discreet in nature. They're time boxed They all roughly have the same start time for grants There's a specific end time for the grant matching round and then at some point after the end of the matching round The quadratic funding formula is applied and the matching funds are distributed and we see this as a challenge because as Renee mentioned in The previous version of the artisan grant platform we've run over a hundred and fifty grants and It was clear that it was very important for the grant makers to be able to choose a specific start time and End time or award time for their grant that they created So that was one challenge with the get coin grants QF model for match funding The other challenge is a bit of a UI or a UX challenge Get coin grants has this really great UI element that shows user when they're about to make a donation The estimated match amount that's going to be provided to the grants in addition to their donation And it's cool. You know, they've got a really great animation and let's say I come in I want to donate to a grant I'm going to make a $10 donation and I see that that's going to be matched by $50 or if I donate $100 maybe that'll be matched by $200 and that's really exciting the challenge is that it's a little bit of a fuzzy estimate because Essentially, you can't predict the future. You don't know if there are going to be many more donations to this grant or other Grants during this matching round. Maybe there will be hours or weeks or days or weeks until the end of the round So it's a little bit of a fuzzy match estimate So these were the two primary challenges that we identified when we were Investigating a model for artisan grants Right, so let's come back to the question of how to Split this continuous funding stream from the community fund measured in dollars per minute, let's say through this fluid match funding mechanism to grants and What we're going to do is we're just going to look at the match units, which again you can think of as Being the result of the vanilla qf formula that we reviewed a few minutes ago The result of this formula being the match unit the area of the match unit squares that we're looking at here So we have these match units for grants a bnc and Now I would just like to put those Areas of the squares if you like into a pie chart so we can get more specific about the Proportions of the match units for each grant compared to the total match units across all grants and now we're going to flow these Continuous funds from the community fund measured in dollars per minute through this sort of Extruded pie chart cylinder thing to split the match funding between these three grants According to the proportions Determined by the match unit squares Right, so to make that all a bit more concrete. I'm going to do a very basic example So here I have the same three grants a bnc Let's say that based on the donations to these grants Grant a has 20 match units again 20 in this case is just the result of the qf formula that we were looking at B has 30 match units and grant C has 50 match units So the proportions of the match units compared to the total match units are 20% 30% and 50% so if we start flowing continuous funds To provide matching funds to each of these grants in a fluid way If we're flowing let's say $10 per minute From the community fund then according to the proportions grant a would get $2 per minute Grant B would get $3 per minute and grant C would get $5 per minute And if the user comes in and makes a new donation to grant C Increasing the match units for grant C Let's say let's say the increase in match units is from 50 to 150 so We were at 20 30 and 50 so now we have 20 30 and 150 so the new proportions in terms of match units are 10% for a 15% for B and 75% for C So continuing this example if we're still flowing the continuous funding from the community fund at $10 per minute then the Continuous matching fund flow rates change from two three and five to a dollar a minute 150 a minute and 750 a minute So in this case Where the user Donated to grant C and bumped up the match units from 50 to 150 that effectively increased the continuous match funding For that grant by two dollars and fifty cents per minute right, so to return to our Primary example again big fans of get coin grants drawing a lot of inspiration clearly from their model The challenges were the discrete time boxed nature of the matching rounds with a single QF calculation at the end and the inability for grant makers to choose specific start and end times That's one and the other was the the estimated match that was a little fuzzy because there's just this one QF calculation and matching amount Distribution at the end of the round the fluid QF mechanism helps address these because Since we're doing more frequent smaller QF matching distributions a grant can have an arbitrary start or end time and Like Renee was saying it's important to the grant makers to have this flexibility and secondly as we saw in the example just a moment ago since these small frequent QF distributions are happening somewhat continuously We have a really Quite precise way of saying Right now based on this donation here is how your donation to this grants bumps up the match funding for this grant and third I'll mention as a another consequence of this model for artisan grants is Any active grant on the platform will receive some ongoing passive funding From this mechanism. So to put all this into context. I'll just tell a brief somewhat abstract story The sponsor in our story they want to Donate money to good causes, you know art and Science and open-source technology and public goods in general they want to donate money But they might not have a specific interest or a specific Community in mind to donate directly to the grant maker is a passionate member of let's say an artistic community and They recognize the need in their community for extra financial support For their members to go off and create great things The donor is interested in Providing some financial support like the sponsor, but the donor has specific interests in art and science and They want their donations to have the highest potential impact for projects that they see as valuable and The creator is looking for funding. They need some Art materials. They're an artist. They need some time and space to create their next artwork, right? in the way that the fluid quadratic funding mechanism works for all of these characters is Like this so the sponsor Donates money to the community fund with the knowledge that Given the transparent aspect of the Funding mechanism their large donation will trickle down to Projects and grants that the community see as valuable The grant maker is able to spin up a grant within minutes and they're able to choose a Specific end time maybe two weeks from now on a Saturday night at 5 p.m. U.S. specific time Because they have a kickoff event at their art gallery in LA and the donor wants to donate to the grant makers grant because they They love this artistic community. They're a big fan of the gallery and they're excited to see what? Creators in that community can create And finally two weeks from now the creator is awarded among with other creators who were also Winners of the grant the creator is awarded a portion of the donations and the matching funds and They go off and make some excellent art So just checking on time. Am I okay on time? It's okay. Thank you So one of our stated goals for this fluid quadratic funding Mechanism is that we want to do it transparently Transparenly in the ways that we've come to expect from web three products. We're building in the open We're recording transactions on Shane We will be implementing the graph through web graph QL to query The data from the blockchain to provide historical charts and current stats things like the flow rate from the community fund to the QF the fluid QF mechanism the flow rates to each grant over time and how that has changed and things like this Artisan the artisan Dow will also drive Updates to the various formulas and options in the mechanism through governance So in addition to being transparent Another aspect of this model is Flexibility So I won't necessarily go into all the details here But if any of this fluid QF stuff interests you, please come grab me at some point after the session I love whiteboarding. I would love to sketch things out at a whiteboard with you You could use the vanilla QF formula like we've been focusing on and as we're planning to do for The initial rollout of the system for artisan grants You could also use a different Flavor of quadratic funding Like pairwise bounded quadratic funding which I believe it coin uses some version of a pairwise pairwise bounded quadratic funding formula Where there's some coefficient in front of the if you Look at the formula in a different way if you expand that square of of the sum then you get these pairs of Donation terms didj and instead of having a constant coefficient in front of those Square root of didj's you could change the coefficient to potentially bound the effect of pairs of donations for things like Reducing the effect of potential collusion You could look at changing the exponents of the donation and the sum Rather than a half and two you could tweak those a little bit or you could explore the idea of Like a linear match unit function similar to like a 1x or a 2x corporate matching function that whoever That the certain groups might be more familiar with or have more knowledge of then quadratic funding right, so the model is Flexible Again, you have some choice over the match unit function. You could use vanilla qf. You could use a different flavor You could do something slightly different We haven't talked about the effect that a donation Could or should have over time. I think that's an important thing to highlight and talk about So on the one hand you could envision a donation made to a grant that has the same effect in terms of match units For all time. That's one potential thing you could look at Another is that maybe it works a little bit like tennis professional tennis ranking points, let's say where the donation has an effect for 12 months so in professional tennis, right? Players play tournaments throughout the year. They collect ranking points based on how well they do at the tournaments and They're ranked according to the total points that they've amassed over the last 12 months So maybe we could do something similar Maybe it's a little bit of a stretch say but you could Just time limit the effect of a donation to just 12 months rather than indefinitely or Maybe you want to explore ideas like a half-life having some decay to the effect of the donation so that When a donation is first made the effect on the match units that affects the matching funds flow into the grant is Larger but over time it slowly decays Or maybe you'd like the user who made the donation to have some power in some way to to change that effect So there are some implementation challenges here, and I won't go into those but I am using that to set up our current idea for implementing a proof-of-concept prototype and I'm excited to mention that we are partnering with Superfluid to build out our proof-of-concept Using their technology, which is exactly the right thing to enable this at scale at the scale that we're aiming for in an inexpensive way built on polygon and Their technology that we're going to be looking at is Instant distribution agreements, so they have basically two flavors of super agreements one is more fluid more continuous on the order of Sending money in terms of like dollars per second. That's their CFA technology Their IDA technology is a little more discreet, so this proof-of-concept is going to be not exactly superfluid but a little more discreet than that and Using the IDA You set up an index and you issue units through the index to these receivers and using the IDA every five minutes, let's say we can run a small a frequent but small QF distribution by Assigning the match units using the vanilla QF formula that we were describing and Distributing the funds let's say fifty dollars in this case according to the units that the grants have so what's next for the R&D for this fluid quadratic funding project at Artisan We're in the process of drafting a white paper on the wiki for on our github repo We're going to be building some simulation experiments You know building jupiter notebooks using python numpy and sci-pi I've done some of that for a previous version of the model that we were working on for arts and grants So I'm excited to work on that. I'm also really excited if there are cad-cad folks around I would love to connect with you I would love to learn more about cad-cad because I think this could be a good candidate to model using cad-cad and Finally, yeah, we're going to be building the proof-of-concept prototype with superfluid so with that I'll say thank you again, thank you to protocol labs and The organizers and it's really an honor to share the stage with so many great speakers. It's been an amazing event. So Thank you so much