No, it is a very bad idea to devote efforts in an alternative client because not only will we spread scarce development resource, but also it would be much more difficult to ensure that subtle consensus bugs don't get introduced while working on several clients at the same time. Different programming languages have different quirks that could cause undefined behaviors, and that's how you get an accidental chain split.
This idea is not new, in fact Satoshi himself dismissed it with pretty much the same arguments I'm putting forward here. I'm surprised to see this point being brought up again and again. It's one of the several not very intuitive and unique things about Bitcoin I guess ¯_(ツ)_/¯
"... many consider this form of competition risky, as it may increase the chance of unplanned chain splits, caused accidentally by different consensus rules. The alternative client needs to match the consensus behaviour of the software users currently run, even matching bugs or unintended behaviour in the majority client." -Bitmex Research
reply
Really unnecessary fud. Of course several implementations can be coded with high quality that conform to protocol rules.
reply
You forget this \
reply
I agree, I see a lot of ETH devs on Twitter talking about huge amounts of tech debt. The way I understand it the current Bitcoin Core implementation in C++ has been very optimized, though I found this SO article about different implementations:
reply
To decentralize we either need to leave GitHub and leave it's maintainer/owner model and move to torrent
Or introduce several implementations that adhere to strict protocol definitions. Of course other implementations need to be battle tested and run extensive extensive unit testing and quality control.
It's either one or the other. But the current centralized position of a few dozen people is unacceptable in the long term.
reply
Github is just a coordination tool, which can be switched at any time. Git itself is decentralized already.
I agree that admin control of the github repo could be seen as "centralization" by some, but you have to consider that you don't have to download and run every new release that is put on that website.
The consensus rules will work just fine for you if you ran an older client. Hence the importance of avoiding changes that break consensus rules, AKA hard forks.
reply