Very good points. We need SMTs and we need them fast. Many communities and projects on Steem are issuing tokens on other Blockchains already that will later be swapped for SMTs - if SMTs would be delayed beyond Q1 19 they should instead be lauded with a basic functionality asap, even without ICO functionalities.
Discontinuing free api nodes would significantly slow the growth and use of Steem. We wouldn't need Steemit Inc to run public api nodes if there were enough witnesses running them - so why not have all top 20 witnesses run api nodes? Sports leagues have requirements such as stadium size to get into the first league, why not make running an api node a requirement for a witness to get into the top 20?
You are viewing a single comment's thread from:
With a declining STEEM price as well as the refocus of witness role on block signing and governance rather than a general funding source that took place in HF16 (was an 80% cut), there isn't really enough money in witness rewards and especially not if the STEEM price were to decline to say its previous lows of 0.05 to 0.10.
Currently all witness rewards are approximately $800K per year (total, not each) which doesn't even cover but a fraction of the $2 million/year Steemit is paying in direct costs to operate nodes. That's assuming that all witness rewards went to this purpose which is obviously absurd. It further ignores the significant admin cost for these nodes which buildteam (which operates its own nodes for its business) has estimated at similar or more than the hardware costs.
If the STEEM price were to decline to historic lows then total witness revenue would drop to about 1/3 to 1/8 of that, or perhaps as little as $100K/year ($5K/year each!), which again is nowhere near enough for free high volume nodes open to everyone in the world.
This isn't a sustainable solution either. What is needed is not a way to shift around who runs the free nodes but a model where those operating businesses on Steem run their own nodes (ideal) or pay for a third party to run them (not ideal in terms of centralization but at least economically sustainable).
Some low volume free nodes may make sense as a community initiative where people volunteer to run nodes so people can at least run a simple wallet and access their coins, but for high usage as needed by major web sites or businesses, that needs to have some sort of sustainable funding attached to it.
It is not typical for decentralized cryptocurrencies to be run on the basis of free (and highly centralized) high volume open public nodes. Sometimes free low-volume community-run nodes as I mentioned but other than that businesses either run their own nodes or pay for a service. Steem can do what everyone else does here.
Steem already attracts less developers than other Blockchain (EOS, Ethereum) despite having very low fees to run a service since access to (slow) public api nodes is free and so are transactions (if the account has enough RC). The ability to launch a dApp on a shoestring budget is a huge plus of Steem at the moment. Shutting down access to free nodes would shrink the amount of developers interested in building on Steem and therefore the value of Steem as a Blockchain. I agree with you that dApps that have grown successfully and then need more reliable and faster nodes can start their own as it is already happening, but even right now the public nodes available are barely enough to keep up with the demand, so I don't believe that shutting down Steemit Inc.'s public nodes without a free replacement would be a good solution.
I believe that we need public nodes, but a decentralised Blockchain should not be controlled by one entity such as Steemit Inc. so I believe that having public api nodes run by witnesses - some of who would outsource them to a company such as Privex - would be a good solution. Maybe we should think of a witness pay composed of a fixed value in Steem as well as a second dynamic part oriented on USD values which guarantees that the minimum costs of running a top 20 witness plus an api node are always covered - this would come out of the rewards pool, but if Steemit Inc. would consequently either develop features that increase the value of Steem or sell less of their stake what pushes down the price, the price of Steem and the reward pool would increase. Also, this could mean decreasing the amount witnesses get from the rewards pool when prices are high - I remember in January many were complaining about witnesses getting overpaid, now it's the other way around, so obviously witnesses receiving a fixed percentage of the rewards pool is not a good solution since they have costs in fiat to cover.
Then I suggest you volunteer to pay the $2 million/year. Perhaps that cost can be reduced, in fact I'm sure it can. But it could also increase if demand grows. Personally I'd much rather have Steemit spend that money on blockchain development (not to mention staying in business/survival), which they are at this point uniquely qualified to do. With sufficient funding (not a Steemit Inc strong suit at the moment), anyone (or at least many people with the right experience) can run nodes.
BTW, witness rewards are a tiny fraction of the rewards paid out by Steem (10% of total inflation vs. 75% for post rewards). If you think free nodes are a good use of reward funds, then I suggest making one or more daily/weekly/whatever posts requesting support for free public node service and if people agree with your philosophy they can vote for it. I don't rule out that this could be a good idea. But for something to replace Steemit nodes will still be very expensive (consume a significant portion of the reward pool), and the cost can easily grow with increased usage.
Again, I don't know what EOS does (simply not familiar with it) but neither Ethereum miners nor the Ethereum Foundation provide free nodes. People who need nodes run their own or pay for a service.
Exactly (so whatever plans you have along the lines discussed above, you better plan to not only replace the Steemit nodes but actually scale UP). That's because this model is unsustainable. Nobody even knows what those public nodes are being used for. It could be hugely wasteful/inefficient usage or they could even be deliberately overworked by competitors. The model is not viable.
A decentralized blockchain is strengthened by people running their own nodes. There will inevitably be nodes as a service, which hurts decentralization, but trying to fund and operate a free service that encourages (nearly) everyone to use them is actually sabotaging (by centralizing) the network. It is quite terrible that when Steemit's nodes go down, as they have on occasion, nearly the entire ecosystem crashes. This undermines not only the operation of the network at that time, but its ongoing reputation because it is clear that everything is centralized and its "'decentralized' apps" are a sham. Even before financial problems forced the question, I was against Steemit's free node service. People should run their own, and in practice, most won't if there is a free option.
For very low usage (people just wanting to use a wallet to access their funds, experiments by devs working on a new project, etc.) there can be low-capacity free nodes offered by the volunteers in the community. But there is simply no reason for a deployed and scaled-up application to expect to rely on a free service. Life would be wonderful if all sorts of nice things were free, but they mostly are not.
I don't want Steemit Inc to spend money on running public nodes either - but we still need them.
These $2 Million currently come from Steemit Inc.'s Steem stake being sold and as a result pushing down the price of Steem decreasing the rewards pool for everyone. What if we raised the witness rewards dynamically to over 10% while the price is low and decrease them when the price is high as suggested in my previous comment?
And still they have much more more developers creating exciting dApps than Steem does - that's why their market cap is much higher. Take the free nodes away from Steem and people like me (developer on a student budget) will start looking into alternatives.
What if we introduced a new model: Nodes are freemium and accessed with API keys. Each developer who wants to access the public nodes can apply for an api key (or something similar tied to account keys), usage is tracked and if it exceeds certain limits the developer can choose to pay for higher limits or run their own private node?
Then witnesses will be selling stake instead, pushing the price down.
Now you are talking. I suggested elsewhere the possibility of a free tier with low limits (like AWS has) and the owner of buildteam, which is one of the companies potentially interested in providing node service as a business (if Steemit stops undercutting them with unlimited service at the unsustainable price of zero), responded favorably. I'm pretty sure that we can come up with a solution (maybe 'free tier' maybe something else) for students and independent devs who want to experiment without needing to pay a lot for 'commercial grade' service. Nobody is against that.