I want to learn ethereum from the ground up. Is ethereum written in python or golang or another langauge?

With written I mean the reference implementation.


Both - because ethereum is a network of co-operating nodes, it's really good for the robustness of the ecosystem to have multiple implementations.

The client written in golang (often called geth) has a focus on efficiency, and is ethereum/go-ethereum on GitHub.

The client written in python has a particular focus on readability, and is ethereum/pyethapp on GitHub.

  • Thank you very much! So learning Python first is a good choice if I wanto to learn Ethereum from the ground up?
    – Ini
    Oct 29 '17 at 17:20
  • What is ethereum/pyethereum?
    – Ini
    Oct 29 '17 at 18:39
  • @Invader it's the python library which handles core ethereum task. The command-line client pyethapp uses it to do stuff Oct 30 '17 at 18:06
  • It's probably more useful to learn python than go if the goal is understanding ethereum. But the formal specification is also available at yellowpaper.io - although it's really formal and math-heavy. Oct 30 '17 at 18:08
  • Is it necessary to understand all the stuff in the formal specification before digging into ethereum code or is it enough to understand the whitepaper?
    – Ini
    Oct 30 '17 at 19:31

Not the answer you're looking for? Browse other questions tagged or ask your own question.