HackerTube

Gopherfest 2015 | Go Proverbs with Rob Pike

The Go Programming Language1 HN recommender · recommended in 1 month, 2016–2026
YouTube
talk · intermediate · evergreen · 2016–2026 on HN

Rob Pike presents Go Proverbs at Gopherfest 2015, a set of pithy aphorisms about Go design such as 'Clear is better than clever' and 'A little copying is better than a little dependency'.

HN treats it as the canonical source for Go proverbs, quoted in debates about dependencies, concurrency and simplicity.

12 comments from Hacker News

@Dawny332016-04 · in “Go Proverbs: Simple, Poetic, Pithy”

Just in case you haven't read the footer text: The proverbs are based on this awesome talk by Rob Spike: ▶ this video And for new proverb ideas, you can open an issue here: link

Strongly recommends View on HN
@q3k2026-03 · in “SRGB↔XYZ Conversion (2021)”

You can only pick the parts that you need and aren't now exposed to a supply chain attack. You can also easily adapt the code to your needs easily, especially as your needs change. ▶ this video

@catlifeonmars2026-01 · in “A MitM proxy to see what your LLM tools are sending”

I don’t use stars to select dependencies FWIW. I look for age, CVEs and what other reputable projects depend on a repo. Also try to look for other signals, like if claims in the readme don’t match the implementation, or if there’s poor hygiene in the CI workflows. (And yes, I have gotten burned by an otherwise well meaning project with a supply chain vuln). As the saying goes “a little copying is better than a little dependency” (see: ▶ this video ).

@liampulles2025-12 · in “Don MacKinnon: Why Simplicity Beats Cleverness in Software Design [audio]”

"Clear is better than clever" is often touted as a key part of the Go philosophy: ▶ this video You can see the impacts of this in the language design. I find Go code to be boring and fairly easy to understand.

@pbohun2025-11 · in “A million ways to die from a data race in Go”

The first Go proverb Rob Pike listed in his talk "Go Proverbs" was, "Don't communicate by sharing memory, share memory by communicating." Go was designed from the beginning to use Tony Hoare's idea of communicating sequential processes for designing concurrent programs. However, like any professional tool, Go allows you to do the dangerous thing when you absolutely need to, but it's disappointing when people insist on using the dangerous way and then blame it on the language. ▶ this video