Go From Scratch

Go gophers at work
Go from Scratch
An introduction to Google's open source Go programming language that does not require experience with another programming language (C, Java, etc.)

Table of contentsEdit


Contributing to Go From Scratch - Current plans and areas in need.

Assumptions - What you should know going into this book.

Existing Resources - Official and unofficial documentation for reference.

What You'll Need - What tools to use to proceed with learning Go.


The Origin of Go - Whodunit, and why they done it.

The Language - In broad strokes.

Compared To... - Go vs. other languages.

Get GoingEdit

The Flow of Go - The basics; how programs are arranged.

Math - Calculations and modulations.

Passage - Transferring data with types, arrays, channels, and so on.

Going FurtherEdit

The Madness of Methods - Programming outside of boxes.

Interfaces - Interfaces. Interfaces interfaces. Interfaces.

Fun With Packages - A quick intro to the mass of material that comes next.

Basic PackagesEdit

The Basics - builtin, bytes, debug, errors, fmt, math, sort, strconv, strings, testing, time

I/O - archive, bufio, compress, encoding, image, io, text

Security - crypto

The Web - database, expvar, html, net

Low-Level - go, log, os, path, runtime, syscall, unsafe

Additional PackagesEdit

Alternate Interfaces - A necessity for many.

Math and Data - Keep data crunchy in milk.

Advanced Networking - Web and such.

Audio/Video - We're a bit beyond text and punchcards, don't you think?


Go Dictionary - Every usable word seen before Additional Packages.

Where To Go? - Show your Go.