Transacting users before HF20 vs after.

in #hf206 years ago

To gain some insights on the impact of HF20 on access to the STEEM blockchain, I ran a little script that looked at one simple metric: The number of unique transacting accounts per hour of the day. To get a usefull insights I rewinded to a few days before the hard fork untill just before the moment I made this post. I'll share my script below, but first, here is the data.
Let us first look what two normal days look like:

DateFromTillTransacting users
2018-09-230:001:0013398
1:002:0014807
2:003:0012984
3:004:0012781
4:005:0011569
5:006:0014502
6:007:0014645
7:008:0014012
8:009:0013098
9:0010:0013349
10:0011:0015252
11:0012:0013588
12:0013:0017553
13:0014:0016040
14:0015:0015115
15:0016:0017483
16:0017:0015255
17:0018:0016414
18:0019:0017095
19:0020:0016090
20:0021:0015258
21:0022:0015101
22:0023:0012428
23:0024:0013247
2018-09-240:001:0013287
1:002:0013338
2:003:0013619
3:004:0014070
4:005:0014289
5:006:0013608
6:007:0013756
7:008:0016027
8:009:0012244
9:0010:0017003
10:0011:0015512
11:0012:0015231
12:0013:0017231
13:0014:0015986
14:0015:0015101
15:0016:0017626
16:0017:0016788
17:0018:0017124
18:0019:0017918
19:0020:0015851
20:0021:0018640
21:0022:0016303
22:0023:0012480
23:0024:0014577

And now two days with HF20 in it. Remember, HF20 was supposed to activate at 15:00 on the 25th.

DateFromTillTransacting users
2018-09-250:001:0014633
1:002:0013038
2:003:0012497
3:004:0012908
4:005:0013970
5:006:0014156
6:007:0013635
7:008:0014027
8:009:0013483
9:0010:0015537
10:0011:0014755
11:0012:0015216
12:0013:0015931
13:0014:0018746
14:0015:0018782
15:0016:00635
16:0017:0092
17:0018:0074
18:0019:0079
19:0020:0056
20:0021:0051
21:0022:0059
22:0023:0083
23:0024:0045
2018-09-260:001:0065
1:002:0044
2:003:0048
3:004:0091
4:005:0041
5:006:0043
6:007:00118
7:008:00157
8:009:00130
9:0010:00136
10:0011:0099
11:0012:0072
12:0013:00107
13:0014:0087
14:0015:00118
15:0016:005061
16:0017:006670
17:0018:004207
18:0019:004020
19:0020:002819
20:0021:002372
21:0022:00
22:0023:00
23:0024:00

Most if obvious from the tables, but let us look at it in a little graph:

The above data was gathered using the below asyncsteem script.

#!/usr/bin/python
from twisted.internet import reactor, endpoints
from twisted.logger import Logger, textFileLogObserver
from asyncsteem import ActiveBlockChain

class CommentStream:
    def __init__(self):
        self.accounts = set()
    def _account(self,account):
        self.accounts.add(account)
    def hour(self,tm,event,client):
        print tm,len(self.accounts)
        self.accounts = set()
    def account_create(self,tm,event,client):
        self._account(event["creator"])
    def account_create_with_delegation(self,tm,event,client):
        self._account(event["creator"])
    def account_update(self,tm,event,client):
        self._account(event["account"])
    def account_witness_proxy(self,tm,event,client):
        self._account(event["account"])
    def account_witness_vote(self,tm,event,client):
        self._account(event["account"])
    def cancel_transfer_from_savings(self,tm,event,client):
        self._account(event["from"])
    def change_recovery_account(self,tm,event,client):
        self._account(event["account_to_recover"])
    def claim_reward_balance(self,tm,event,client):
        self._account(event["account"])
    def comment_options(self,tm,event,client):
        self._account(event["author"])
    def comment(self,tm,event,client):
        self._account(event["author"])
    def decline_voting_rights(self,tm,event,client):
        self._account(event["account"])
    def delegate_vesting_shares(self,tm,event,client):
        self._account(event["delegator"])
    def delete_comment(self,tm,event,client):
        self._account(event["author"])
    def feed_publish(self,tm,event,client):
        self._account(event["publisher"])
    def limit_order_cancel(self,tm,event,client):
        self._account(event["owner"])
    def limit_order_create(self,tm,event,client):
        self._account(event["owner"])
    def recover_account(self,tm,event,client):
        self._account(event["account_to_recover"])
    def request_account_recovery(self,tm,event,client):
        self._account(event["account_to_recover"])
    def transfer_from_savings(self,tm,event,client):
        self._account(event["from"])
    def transfer(self,tm,event,client):
        self._account(event["from"])
    def transfer_to_savings(self,tm,event,client):
        self._account(event["from"])
    def transfer_to_vesting(self,tm,event,client):
        self._account(event["from"])
    def vote(self,tm,event,client):
        self._account(event["voter"])
    def withdraw_vesting(self,tm,event,client):
        self._account(event["account"])
    def witness_update(self,tm,event,client):
        self._account(event["owner"])

mypath = dirname(realpath(__file__))
observer = textFileLogObserver(io.open(join(mypath,"hf20.log"), "a"))
logger = Logger(observer=observer,namespace="asyncsteem")
blockchain = ActiveBlockChain(reactor,log=logger,nodelist="default",rewind_days=3)
steembot = CommentStream()
blockchain.register_bot(steembot,"comment_stream")
reactor.run()
Sort:  

I will continue to promote steem in Aceh, #Hf20 has gone well.

Gone well?

HF20 so far did NOT go all that well and is not doing well as we speak at one-seventh of the normal transacting user count. I really hope this HF will be used as a learning experience by both devs and witnesses.

I agree, let them make repairs. Greetings from me

Wow! Good job! Great info!
I knew there was a big drop but that's even bigger than I thought. I think most of the users who could post were posting. lol

Interesting finding. I suppose HF20 fights spam quite well. ;-)

That's a truly massive drop. I wonder if it will start to pick up in the next few days or whether Steemit has lost some users permanently.

Coin Marketplace

STEEM 0.29
TRX 0.12
JST 0.033
BTC 62937.86
ETH 3092.40
USDT 1.00
SBD 3.87