We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.

Learn Web Servers

An interactive online course

Learn all about the basics of building web servers from scratch in the Go programming language. We'll keep the stack lean and simple, using primarily the standard library. Once you've completed this course, you'll feel confident building your own web servers, and the concepts you learn will be applicable to any language or framework.

24 Hours

of material

67 challenges

and quizzes

Certificate

of completion

A key part of the

back-end career path

Avoid tutorial hell

by writing a ton of code

Learn flexibly online

without interrupting your life

What will you learn?

Chapter list

1
Servers
We'll cover the basics of web servers, and why Go is such a great language for building performant web servers
2
Routing
We'll cover the basics of HTTP routing, and how to build a router using Go's standard library
3
Architecture
We'll talk about some different web architectures, and how to choose the right one for your project
4
JSON
Learn about how to parse and send JSON data from a Go server
5
Storage
We'll build a lightweight persistence layer and talk about where certain data should be stored on a server
6
Authentication
We'll build an authentication system using JWTs from scratch, and compare JWTs to other authentication methods
7
Authorization
Learn about how authorization differs from authentication, and how to implement it in your application
8
Webhooks
Webhooks are a special kind of HTTP handler that you'll use often in modern web applications. Learn how to use them here
9
Documentation
Learn about documentation, why it's important, and learn about some tools that can help you write good documentation

Authored by

Maintained by