Network programming with Go

Jan Newmarch ,

Head of Higher Education (ICT), Box Hill Institute
Adjunct Senior Research Fellow, Faculty of IT, Monash University
Adjunct Lecturer, School of Computing and Mathematics Charles Sturt University

v1.0, 27 April 2012

An e-book on building network applications using the Google Go programming language (golang)

This book has been revised to cover Go 1. The book is not complete, and also Go is expected to introduce more packages as it evolves.

A Chinese translation has been made at GitHub by Asta Xie . A local copy (as at 27 Dec, 2012) is here .


  1. Architecture

  2. Overview of the Go language

  3. Socket-level Programming

  4. Data serialisation

  5. Application-Level Protocols

  6. Managing character sets and encodings

  7. Security

  8. HTTP

  9. Templates

  10. A Complete Web Server

  11. HTML

  12. XML

  13. Remote Procedure Call

  14. Network Channels

  15. Web Sockets

A PDF is here.

An epub ebook is here.

Copyright © Jan Newmarch,

If you like this book, please contribute using Flattr
or donate using PayPal


version 1.0

version 0.5

version 0.4

version 0.3

version 0.2

version 0.1