Rust mastery exercises. Become your team's resident Rust expert.
Dive into the internals of Git. Discover how Git stores and moves around data, its transfer protocols, and more. A unique exercise in making network requests with Rust.
Discover concurrent programming in Rust while also learning about TCP servers, network programming, and the Redis Protocol.
HTTP is the protocol that powers the web. In this challenge, you'll build a HTTP server that's capable of handling simple GET/POST requests, serving files and handling multiple concurrent connections.
Along the way, we'll learn about TCP connections, HTTP headers, HTTP verbs, handling multiple connections and more.
DNS is a protocol used to resolve domain names to IP addresses. In this challenge, you'll build a DNS server that's capable of responding to basic DNS queries.
Along the way you'll learn about the DNS protocol, DNS packet format, DNS record types, UDP servers and more.
Learn about .torrent files and the famous BitTorrent protocol. Implement your own BitTorrent client in Rust.
Learn about regular expressions and how they're evaluated. Implement your own version of grep
in Rust.
Learn what a Docker image really is, and how it's stored in the Docker registry. Get your feet wet with systems programming in Rust. Learn about chroot, kernel namespaces & more.
Learn about B-Trees, the foundation of every relational database. Explore Rust's API for reading/writing files, and handling custom file formats.