Analysis updated 2026-06-21
Study how to call C libraries from Go using CGO to use performance-critical C code in Go applications.
Learn Go assembly language to understand how Go standard library hot paths are optimized at a low level.
Build an RPC system from scratch in Go by following the book step-by-step implementation chapters.
Understand distributed systems design and web framework construction in Go beyond what introductory tutorials cover.
| chai2010/advanced-go-programming-book | knadh/listmonk | apache/casbin | |
|---|---|---|---|
| Stars | 20,065 | 20,049 | 20,107 |
| Language | Go | Go | Go |
| Setup difficulty | easy | moderate | moderate |
| Complexity | 1/5 | 3/5 | 3/5 |
| Audience | developer | pm founder | developer |
Figures from each repo's GitHub metadata at analysis time.
Reading-only resource, browse online or clone the Markdown source, no build step required.
This repository contains the source for "Advanced Go Programming" (Go语言高级编程), a freely available Chinese-language book for experienced Go developers who want to go deeper into the language. A second edition has been published in print and is also available online. The book is aimed at Go developers who already know the basics and want to understand advanced topics that typical introductory resources skip. The topics covered include CGO (the Go mechanism for calling C code from Go, and vice versa), Go assembly language (the low-level assembly dialect used inside Go's own standard library), implementing Remote Procedure Call (RPC) systems from scratch, building Protobuf plugins (Protobuf is a widely-used data serialization format common in distributed systems), building web frameworks, and designing distributed systems. The authors recommend that readers new to Go start with "The Go Programming Language" (a foundational book) before tackling this material. The repository also links to companion books by the same author on Go's abstract syntax tree (for those interested in building compilers or code analysis tools) and building a toy Go compiler from scratch. The book is written in Go and the repository contains the book's Markdown source. It is published under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 license, meaning it can be read freely but not used commercially or republished in modified form. You would use this as a study resource if you are a Go developer comfortable with the basics and want to understand how Go works at a deeper level, particularly around system programming, performance, and distributed computing.
A freely available Chinese-language book for experienced Go developers covering advanced topics like CGO, Go assembly, RPC systems, Protobuf plugins, web frameworks, and distributed systems.
Mainly Go. The stack also includes Go, Markdown.
CC BY-NC-ND 4.0, free to read online but cannot be used commercially or republished in modified form.
Setup difficulty is rated easy, with roughly 5min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.