Skip to content

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Introduction to GoLang

Course Summary

The Introduction to GoLang training course is designed to demonstrate how to build a shared "game" server for interaction via defined APIs.

The course begins by providing a foundation of GoLang by reading and modifying open source GoLang projects. Next, it explores concurrency and the standard library by assessing patterns. The course concludes by providing activities using popular GoLang libraries/frameworks.

Teach developers how to use the Go language.
Software engineers wanting to learn Go.
Software Developer
Skill Level
Hack-a-thon - Learning Spikes - Workshops
3 Days
Related Technologies


Productivity Objectives
  • Examine idiomatic Go code according to its conventions
  • Understand code from real­ world open ­source GoLang projects
  • Know how to use the basic GoLang tools, including those for dependency management
  • Analyze GoLang's networking and serialization support to create HTTP & JSON APIs
  • Run tests using GoLang's testing tools
  • Utilize GoLang's goroutines and channels to write safe, concurrent code
  • Write reliable code using GoLang errors

What You'll Learn:

In the Introduction to GoLang training course, you'll learn:
  • Introduction
    • Understand Goals and philosophy of GoLang
    • Interact with GoLang in the "playground" (
    • Find and read GoLang documentation (
  • Variables and Types
    • Define variables with types
    • Type inference
    • Constants
    • Naming conventions
    • Utilize Printf to display variables
    • Variable scope
  • Structs
    • Property collections
    • Naming conventions
  • Packages and Importing
    • Package statement
    • Name conventions
    • Import statement
    • Overview of the Go Standard Library
  • Development Environment
    • Set up your development environment
    • Download Go
    • Set up GOPATH
    • Choose your editor
    • Build and run the Go example
    • Remember the "main" package
    • Organize files
  • Functions, Parameters and Return Values
    • Define functions
    • Declare parameter types
    • Execute pointers and mutability of parameters
    • Return errors
  • Control and Looping Structures
    • If, For, and Switch basics
  • Strings, Arrays, and Maps
    • String finding and manipulation
    • Define and use Arrays
    • Use Slices for more power
    • Maps: Go's dictionary structure
    • For loops with Ranges
  • Methods
    • Method is a function associated with a type
    • Method receivers
  • Interfaces
    • Implicitly defined
    • "Duck typed"
    • Composition
  • I/O Library
    • Read from standard input
    • Write to standard output and errors
    • Use Readers and Writers
  • Concurrency
    • GoLang's concurrency approach
    • Goroutines: GoLang's lightweight managed thread
    • Channels: sending typed items between goroutines
    • Channel processing and blocking
    • Range, Select, buffering
    • Encode libraries
    • Build a client to connect to GitHub
    • Write a web server to serve static documents
    • Add a JSON API to the web server
“I appreciated the instructor's technique of writing live code examples rather than using fixed slide decks to present the material.”


Dive in and learn more

When transforming your workforce, it's important to have expert advice and tailored solutions. We can help. Tell us your unique needs and we'll explore ways to address them.

Let's chat

By filling out this form and clicking submit, you acknowledge our privacy policy.