tldr; I think the ERC process is okay, the EIP process should be overhauled, and more people need to proactively guide and discuss ERC standards
–
It seems like there is a misconception here, probably because how convoluted the process EIPs follow now is.
Originally, final meant that an EIP was on mainnet and was therefore unable to be changed further. This obviously doesn’t make sense for ERCs because we don’t have an equivalent consensus mechanism as “it’s on mainnet”. The simple deployment of a standard should not be enough to solidify the standard–in fact, this behaviour should really be frowned upon as it can unfairly push a standard to final before consensus on certain issues is reached.
However, as of some time in 2020, this isn’t what “final” means in the EIP repository. Final means the standard is final and will not be changed further, except for nonnormative changes. It may have very little chance of ever going into a hardfork.
I’m in favor of keeping the ERC process similar to now. I actually think this new process of focusing on the standard rather than the governance makes a lot of sense for ERCs. It’s actually EIPs that I’d like to see be treated differently. I don’t think enough people are involved in core development to sustain such a fragmented process. I’d rather governance and core EIPs go hand-in-hand. Having “final” EIPs that have very little chance of going to mainnet is not useful, and may even just suck bandwidth from people whose bandwidth is already severely limited. This isn’t to say that people aren’t welcome to bring their core changes and iterate on them until they feel they’re “final”. We’re an open ecosystem and this is always an option. But generally, core developers will make minor tweaks to proposals that are accepted. Making your EIP final before release on mainnet is imminent is not productive.
We’re getting off track.
I disagree. I think it’s also important to build strong, universally accepted standards in ERCs. I think we’re in a place today where the top 1-3 projects have substantial control over what “standards” are in place on Ethereum. If Uniswap decided it would support a new ERC-20 incompatible token, the community would scramble to add support.
I feel like the ERC space is too reactive. Most people/teams react to immediate needs, rather than consider future desires. I would really like to see some people in the space step up and help lead the discussions on how to improve smart contract standards. Are we really going to just accept ERC-20 compatibility as absolute?
Thank you @anett for raising this. I do agree, ERCs are very different from EIPs!