Boring Go Cover

Boring Go

Lots of Go developers start with this book

60
Chapters
7h 48m
Reading Time
$24.99
Price

Boring Go! is a refreshingly practical guide to writing Go the way it actually works best in real projects—simple, explicit, and a little bit boring (in the good way). Instead of chasing clever tricks or over-engineered abstractions, it focuses on the patterns, defaults, and trade-offs that experienced Go developers quietly rely on every day. The book makes a strong case that clarity beats novelty, readability beats magic, and boring code is often the most reliable, maintainable, and scalable choice. If you’ve ever felt that Go’s simplicity is a feature—not a limitation—Boring Go! puts words, examples, and confidence behind that instinct.

Read a free chapter or create an account to get full access.

Chapters

1

Why Go Exists

2

Installing and Running Go

3

How Go Code Is Organized

4

Go Tour Free

5

Core Go Commands

6

Formatting, Vetting, and Documentation

7

Dependency Management

8

Workspaces and Multi-Module Development

9

Predeclared Types

10

Zero Values and Initialization

11

Constants and Literals

12

Variables and Scope

13

Conditional Logic

14

Loops and Iteration

15

Arrays and Slices

16

Working with Strings

17

Maps

18

Structs and Data Modeling

19

Functions in Depth

20

Functions as Values

21

Methods and Receivers

22

Understanding Memory in Go

23

Pointers Explained

24

Mutability and Data Sharing

25

Garbage Collection

26

Designing with Interfaces

27

Interface Best Practices

28

Type Assertions and Reflection Boundaries

29

Why Generics Matter

30

Generic Functions

31

Generic Types

32

Idiomatic Generics

33

Errors as Values

34

Wrapping and Inspecting Errors

35

panic, recover, and Failure Modes

36

Testing Fundamentals

37

Test Organization and Coverage

38

Advanced Testing

39

Integration and System Testing

40

Concurrency Basics

41

Channel Patterns

42

Synchronization

43

Context and Cancellation

44

Concurrency Design Guidelines

45

Time and Scheduling

46

I/O and Streaming

47

Encoding and Serialization

48

HTTP and Networking

49

Logging and Observability

50

Static Analysis and Security

51

Code Generation and Embedding

52

Building and Releasing Software

53

Documentation and APIs

54

Reflection in Practice

55

Unsafe Code

56

Cgo and Foreign Function Interfaces

57

Performance Tuning

58

Designing for the Long Term

59

Index

60

Glossary