Skip to content

Commit a928402

Browse files
committed
Update links and make doc more readable
1 parent 14b020e commit a928402

File tree

2 files changed

+197
-1
lines changed

2 files changed

+197
-1
lines changed

README.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
# The Rust Starter Pack
22

3-
This is a document containing links and information for people learning the Rust programming language.
3+
This is a document containing links and information for people learning the Rust programming language.
4+
5+
Disclaimer: I originally created this document to organize my own Rust learning, and I've since shared it hoping it will help others learning Rust. I've done my best to vet the resources and weed out those that are low quality, but I haven't read every single resource front-to-back. [Caveat emptor](https://en.wikipedia.org/wiki/Caveat_emptor).

index.md

+194
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,194 @@
1+
# 🦀 The Rust Starter Pack 🦀
2+
3+
Here are resources to help people learn the Rust programming language.
4+
5+
## Official Rust resources
6+
7+
- The [official Rust website](https://www.rust-lang.org/)
8+
- [The Rust Programming Language official book (2nd edition, 2018)](https://doc.rust-lang.org/book/2018-edition/index.html)
9+
- The official Rust website's [learning page](https://www.rust-lang.org/learn)
10+
- [The Rust Standard Library](https://doc.rust-lang.org/std/#the-rust-standard-library)
11+
12+
## News & Blogs
13+
14+
- [This Week in Rust](https://this-week-in-rust.org/): "Handpicked Rust updates, delivered to your inbox"
15+
- The official [main Rust blog](https://blog.rust-lang.org/): "The core team uses this blog to announce big developments in the world of Rust."
16+
- The official [Inside Rust blog](https://blog.rust-lang.org/inside-rust/index.html): "This blog is aimed at those who wish to follow along with Rust development. The various Rust teams and working groups use this blog to post status updates, calls for help, and other similar announcements."
17+
- [Read Rust](https://readrust.net/): "Read Rust collects interesting posts related to the Rust programming language."
18+
19+
## Communities
20+
21+
- The [Rust Users Forum](https://users.rust-lang.org/): "The Rust Users Forum is a place for Rust users to communicate about anything and everything related to Rust. Ask questions here, coordinate on project ideas, whatever you like!"
22+
- The [r/rust](https://www.reddit.com/r/rust/) subreddit
23+
- The [r/learnrust](https://www.reddit.com/r/learnrust/) subreddit
24+
25+
## Learning
26+
27+
### Books
28+
29+
- O'Reilly - [Programming Rust](https://www.oreilly.com/library/view/programming-rust/9781491927274/) by Jim Blandy, Jason Orendorff
30+
- [Rust By Example](https://doc.rust-lang.org/rust-by-example/)
31+
- [Introduction to Rust Web Applications](https://erwabook.com/intro/index.html): "This book provides a taste of the full-stack, all-Rust approach to building web apps."
32+
- [Rust and Webassembly](https://rustwasm.github.io/docs/book/): "This small book describes how to use Rust and WebAssembly together."
33+
- [Fullstack Rust](https://www.newline.co/fullstack-rust): "The complete guide to building fast, production-ready Rust apps"
34+
- [Learn Rust With Entirely Too Many Linked Lists](https://cglab.ca/~abeinges/blah/too-many-lists/book/): "In this series I will teach you basic and advanced Rust programming entirely by having you implement 6 linked lists."
35+
- [Rust Cookbook](https://rust-lang-nursery.github.io/rust-cookbook/)
36+
- [Zero To Production In Rust](https://www.zero2prod.com/): "An opinionated introduction to backend development in Rust"
37+
- (still incomplete, currently in early access as of January 2021)
38+
- [Hands-on Rust](https://pragprog.com/titles/hwrust/hands-on-rust/): "Effective Learning through 2D Game Development and Play"
39+
- [The Rustonomicon: The Dark Arts of Unsafe Rust](https://doc.rust-lang.org/nomicon/index.html)
40+
- [Rust Design Patterns](https://rust-unofficial.github.io/patterns/intro.html)
41+
- [The Rust Performance Book](https://nnethercote.github.io/perf-book/)
42+
- [Easy Rust](https://dhghomon.github.io/easy_rust/Chapter_1.html): A book attempting to explain Rust in simple English
43+
- [The Embedded Rust Book](https://rust-embedded.github.io/book/intro/index.html)
44+
45+
### Courses
46+
47+
- [Stanford CS 110L: Safety in Systems Programming](https://reberhardt.com/cs110l/spring-2020/)
48+
- [UPenn: CIS 198: Rust Programming - Spring 2016](https://cis198-2016s.github.io/)
49+
- [Rust In Motion](https://www.manning.com/livevideo/rust-in-motion)
50+
- [Dmitri Nesteruk - The Rust Programming Language](https://www.udemy.com/course/rust-lang/)
51+
- [Pluralsight - Rust Fundamentals](https://www.pluralsight.com/courses/rust-fundamentals): Pluralsight charges a monthly paid subscription. Check to see if your local public library or company provides subscriptions.
52+
- [Rust: The Basics](https://stepik.org/lesson/9268/step/1)
53+
54+
### Guides
55+
56+
- [Curated Rust](https://github.com/saidaspen/curatedrust): "This is a guided walkthrough of the resources that I used to learn Rust. It is being added to incrementally as I myself learn rust over the next couple of weeks and months."
57+
- [A Gentle Introduction to Rust](https://stevedonovan.github.io/rust-gentle-intro/)
58+
- [Learning Rust in 2020](https://github.com/pretzelhammer/rust-blog/blob/master/posts/learning-rust-in-2020.md)
59+
- [py2rs](https://github.com/rochacbruno/py2rs): "From Python into Rust"
60+
- [Rust in 7 Programs](https://aml3.github.io/RustTutorial/)
61+
- [24 Days of Rust](https://zsiciarz.github.io/24daysofrust/book/vol1/)
62+
- [Introduction to Rust Tutorial](https://www.koderhq.com/tutorial/rust/)
63+
- [Roguelike Tutorial in Rust](https://jaredonline.svbtle.com/roguelike-tutorial-in-rust): How to make a roguelike computer game in Rust
64+
- [Writing an OS in Rust](https://os.phil-opp.com/)
65+
66+
### Videos & Playlists
67+
68+
- The [Official Rust Youtube channel](https://www.youtube.com/channel/UCaYhcUwRBNscFNUKTjgPFiA)
69+
- [Into Rust](http://intorust.com/): Screencasts for learning Rust
70+
- [Doug Milford's Rust tutorial playlist](https://www.youtube.com/watch?v=Az3jBd4xdF4&list=PLLqEtX6ql2EyPAZ1M2_C0GgVd4A-_L4_5): A quality video series teaching various aspects of Rust programming
71+
- [RustConf 2020](https://www.youtube.com/watch?v=IwPRu5FhfIQ&list=PL85XCvVPmGQijqvMcMBfYAwExx1eBu1Ei)
72+
- Reddit post - ["A list of some YouTube videos (free) that you can use to help get started"](https://www.reddit.com/r/learnrust/comments/f639yg/a_list_of_some_youtube_videos_free_that_you_can/)
73+
- [RustConf 2020 - Rust for Non-Systems Programmers by Rebecca Turner](https://www.youtube.com/watch?v=BBvcK_nXUEg)
74+
- [Ryan Levick - Introduction to Rust Part 1](https://www.youtube.com/watch?v=WnWGO-tLtLA)
75+
- and [Part 2](https://www.youtube.com/watch?v=lLWchWTUFOQ)
76+
- and [more of Ryan Levick's videos](https://www.youtube.com/channel/UCpeX4D-ArTrsqvhLapAHprQ/videos?view=0&sort=dd&shelf_id=1), mostly Rust
77+
- [Jon Gjengset's Rust videos](https://www.youtube.com/channel/UC_iD0xppBwwsrM9DegC5cQQ/videos): Longform videos, not aimed at beginners
78+
- [Jeff No Zhao - Rust Tutorials](https://www.youtube.com/playlist?list=PLkO5ggdQuRaaeFke7nWS4ajhFVZ1biE7_)
79+
- [dcode - Rust Programming Tutorial](https://www.youtube.com/watch?v=vOMJlQ5B-M0&list=PLVvjrrRCBy2JSHf9tGxGKJ-bYAN_uDCUL)
80+
- [Tensor Programming - Intro to Rustlang](https://www.youtube.com/watch?v=EYqceb2AnkU&list=PLJbE2Yu2zumDF6BX6_RdPisRVHgzV02NW)
81+
- [Tensor Programming - Rustlang Projects](https://www.youtube.com/watch?v=-Jp7sabBCp4&list=PLJbE2Yu2zumDD5vy2BuSHvFZU0a6RDmgb)
82+
- [Microsoft Reactor - Rust](https://www.youtube.com/watch?v=w3s_2Pl1x2E)
83+
- [YouCodeThings - Rust Videos](https://www.youtube.com/playlist?list=PLVT0QN6kDrbd3KZr4EkBNvjSDTaZyxwhM)
84+
- [Engineer Man - Rust Videos](https://www.youtube.com/playlist?list=PLlcnQQJK8SUjApd95LIcd3K9XXmE-IeCS)
85+
- [Ryan Levick](https://www.youtube.com/channel/UCpeX4D-ArTrsqvhLapAHprQ/videos): Streaming programming videos
86+
- [Microsoft Developer - All About Rust](https://www.youtube.com/watch?v=FYGS2q1bljE)
87+
- [J M Archer - Rustlang screencasts](https://www.youtube.com/playlist?list=PLTOeCUgrkpMNEHx6j0vCH0cuyAIVZadnc)
88+
- [Derek Bananas - Rust tutorial](https://www.youtube.com/watch?v=U1EFgCNLDB8)
89+
- [Traversy Media - Rust Crash Course | Rustlang](https://www.youtube.com/watch?v=zF34dRivLOw)
90+
- [Chris Hawkes - Learn Rust Programming In 1 Video](https://www.youtube.com/watch?v=KDn_j48yoAo)
91+
- [Gary Explains - 12 Things to Help You Learn Rust](https://www.youtube.com/watch?v=a8abW3RlOn8)
92+
- [Modulator crate and Play app](https://www.youtube.com/watch?v=n-txrCMvdms): "An introduction to the Modulator crate and its playground/testbed application Modulator Play."
93+
94+
### Podcasts
95+
96+
- The [New Rustacean](https://newrustacean.com/): A terrific podcast covering one Rust topic per episode as the host learns Rust
97+
98+
### Exercises & Practice
99+
100+
- [Rustlings](https://github.com/rust-lang/rustlings/)
101+
- [Exercism - Rust](https://exercism.io/tracks/rust)
102+
- [Advent of Code](https://adventofcode.com/): Language-agnostic programming challenges that can be done in Rust
103+
- [Project Euler](https://projecteuler.net/): Language-agnostic programming challenges focused mostly on math problems
104+
- [Rust Practise Questions](https://github.com/sn99/rust-practise-questions)
105+
- [The r/dailyprogrammer subreddit](https://www.reddit.com/r/dailyprogrammer/)
106+
107+
## Conferences & Events
108+
109+
- [RustConf](https://rustconf.com/): "RustConf is an annual (and sometimes virtual) gathering of global Rust developers."
110+
- RustConfig videos of the year's talks are available [here](https://rustconf.com/talks)
111+
- [RustFest Global](https://rustfest.global/): "RustFest Global is a Rust community conference. Sessions will be streamed online in three time zones across the globe — join live or re-watch the talks anytime you want!"
112+
- [Rust Community Calendar](https://calendar.google.com/calendar/u/0/embed?src=apd9vmbc22egenmtu5l6c5jbfc@group.calendar.google.com&pli=1)
113+
- [RustLab 2020](https://www.rustlab.it/)
114+
115+
## Articles
116+
117+
- [Rust Anthology Master List](https://github.com/brson/rust-anthology/blob/master/master-list.md): "This is a collection of substantial blog posts about Rust."
118+
- This one is the motherload! There are a ton of good blog posts collected here.
119+
- [Rust Survey 2020 Results](https://blog.rust-lang.org/2020/12/16/rust-survey-2020.html)
120+
- [A half-hour to learn Rust](https://fasterthanli.me/articles/a-half-hour-to-learn-rust)
121+
- [Clear explanation of Rust’s module system](http://www.sheshbabu.com/posts/rust-module-system/)
122+
- [Learn Rust With Benford's Law](https://gliderkite.github.io/posts/learn-rust-with-benford/)
123+
124+
- [Rust 2021: Lower the barriers](https://blog.nindalf.com/posts/rust-2021/)
125+
- [Frustrated? It's not you, it's Rust](https://fasterthanli.me/articles/frustrated-its-not-you-its-rust)
126+
127+
## Are we X yet?
128+
129+
- [AreWeRustYet](https://github.com/UgurcanAkkok/AreWeRustYet): "A curated Awesome list of websites that tracks the state of Rust in related areas"
130+
- [AreWeWebYet](https://www.arewewebyet.org/)
131+
132+
## References
133+
134+
- [Awesome Rust](https://github.com/rust-unofficial/awesome-rust) by rust-unofficial
135+
- [awesome-rust.com](https://awesome-rust.com/)
136+
- [Rust LibHunt](https://rust.libhunt.com/)
137+
- [rust-learning](https://github.com/ctjhoa/rust-learning): "A bunch of links to blog posts, articles, videos, etc for learning Rust."
138+
- [Not-Yet-Awesome-Rust](https://github.com/not-yet-awesome-rust/not-yet-awesome-rust): "An (unofficial) sub-community of the Rust programming language that wants to close gaps you feel in Rust's ecosystem."
139+
- [Awesome Rust Testing](https://github.com/hoodie/awesome-rust-testing)
140+
- [Awesome Cryptography Rust](https://github.com/rust-cc/awesome-cryptography-rust): "Collect libraries and packages about cryptography in Rust."
141+
- [Steadylearner's Rust-Full-Stack](https://github.com/steadylearner/Rust-Full-Stack): A repo containing various Rust-related links
142+
- Also, see Steadylearner's related [blog](https://www.steadylearner.com/blog)
143+
144+
## Crates
145+
146+
- https://crates.io/crates/log
147+
- https://crates.io/crates/rand
148+
- https://crates.io/crates/chrono
149+
- https://crates.io/crates/time
150+
- https://crates.io/crates/itoa
151+
- https://crates.io/crates/smallvec
152+
- https://crates.io/crates/num-integer
153+
- https://crates.io/crates/url
154+
- https://crates.io/crates/futures
155+
- https://crates.io/crates/ansi_term
156+
- https://crates.io/crates/ryu
157+
- https://crates.io/crates/crossbeam-utils
158+
- https://crates.io/crates/generic-array
159+
- https://crates.io/crates/strsim
160+
- https://crates.io/crates/chrono
161+
- https://crates.io/crates/clap
162+
- https://crates.io/crates/reqwest
163+
- https://crates.io/crates/serde
164+
- https://crates.io/crates/serde_derive
165+
- https://crates.io/crates/serde_json
166+
- https://crates.io/crates/syn
167+
- https://crates.io/crates/proc-macro2
168+
- https://crates.io/crates/quote
169+
- https://crates.io/crates/base64
170+
- https://crates.io/crates/rand_chacha
171+
- https://crates.io/crates/num-traits
172+
- https://crates.io/crates/regex
173+
- https://crates.io/crates/regex-syntax
174+
- [https://crates.io/crates/cratetorrent](Cratetorrent): Implements the BitTorrent version 1 protocol
175+
176+
## Rust frameworks & tools
177+
178+
- [Tokio](https://github.com/tokio-rs/tokio): "Tokio is an asynchronous runtime for the Rust programming language. It provides the building blocks needed for writing network applications. It gives the flexibility to target a wide range of systems, from large servers with dozens of cores to small embedded devices."
179+
- [Yew](https://yew.rs/docs/en/): Yew is a modern Rust framework for creating multi-threaded front-end web apps with WebAssembly.
180+
181+
## Rust-based projects
182+
183+
- [Inciteful](https://inciteful.xyz/): Inciteful builds a network of academic papers based on a topic of your choice and then analyzes the network to help you find the most relevant literature.
184+
185+
## Rust-based terminal programs
186+
187+
- [My terminal became more Rusty](https://dev.to/22mahmoud/my-terminal-became-more-rusty-4g8l)
188+
- Rust terminal tools
189+
190+
## Webassembly (WASM)
191+
192+
Not technically Rust, but Webassembly is closely tied to Rust
193+
194+
- [Wasmer](https://wasmer.io/): The Universal WebAssembly Runtime

0 commit comments

Comments
 (0)