Commercial providers of Go training

## On-line

* [Mastering Go Programming](https://www.packtpub.com/application-development/mastering-go-programming-video) - A comprehensive Go video training course 
* [Golang - From Beginner to Advanced - Romeo Mihalcea](https://www.devcasts.io/course/golang-from-beginner-to-advanced/)
* [Golang Tutorials - Sathish VJ](http://golangtutorials.blogspot.com/2011/05/table-of-contents.html) - A free online class.
* [Learn Go - Codementor.io](https://www.codementor.io/go) - Beginner level online class.
* [Learning to Program in Go - Chris Hawkes](https://www.youtube.com/playlist?list=PLei96ZX_m9sVSEXWwZi8uwd2vqCpEm4m6) - Free video tutorial for beginner Go programming.
* [O'Reilly Go Fundamentals](http://shop.oreilly.com/category/learning-path/go-fundamentals.do) - Video training series.
* [Pluralsight.com](http://www.pluralsight.com/tag/golang) - Offers 5 classes at beginner and advanced levels.
* [Master Go](https://appliedgo.com/p/mastergo/) - A paid online video course on Go for developers
* [Learn to Create Web Applications using Go](https://www.usegolang.com/) - A paid online video course and book about Web programming with Go
* [Golang tutorial](https://hackr.io/tutorials/learn-golang) - Learn Go from the best online golang tutorials submitted & voted by the golang programming community.

## Classroom and In-Person

* [Ardan Labs](https://www.ardanlabs.com/) - Offering customized on-site live training classes.
* [Boss Sauce Creative](https://bosssauce.it/services/training) - Personalized or track-based Go training for teams.
* [Brian Ketelsen](https://www.brianketelsen.com/) - In-person, remote, and online training classes for individuals and companies.
* [Gopher Guides](https://www.gopherguides.com/) - Customized In-person, remote, and online training classes.  Training for Developers by Developers.  Lead Instructors: [Mark Bates](http://www.gopherguides.com/team/mark.bates), [Cory LaNou](http://www.gopherguides.com/team/cory.lanou)
* [Web Development in Go](http://goblimey.com/courses/go.for.oo.devs.html) - three days, 26th-28th June 2017, London.