Once in a while we get those holy sh*t moments here on Steem.
Yesterday's announcement was one of them.
For those who missed it, Steemit Inc provided an update about the MIRA project and it was powerful. I will do my best to explain some things about it and why it is so important.
To start, Steemit Inc takes a lot of hits from the community and rightly so in my opinion. For the better part of 2.5 years they over promised and under delivered. This concluded that fateful day in November when it was announced the company was bleeding money and had to enter survival mode.
Since that time, they laid off a bunch of people requiring them to narrow their focus. This was one of the best things to happen to Steem since I joined.
What Is MIRA?
To briefly cover this, MIRA is an adapter that ties the Steem blockchain code to RocksDB. This enables the conversion without having to rewrite the entire code of the base layer which would take an eternity.
RocksDB is a database structure designed by Facebook for their newsfeed. The basic advantage to this is it allows systems like this to use SSD technology over RAM. This comes into play in terms of cost.
Consider a laptop. The device might have a 500 GB HDD with 8 GB RAM. Obviously, the RAM is for running applications while the HDD is where videos, documents, and audio is stored. Why didn't they just use 500 GB of RAM? Because then your laptop would cost the same as the national debt of Peru.
Presently, the blockchain is run on RAM. This is a design that Dan Larimer prefers. EOS, STEEM, and I presume, Bitshares use the same structure. The RAM situation of last year with EOS is well chronicled. This is a drawback to it.
So what does this all mean and what are the benefits?
By using RocksDB, the amount of RAM memory needed to run the blockchain drops. This applies to both Master and Witness nodes. We are going to see a lower break even point for Witnesses meaning that more could be willing to open up nodes.
At the same time, and equally as important, is the drop in price of Master nodes could result in more being set up. When you see a 75% drop in price, one could open up 4 nodes for the same money. Presently, there are only a handful of nodes outside of Steemit. It was the price of these nodes that was getting so costly for the company.
The Holy Sh*t Moment
The other benefit can be explained with an analogy.
Have you ever noticed that each time you buy a new laptop, let us say in 3 or 4 year intervals, the amount of hard drive space increases. A couple generations back, entry level devices has 256GB. Then we saw 500 GB standard a couple years later. Today, it is not uncommon for a lower end laptop to have 1 TB of memory.
All the while, the cost of the laptops remained fairly constant.
Here is the major point. The cost of this memory gets cheaper over time.
This means, that by going to RocksDB, depending upon the deflationary pace of SSD memory, the cost of running the blockchain could get cheaper over time. If the price of memory drops faster than the increased need of the blockchain, we will see added hardware cost less than what it is replacing.
Here we see how scaling issues are handled. Often, those issues are not as much technical as financial. Most anything can be scaled with enough money. There does come a point where it simply is not cost effective. If, for example, to scale, it took a $20,000 server per user, scaling is technically possible but not financially.
As you can see, Steem will have no financial limitation on its scaling if the price of SSD memory continues to drop at the pace it has been.
Do you remember these things? They haven't gotten much attention of late but they did when Hard Fork 20 took place. One of the major changes at that time was the implementation of this. While it was the cause of major disruption at the time, it did give the blockchain an idea of the cost of what it takes to transact on the blockchain.
I do not know the algorithm used but Resource Credits are, essentially, the cost of operation of the blockchain. This is what caused such an uproar by those who feel this all should be free. There is a cost to run a network, every network. None are free. Hardware, memory, and coding all requires money. We all know the only reason Facebook is "free" is because they mine the data and sell it. Thus, it is not free.
To give a general idea, the Resource Credits today are the total cost of the blockchain based upon the activity. If that activity doubled in a day, then in theory, the RCs for each transaction should halve. The reason being is the cost of running the blockchain remained the same, for the most part, from one day to the next. Obviously, this is in theory and there might be other factors in play that do not make it exact.
Now, bringing it back around, if the blockchain can get cheaper to operate over time because of the change to a memory that decreases in price, then we should see a drop in the price of Resource Credits. Hence, it will be less expensive for people down the road to operate on Steem as compared to today.
How would things change if, instead of needing the equivalent of 15 SP in Resource Credits to be active on the blockchain, one could get by with 5?
Here is a chart that shows the drop in SSD pricing which is at the core of this entire discussion.
We often talk about community and how it is important in making a blockchain. That is true and why I prefer the word "ecosystem" when describing what is forming. That said, it is important to have a highway under you that can handle the traffic. For all the grief we give them, it does appear that Steemit Inc is on the right track here.
It is very exciting to consider the idea that as time goes by, the blockchain could actually get less expensive to run. In fact, the likelihood of this happening based upon the known deflationary rate of Informational Technology is very high. We have decades of evidence that shows how memory, processing and software decreases in price over time.
Things are really getting interesting.
Here is a video that @vandeberg, developer for Steemit Inc.
He also posted a full write which provides further (and more concise) details about the changes being made.
If you found this article informative, please give an upvote and resteem.