HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
ethereum
go-ethereum
Go2015–2024
ethereum / go-ethereum

go-ethereum

Go implementation of the Ethereum protocol

43Distinct people
51Mentions
1Explicit recommenders
51.5KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Go implementation of the Ethereum protocol

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

I'm an active RSS consumer. I use NewsBlur after Google Reader closed down. I highly recommend it. I found that RSS became an assumed protocol. It's so rare that RSS is missing…

JamesLeonis used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year51 dated mentions

Observed mentions: 2015-01-26 18:05:08 UTC to 2024-03-20 17:56:58 UTC.

0369122015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 6 mentions; 0 submissions, 6 comments20152016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 9 mentions; 3 submissions, 6 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 11 mentions; 5 submissions, 6 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 10 mentions; 1 submissions, 9 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 5 mentions; 2 submissions, 3 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC606
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC936
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC1156
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC1019
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC202
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC202
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC404
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC523
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC101
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC101

What Hacker News says

51 sources

Ask HN: Is Ethereum's Merge one of the biggest successes in Open Source?

It certainly seems it will be remembered as a major success story for open p2p protocols on the global Internet of our time. A great multitude of developers and enthusiasts belonging or contributing to diverse teams spread across the world: developing, debating, and collaborating for years to arrive at the big event. And it's all been done very much in the public view: https://weekinethereumnews.com/ https://hackmd.io/@benjaminion/eth2_news https://github.com/ethereum/pm https://www.youtube.com/c/EthereumFoundation/videos Consensus Clients: https://github.com/sigp/lighthouse#readme https://github.com/ChainSafe/lodestar#readme https://github.com/status-im/nimbus-eth2#readme https://github.com/prysmaticlabs/prysm#readme https://github.com/ConsenSys/teku#readme Execution Clients: https://github.com/akula-bft/akula#readme https://github.com/h
Read the rest
yperledger/besu#readme https://github.com/ledgerwatch/erigon#readme https://github.com/ethereum/go-ethereum#readme https://github.com/NethermindEth/nethermind#readme https://github.com/status-im/nimbus-eth1#readme And there are many Open Source specs and libraries underlying those clients that have also involved non-trivial development and collaboration, e.g. libp2p.
22 points · Open discussion

Ask HN: Does the Ethereum foundation really not develop a post-Merge client?

TL;DR: To use the new Proof of Stake network, you'll need 2 pieces of software in parallel. It seems only one of those is developed by the Ethereum foundation - implementations of the other one are only developed by various seemingly commercial entities - despite the foundation holding $ 1 billion in assets (see comments). Now that the PoS-merge is close, I tried to find out how to actually use it. https://ethereum.org/en/developers/docs/nodes-and-clients/ says: > After The Merge, both execution and consensus clients must be run together in order for a user to gain access to the Ethereum network. Here are the lists of implementations of those two clients: https://ethereum.org/en/developers/docs/nodes-and-clients/#execution-clients https://ethereum.org/en/developers/docs/nodes-and-clients/#consensus-clients So they do develop an execution
Read the rest
client, commonly known as "geth". It's on their own GitHub: https://github.com/ethereum/go-ethereum But the 5 consensus clients not only have websites which aren't ethereum.org - they are in fact also hosted on different GitHub accounts: https://github.com/sigp/lighthouse https://github.com/ChainSafe/lodestar https://github.com/status-im/nimbus-eth1 (yes, this is also for eth2, see "About" at top right) https://github.com/prysmaticlabs/prysm https://github.com/Consensys/teku Further, all of these 5 institutions seem to be companies from the looks of their website, not non-profit foundations. (Please correct me and pardon me if that is not true, I don't have the time to navigate through all these websites to figure out their precise legal status.) So is it true that there is no official reference implementation to run the post-Merge, Proof of Stake Ethereum? Only 3rd party software which is somehow endorsed but which you have to choose on your own still? Sure, more choice can be nice, but it would seem advantageous to have at least one trustworthy reference client instead of the users having to decide which of 5 commercial entities they trust?
15 points · Open discussion
What surprises me most about the Ethereum ecosystem is the software and release engineering of the implementations, especially the reference (now execution layer) go-ethereum. As has been noted elsewhere "the merge" has been in progress for years. Here we are approximately three weeks out and just this morning the (allegedly) working merge ready go-ethereum client was released. Given that the Bellatrix upgrade is scheduled for 9/6 this gives the approximately 4500 Ethereum nodes (of which 3381 are geth)[0] 10 days to update... It also doesn't help that they botched the prior release (two days ago) of the geth client that had a nasty corruption issue that requires a little more than the update warning footnote in this release to fix[1]. Many people who deployed 1.10.22 are re-syncing from (almost) scratch. Even if you followed Prysm and th
Read the rest
e other Beacon implementations the deployment and configuration changes required are non-trivial[2] and again, the v3 release referenced in this announcement was only released two days ago! As someone who runs Ethereum nodes I'm a little gun shy at this point deploying new releases of this stack, especially given how things have gone the past two days. Even with our relatively trivial application this gives little time for any testing or assurance process. It's amazing to me given the stakes (value of the Ethereum chain) and complexity (huge) node operators are essentially in the position of waiting until mere days (or hours) to upgrade their nodes and as noted - there are thousands of us around the world. IMO this is yet another indication that the real issue with regard to decentralization of blockchain solutions is the fact that (as pointed out by Moxie and others) the vast majority of the real users and platforms of Ethereum interact with the chain via a handful of centralized node providers (Alchemy, Infura, etc). Who can blame them given what a mess this is? I'm also not picking on Ethereum specifically, the same things could be said about most of the other chains and implementations I've interacted with. Given the hype, promise, age, and value in the blockchain ecosystem the software itself makes Apache circa 1996 look like mature, rock solid software. BTW, the Ethereum Foundation alone holds approximately $1.6B in assets[3] and investors have poured tens of billions of dollars in this ecosystem. IMO the quality and process of the fundamental software enabling all of this is inexcusable - it's not like they're wanting for resources to do this right. [0] - https://ethernodes.org/ [1] - https://github.com/ethereum/go-ethereum/releases [2] - https://docs.prylabs.network/docs/prepare-for-merge [3] - https://www.coindesk.com/business/2022/04/19/ethereum-founda...
In Mainnet Merge Announcement
If it's a bug and everybody agrees it's a bug then pushing a fix is very easy and uncontroversial. e.g. two months ago the Geth team (and other community members) were able to change EVM behavior without even telling people what the change was. They simply said the EVM does something very unexpected ("there's an EVM vulnerability") and if we all hard fork (immediately update your Geth node) then the EVM will not do anything unexpected. here's the release: https://github.com/ethereum/go-ethereum/releases/tag/v1.10.8
In I accidentally compromised my hot wallet
> A language that is touted as "difficult to learn" and "difficult to onboard" is by definition not built for maintaining. I think this presumes that you have to teach people the language. But most maintenance programming is done by hiring people already familiar with the language the existing codebase is written in, and then bringing them on to work on the existing project. Rust isn’t hard to onboard for an individual project, in the same way that a macro-laden Lisp codebase is. Once you know Rust, you know Rust. It takes more effort to “know Rust” because you have to learn all the ecosystem stuff expected of someone who “knows Rust”; but from the perspective of an employer, you can just hire “someone who knows Rust”, and they’ll come with all that knowledge. And, in fact, an experienced Rust dev may be able to start work on a novel-to-t
Read the rest
hem existing Rust project, a lot faster than (for example) an experienced C dev would on a novel-to-them existing C project, as a large stdlib / conventional ecosystem of foundational libraries (as in the case of Rust) tends to translate well to experienced developers coming into a codebase and quickly recalling everything, because it’s a bunch of the same batteries/libraries they’ve already used in the past. The difference between a design pattern and a language feature, is that you can recall language features, while you have to recognize design patterns (i.e. grok the code in order to identify what pattern(s) it’s trying to reify.) Languages with more formalisms (either built into the language, or in common use in the ecosystem) increase the amount of recall that new maintenance programmers can do (or rather, decrease the amount of recognizing they have to do to get up-to-speed), and thus make switching a maintenance programmer between codebases “cheaper.” ————— I bring this up not from the perspective of a Rust programmer, but from the perspective of an Erlang programmer... who also doesn’t like Go very much (though I do write quite a lot of Go! As a maintenance programmer!) IMHO Erlang and Go aren’t all that fundamentally different runtime-wise. Presuming you’re using them for the same thing — writing highly-concurrent, fault-tolerant network servers — the main difference between the experiences of coding in Go and in Erlang, comes down to the fact that Go provides you with a bunch of concurrency primitives that you have to put together as design patterns — and where maintenance programmers then have to recognize those patterns; while Erlang actually has universal concurrency formalisms that everyone takes advantage of, and so those formalisms can simply be recalled on new projects. I advise anyone who thinks that “recognizing design patterns” is a cheap-and-easy thing to do, to tell me what’s going on in this file: https://github.com/ethereum/go-ethereum/blob/master/eth/down... . I’ve stared at this code on-and-off for two years, and I still don’t have a mental model for it. If this code was made out of cleanly-separated named/opaque formalisms, rather than fifty design-patterns tied into a knot, I can’t even imagine how much more productive I would have been working on it.
In Green vs. Brown Programming Languages
Important to note that libraries to integrate with Ethereum exist in many popular languages: Ruby - https://github.com/izetex/web3-eth and https://github.com/DigixGlobal/ethereum-ruby Python - https://github.com/ethereum/web3.py TypeScript/JS - https://github.com/ethers-io/ethers.js/ Java - https://github.com/web3j/web3j Go - https://github.com/ethereum/go-ethereum PHP - https://github.com/sc0Vu/web3.php & more. Also - lots of tools to get started: QuikNode.io - boot nodes or JSON RPC access Infura - JSON RPC access Ganache - Fork live network for local dev OpenZeppelin - library for building smart contracts Remix - IDE for ethereum. The article above left a bit to be desired TBH
In Web3 JavaScript Functions for Ethereum DApps

Showing the 15 most recent of 51 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.