I agree to let the competition machanisim solve the problem: obviously shareholders appreciate and would like to vote the witnesses that provide more and better service.
and AFAIK, to provide good price feed is also possible via free/open source script, for example, alt has published his script at https://pypi.python.org/pypi/btsprice/0.2.21, it's a good reference.
on the other side, I wonder whether we need to consider one question: suppose publishing price feed become what witness must do, shall we increase the block reward? and to how much?
now being a witness can get some reward, but the reward is not very attractive, we need to balance the responsibility and the reward, maybe we need to reestimate what a reward is more reasonable? maybe a more reasonable reward can lead to more active ecosystem?
kindly give your input on this topic.
@Bhuz sorry if I did things carelessly, I' recheck and take actions accordingly.
@alt runs a bussines which depends on precise and resilient feeds. His code skills along with a real incentive, brings us a good chance to improve the way we fetch and derive external prices.
Besides that I think it would be more productive to fork and improve
@xeroc script, as a way to sum the scarce resources we have on this topic.
Some conditions have to be given for diversity to be enriching, and for fair competition to exist at all. In the meanwhile, I think that cooperation is the way to go. Competition will favor aptitude and commitment only when we become able to incentivize it.
Some numbers: - Witness reward averaged something around $200/month this year.
- Let's say a regular VPS with 8Gb RAM costs 80 USD per month, and 50 USD for 4Gb.
- That is a 150 USD reward for witnesses running just one node with only 4Gb (at its very memory limit).
- There's a 120 USD incentive to have 8Gb on just one node, with no failover at all.
- Even running two 4Gb nodes with a proper failover strategy (for ~100 USD), both nodes could easily crash if RAM becomes not enough.
Automatic fork resolution is working great, but it has not been prooven beyond our current TPS.
With checkpoints and delayed nodes, we have revived the network in less than an hour with no major consequences when forks turned into lost of consensus.
But I wouldn't like to see the network crashing just when the real action starts.
- It seems to me that having two 8Gb nodes per witness, with failover able to identify and move away from minority forks (when possible with just two nodes), are the minimum technical requirements to handle the upcoming network growth. That means a reward of 40 USD per month at most.
Add seed nodes and the time required to constantly check and fix feeds, having everything up to date and the need to remain informed in a daily basis.
That means good withesses working at a loss, while icentivizing poor performance for a proffit.This also brings another concern to me: as many good neutral witnesses lack of incentive or resources/time despite they good will, it drives business to run it's own witnesses given their need to have reliable feeds.
I see a flaw here: business tend to have more resources, voting stake, reward incentives and thus good performance , this raises their motivation and chances to have many witnesses voted in.
As business models may disagree about market parameters that are defined by feed producers, this could lead to unfair competition or other undesirable behavors, specially now that new/unknown players are steadily arriving.
This is one of the reasons why witnesses, committee and proxies were planed as independent powers.
I'm not pushing to rise block rewards here, nor discouraging our most valuable witnesses who also runs business over bitshares.
I still enjoy being reliable and helpful as a witness, rewards aside, and I'm glad to see this debate going on in a constructive way, finally.
Just want to sumarize some facts I see.
At this point we really need a good balance between competition and collaborative work to make network and market more stable and to reduce the entry barriers.