This page links to resources about error handling in Go.

## Getting Started

- Read [Effective Go: Errors](https://golang.org/doc/effective_go.html#errors)
- Code [A Tour of Go: Errors](http://tour.golang.org/methods/19) and do the [exercise](http://tour.golang.org/methods/20)
- Study [The Go Programming Language Specification: Errors](http://golang.org/ref/spec#Errors)
- Study [Package errors](http://golang.org/pkg/errors/)
- Study [func fmt.Errorf](https://golang.org/pkg/fmt/#Errorf)

## Standard Practice

- Read [Why does Go not have exceptions?](http://golang.org/doc/faq#exceptions)
- Read [Error handling and Go](http://blog.golang.org/error-handling-and-go)
- Read [Go by Example: Errors](https://gobyexample.com/errors)
- Read [Errors are values](http://blog.golang.org/errors-are-values)
- Read [golang/go/wiki: Errors](Errors)

## Advanced Topics

- Read [Why is my nil error value not equal to nil?](http://golang.org/doc/faq#nil_error)
- Read [Defer, Panic, and Recover](http://blog.golang.org/defer-panic-and-recover)