Hi, and welcome to "Go Tooling in Action". This is a multi hour workshop, so get ready for some intense learning!
After going through the whole content, you will know about what tools can help you better write Go code, how to build artifacts from that code, and how to understand the performance of your code once it's running.
You should be relatively familiar with Go, even though we won't be writing much code. Maybe it's time to check out the Go Tour.
For a shorter and sweeter version of this workshop, you can watch the video that I made for a conference, and inspired me to create this workshop.
To go through this you will need the following:
- You have installed the Go Programming Language.
- We will be using Visual Studio Code it's free and open source.
- At some point we'll also use delve, so install it now if you think you won't have good WiFi later.
- Finally, we'll need GraphViz.
The rest of the software we'll use is quick to install through go get
, so
do not worry yet.
The workshop is for now composed of three independent sections:
In the future one more section might be added regarding monitoring of running systems, but for now that topic is out of the scope of this workshop.
This workshop is very new, so some things might be missing or wrong.
If you find anything that seems broken, please file an issue. Or even better, send a pull request! You will need to sign a CLA, you'll get the info once you send the PR.
These are places where you can find more information for Go:
- golang.org
- godoc.org, where you can find the documentation for any package.
- The Go Programming Language Blog
My favorite aspect of Go is its community, and you are now part of it too. Welcome!
As a newcomer to the Go community you might have questions or get blocked at some point. This is completely normal, and we're here to help you. Some of the places where gophers tend to hang out are:
- The Go Forum
- #go-nuts IRC channel at Freenode
- Gophers’ community on Slack (signup here for an account).
- @golang and #golang on Twitter.
- Go+ community on Google Plus.
- Go user meetups
- golang-nuts mailing list
- Go community Wiki
This is not an official Google product (experimental or otherwise), it is just code that happens to be owned by Google.