EIP stands for Ethereum Improvement Proposal. For those who want to learn about Ethereum, EIPs can be difficult to understand because they are filled with unfamiliar and abstract terms. Although EIPs are, to some extent, a technical standard, they are primarily a process. This process involves builders gradually forming a consensus on how to improve the Ethereum ecosystem and then beginning to implement those improvements. EIPs are not only technical, but also involve a lively community.

What is EIP?

Like other technical systems, Ethereum requires standards to define its basic principles. Currently, the Ethereum Improvement Proposal (EIP) is the technical standard for Ethereum.

As its name suggests, an EIP is a proposal that can range from a humble suggestion to a definitive standard. The EIP embodies this proposal process. Anyone in the Ethereum community can propose an EIP. However, for it to become an Ethereum standard, it needs to reach a consensus through community discussion. This process documents changes in Ethereum's technology, and the entire history of each EIP can be found in the GitHub repository of EIPs.

EIP was created by Martin Becze, one of Ethereum's early core developers. The foundational document of EIP, EIP-1, was inspired by BIP-0001 and PEP-0001. Therefore, the entire framework and process of EIP, as well as its culture, is based on the open-source internet community. Its primary purpose is to propose functional improvements to the Ethereum community, facilitate community consensus, and document Ethereum design decisions. These three objectives, established in 2015, have been maintained to this day, as recorded in the EIP-1 document, which serves as the standard for EIP.

Currently, EIP is the primary mechanism used to drive functional changes, community governance, and decentralization in Ethereum. Any community member can propose EIPs, participate in related discussions, and collectively decide the future direction of Ethereum.

How does an EIP work?

The EIP process is community-driven. Currently, only two EIPs don’t have a final status, and EIP-1 is one of them. One reason for this is that discussions about the EIP process are still lively within the Ethereum community, even after eight years of existence, and significant changes are being considered.

The EIPIP (Ethereum Improvement Proposal Improvement Process) is an initiative launched by the Ethereum community to maintain and improve the EIP process. It holds meetings every two weeks to discuss ideas and reach consensus, thereby enhancing the process.

Let's take a look at the formal process for EIPs based on the contents of EIP-1.

Idea - This is an idea that is not yet a formal draft. It is not tracked within the EIP Repository. Before entering the formal process, it is highly recommended that you first post on the "Fellowship of Ethereum Magicians" forum to ask for feedback from community members and confirm the value of your idea to the community. After that, you can proceed to write and submit the formal EIP.

Draft - This is the first formally tracked stage of an EIP in development. An EIP is merged into the EIP repository by an EIP Editor when properly formatted. To a great extent, An EIP is a technical document that requires a unified writing format and framework, as well as concise language. This is the foundation for the formal development of EIP. Therefore, writing standards are equally important to the content at the "draft" stage. As Hudson Jameson once said:

An EIP enters “Draft” status as long as the EIP is correctly formatted and the content makes sense. I like to say that an EIP on how to make a proper peanut butter sandwich can be put in draft status as long as it follows the rules outlined in EIP-1 which is the rulebook for creating an EIP.

When an EIP is in "draft" status, it has already entered the official process and can be found on the official EIP website. The following process focuses on achieving consensus within the community. This process requires the author to obtain feedback and make modifications within the community, as well as implementations of the EIP by community members. The more community discussions and implementations around an EIP, the easier it is to make improvements and generate greater benefits for the community.

If the author decides to change the status of the EIP after this stage, the mechanism for changing the status mainly involves the following steps:

  1. The author submits a pull request (PR) to change the status of the EIP.
  2. During the EIP editing office hour held every two weeks, the EIP editors and the author will discuss and vote on whether to merge the PR, thus changing the status of the EIP.

The passages that follow relate to the aforementioned status changes.