gitmyhub

rust-blog

Rust ★ 8.4k updated 1y ago

Educational blog posts for Rust beginners

A personal blog of educational articles for Rust learners, tackling the concepts that trip people up most, lifetimes, traits, memory sizing, plus practical guides for building REST APIs and chat servers in Rust.

RustMarkdownsetup: easycomplexity 1/5

This repository is a personal blog containing educational articles about the Rust programming language. The author writes for people who are new to Rust or who have gotten past the basics but still find some of the harder concepts confusing. All the posts are stored as Markdown files in the repository itself, which means anyone can read them directly on GitHub or propose corrections through pull requests.

The post list covers topics that Rust learners commonly struggle with. The most widely read article is about Rust lifetime misconceptions, which addresses a set of incorrect mental models that beginners often carry into the language. Other popular posts cover Rust's standard library traits (the built-in behaviors that types can implement), how to think about memory sizing in Rust, and practical guides on building a REST API and a multithreaded chat server. There are also posts aimed at someone deciding whether to learn Rust and how to approach that learning.

A 2024 post covers how to use Rust code inside servers written in other languages to speed up specific performance-critical parts, without rewriting the entire server. This is a more advanced topic for developers already working in other languages who want targeted gains.

Several posts have been translated into Chinese, Japanese, Russian, and Turkish by community volunteers. The author accepts pull requests for translations and hosts them directly in the repository. Code examples in the posts are dual-licensed under Apache 2.0 and MIT. The author keeps exclusive rights to the English prose of the posts themselves.

You can subscribe to new post notifications via the repository's RSS releases feed or by watching the repo for new releases on GitHub.

Where it fits