author | published_utc | updated_utc |
---|---|---|
bee |
2020-09-27 |
2020-12-21 |
This document collects recommendations for making and executing successful proposals in Decred's Politeia proposal system based on experience with past proposals.
- read Proposal Guidelines
- study existing proposals
- note which were approved and rejected
- look at voter turnouts and Yes votes percentages
- this research report has useful statistics on which proposals are more likely to pass
- field survey
- ask for general sentiment about your idea in #proposals chat via Matrix or Discord or on Reddit
- educate the community
- a complex or highly specialized proposal that has not been previously voted or discussed by the community will likely cause a lot of questions
- unlike a regular company where you would talk to a small group of appointed experts in a relevant field and the management, on Politeia people of all kinds of backgrounds are the decision makers, i.e. the ones who approve or reject proposals
- it is possible that many voters will not be familiar with the domain of your proposal
- consider starting with an educational campaign
- one option is to host a Q&A session similar to Reddit AMA ("ask me anything")
- plan your finances
- payments are made in DCR at an average DCR/USD rate of the month when the work was performed
- since DCR is volatile and invoices are paid on 2-4th week of the next month, in most extreme cases this has resulted in up to +/- 50% difference between billed and received USD equivalents
- read this for more details
Some combination of these factors will likely raise questions or red flags for many community members:
- no prior participation in Decred community
- no prior contributions to Decred ecosystem
- known low quality of past work
- big budget requested
- for developers, no demonstrable contribution to open source
- lack of facts to support the proposal and your capacity to deliver
- unclear speech and thought (including buzzwords)
Decredex proposal rejected in 2018 demonstrates many of the above issues: an entity unknown to Decred community, requesting a million dollars to build a software product, while not presenting any proofs of capacity (such as past contributions to open source).
Write proposal draft in the Markdown format:
- post it as gist (simplest)
- alternatively, you can host it in the proposals repository
- compared to gists, this adds multi-user review and editing and makes the draft discoverable
- write a clean Markdown document
- nice formatting minimizes distractions
- bookmark this excellent Markdown cheatsheet
- check for typos with a spell checker
Contentious ideas (you may want to avoid):
- schemes where Treasury receives part of the profits have been discussed many times and the community in general is very cautious about it
Add important information and avoid common mistakes:
- develop an actionable plan
- Politeia is not for voting on mere ideas
- build a team
- "I have a proposal but no time, someone else will need to do the work" will likely not work
- negotiate with each person who will execute the proposal
- if your proposal is approved, it does not automatically force all mentioned people to do what the proposal says
- avoid the mistake of assuming that person X will do task Y, only discover that it didn't happen when it's too late
- obtain the commitment to deliver from each person you list in the proposal
- ideally, each member would come to comment in the proposal to express their commitment
- include a continuity plan
- pick a clear proposal title
- summarize the proposal in one succinct line
- avoid hypey, vague or alarming titles
- as a bad example, title "A practical marketing opportunity - Massively boost the use case for DCR" here was criticized for being manipulative and not saying anything about about the proposal
- address non-expert audience
- people of all kinds of backgrounds will read your proposal, including those unfamiliar with your field, and those not fluent in English
- a good way to help more people understand your proposal is to address general and expert audiences in separate sections, as shown by this proposal
- avoid overlaps with active proposals
- try to avoid having your proposal overlapping with existing active proposals by doing/funding same things
- if that happens, clarify how the overlap is resolved (does your proposal "take over" execution and/or funding of certain items?)
- we had a case when three proposals included the same thing and it was very confusing
- state how assets produced by the proposal will be "transferred" to Decred's ownership
- where will they be uploaded and who will maintain them after the proposal is finished?
- restrictions on deliverables
- specify any license or other restrictions on deliverables
- plan the budget
- the main figure stakeholders care about is the total USD spend limit, make sure this number is clearly visible
- it is convenient when monthly USD spend limit is also presented
- if expected (average) and maximum total (and monthly) spend may vary significantly, add both numbers as done here
- talk to each member, get their monthly USD estimates (expected and maximum)
- a common practice is when "any unspent funds will remain in the Treasury", state this if it fits your proposal
- you may include estimates of labor hours and hourly rates that produced the total USD budget. Some proposals show this to be more transparent and provide an extra sanity check, while some omit hours to not go into too much detail and/or protect individual contractor's privacy. In general this is not required and it is more practical to think and communicate the proposal in terms of USD, and mention hours only for context and sanity checks (e.g. to let people ask questions like "why do you need 100 hours to update this page?"). What matters in the end is the work delivered and funds spent.
- account for any raise you plan to award your team throughout the duration
- include a bit of extra funds for possible expansion and unforeseen expenses
- break down where the money goes
- any non-trivial amount of money needs a breakdown of how it will be allocated
- good itemization boosts confidence, allows to discuss and adjust the plan
- see good examples here, here or here
- big chunks of funds without a breakdown will raise questions
- not so good example here, where a $78K item was lacking due decomposition
- plan for coordination overhead
- you will likely spend quite a few hours writing up the proposal, answering questions, and coordinating other people. If you wish to be compensated for this work, include it in the budget and mention it in the proposal.
- as a real life example, it took me more than 10 hours to prepare the moderation proposal and reply to comments
- then if it is approved, as an owner you will likely spend time/efforts on communication/coordination/management/oversight/reporting. Take this into account in your estimates regardless of whether you're going to bill for it or not.
- esp. if >1 people are executing your proposal
- the proposal must be priced in USD but the payments will be in DCR
- in rare cases pricing in DCR could have strong benefits (e.g. prize pools), clarify this with Politeia moderators
- state an explicit start and end date of the billable work period
- e.g. "work will be performed for 6 months between August 1, 2020 and January 31, 2021"
- even if start date is in the past, for example "the proposal also covers the work performed in September and October 2020"
- some proposals do not state this explicitly and it is hard to tell for when they are allowed to bill
- state proposal end condition: when term ends, when money runs out, or other
- list all risks that you already know
- for RFPs (Request for Proposals), include a deadline for submissions and any rules they must adhere to
- include any other important info
- who you are and links to verify your background
- milestones, reporting schedule, etc
- any useful info generated and clarified during draft discussion outside Politeia
- remember: your proposal is kind of a contract with Decred stakeholders. Having a clear contract to reference will help to resolve any possible disputes around deliverables or billing.
Share and iterate the draft:
- share the draft in #proposals chat room via Matrix or Discord or on Reddit for first round of feedback from community members
- never assume that a lot of people read chats
- I estimate is that ~100 people or less actively follow #proposals chat, as of Sep 2020
- prefer public places
- avoid hard-lobbying your proposal in private. Private chats and small groups are ok for collaboration/iteration "churn", but promoting the proposal "behind the scenes" will leave a bad taste and people will likely learn about it. In contrast, facing and addressing any criticism in public will boost your credibility.
- submit the proposal to Politeia
- download the so-called Proposal Bundle that contains a cryptographic proof of submission
- it may take up to a few days for the proposal to get verified and published
- if it doesn't show up, ask in #proposals chat
- if attempts to contact admins fail and you suspect unfair censorship, follow the docs and use Proposal Bundle to prove the submission
- promote pre-vote
- submit proposal link to r/decred
- post in #proposals room if it wasn't already posted by Politeia moderators
- post in relevant chat rooms (e.g. #marketing or #dev)
- post proposal summary and link in your Twitter account
- alternatively, you may use a "generic" auto-tweet by @pi_crumbs like this (not automated yet)
- ask in #media or #proposals to retweet. Retweets by @decredproject are subject to sanity rules like no giveaways or retweeting competitions, spelling errors, abuse of CAPS, punctuation, or emojis.
- find a good balance between being annoying and too shy
- remember: if you don't promote your proposal, it may happen that nobody will!
- actively engage with commenters
- answer questions and clarify misunderstandings
- make sure you don't miss email notifications from Politeia
- remember that commenters may not be the same people who will vote. People who are extremely vocal about supporting or attacking you in comments may not make any difference in the vote outcome (or not vote at all!), so don't get too hyped or too upset about comments. Voting is the only way to know what stakeholders think.
- update the proposal
- as you discover common questions or points of confusion, edit the proposal to address them
- imagine that most voters will only read the final revision before casting a vote, and that they will not read the comments. Comments take time to read and are not shown in Decrediton (the main GUI wallet).
- again, treat the proposal document as a contract with Decred DAO
- summarize significant changes in the proposal itself
- there is a feature to view text diff between proposal revisions, but not everyone knows how to use it
- when the changes are big or there are many of them, it takes time to read the diffs
- noting major changes at the end of the proposal makes them visible and saves time for the stakeholders, whose time and attention is a scarce resource
- those interested in detailed changes can always check the diffs
- see examples here and here
- give it some time for discussion
- I recommend 2 weeks to let everyone digest the proposal and post feedback
- even longer for proposals with bigger budget or impact
- authorize the vote
- it may take up to a few days for the vote to start as admins try to group proposal votes together to increase engagement
- you can no longer edit the proposal once the vote starts
- new comments and questions can still appear, keep an eye on them and respond quickly
- the vote runs for 7 days
- promote again when the vote starts
- e.g. tweet about it and ask in #media for a retweet
- do not delete the text
- rather, add a note about abandoning at the top or bottom
- even abandoned proposals are worth studying and learning from
- you cannot delete data from Politeia anyway, all versions are stored forever. Clearing the proposal just makes it harder to access.
- not trying to hide anything improves your credibility for possible future proposals
- bad examples here and here
- good example here
- talk to people and try to understand why it failed
- look at vote counts
- if it's like 95% No then the idea is really bad and needs to be reconsidered or abandoned
- but if it's like 40% Yes it's actually a good result that means thousands of tickets (worth millions of USD) supported the idea and it could pass after adjustment, at another time, or under different circumstances
- consider adjusting the proposal and trying again
- tweet about the success and next steps
- survey people who voted No
- if approval was lower than ~70% Yes, it means that thousands of tickets (worth millions of USD) voted against your proposal
- survey what the remaining ~30% think
- a good example here
- convince people who voted No
- do your best to take the No voters into account (unless it goes against the majority of Yes voters, obviously) and demonstrate good work to win more support for your future projects
- good examples are Monde PR phase 2 (90% Yes) vs phase 1 (72%) and Bug Bounty Program phase 3 (98%) vs phase 2 (93%) vs phase 1 (90%)
- try to beat them in your next proposals!
- keep the community updated on how the work is progressing
- Politeia currently lacks progress and financial reporting features, but there are other ways to post updates
- figure out the contents and schedule of reports, discuss this with your proposal team
- post progress updates periodically, e.g. once a month
- long tedious reports are often not necessary, but a few words every couple weeks is so much better than silence
- good examples are Ditto's biweekly updates, Monde PR's monthly updates posted in chats and Decred Journal, or Spanish team's monthly reports
- I recommend submitting reports to the proposals repository to collect them in one place
- learn how payouts work
- submit monthly invoices before ~10th for work performed in previous month
- ensure that your proposal team members submit in time, too
- if you submit too late you may miss the pay day and will have to wait till next month
- learn how CMS and invoices work, don't hesitate to ask
- oversee execution and review billing
- as an owner you will be expected to oversee the execution and review expenses of your proposal even if you do not work or bill yourself
- in the future, owner's explicit approval will be required for each invoice to get paid
- do not disappear
- if you just go silent, this may fuel all kinds of speculation, negatively affect your reputation and damage support of your future proposals
- if unforeseen events happen and you're suddenly short on time, try to at least "show up" once in a while
- find people you trust and delegate/transfer your duties, including oversight and funding decisions
- stay in touch with people who depend on you
- post short status updates in public places
- bad news is better than no news, i.e. even "I'm ok but unable to deliver for at least 4 months" is infinitely better than everybody guessing what to expect
- set up notifications for important keywords
- plan the next proposal
- if you plan to "renew your contract" and continue working via another proposal, plan it in advance to avoid interruption of funding for your work
- submit next proposal in advance so that the discussion and voting will finish by the start of the next billing work period
- for example, if your 6-month proposal bills for work between Jan 1 - Jul 31, and you want the next one to start Aug 1, then start drafting around Jul 1 and submit before Jul 7 so that 2-week discussion and 1-week voting will fit
- Some proposal authors refer to themselves as "author" or by name in the proposal. I think using "I" is more direct and feels better.
- Unlike Reddit, on Politeia your comments are not automatically upvoted by you. This leads to a slight skew of comment score in favor of those who upvote their comments. With a bit of extra clicks you can avoid this tiny disadvantage. Support this issue if you want to see it fixed.
- Writing Proposals on Politeia by The Decred Drive
- Did you know Decred has Governance by Decred Society - quick video intro to Politeia starts around 5 min mark
- Politeia Digest by @richardred provides a compressed overview of what is happening on Politeia
This document evolved from a 2019 comment when discussing Proposal Guidelines page of the main documentation website. When the list got bigger I moved it to a separate document in my personal notes repo. Over the year it has grown to a point where it can help more people and I moved it to this decredcommunity/guidelines repo.