GO Beginner ~50 h 1 students enrolled

Go

Complete Go course: from variables and functions to goroutines, channels, interfaces and web servers. Google's language for fast and reliable programs.

44 lessons
17 exercises
3900 XP for course
~50 h

What You'll Learn

Introduction to Go
Variables and Types
Strings
Numbers and Math
Conditions
Loops
Arrays and Slices
Maps
Functions
Pointers
Structs
Interfaces
Error Handling
Goroutines
Channels
Packages and Modules
File I/O
JSON
HTTP and Web Servers
Testing
Generics
defer, init, embed
Context
Concurrency Patterns
CLI Applications
Project: Calculator
Project: Todo List
Project: REST API
Go Cheat Sheet
What's Next?

This Course Includes

Interactive exercises with instant feedback
Real compiler in your browser
Certificate upon completion
Gamification: XP, levels, badges

Curriculum

30 lessons · 44 lessons · 17 exercises

1

Introduction to Go

What is Go, why learn it, first program

  • What is Go? +10 XP
  • Hello World in Go +10 XP
2

Variables and Types

Variable declaration, basic data types, constants

  • Variables in Go +10 XP
  • Practice: Variables +10 XP
3

Strings

Working with strings, formatting, strings package

  • Strings in Go +10 XP
  • Practice: Strings +10 XP
4

Numbers and Math

Integers, floats, operations, math package

  • Numbers in Go +10 XP
5

Conditions

if/else, switch, comparison operators

  • Conditions in Go +10 XP
  • Practice: Conditions +10 XP
6

Loops

for, range, break, continue

  • Loops in Go +10 XP
  • Practice: Loops +10 XP
7

Arrays and Slices

Arrays, slices, append, copy, slicing

  • Arrays and Slices +10 XP
  • Practice: Slices +10 XP
8

Maps

Create, access, delete, iterate

  • Maps in Go +10 XP
  • Practice: Maps +10 XP
9

Functions

Declaration, parameters, return, multiple return

  • Functions in Go +10 XP
  • Practice: Functions +10 XP
10

Pointers

Addresses, dereferencing, pass by reference

  • Pointers in Go +10 XP
11

Structs

Definition, creation, methods, embedding

  • Structs in Go +10 XP
  • Practice: Structs +10 XP
12

Interfaces

Definition, implicit implementation, empty interface, type assertion

  • Interfaces in Go +10 XP
  • Practice: Interfaces +10 XP
13

Error Handling

error, fmt.Errorf, errors.New, wrapping, panic/recover

  • Errors in Go +10 XP
  • Practice: Errors +10 XP
14

Goroutines

Concurrency, go keyword, sync.WaitGroup

  • Goroutines +10 XP
15

Channels

Create, send, receive, buffering, select

  • Channels in Go +10 XP
  • Practice: Channels +10 XP
16

Packages and Modules

go mod, import, exports, code organization

  • Packages and Modules +10 XP
17

File I/O

Reading, writing, os, bufio, io

  • File I/O in Go +10 XP
18

JSON

Marshal, unmarshal, tags, API interaction

  • JSON in Go +10 XP
  • Practice: JSON +10 XP
19

HTTP and Web Servers

net/http, handlers, routing, middleware

  • HTTP in Go +10 XP
20

Testing

testing package, table tests, benchmarks

  • Testing in Go +10 XP
  • Practice: Tests +10 XP
21

Generics

Type parameters, constraints, comparable

  • Generics in Go +10 XP
22

defer, init, embed

Deferred calls, initialization, file embedding

  • defer, init, embed +10 XP
23

Context

context.Background, WithCancel, WithTimeout, propagation

  • Context +10 XP
24

Concurrency Patterns

Worker pool, fan-out/fan-in, pipeline, rate limiting

  • Concurrency Patterns +10 XP
25

CLI Applications

flag, os.Args, cobra, stdin/stdout

  • CLI Apps +10 XP
26

Project: Calculator

Console calculator with operations and history

  • Calculator +10 XP
27

Project: Todo List

Structs, slices, methods in a real project

  • Todo List +10 XP
28

Project: REST API

JSON API with net/http, CRUD operations

  • REST API in Go +10 XP
29

Go Cheat Sheet

Cheat sheet for all course topics

  • Go Cheat Sheet +10 XP
30

What's Next?

Where to go after the course

  • What's Next? +10 XP

Requirements

No prior knowledge required — we start from scratch

Course FAQ

Do I need programming experience?
Not at all! This course is built for complete beginners. We start from the basics and gradually increase complexity.
How do lessons work?
Each lesson includes theory with examples and interactive exercises. You write code right in your browser, and our compiler checks the result.
How long does the course take?
On average, you can complete the course in a few days at 1-2 hours per day. But there's no rush — learn at your own pace.
Will I get a certificate?
Yes! After completing all lessons and exercises, you'll receive an electronic certificate with a unique ID.

Ready to start?

Sign up for free and start coding right now. Your first result in 5 minutes.

Start Learning