Skip to content

Learn Go with uByte

Learn Go programming for free with uByte. Interactive Golang tutorials for beginners — write and run real Go code in your browser. Start today.

All Tutorials

1

Getting Started with Go

Install Go, set up VS Code, and write your first Hello World program.

beginner10 min
2

Variables & Data Types

Learn how to declare variables, understand Go's type system, and work with strings, numbers, booleans, and constants.

beginner12 min
3

The fmt Package

Master Go's fmt package — printing, formatting, format verbs, and reading input.

beginner10 min
4

Control Flow

Master if/else statements and switch in Go to make decisions in your code.

beginner15 min
5

Loops

Master Go's for loop — the only loop keyword you need for counting, iterating, and repeating.

beginner12 min
6

Arrays & Slices

Understand fixed-size arrays and dynamic slices — Go's primary tools for ordered collections.

intermediate15 min
7

Maps

Learn to use Go's maps for key-value storage, lookups, and data organization.

intermediate12 min
8

Functions

Define functions, use parameters and return values, and master closures and defer.

intermediate15 min
9

Pointers

Understand pointers in Go — memory addresses, dereferencing, and when to use them.

intermediate15 min
10

Structs

Create custom types in Go by grouping related data together with structs.

intermediate15 min
11

Methods

Attach functions to types in Go using methods, value receivers, and pointer receivers.

intermediate12 min
12

Interfaces

Define behavior in Go with interfaces — implicit implementation, type assertions, and real-world patterns.

intermediate20 min
13

Error Handling

Handle errors the Go way — the error type, if err != nil, custom errors, wrapping, and panic/recover.

intermediate15 min
14

Packages & Modules

Organize your Go code into packages, manage dependencies with modules, and use the standard library.

intermediate12 min
15

Concurrency

Harness Go's goroutines and channels for concurrent programming.

advanced25 min
16

Testing in Go

Learn how to write tests, table-driven tests, and benchmarks to ensure your Go code is correct and fast.

intermediate18 min
17

HTTP in Go

Work with HTTP handler functions, URL parsing, status codes, and query parameters using Go's net/http and net/url packages.

intermediate20 min
18

JSON in Go

Encode and decode JSON using Go's encoding/json package — struct tags, marshaling, unmarshaling, and pretty printing.

intermediate15 min
19

Select & Channel Patterns

Master Go's select statement — non-blocking operations, timeouts, done channels, and fan-in patterns for concurrent code.

advanced20 min