I would like to go now — Free Resources for learning Go 2018

Last year I started the journey to learn Go. I had been working in software for a while (10+ years) and had worn many hats and used many different languages, without ever really settling on one.

Truth be told I had lost a lot of the enjoyment I felt coding, and hadn’t felt since using Ruby, and Go felt fresh and to me fun. So I decided to self teach in my own time as my employer at the time didn’t use Go.

Since starting my current role at teamwork.com and being able to do Go professionally I’ve had a number of people ask me for good resources to learn Go so I thought I would try and list some of my favourite free resources for anyone who is thinking about taking the leap to Go.

credit to Ashley McNamara (https://twitter.com/ashleymcnamara) source -https://github.com/ashleymcnamara/gophers

Why Go?

If you’re unsure why you should learn Go you will find some good posts on that https://medium.com/exploring-code/why-should-you-learn-go-f607681fad65 , https://www.itproportal.com/features/why-you-need-to-learn-go/ and https://hackernoon.com/why-go-ef8850dc5f3c. Go to me is the language of the modern web when you see Docker, Kubernetes and lot of other disruptive technologies are written in it. There’s a large and vibrant women who go community https://www.womenwhogo.org/ and it’s consistently voted as one of the most wanted and loved programming languages https://insights.stackoverflow.com/survey/2018/#technology. If all that is not enough for you it’s definitely got the #1 mascot going.

credit again to Ashley McNamara

Free Resources

Tour of Go — https://tour.golang.org/welcome/1 A guide to learning go legally must include this. The docs are great and it also exposes you to the playground which is a lovely sandbox environment to trial things out

Go By Example — The classics are classics for a reason. Great introduction to the language and core concepts

Go Bestiary —. A Go Bestiary — bugs, gotchas and guidelines for Go programmers. Very nicely written introduction that touches the core points of the language 
You can also purchase a copy of the book from amazon if you would like to.

Effective Go — Another good central intro resource

An introduction to programming in go — Another great book. A few of these cover similar areas so not suggesting doing them all you may just find 1 authors style and layout easier for yourself

The Little Go Book — 84 page long pdf. Great introduction

Learn Go with Tests — TDD driven approach to learning Go. This is great because it offers a great grounding in TDD as well as in learning Go and helps you understand how to build testability into your code

Exercism.io — Not go specific but the go track is a great place to give you kata like exercises to solve real problems in Go. Also thanks to recent updates to the platform you get even more help from mentors who can help you learn the language

Bootcamp — 4 week course to make some magical go things of wonder

Gophercises —You’ve learned the language basics but want to stretch your little gopher legs and make something cool. In step Gophercises. Lycra attire is optional but recommended.

Belfast Gophers

Meetups — PLUG ALERT. Go to your local meetup https://www.meetup.com/Belfast-Gophers/ if you can and get to see how your local community is using Go and understand local employers so you can continue your go journey

Hopefully you’ve got enough to get started and get fighting fit with Go

image credit to the awesome https://gophercises.com/ website

Let me know if I’ve missed anything or any other awesome FREE resources you’ve used to learn Go