A follow up on: HF20: Why STEEM software development process is broken and why to fix it NOW!
Now that HF20 seems stable and mostly everyone is back on business, can we finally talk about preventing another traumatic hardfork?
How about implementing a working Testnet?
I'm not against it but some people stated (some top20 witnesses included) that it is almost impossible to fully test a hardfork upfront, and I want to say contrary, it is perfectly possible and we can start right away.
Really?
Yes!
Show me the way!
OK... let's see. I'm looking for the right language to explain myself. I talked a lot about cows in the past, but we need something more attractive...
Let's talk about Italian luxury cars!
No, no, no, no, I don't like velocity that much (it remembers me of HF20), I prefer to build something for mass adoption... I have it on the tip of the tongue.
Tesla or Toyota, both are lean
@ned gently answered one of my provocative comments the other day. There he confirms (in a very businessman speech style) that he likes the agile approach. That was enough for me, I already know what to expect from agile companies and agile teams. The infamous release of HF20 is a perfect example. So, I quickly asked for a Lean approach (without mentioning it of course) but I'm still waiting for an answer. Full story here: https://steemit.com/steem/@develcuy/re-ned-re-ned-re-sapphic-re-ned-re-ats-david-re-steemitblog-hf20-update-restoring-continuity-20181001t004050638z
Getting back to cars, have you ever heard of a car manufacturer stating: "We can't test this car before mass production". That would be nonsense don't you think? But, how things work in software, are things really that different between manufacturing and software development?
What is Lean in the first place? Oh wait! If you ignore what it is and you happen to be a witness, a STINC/Steemit Inc. staff or @ned, please educate yourself: https://www.lean.org/WhatsLean/
lean means creating more value for customers with fewer resources.
Lean.org
Resources are always scarce, then it makes sense for mostly all companies to at least learn about Lean and to evaluate whether it is the right strategy to adopt Lean.
Guess who invented Lean... Toyota. Guess what is Tesla's manufacturing approach: Lean. Should I say more?
Testing a car before mass production
By the way, nothing is perfect, a Lean company might fail:
We had better get back to the roots, let's build the Toyota way:
The right approach to test future hardforks and softworks: Simulations (or fake steem)
Straight to the point this time. My proposal is to launch a fake-steem, where everything is obviously a simulation. Let's prefix everything "fake-", so that we have: Fake-STEEM(fsteem), Fake-SBD(fsbd), Fake-witness(fwitness), Fake-market(fmarket), fake-steem.com, fake-steemconnect.com, fake-you-name-it. If we make everything functional, we can have a working simulation, where we can freely experiment without the worries.
Making this to happen is not difficult, it just a matter of having the right people willing to do it. But not a hard deal.
Don't copy steem blockchain, just start fresh on every hardfork
Look, I know that maintaining an steem node takes time and that the blockchain has a fair amount of gigabytes, but we don't need to copy the current blockchain with all its transactions. If things are well coordinated, we can have an scheduled launch date for fake-steem HF21. We have a good crowd of spammers and noisy stars in this platform, let them own the testing accounts, they'll generate good noise so that the crowd of STINC along the top20 real witnesses can squash some bugs on softforks and get the real HF21 ready for a smooth release.
Not only the above, there is other approach that would work in parallel: Artificial Intelligence. How about training bots to pull content from real steem? They could generate acceptable input for testing. Also, let the general public to register in fake-steem, so that anyone can contribute real content.
Who will pay the bills?
Ok, running such infrastructure is not that cheap, but not so expensive either. I think that STINC should control fake-steem.com and fake-steemconnect.com. It requires some decent IT infrastructure as well, but they know how to deal with it already.
Testnet vs. Fake-steem
This is most tricky part of my proposal. Both concepts are pretty similar but I want keep the concept of simulation as an invitation to create an alternative space where everything works exactly the same as the real one, except that everyone is aware that it is a fake environment. When manufacturers want to create a new car model, they design it, build it, test it, they find defects and opportunities for improvement, then they design a second version, build it, and so on. At some point they are happy with what they have and order mass production. That is what we need so we should do it, no reason to wait any longer.
What would you publish in fake-steem.com?
Let me answer first: I would copy cat and yell a lot. But I'm definitively going to use it.
How about you?