Elixir Mentor

Andrea Leopardi on Network Programming

11 snips
Apr 19, 2025
Andrea Leopardi, Elixir core team member and author of Network Programming in Elixir and Erlang, guides listeners through socket-level networking and BEAM-friendly design. He breaks down TCP and the OSI layers. Conversations cover HTTP/1→2→3 and QUIC, GenTCP versus Mint, acceptor pools for scaling, and practical tips for building robust networked apps.
Ask episode
AI Snips
Chapters
Books
Transcript
Episode notes
ADVICE

Study Low-Level Networking To Debug Better

  • Learn low-level networking even if you rarely implement it; it helps diagnose latency, SSL, and protocol issues.
  • Andrea recommends understanding handshakes, serialization, and how requests traverse servers to debug real problems.
INSIGHT

BEAM Mirrors Network Semantics

  • The BEAM process model maps naturally to network problems like timeouts, failures, and asynchronous messaging.
  • Andrea Leopardi argues this alignment makes Elixir/Erlang especially well-suited for network-heavy systems.
INSIGHT

What TCP Actually Guarantees

  • TCP is a transport-layer protocol that provides ordering and retransmission guarantees but not application-level semantics.
  • Understanding TCP's guarantees clarifies why higher-level protocols like HTTP can assume ordered, reliable byte streams.
Get the Snipd Podcast app to discover more snips from this episode
Get the app