You'll implement all the labs in Go. The Go web site contains lots of tutorial information. We will grade your labs using Go version 1.15; you should use 1.15 too. You can check your Go version by running go version.

We recommend that you work on the labs on your own machine, so you can use the tools, text editors, etc. that you are already familiar with. Alternatively, you can work on the labs on Athena.


You can use Homebrew to install Go. After installing Homebrew, run brew install go.


Depending on your Linux distribution, you might be able to get an up-to-date version of Go from the package repository, e.g. by running apt install golang. Otherwise, you can manually install a binary from Go's website. First, make sure that you're running a 64-bit kernel (uname -a should mention "x86_64 GNU/Linux"), and then run:

$ wget -qO- https://golang.org/dl/go1.15.8.linux-amd64.tar.gz | sudo tar xz -C /usr/local
You'll need to make sure /usr/local/go/bin is on your PATH. You can do this by adding export PATH=$PATH:/usr/local/go/bin to your shell's init file ( commonly this is one of .bashrc, .bash_profile or .zshrc)


The labs probably won't work directly on Windows. If you're feeling adventurous, you can try to get them running inside Windows Subsystem for Linux and following the Linux instructions above. Otherwise, you can fall back to Athena.


You can log into a public Athena host with ssh {your kerberos}@athena.dialup.mit.edu. Once you're logged in, to get Go 1.15, run:

$ setup ggo
Troubleshooting Athena

If you get the following error:

bash: setup: command not found
Then you might have removed something important from your shell's startup scripts. Compare your ~/.bashrc to /usr/prototype_user/.bashrc and add anything that you're missing.

Note that if you use a shell besides bash on Athena, the 'setup' command might not work properly, and you might need to add /mit/ggo/current/bin/ to your path manually.