Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Determine curation dynamics #9

Open
cedricwaxwing opened this issue Aug 22, 2023 · 4 comments
Open

Determine curation dynamics #9

cedricwaxwing opened this issue Aug 22, 2023 · 4 comments

Comments

@cedricwaxwing
Copy link

cedricwaxwing commented Aug 22, 2023

Evaluate ways we could eliminate and/or improve the curation step

IDEAS

Random sampling:

each voting address has ability to vote on a subset of projects, or 10 pairwise comparisons to more closely evaluate.

Pairwise:

would our weighting of how much on-chain points have anything to do with that? - would need a formula
https://pairwise.generalmagic.io/
https://gov.optimism.io/t/final-pairwise-tinder-ux-for-web3-community-signaling/6142/14

Variations
  • 2 at a time or 4-5 ranked choice to get more granularity
  • Complex mode - pioneer.app (online accelerator) - https://medium.com/pioneerdotapp/pioneer-how-it-works-thoughts-and-takeaways-27b87d483a3e - every week there's a project update - you see 10 binary options, you can see description and what they did this week and plans for next week, and judge which progress is better - they show a leaderboard - and they pair two projects together (ex two in the e-commerce space) - like a tournament - there's a feedback system they've developed
    Continuous DAO Drops - weekly/biweekly/monthly - project logs progress - voting - feedback - gameified - leaderboards top 50, based on stage, country, etc
    • Option - if project/person is at top of leader board, they more power
      dot vote across 10

    • vote on similar projects (compare similar projects)

    • Question: would that still have the popularity contest problem - is there a way to minimize that?

Prediction Market (ties into incentives)

Game around predicting how popular each project will be, get a kickback, can stake money on your prediction

Scouts

Give $50k to these people to give to most impactful projects. After, evaluate how impactfully that was given out, each scout receives more money to give if they do well.

  • Recipients in previous round could be scouts in next round.
  • vote on projects similar to yours
@magentaceiba
Copy link

magentaceiba commented Aug 22, 2023

Data point re: impact evaluations, groups with more resources are able to make more impact. So we'd need to adjust for that somehow in pairing or instructions for evaluating. Would Pairwise + EAS address provide variety of stage/capacity/assets data to round out the impact achieved relative to how resourced the project is? In nonprofit fundraising it's a huge problem because large inefficient NGOs get most of the funds because they have the staff to speak the lingo and document progress, whereas grassroots groups are more efficient, more effective, and actually solve structural problems. Similar thing happening in Gitcoin Grants climate round with for example small projects in the global south that could scale fast cheaply but theres a weird gap/hurdle. We addressed this pretty well with DAO Drops Round 1. Our "uniqueness / solving a unique problem" category was off because there were many similar groups within one area of marginalization.

@magentaceiba
Copy link

Planning session 9/6:
Discussion around using Pairwise and gamifying curation!

  • Long tail after 200 projects gets lopped off so the pot isn't too diluted, spam projects don't receive funds
  • Challenge: if too many nominees, not enough get seen - voted on
  • Project owners also vote on others or filter them - more/less impact, how is the progress over the last couple years, some kind of star or feedback, OR pairwise comparisons. That as a step in the process on nominating.
  • Example: 500 projects submitted. Notification: Hey, you've been nominated. Here's what you need to do in order to be eligible to receive money. Submit your KYC and vote in (they get assigned a random sample of nominated projects). (pair voting or sample of 10 projects rank them 1-5)
  • DAO Drops Reputation score - the more you've done from the system, the more benefit you get. It randomly selects the order of Pairwise, but you get many sets of those. The more you submit, the higher your score is, the higher your score is.... the higher up your project profile appears in the page OR on a leaderboard that means you more frequenty you appear in the sample. I.e. a high visibility score x impact score.
  • Or get allocated some money for the amount of participation, or earn points for himself.
  • Within a certain time period, project leads get points from sharing on social media and curating.
  • This system could work continuously - there's an epoch each month. Sponsor money can be dumped in at any time and it gets weighted out in the epochs it will get distributed across.
  • If we got a $600K contribution we should disperse that $100k per month so it's continuous and steady.
  • We can have an inbetween to getting to continous - we have manual on/off switches so we get everything dialed so the epochs are rolling. We could jump to, say 3 epochs in a row then pause to improve.
  • We could also incentivize the fundraising - a % of funds collected to goes to who collected them. Random people can go out and do biz dev for this mechanism, for example convince philanthropists to put money into it. They the referring person gets 1% of that money.

@magentaceiba
Copy link

From Colin:

  • How might we avoid users from just voting mindlessly in order to get "visibility" points. IE: It would be possible for them to just vote completely randomly on projects without reading them, and they'd still receive points.
  • Perhaps in a future version, the "betting" incentives could be used here?

Muath:
On the 1st point, Pioneer solved this by when you vote on 1 of the 2 projects, you also give a short feedback for both projects with the one you voted for being mandatory (what you liked, didn't like, what you think it can improved, perhaps the project owner asked for review on something from the voters, ...etc), and after all the voting is done, the project owner receives all of them and selects top 3 that are most useful out of the 10, who ever those 3 voters are receives X amount of points as a reward for valuable feedback, this incentives people to read through the project and understand it in order to give valuable feedback that can give them more points and ultimately rank them higher which in turns translate to money earned at the end, we can use some of these methods here to solve this issue.

@MuathJ
Copy link
Contributor

MuathJ commented Sep 12, 2023

I've asked GPT4 for a possible development & implementation plan based on the information we have, considering constraints on budget and time, and separation of components based on their importance, here is the response:

Development Plan:

Primary Components: (must-haves):

1. User Points System:

  • Why: A transparent points system is pivotal to encourage active participation. It serves as a tangible metric for users to see the direct benefits of their engagement, which in this case is a potential increase in funding for their project.
  • How: Implement a dashboard for each user, displaying their current points. Use a transparent algorithm to convert points to potential funding. Ensure that this algorithm is visible or accessible to users to maintain trust.

2. Pairwise Voting System:

  • Why: Pairwise voting simplifies decision-making, allowing users to choose between two options at a time. This approach can lead to more nuanced results and encourages more participation since the choices are simplified.
  • How: Develop a dynamic system that randomly pairs projects for voting, ensuring that each project gets an equal opportunity to be voted on. As users log in, they are presented with pairs to vote on until they have completed their voting quota.

3. User Authentication & KYC:

  • Why: It's vital to ensure the authenticity of users to maintain the platform's credibility and prevent potential fraudulent activities.
  • How: Use a combination of email verification, two-factor authentication, and KYC (Know Your Customer) processes that collect necessary documents to verify the user's identity.

4. Notification System:

  • Why: Regular communication keeps users engaged, informed, and can increase participation rates.
  • How: Implement an email and in-app notification system. Ensure that users can customize their notification preferences to avoid spamming.

5. Epoch Structure:

  • Why: Structuring fund distribution in epochs provides regularity, allowing projects to plan and users to anticipate upcoming rounds.
  • How: Set up an automated system that starts and ends voting rounds, calculates point totals, and distributes funds at the end of each epoch.

Secondary Components: (good-to-haves):

1. Feedback Mechanism:

  • Why: Feedback offers valuable insights to project owners and ensures users are genuinely evaluating projects. Awarding points for feedback also encourages thoughtful participation.
  • How: Whenever a user votes, prompt them to give feedback on their choice. Use a combination of open-ended questions and ratings for various aspects of the project.

2. Leaderboard System:

  • Why: Leaderboards create healthy competition, can motivate users to be more active, and provide visibility to top projects or participants.
  • How: Display top earners of points dynamically on the platform, updating in real-time as users gain points.

3. On/Off Switch:

  • Why: To allow system administrators to pause epochs for improvements, maintenance, or in response to feedback.
  • How: Implement an admin dashboard feature that can halt or initiate epochs. Ensure that this doesn't disrupt the user experience or the integrity of ongoing votes.

4. Incentives for Fundraisers:

  • Why: Incentives can attract more funds to the platform, thereby increasing the overall pool available for projects.
  • How: Introduce a referral or bonus system where a small percentage of the funds brought in by an individual (or their referral) is rewarded back to them.

Tertiary Components: (nice-to-haves):

1. Continuous DAO Drops:

  • Why: A continuous funding mechanism ensures stability, regularity, and can attract more consistent participation.
  • How: Implement a rolling system where funds are distributed periodically without manual initiation. The exact period (weekly, monthly) can be adjusted based on feedback and logistics.

2. Gameified Systems:

  • Why: Gamification increases user engagement and can make the participation process more enjoyable and rewarding.
  • How: Introduce elements like badges for milestones (e.g., 100 votes cast, 50 feedbacks given), prediction markets, or even quizzes about projects.

3. Scout System:

  • Why: Scouts can help identify and spotlight impactful projects that might otherwise go unnoticed. They can bring in expertise and a fresh perspective.
  • How: Appoint experienced individuals or previous top performers as scouts. Give them a set budget to allocate to projects of their choice, with a rationale for their choices.

Incorporating these components thoughtfully can lead to an engaging, transparent, and dynamic platform that rewards active participation and ensures deserving projects receive adequate funding.



Basic Implementation Strategy:

Design Phase:

  • Commence with wireframes/mockups of the user interfaces, especially focusing on the user dashboard that clearly displays their points.
  • Engage a small group in user testing to solicit feedback.
  • Amend the design considering the feedback.

Development Phase:

  • Prioritize the primary components to guarantee a minimum viable product.
  • Employ agile development methodologies, structuring the work in sprints. Reassess progress at the end of each sprint and reshuffle tasks accordingly.
  • Once the primary components are refined, start incorporating secondary components.

Testing Phase:

  • Undertake unit tests during the developmental stage to confirm the seamless functioning of each module.
  • After integrating the primary and some secondary components, proceed with beta testing with a select user group to spot potential issues and collect feedback.
  • Iterate based on this feedback.

Launch:

  • Post thorough testing and necessary iterations, roll out the platform.
  • Regularly gather user feedback for ongoing refinement.
  • Once the platform achieves stability, contemplate the development of tertiary components.

Contingency Plan:

If development faces constraints like limited funds or time:

  • Ensure all primary components are entirely functional.
  • Introduce manual interventions for select secondary and most tertiary components until resources are available.

In conclusion, the above plan prioritizes the development of the most crucial features first, ensuring a functional product can be delivered even with constraints. Continuous feedback and agile development methodologies will ensure the product remains user-centric and adaptable.



Detailed Implementation Strategy:

Phase 1: Foundation and Infrastructure

System Architecture:

  • Define the system's overall architecture, focusing on scalability, security, and modularity.
  • Choose the right technology stack (backend, frontend, database, frameworks, etc.).

Database Design:

  • Model the database to store user profiles, projects, votes, feedback, points, and other vital data points.
  • Ensure it is scalable and can handle large volumes of concurrent users.

User Authentication & KYC:

  • Integrate with trusted KYC service providers.
  • Develop user registration and authentication processes with 2FA for added security.

Phase 2: Core Features

User Points System:

  • Develop the algorithm that awards, tracks, and displays user points.
  • Build a user dashboard to show points earned, their source, and potential funding conversion.

Pairwise Voting System:

  • Implement the algorithm for random pairing of projects.
  • Design a clean, intuitive UI for users to vote between projects.

Notification System:

  • Build email and in-app notification functionalities.
  • Create templates for different types of notifications (e.g., new votes, feedback received).

Epoch Structure:

  • Create automated timers and triggers for epoch start/end.
  • Implement logic for points calculation and fund distribution at epoch's end.

Phase 3: Secondary Features

Feedback Mechanism:

  • Design UI for feedback submission after each vote.
  • Store feedback in the database, linking it to the user and project.

Leaderboard System:

  • Implement logic to rank users/projects based on points.
  • Display this on the platform, ensuring real-time updating.

On/Off Switch:

  • Develop an admin panel with controls to initiate or halt epochs.
  • Ensure system integrity during halts, storing ongoing activities temporarily.

Incentives for Fundraisers:

  • Develop a referral system, tracking funds brought in by each user.
  • Implement the logic to award incentives.

Phase 4: Advanced Features & Refinements

Continuous DAO Drops:

  • Modify the epoch system to run continuously or at specified intervals.
  • Design logic to distribute funds periodically.

Gamified Systems:

  • Design badges and milestones.
  • Implement the logic to award these based on user activities.

Scout System:

  • Develop a separate interface for scouts.
  • Implement the system to allocate budgets and allow scouts to distribute funds.

Phase 5: Testing, Feedback, and Iteration

Alpha Testing:

  • Launch an internal version of the platform.
  • Identify and rectify technical bugs and UX/UI issues.

Beta Testing:

  • Open the platform to a select group of external users.
  • Collect feedback and iterate upon it.

Final Launch:

  • After ensuring stability and addressing feedback, go live with the platform.
  • Monitor performance, user engagement, and resolve any emerging issues.

Phase 6: Continuous Improvement & Maintenance

Feedback Collection:

  • Set up channels (surveys, feedback forms) for users to provide feedback.

Regular Updates:

  • Roll out updates based on feedback and technological advancements.

Maintenance:

  • Regularly check for security vulnerabilities, optimize database performance, and ensure the overall health of the platform.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants