🥄 Let's talk about this Fork...

in #steemit2 years ago (edited)

Steemit HardFork 20

A Fork full of Surprises.

To start off, it's reasonable to say this blockchain updating to 0.20 forked us all real real hard. Many users are still a bit disgruntled about the whole situation, rightfully so, and that's including myself. But let's take a look at what really happened here so that we may channel our frustrations appropriately.

What was Changed?

HF20 came with a ton of changes to several moving parts on this blockchain.

The biggest update was made to the "bandwith" mechanism which allows you to transact on this blockchain "for free". What used to be a simple (and arguably very very generous) stake based allocation of "bytes", has been replaced by a rather complex and dynamic "resource" pool calculation.

I was a fan of this idea right away. The noble intentions were to...

… create a system that 1) more efficiently allocates blockchain resources; 2) more accurately measures the true cost of running the blockchain; and 3) enables Steem developers to create more predictable user experiences. [source]

and it was expected

that this new system will have a beneficial impact on the prevalence of bots and spam. [source]

I still believe these arguments are valid and I believe we can expect these ideas to become a reality once the new resource system has balanced out, or as they say: "reached equilibrium".

On top of these new Resource Credits we also received several other changes and tweaks: new account creation protocols, a raised SBD-debt-rate threshhold, more granular voting calculations, a shorter delegation cooldown... So many changes it would probably make sense to write a post looking at the details for each one of them. While I'm not going to do that, I do absolutely recommend you at least check out the full list in this summary on the @steemitblog.

Personally, I'd be likely to agree with most of these, for some I don't see the necessity or benefit (looking at the debt-ratio and account-creation here), but this isn't about my ideology or my limited understanding of things. Whether we agree with the changes or not, we all felt the impact when HF20 hit the fan - multiple times!

What actually Happened?

The introduction of this new code needed 4 hasty patches on the live blockchain and left all or most users locked out of the platform for hours on end.

First there was a version-compatibility conflict prior to the fork's activation. On September, 17th, the chain went into a complete "security-halt", leaving all applications out of operation for almost a day. Not a comfortable situation, but shit happens, right? A quick patch, several hours of re-indexing the nodes, and things went back to normal.

Then came the actual fork on Sept., 25th, and things started to go really wonky. The newly introduced resource logic, as well intended as it was, came with some apparently unforeseen and arguably catastrophic consequences.

First, the system deducted the theoretical resource costs of all historic transactions retroactively. Essentially leaving everyone, except for some very few accounts with absurdly high stakes, deeply in resource-debt and thus completely unable to do anything. Alas, another patch and some hours of re-indexing later, those historic transaction costs were excluded from the calculation and mostly everyone started to see their accounts become operational again.

But still, as of right now, these new resource restrictions are leaving accounts with less than ~100SP essentially barred from properly interacting with the blockchain. The latest patch (0.20.4/.5) is supposed to put a final remedy to this situation and decrease transaction costs by a factor of 10, but it isn't activated on the network yet and is now active.

Oh, I didn't even mention the voting power drainage that affected anyone casting votes within 5 days prior to the fork, but let's not get nit-picky...

How all of this could have come completely unforeseen, escapes my comprehension!

So what went Wrong?

It's easy to just say STINC forked up, or to simply blame the top witnesses for not giving a fork... but let's be reasonable, none of that solves any problems.

To be constructive, I think at least one thing is obvious - testing and roll-out procedures are begging for improvement.

Yeah, running a full-fledged testnet, simulating a to-scale blockchain with years of transaction-history requires costly ressources. Coordinating community testing and active engagement with big project-owners on the platform is a slow and complicated process... I guess I understand how things like this go wrong if you want to make big steps too swiftly, you stumble...

But steem as a platform with an almost 300 million USD market cap shouldn't just have to faceplant like it did this week. We need to step up the game here, it's time to put up some handrails and safety nets for the future.

Looking forward!

I hope this experience will leave an impression on the community.

Some witnesses have stepped up and raised their voice on the matter allready. Theres a very reasonable "ideal-world" checklist for future "Hard Fork Adoption Requirements" and we've been given a gentle reminder that we should actually know better already.

I hope we'll see more commitment and active involvement from the top stake-holder in the future. Some serious projects and great potential is being developed on this platform and outages like we've just experienced not only leave a bad impression on the average user like you and me, they are also financially damaging to those who try to make a real business here.

It's in everyone's best interest to step up the game. I'd love to see a more open consensus-finding process with these releases, maybe don't cram so many features in at once... it should be common sense.

Some positive Results.

The introduction of RCs was rough, but at least spammers should have a tough time in the future.

We will see much less 0.001 spam transactions advertising pointless re-steeming services, less bots farming for random rewards by leaving the same comment over and over. It should free up quite some resources and allow for better scaleability moving forward. I just hope it won't make the plankton-experience a little too frustrating at the same time... the bespoke "equilibrium" will have to tell, but I am sure it'll get there eventually.

Some hints towards the possible idea of RC-markets in the future show the prospect for new economic drivers to push the intrinsic value of STEEM on the platform. I'm a bit sceptical, but yes, the "freemium" model could work.



check your RC balance at http://steemd.com/@yourusername
and if you can spare some to leave a comment, I'd be delighted!

P.S.: One last note - If you're still voting for a witness just because you want to catch a load in their circle jerk, please reconsider!! HardForks require a supermajority of the Top20 Witnesses to get activated on the network, ultimately it's these guys who have to make an informed decision about whether a change goes through or not, affiliate-marketing gurus or profit-centric-altruists won't help, we need smarts and integrity "up there".

P.P.S.: Wow... this post exploded, thanks for all your votes in such low-VP days, really didn't expect that. Anyways, The latest patch (0.20.5) is now active and all major RPC nodes have reindexed (yet again). Small accounts are finally able to do things again... now we'll have to see how this new system fares over the long run.

rant over

fraenk avatar


right now i have more RC that i could ever use with about 500SP

Yeah, the latest patch brought the aforementioned 10x resource increase. With that we're now at a level where even small account with ~10-20SP are able to leave a bit more than one comment every other day or so.

I think you forgot the follow/unfollow bots or i read over it...^^ They were really annoying, good thing that those cant to this anymore in this excess.

yeah... ugh... those are equally annoying... now I wonder, does a follow/un-follow tx actually cost RC... let me check that!

P.S.: nope, following you didn't cost me any RC ... so those buggers will probably stay around...

Oh no! <_< But at least minnows can follow without a hassle...^^

Today I have been trying to understand RC cost. So it seems to depend on how many resources there are in the pool. The less resources the more expensive it becomes. So I am guessing we are in the expensive state now. In addition, there are parameters in the RC cost function which can be tweaked so I there is lots of room for improvements.

Posted using Partiko Android

Yeah, that's the basic idea here, how the outcome of this model could be such a humongous surprise still baffles me though...

You might find the dev notes on the RC sytem interesting: https://github.com/steemit/steem/blob/master/doc/devs/2018-08-20-resource-notes.md

There's also this post by @holger80 showcasing part of the code involved... https://steemit.com/steem/@holger80/rc-costs-do-not-depend-on-compute-time

While I think the concept of RCs makes a ton of sense looking into the future... that doesn't excuse the extend of unexpected deviation here...

It takes time. Patience is in place. I like this platform and I just hope it will recover soon ;-)

It's a pity "patience" and "hope" is what we're left with... I just wish the "risks" with this update would have been communicated more thoroughly... but apparently those risks were as unforeseen as the rest of it :P

I read this post this morning. Hopefully there will be better times ;-)

I agree that the powers that be should have been completely open about it from A - Z. I was shocked that a witness who was 34 on the list said he wouldn't be listened to because 34 is too low a rank. In my experience of management and decision making, you listen to everyone for the widest possible knowledge base!

It really mostly comes down to the Top20 to lead the way here, but I believe this got everyone riled up enough so that we'll hopefully get a more broader communication and involvement with these developments.

Nice write up. Fork might have been better if it was functionally less like a spoon.

![Calling @originalworks :)]
Nice, you got a 19.0% @minnowbooster upgoat, thanks to @reggaemuffin
Want a boost? Minnowbooster's got your back!

Great indeed, the fork is so hard to break meaning a difficult man struggling to fall because of one reason or the other but tough enough to remain strong

umm... yeah... I dunno what you're saying...

todo bien detallado gracias...