Choose your language
Go (Golang) for the Absolute Beginners: Hands-On Course
More than 2 million students worldwide

Go (Golang) for the Absolute Beginners: Hands-On Course

4

Go from zero to confident Go developer with a hands-on course built for absolute beginners. Master core syntax, concurrency, error handling, and real-world project structure through practical exercises. Every concept is grounded in how Go is actually used in production environments today.

Dedika for businesses

What you will learn:

  • Configure a complete Go development environment and write your first working program.

  • Build type-safe programs using Go's core data types, structs, interfaces, and methods.

  • Apply goroutines and channels to write efficient, race-free concurrent applications.

  • Handle errors idiomatically using Go's error interface, wrapping, and custom error types.

  • Construct HTTP servers and REST APIs using the standard library and third-party routers.

  • Understand Go modules, package organisation, testing, and deployment best practices.

How you study in practice Go (Golang) for the Absolute Beginners: Hands-On Course

How you practise Go (Golang) for the Absolute Beginners: Hands-On Course

For businesses looking to train their team

With Dedika for businesses, the course includes exercises and examples tailored to your own business and the way your company needs.

Click here

Course content

8 Chapters • 36 LessonsDuration between 4 and 360 hours (you decide)

Chapter 1See details

Getting Started with Go

  • Lesson 1 • Writing and Running Your First Program

    Walks through the anatomy of a minimal Go program and the build-run cycle. Connects language syntax to observable output immediately.

  • Lesson 2 • What Go Is and Why It Matters

    Covers Go's origin, design goals, and use cases in modern software. Establishes context for every technical decision made throughout the course.

  • Lesson 3 • Installing Go and Setting Up Tools

    Installs the Go toolchain and configures a productive editor environment. Ensures every student has a consistent, working setup before writing code.

  • Lesson 4 • Understanding the Go Workspace

    Explains the GOPATH, module system, and project directory conventions. Prevents common beginner confusion about where files live and how Go finds them.

Chapter 2See details

Go Syntax and Basic Data Types

  • Lesson 1 • Operators and Expressions

    Explains arithmetic, comparison, logical, and bitwise operators with precedence rules. Enables students to write correct, predictable expressions.

  • Lesson 2 • Type Conversions and fmt Formatting

    Demonstrates explicit type conversion and formatted output with fmt verbs. Prevents type mismatch errors and teaches readable print statements.

  • Lesson 3 • Numeric, Boolean, and String Types

    Covers int, float, bool, and string types with their sizes and limits. Equips students to choose the right type for any data they encounter.

  • Lesson 4 • Variables and Constants

    Teaches var declarations, short variable syntax, and typed constants. Builds the foundation for all data manipulation in subsequent chapters.

Chapter 3See details

Control Flow and Functions

  • Lesson 1 • Variadic Functions and Closures

    Introduces variadic parameters and anonymous functions that capture scope. Prepares students for higher-order patterns used in Go's standard library.

  • Lesson 2 • Defer, Panic, and Recover

    Explains deferred calls, panic propagation, and recovery for error handling. Gives students tools to write robust cleanup and fault-tolerant code.

  • Lesson 3 • Defining and Calling Functions

    Teaches function signatures, parameters, and multiple return values. Establishes the building block for all code organisation going forward.

  • Lesson 4 • Loops in Go

    Explains Go's single loop keyword, for, used in all iteration patterns. Covers range-based loops that appear in every Go program.

  • Lesson 5 • Conditional Statements

    Covers if, else if, else, and the initializer clause unique to Go. Teaches idiomatic error-checking patterns used throughout real Go codebases.

Chapter 4See details

Composite Types: Arrays, Slices, and Maps

  • Lesson 1 • Arrays: Fixed-Length Collections

    Defines array syntax, value semantics, and size constraints. Contrasts arrays with slices so students understand when each is appropriate.

  • Lesson 2 • Maps: Key-Value Storage

    Teaches map creation, CRUD operations, and safe key lookup. Maps are Go's primary associative data structure and appear in most real programs.

  • Lesson 3 • Common Slice Patterns and Pitfalls

    Addresses shared-backing-array bugs, nil slices, and idiomatic filtering. Prevents the most frequent slice-related bugs seen in beginner Go code.

  • Lesson 4 • Slices: Dynamic Collections

    Covers slice creation, the underlying array model, and growth behaviour. Slice mastery is essential for nearly every Go program students will write.

Chapter 5See details

Structs, Methods, and Interfaces

  • Lesson 1 • Composition Over Inheritance

    Uses struct embedding and interface composition to build complex types. Replaces class hierarchies with Go's idiomatic, flat composition model.

  • Lesson 2 • Defining and Using Structs

    Covers struct declaration, field access, and struct literals. Structs are Go's primary mechanism for grouping related data into meaningful types.

  • Lesson 3 • Pointers and Value Receivers

    Explains pointer semantics, address-of operator, and dereferencing. Clarifies when to use pointer vs. value receivers on methods.

  • Lesson 4 • Methods on Custom Types

    Attaches methods to struct and non-struct types to encapsulate behaviour. Demonstrates how Go achieves object-oriented patterns without classes.

  • Lesson 5 • Interfaces and Implicit Implementation

    Defines interfaces, shows implicit satisfaction, and uses interface values. Enables writing flexible, testable code through behavioural abstraction.

Chapter 6See details

Error Handling in Go

  • Lesson 1 • Error Wrapping and Unwrapping

    Uses fmt.Errorf %w and errors.As to wrap and inspect error chains. Teaches the modern Go 1.13+ error wrapping model used in production code.

  • Lesson 2 • Custom Error Types

    Creates struct-based errors with additional context fields. Enables callers to inspect error details and respond with fine-grained logic.

  • Lesson 3 • Idiomatic Error Handling Patterns

    Covers guard clauses, early returns, and error aggregation strategies. Produces clean, readable error-handling code that follows community conventions.

  • Lesson 4 • The Error Interface

    Introduces the built-in error interface and the errors package. Establishes Go's philosophy of treating errors as values, not exceptions.

Chapter 7See details

Concurrency with Goroutines and Channels

  • Lesson 1 • Mutexes and the sync Package

    Protects shared state with sync.Mutex and sync.RWMutex. Covers sync.Once and sync.Map for common concurrent data patterns.

  • Lesson 2 • Channels: Communicating Between Goroutines

    Covers channel creation, send/receive operations, and blocking behaviour. Channels are Go's primary tool for safe data sharing across goroutines.

  • Lesson 3 • Select Statement and Timeouts

    Uses select to multiplex channel operations and implement timeouts. Enables responsive concurrent programmes that handle multiple event sources.

  • Lesson 4 • Goroutines: Lightweight Threads

    Explains goroutine creation, scheduling, and lifecycle. Demonstrates how Go multiplexes thousands of goroutines onto OS threads efficiently.

  • Lesson 5 • Detecting and Fixing Race Conditions

    Uses the Go race detector to find and eliminate data races. Reinforces correct concurrency patterns through hands-on debugging exercises.

Chapter 8See details

Packages, Modules, and the Standard Library

  • Lesson 1 • Essential Standard Library Packages

    Surveys fmt, strings, strconv, math, time, and os packages. Reduces reliance on third-party libraries for common programming tasks.

  • Lesson 2 • Testing with the testing Package

    Writes unit tests, table-driven tests, and benchmarks using the built-in testing package. Establishes a test-first mindset for all future Go development.

  • Lesson 3 • Organising Code into Packages

    Explains package naming, exported vs. unexported identifiers, and import paths. Proper package design is the foundation of maintainable Go projects.

  • Lesson 4 • Go Modules and Dependency Management

    Covers go get, go mod tidy, versioning, and replacing dependencies. Ensures students can manage third-party libraries in real-world projects.

  • Lesson 5 • Working with JSON and the io Package

    Encodes and decodes JSON using encoding/json and streams data with io. These skills are required for virtually every web and API project in Go.

Certification

Your valid completion certificate

This course is for you:

  • Python developer: wants a faster, statically typed language for backend services.

  • Computer science student: needs practical Go skills beyond academic coursework.

  • DevOps engineer: aims to build custom tooling and automation scripts in Go.

  • JavaScript developer: ready to explore a compiled language for server-side work.

  • Career changer: transitioning into software development with a modern, in-demand language.

  • Hobbyist programmer: curious about Go after hearing it powers major cloud infrastructure.

What our students say

Your lessons are perfect. I purchased the one-year package and finally have the opportunity to follow various topics of interest without needing to change platforms... I'm grateful for everything you do, I've already recommended you to other people...
Giulio Carlo
Giulio CarloDigital Marketing Student
I like how the lessons are straight to the point and how I can change chapters and skip content I don't need.
Mariana Ferres
Mariana FerresPhotography Student
I like the content and the way videos are presented and transcribed, which speeds up the process!
Luciana Alvarenga
Luciana AlvarengaNail Design Student
The platform is fast and simple to use. The diversity of content and complementary videos really help with learning.
André Felipe
André FelipePrompt Engineering Student

Top qualifications

FAQ

Who is Dedika?

Is the certificate valid in the United Kingdom?

Are the courses free?

What is the course workload?

What are the courses like?

How do the courses work?

What is the duration of the courses?

What is the cost or price of the courses?

What is an EAD or online course and how does it work?

PDF Course