Ethereum is Maximalist
The cryptocurrency industry over the last few years has adopted the phrase “Bitcoin maximalist” to describe Bitcoiners. Its etymology can be traced back to the creator of Ethereum. The phrase is used in the industry predominantly as a pejorative to describe Bitcoiners who reject the claim that other tokens besides Bitcoin are needed, and that radical, fast-moving, breaking protocol changes are needed to succeed. Recently, Bitcoiners have coopted the term and rejected the negative connotations from the people originating the phrase. But, it’s more accurate to say that Bitcoin and Bitcoiners are minimalist.
This post hopefully clarifies the misuse of the term, and how Ethereum is actually maximalist in philosophy, culture, and in practice when comparing the two. Essentially, Ethereum targets maximal functionality while ignoring other important characteristics of a decentralized project such as…decentralization. Bitcoin targets reliability, resilience, compatibility, and security in the form of well-tested code and a widespread network of lightweight nodes.
Ethereum is by definition maximalist.
A person who favors a radical and immediate approach to the achievement of a set of goals.
A person who favours direct action to achieve all his goals and rejects compromise
It’s fairly apparent that proponents and developers of Ethereum hold the position that everything should be on the blockchain. Which leads to many different weak pressure points being stressed in the system.
There have been numerous blog posts about the frustration of maintaining an Ethereum node in production. We all remember digital kitties mostly halting operations on the network. More recently, another Ethereum-technology-utilizing project stressed the network so much that it required developers discovering an exploit in its code for it to be stopped. This of course highlights the issues with Ethereum both allowing complex computation, and the effort required to write Ethereum contract code that isn’t exploitable.
Even more recently, the stablecoin Tether, which is simply a project utilizing Ethereum-provided technology, was creating so many transactions that it caused a transaction fee crisis. In fact, for a period of time transactions on Ethereum were more expensive than on Bitcoin (and today are consistently more expensive). This is a notable failure for Ethereum, if we are to judge it based on its creator’s commentary regarding transaction fees.
The result of that transaction fee crisis required a mostly unilateral protocol change which we now know ended up being a temporary band-aid. Ethereum blocks are approaching full utilization again, and Ethereum will likely again increase the block capacity by 25%; making it a total of 50% in a matter of roughly two months.
What effects will this have on the validating node infrastructure? Will people be able to keep in-sync with newly created blocks without having to buy expensive hardware? Likely not, but don’t worry, you can just use the centralized, self-dox-required, node-as-a-service, for-profit Infura.
Radical and Immediate Approach
What is more radical and immediate than creating a separate token that has to compete with Bitcoin’s network effects? Why exactly did Ethereum need to be built? Why did Ethereum need its own token?
One popular claim is that Bitcoin developers argued and debated over a proposed protocol change; so much so to consider it a “war”, and ultimately changed a parameter in Bitcoin such that Ethereum couldn’t be built on top of it. This is the main claim the creator of Ethereum uses as a justification for garnering investment and creating Ethereum as a separate incompatible project with a separate incompatible token.
This claim is actually a lie and has been easily debunked. But that is beside the point. The point is the approach taken (i.e. not waiting for technology applicable to Ethereum to emerge in Bitcoin) is maximalist.
The End Result
The harmful effects of Ethereum maximalism have resulted in many critical bugs, an out-of-control blockchain state growth, and a Rube Goldberg-esque set of (mostly centralized) applications; each breaking in subtle or not-so-subtle ways every time there is some protocol change.
The state growth of Ethereum is one harmful result. It’s evident when certain operations used in contracts need price tweaks because they use so many IO operations that it’s a DoS attack vector.
Bitcoin is minimalist and tech-conservative.
To summarize, the development process for Bitcoin can be described as slow and conservative so improvement proposals can be well-researched and well- tested, and so participants in the network have time to prepare and deploy the protocol changes if they want to take advantage. Changes mostly target improvements in efficiency in all areas (bandwidth usage, CPU time, RAM usage, etc.), compatibility with older versions, and breakage of compatibility is avoided.