← Languages

Erlang

Full course · 21 lessons

Erlang is a functional, concurrent language designed for building massively scalable, fault-tolerant systems with soft real-time properties. It powers telecommunications, messaging platforms (WhatsApp), and distributed databases.

Knowledge Course
01

Getting Started with Erlang

Modules, exports, atoms, variables, and the Erlang shell.

45 min
02

Values and Types

Numbers, strings as lists, format directives, and booleans.

45 min
03

Control Flow

case, if, pattern-matched clauses, and guards.

45 min
04

Lists and the Lists Module

List fundamentals, comprehensions, and the lists library.

60 min
05

Tuples and Records

Tuples, the ok/error convention, and records as named tuples.

60 min
06

Pattern Matching

Matching, destructuring, map patterns, and transforms.

60 min
07

Recursion

Recursive loops, tail calls, accumulators, and list building.

60 min
08

Anonymous Functions and Funs

Anonymous functions, higher-order functions, and closures.

60 min
09

Message Passing

send/receive, PIDs, selective receive, and timeouts.

75 min
10

Fault Tolerance

Links, monitors, exits, and try/catch.

75 min
11

OTP Behaviours

gen_server, supervisors, and applications.

75 min
12

Concurrency Utilities

Process dictionary, ets, parallel map, and timing.

75 min
13

Maps and Binaries

Maps, map updates, bit syntax, and binaries as strings.

75 min
14

Supervision Trees

Tree structure, supervisor callbacks, restart intensity.

75 min
15

Binaries and I/O

Binary matching, request parsing, building, and files.

75 min
16

Testing

EUnit, assertions, Common Test, and the TDD workflow.

60 min
17

Distribution and Hot Code

Hot code loading, distributed nodes, Mnesia, observability.

75 min
18

Performance

List performance, accumulators, efficient strings, timeouts.

75 min
19

Guards in Depth

Guard reference, type guards, pattern vs guard, case everywhere.

75 min
20

Process Pipelines and Servers

Process pipelines, worker pools, caches, health checks.

75 min
21

Advanced OTP

Call vs cast, timeouts, gen_statem, and the philosophy.

75 min
Curated Resources