Go: An Introduction

Go: An Introduction

An introduction to the Go programming language. Deck was created for and targeted at a lunch and learn for developers at Blackstone Media (http://www.blackstonemedia.com/) and StarkNine (http://www.starknine.com/) in Louisville, KY.

Referenced Links:
- https://github.com/slogsdon/b (for code walkthrough)
- http://golang.org/
- http://tour.golang.org/
- http://godoc.org/

Presentation can be viewed at http://youtu.be/SI-okTfauyw

033132c341296d7f5e5b41e871178418?s=128

Shane Logsdon

June 06, 2014
Tweet

Transcript

  1. 2.

    Why Use Go •  Standard Library •  Tooling •  Compiling

    •  Concurrency •  Deployment •  And more
  2. 3.

    Standard Library •  Provides large chunk of necessary functionality • 

    encoding/json & encoding/xml •  flag •  io/ioutil •  net/http •  net/http/httptest •  testing •  Etc. •  External libraries offer convenience
  3. 5.

    Compiling •  Compilation within seconds •  No waiting for VM

    to spin up •  Target multiple platforms with cross compilation •  Increase development efficiency
  4. 6.

    Concurrency •  Goroutines •  lightweight asynchronous “processes” •  Channels • 

    transfer data between goroutines •  Example •  server handles individual requests in separate goroutines
  5. 7.

    Deployment •  Can be single binary file •  Built for

    host platform and OS •  Quick compile process -> build on host •  Easy integration with CI/CD services