HF 20 - lessons finally learned?

in #steem6 years ago (edited)

It's been pretty much exactly 1.5 years since the top witnesses at that time rejected HF 17.
Mostly everyone agreed that going forward we need more releases with fewer, better documented, and thoroughly tested changes. Unfortunately all of this was forgotten after a few weeks, and now it climaxed in HF20.

Today @reggaemuffin wrote a great post defining his requirements to accept future updates. And he's absolutely right with everything in there, it's common sense to not let practically untested changes go into a live network people and businesses rely on.
As myself, he's not in the top 20 though, and thus not in the position to decide if we fork or not (change this here ;) ). I hope the important witnesses will follow his example.

It seems the only way to make Steemit Inc. follow best practices in their processes, is by threatening to halt their efforts if they don't. Some witnesses have been uncomfortable with the release, but there has been pressure from Steemit Inc. to wave it through ("if it doesn't get accepted, this will delay SMT") so in the end there was no serious objection. This shouldn't be possible, thus we need qualifying standards to base the decision on.

So, to condense all this: Please, top witnesses and steemit, don't let that happen another time. Start to take the platform as serious as it is for its users. It can not be a beta any more when you encourage people to build their businesses on it.

Sort:  

Appreciate you saying something. I have voted for you as witness and made sure many others do as well for a long time now. Keep speaking up and being an example.

Bless∞§∞

Good writings about Steem Hard Fork.

They need to get rid of the "beta" mentality as soon as possible. Because anything that happens can just be waved off "remember, it's in beta!"

I've been spending a lot of time trying to figure out the tangled mess that is the witness system. It becomes painfully evident that @freedom / @pumpkin effectively chooses 13 of the top 20 witnesses, because they wouldn't be in top 20 without that vote.

That being said there are plenty of top 20 witnesses I respect and think are hard workers, but accepting this fork was totally irresponsible when they knew there was a negative RC's glitch happening but went ahead anyway.

The testnet that was used for this fork was not adequate because it was mirroring transactions from the mainnet, not a parallel, independent chain... i.e. "total fork rehearsal." I can't believe this is the first time that there's even been a (public) testnet!

Everything seems to be going haywire. My votes and earnings dropped.

Posted using Partiko Android

my voting power is near nothing. lol.

I have very little voting power so can't upvote this comment, but would if I could!

It can not be a beta any more when you encourage people to build their businesses on it.

This is a very good point I don't think enough about. I don't encourage any normal users to live off steem but for the devs building dapps and various businesses starting, they essentially must.

After hf19 I thought they would bundle less major changes together so it was easier to understand what effects they had on the platform and community (as well as testing) but this one seems to change many fundamentals. It is going to be near impossible to know what has done what now which makes future planning less precise. @reggaemuffin mentioned small forks more often which should be the standard.

Luckily there aren't millions of users on hundreds of apps yet so there is still time to adjust best practices.

While I think you're right, I also think the time to argue about process is when we have a functioning system again.

Are you ready to roll back? If not do you have a drop-dead point when you will support rolling back?

The system is expected to reach its equilibrium in the next 5 days. Rolling back is not an option on a blockchain, we need to look forward.

The system is expected to reach its equilibrium in the next 5 days.

Which you believe because Steemit Inc. told you so? Wasn't not doing that the point of your post?

We're not approaching a point where users will have minimum basic functionality, we're diverging from it. This is disguised by the fact that nobody's voting, but if they were you'd find hordes of small accounts running out of RCs without being able to use all of their VP, because the number of SP needed to do that keeps rising.

As far as I can tell most of the resource pool balances are increasing not decreasing which means the cost of most transactions in terms of RC is decreasing. The exception being those that allocate state (mostly comments and posts). Those seem to be increasing in cost.

Overall we won't know how the balance works out for several more days.

Finally, it isn't ever guaranteed that small accounts get to use all of their VP, or do much of anything else. By design, small accounts have very limited usage and increasing usage quota comes with increased SP. Indeed, under the bandwidth system, heavy usage meant that many small accounts were locked out entirely from using the blockchain for hours at a time.

Right but what we are seeing now is small accounts locked out from using the blockchain under very light network usage. That is not equivalent at all to small users locked out under heavy usage under old bandwidth system IMO :)

Yes, it is absolutely not the same, it is different. Better? Worse? Those are less clear for sure. It is often a first impression that any change is bad. But is it really?

I'd add that some of these issues are temporary and due to a combination of bugs (being worked on) and transition effects from the switch (will evolve/resolve over time). Some are by design, though.

As far as I can tell most of the resource pool balances are increasing not decreasing which means the cost of most transactions in terms of RC is decreasing.

All this means is that traffic is very low. Which, duh?

Finally, it isn't ever guaranteed that small accounts get to use all of their VP, or do much of anything else.

So basically your position is it's fine that someone needs to put hundreds of dollars in to have basic functionality? If that's intended behavior I'll be leaving as soon as the exchanges are open.

All this means is that traffic is very low

That is not what increasing pool balances mean. Increasing balances mean that RC prices are decreasing (i.e. each user's ability to interact with the blockchain is increasing, across all SP levels). This can happen at any absolute usage level.

So basically your position is it's fine that someone needs to put hundreds of dollars in to have basic functionality?

I don't have a position either way in the abstract. It depends on the actual costs of some particular level of usage relative to price being charged for it. This can be attacked in different ways, such as making the blockchain implementation more efficient so it can support higher usage. Just cutting prices and inviting unconstrained usage (for example low-SP comment bots making hundreds or thousands of comments per day as was the case before) with no way to pay for it doesn't sound like a viable approach to me.

Surely you would agree that there must be some SP level where the account can't use all if its vote power, and generally speaking that "low SP" accounts must have limited usage, right? Maybe that is <5 SP, maybe it is <1 SP, or even <0.1 SP, or maybe it is <30 SP or higher. We can't just pull this number out of the air, real resources must exist to support it (including with a much larger user base with many more such accounts).

AFAIK, the RC system was designed on the basis of physical resource budgets (for example, that it is sustainable for the blockchain to grow at ____ MB per day, that ___ msec of CPU is allowable per block, etc.) and then allocating these resources between users such that they can't be exceeded in the aggregate. These are real resource limits upon which the survival of the system rests. Now it is possible there are bugs or miscalculations in the early estimates, and that is certainly being looked at. So we will see what adjustments make sense to make.

Surely you would agree that there must be some SP level where the account can't use all if its vote power,

The very nature of a freemium system is that basic functionality must be free. Maybe that's "sponsored by @steemit" in the sense of resource usage, but it's not optional unless we're going to a pure pay-for-play model, which is not what anyone said they want, and is not something I believe will be practical in the long-term.

AFAIK, the RC system was designed on the basis of physical resource budgets (for example, that it is sustainable for the blockchain to grow at ____ MB per day, that ___ msec of CPU is allowable per block, etc.) and then allocating these resources between users such that they can't be exceeded in the aggregate. These are real resource limits upon which the survival of the system rests.

As I pointed out to @andrarchy before the fork, there's a real risk that what we discover under this system is that Steem never really worked in the first place. That seems to be where we're heading right now.

The very nature of a freemium system is that basic functionality must be free.

Yes I think we all agree on that. Where we may disagree is on the how to define "basic functionality".

what we discover under this system is that Steem never really worked in the first place

Certainly true to some extent, though the magnitude is less clear. IMO it is better to discover and work on improving any mismatch between expectations or desires on the one hand and reality on the other than to continue to play make believe.

BTW, you may find this interesting on cost trends:

https://steemit.com/steem/@holger80/how-strong-are-the-rc-costs-changing

Doesn't change that we have to work from where we are now

Rolling back is not an option on a blockchain, we need to look forward.

We need to get to a state where this cannot be said again with any seriousness.

" Rolling back is not an option on a blockchain". Uh... yeah it is... and if the resource credits stabilize at an equilibrium that freezes 90%+ of the actual human owned and operated accounts on the blockchain from normal interaction levels, then it absolutely should be rolled back. Flagged for massive disagreement with the statement and the philosophy behind it.

You can further patch to get back to old behavior, but you can not simply roll back to a prior version without invalidating all transactions since the fork.

thanks for clarifying, had just done some digging myself and realized this. my apologies, flag removed. I thought you were saying this as more of a philosophical statement. sorry. So related question though - if a HF21 was released that had same code as the last stable HF19 release that wouldn't work?

No because the new transactions that exist on the blockchain over the past 2 days, and probably some of the resulting state, would be considered invalid by HF19 code. There would need to be a new hybrid created, and that's a very significant effort.

I guess with the RC system in particular you don't even have to patch or roll back, Stinc built into HF20 the ability to roll back the RC system and go back to prior bandwidth system. From steemitblog post: ""Due to this uncertainty, we added a 'fail safe' to the code that will enable witnesses to revert from the RC system back to the old bandwidth system if absolutely necessary."

In practice that is easier said than done. It requires not only witnesses but (nearly) all nodes in the whole ecosystem to make this change.

Ah... thanks for that clarification. So even if a supermajority of top witnesses made this change, if Stinc isn't on board and doesn't update api.steemit.com for instance it wouldn't work?

Correct. Transactions go through the front end nodes first. For steemit.com users (and indeed many other app users) that means nodes run by steemit.com. If those nodes don't pass through the transactions, witnesses never receive them and they don't go the blockchain.

It was a disaster for the dApps this way... I find it very confusing that on one hand Steemit inc wants the dApps to succeed but they make their lifes very challenging by bad documentation and no beta test environment pre-release.

So far I have not seen any T20 witness with serious answers.
Everything went fine, steem on!
That seems the Motto of the day.
Not one opposed the HF20.
That is a full consensus.
All their testing and review went fine.

What can we low and even lower witnesses do in the future to avoid such major issues?

Not much... be more vocal, and hope it's appreciated by those who decide in the background maybe?

If I am vocal, some are complaining, I would always complain.
If there is need in proper service management, I could be of service.
A secret non T20 witness channel to have our own background decisions maybe?
:))

I fear criticism will be hushed down, you are not entitled to say anything.. Or make it better.. Or even, if you don't like it here, why don't you leave it.
But after every release one should look for weak spots, improvements, etc.

What are the next steps towards SMTs?
Any Roadmap there?

"if it doesn't get accepted, this will delay SMT"

That isn't even an argument.. Because is it really better to go with a bad hf20 towards SMTs?
Instead of delay them and work it out?

Looks more like big cooperations behavior.

It kinda came across like, say, Facebook trying to go straight from this:

...to this:

Without anything in between... =)

Oh but remember, this is a decentralized platform, so no one single person or entity controls the direction of the product.

Yeah right! STInc maintains all of the power here, the Witnesses are just for show since STInc shoves what they want down the witnesses throats and they have to say "Thank you Sir, May I have another"

Still the best game in town though I suppose. Until that changes, Inc will keep getting their way.

I'm not sure if it's Stockholm Syndrome1 or not but I'm seeing "success" everywhere so I started to think it as a success as well. And focusing to the positive parts. Yes this HF is a big strong punch to spam, but in the meantime I just leased 600SP and doubled my power of 9 months old account and I just left with 9 comments to put (so you better upvote this precious one ahah). And this HF suppose to increase sign-ups and it does in theory. However a newly created account has only two options, they either power up or power up. Steem became freemium. I'm not sure how this will end.

Sad part is I'm hearing rumors that T20 is scared to lose STINC support, I'm not an investor but it would sound bad to an investor too. If that's the case and I can already observe many money-centric, lack of knowledge accounts rising in witness ladder. So I don't know what would be the solution but maybe increasing the top witness count might help with easily centralised decisions. IDK even if that is possible.

Coin Marketplace

STEEM 0.28
TRX 0.13
JST 0.032
BTC 60918.56
ETH 2919.11
USDT 1.00
SBD 3.56