Skip to main content

Ethereum Principles

Certain principles that are followed as the design principles of Ethereum. These are as follows.
  • Simplicity:
    • ethereum protocol should be as simple as possible even at the cost of some data storage and time inefficiency ( note: in case of complex scenarios, documentation should be clear, concise and up-to-date )
    • the protocol should be easy to implement for an average developer
    • any optimization should be avoided unless it adds substantial benefits
  • Universality:
    • there are no features to ethereum's design
    • it allows an internal scripting language to allow development of any smart contract or transaction type that can be mathematically defined
    • one can
      • invent own financial derivative
      • make own currency
  • Modularity:
    • parts of the ethereum protocol should be as modular as possible
    • any future development causing modification to the protocol, should not impact the application stack example Ethash, modified Patricia Trees, RLP
    • the development should be helpful for entire ecosystem not just individual or itself
  • Agility:
    • the ethereum protocol are not stoned, there may be a need to modify architecture to allow better scalabilty or security
  • Non-descrimination:
    • the protocol should not be restricted or prevent specific categories of usage
    • a programmer can even run an infinite loop script on ethereum to keep paying per-computational-step transaction fee