• Forum has been upgraded, all links, images, etc are as they were. Please see Official Announcements for more information

Proposal: Adaptive Proposal Fees

GrandMasterDash

Well-known member
Masternode Owner/Operator
Now live: https://www.dashcentral.org/p/Adaptive-Proposal-Fees

Introduction


As many of you know, there has been much discussion regarding the current 5 dash proposal fee. Although 1DPF (1 Dash Proposal Fees) was rejected, the debate clearly divided opinion.

The original 5 dash proposal fee was introduced as a mechanism to reduce spam. To date, this has worked relatively successfully. However, the current US dollar price of dash is leading some people to question if the high fee is stifling progress. OTOH, some MNOs believe the high fee acts as a filter; attracting larger and more professional projects.

Personally, although I favour a lower fee, I fully appreciate both sides of this argument. With this in mind, I am proposing what I believe to be a fair and sustainable solution.

Please keep in mind, over time, this proposal would produce some very valuable historic data regarding MNO sentiment and perhaps substantiate (or disprove) any correlation between proposals and their fees.

Note: To help those unfamiliar, this proposal also includes a brief explanation of how median averages work and why it’s well suited for this particular problem.

(This solution is using the median average, not the mean average! See explanation below)

Feasibility

As you know, we can not force core devs to enact this proposal, but your yes votes will send them a clear message. Official dash developer @UdjinM6 has indicated that this proposal looks, on the face of it, technically possible. In the short term this could be implemented as a traditional spork. However, a longer term solution might be to develop a “masternode spork”, which would be useful for many other applications / parameters.

Keep It Simple Stupid

Alternative solutions have been discussed, such as criteria based refunds and USD pegs. However, those discussions further fragmented opinion. By denominating in dash, we show no favour to one fiat currency over another. Each MNO understands the price of dash in their local currency, and they are free to adapt their vote accordingly. By denominating in dash, we are all on the same page. This is the solution of least resistance.

MNOs are being paid to make decisions and this is a very simple procedure for an MNO to voluntarily carry out each month, with the potential to be even easier through a web interface such as Dash Central et al.

Solution

Once a month, MNOs can voluntarily submit their preferred proposal fee. At the time of the Superblock, the median average will be used for the new month. A console command would be linked to a spork and look something like this:

gobject vote-many proposal-fee 5

As a voting command, MNOs would be free to change their vote within the usual constraints.

As a safety measure, at least 2% of all masternodes would need to vote, thus ensuring a good pool of diversity (2% of 4400 MNs = 88 MNs). In the extreme case of not meeting this minimum, the fee would continue as the previous month. (no one voting on a proposal fee would be symptomatic of a much bigger problem)

How to calculate the median average

All votes are placed in ascending order. For example, here are 9 votes:

1 1 3 4 5 5 5 9 10

The middle of this set is the median average. In the above example, 5 is the median average.

If there is an even set of numbers, the two middle numbers are averaged in the traditional way. That is to say, the two middle numbers are added together and divided by two. In the following example, 4 and 5 are the two middle numbers:

1 1 1 3 4 5 5 5 9 10

The average is therefore (4 + 5) / 2 = 4.5

For an alternative explanation, please see http://www.mathsisfun.com/median.html

The median average is especially good at filtering out extreme values. Let’s say, for example, there are 100 votes with 40 rogue values (extremely high or low), yet those values would still not reach the middle of the set.
 
Last edited:
Who is gonna pay for the proposal fee of this proposal ? I offer the 20% of my whole DASH fortune for this purpose.

Additionaly, and because I predict that this proposal will fail here in DASH (we all know how much stupid, greedy and selfish the DASH MN holders are), I advice you to start slowly move to another coin that supports governance and that may be governed by more reasonable people. There are a two or three alternatives until now, with PIVX being more close to the DASH system.

So lets add a similar proposal to the PIVX community. I offer 20% of my whole DASH fortune in order for you to add your proposal in the PIVX coin community also.
 
Last edited:
I'm trying to come up with reasons not to support this, but alas. Will vote Yes unless someone can convince otherwise.
 
I'm trying to come up with reasons not to support this, but alas. Will vote Yes unless someone can convince otherwise.

There are some reasons of not supporting this, strongly accosiated to the deficiencies of the median average selection process.

But I consider this proposal (and hopefuly the implementation of it) as a transitional condition that will educate the stupid Masternodes in order for them to be able to understand one day the real vote by numbers system, that rules the Universe.
 
Last edited:
I'm trying to come up with reasons not to support this, but alas. Will vote Yes unless someone can convince otherwise.

If you want to find reasons not to support it, in addition to the aforementioned deficiency, you have to take into account this very imporant deficiency of the median average, strongly associated to the fact that some people in DASH hold a lot of votes.

Again I repeat that I fully support this proposal, despite its deficiencies, because it is a transitional condition for the stupid to understand the usefulness of voting by numbers. And my support is not only words, I am giving the 20% of my whole DASH fortune for contributing to the proposal fee cost of this proposal.
 
Last edited:
If you want to find reasons not to support it, in addition to the aforementioned deficiency, you have to take into account this very imporant deficiency of the median average, strongly associated to the fact that some people in DASH hold a lot of votes.

Again I repeat that I fully support this proposal, despite its deficiencies, because it is a transitional condition for the stupid to understand the usefulness of voting by numbers. And my support is not only words, I am giving the 20% of my whole DASH fortune for contributing to the proposal fee cost of this proposal.

You can be sure the following month, the remaining MNOs would vote and outnumber the vote-ttacker. Unless you're asserting they have 51% of all nodes.. in which case dash would be fucked anyway.
 
You can be sure the following month, the remaining MNOs would vote and outnumber the vote-ttacker. Unless you're asserting they have 51% of all nodes.. in which case dash would be fucked anyway.

If you use the median average, and if the stupids have 51% of the votes, then yes, DASH is fucked anyway. But if you use the mean average, this selection process respects the minorities, so there is always a hope for the things to be reversed, as long as there is someone who always keeps his vote to the right maximum (or to the right minimum)

Now take also into account the bold rule that states that the selection process must initially respect itself. What does this mean? That in order for the median average to become the winner selection process, you have to select it by using the median average technique. You can apply the median average when selecting the median average selection process if you tally the -1 number to be the "no" answer, and the 1 number to be the "yes" answer. Selecting the median average selection process by using the median average technique makes the selection of the median average selection process unpredictable, in case the result is polarized to 51-49%. The median average selection process (according to the bold rule) needs a wider than 51% acceptance in order to be able to become a really stable selection process that does not blink (according to the will and mood of those who hold more than one votes).

If you tally the -1 number to be the "no" answer, and the 1 number to be the "yes" answer and you use the mean average in order to select the mean average selection process (thus require for the mean average to respect itself) then the result does not blink in case of polarization.

The mean average is used in the macrocosm (where everything is stable). And the median average, if ever used in the Universe, it is used in the microcosm whenever the microcosm happens to blink (quantum phenomena e.t.c)
 
Last edited:
The "no" votes are disappointing, to say the least.

"Can we please not have proposal about proposal price every month" - Imagine, $500 to submit a proposal and a MNO is likening this to spam.

"Having to vote every single month on an appropriate fee amount seems a bit cumbersome" - yeah, just imagine if we could just have free money without having to make any business decisions.

Can't help wondering how this would of turned out if my name was Evan or Ryan. Indeed, it was Ryan that wanted some data driven experimentation / discovery process. Well guess what, the opportunity comes along and a bunch of autocrats step in and deny it. Perhaps, after all, this proposal needs to go to pivx or similar.
 
nudfelsyoshy

This could also be made simpler with people just setting up their vote on automatic, and changing it when they want it. There is no need to vote once per month, every time you want you change your vote and the median is calculated on the fly. The median is actually extremely stable (it is not an average, you cannot change the median by voting crazy numbers up or down) and very little change would happen as a single person changes their vote.
Reply

GrandMasterDash

Exactly, every time they fire up their core wallet, it could just send their preference. No modification needed for this proposal, this is exactly the kind of thing I envision.
 
It has been suggested that the proposal fee could be set on the MN. I have no problem with this; who cares whether it's in the client or on the server.. the essence of this proposal is that each MN votes the proposal fee and the median is extracted.

It was also suggested that the median proposal fee could be set on a rolling basis instead of having it elected at the Superblock. Again, this is fine with me as it doesn't change the underlying idea that every MN votes the proposal fee and the median is extracted.
 
I wish Core would step in and have a say on this. In my mind, people should be voting this through, not because of the proposed interface but because of the underlying concept of extracting the median.
 
In what account do you want I give you the 20% of my DASH fortune?
Please write me here the wallet, so that I will try to tranfer to you the amount.
You didnt gave me your wallet number. Although it may be a small amount for you, please accept it.

In case the 50 PIVX (1dash) amount is finnaly acquired and your proposal can be added at PIVX, please dont do the same mistake you did here in DASH when posting the proposal.

The government questions should not last just one payment period (one month).
You should set up the governement questions as a 25 payments proposal (or as much as the budget system allows at maximum) so that the MNOs can express their opinion (and change it) for a long period of time.

The general rule is that the governament questions never expire. This does not prevent the implementation of the government questions, they can be applied instantly as long as the prefered selection process allows a result to be extracted. Of course you may find some few cases where the governament questions may need a voting dead line, but this is the exception and not the rule.
 
Last edited:
The concept of what you are proposing is a good one and deserves serious consideration, but there are some problems with this proposal as it currently stands.

The way it is written, it sounds like every month a MNO has to cast a vote for the amount of the proposal fee. This is bad wording.

You are proposing the creation of a MN setting/variable that indicates the desired proposal fee (default setting at the current 5 dash). Periodically (constantly? monthly?) the median of that setting is calculated to determine the amount of the proposal fee in effect. That's it. No voting, no work that has to be done by the MNO. Just a setting that the MNO can change at any time.

If this proposal fails, I don't think it will be because the idea isn't good, it will be because it was presented badly.

Next time, instead of wasting 5 dash on a proposal, pay 5 dash directly to an experienced Dash developer to write the code and submit a pull request.
 
I would support this even if it required Masternodes to vote every month. But it might not need to be that way, if it can just be one vote that persists for multiple months, can be changed at any time, and finalizes every month with the median average, at the same time as all the other budgets finalize.

This seems like a reasonable way to put this issue behind us and allow the masternode consensus to be determined, in a way that can scale with changing circumstances. I heavily opposed the previous two proposals but will be supporting this one. Don't let your dislike of the previous proposals bias your judgement on this one.
 
The concept of what you are proposing is a good one and deserves serious consideration, but there are some problems with this proposal as it currently stands.

The way it is written, it sounds like every month a MNO has to cast a vote for the amount of the proposal fee. This is bad wording.

You are proposing the creation of a MN setting/variable that indicates the desired proposal fee (default setting at the current 5 dash). Periodically (constantly? monthly?) the median of that setting is calculated to determine the amount of the proposal fee in effect. That's it. No voting, no work that has to be done by the MNO. Just a setting that the MNO can change at any time.

If this proposal fails, I don't think it will be because the idea isn't good, it will be because it was presented badly.

Next time, instead of wasting 5 dash on a proposal, pay 5 dash directly to an experienced Dash developer to write the code and submit a pull request.

I agree with you and @TroyDASH and would totally accept a MN server config or client-side pref because it still adheres to the root of this proposal, namely for MNs to vote and extract the median.

I had already held a pre-proposal discussion and also published a final draft before fully submitting, and no one had corrected me about the implementation, only after! Although I could of presented this better, I feel it's a little unfair that people are voting no because of the implementation.. I mean to say, when "abstain" was added to the governance system, it was never voted on yet it was blindly accepted... yes, I agree abstain was a good feature but why some people can be vague or absent about their implementation and get away with it without a vote? Likewise for Evolution; no one has voted against Evolution simply because they didn't like the mock-ups at the time.

In the core wallet, when dash is being sent, behind the scenes the client builds the appropriate commands and executes them silently. In this proposal I gave a demonstration console command no less than someone sending dash from the console. So yes, I agree my proposal could of certainly been better and I had tried to thrash this out in the pre-proposal. Now, if I have to resubmit, I will throw away another $500.. and maybe it'll get down-voted simply because some members would rather fight me than vote for the overall benefit of dash.

From now on, I think my preferred method is to get someone from core to submit a proposal and I'll give them the 5 dash independently. Core would probably get this passed and that's all I want.
 
Also, there is no such thing as a "median average."

Median and average are two different values.

The average of a set of numbers is the mean: http://www.mathsisfun.com/mean.html

The middle value of a set of numbers is the median: http://www.mathsisfun.com/median.html

People having a computer studies background define the average in a different way than the mathematicians.

https://danielmiessler.com/blog/on-average-mean-median-and-mode/


average
An average is a single value that is meant to typify a list of values.

In that sense, this is also an average, although it is neither a pure "mode average" nor a pure "mean average".

The average, in computer science terms, becomes an algorithm.
 
Last edited:
Back
Top