100-days-of-rust/README.md
2023-03-25 17:48:16 -04:00

4.9 KiB

100 Days of Rust 🦀

gif

Introduction

Welcome to the 100 Days of Rust Coding Challenge! This challenge is designed to help you learn and improve your Rust programming skills over the course of 100 days.

Each day, you will tackle a new Rust programming concept, project, or problem. You will learn about ownership and borrowing, concurrency and parallelism, the Rust standard library, web development with Rust, game development with Rust, machine learning in Rust, system programming in Rust, cryptography in Rust, and blockchain development in Rust.

This challenge is suitable for Rust beginners and intermediate learners who want to improve their skills and build practical projects. It is also a great opportunity to connect with other Rust learners and share knowledge and experiences.

We hope you find this challenge fun and rewarding, and we can't wait to see what you build with Rust!

How to Participate

Fork this repository and create a new branch to track your progress. Commit to coding and learning Rust for at least an hour every day for 100 days. Share your progress on social media with the hashtag #100DaysOfRustCodingChallenge and tag @DomSecRocks on Twitter. We encourage you to share your progress and ask questions in the Discussions section of this repository.

Rules

  • The main rule is: Code at least an hour every day (don't skip weekends/holidays)

  • Choose an area of Rust you wan't to learn or improve

  • Share your progress daily in your social medias

  • Try not to copy code from the internet

  • Try to come up with a clean and elegant solution

  • Once you can, write tests (and make them pass)

Resources

The Rust Programming Language Book

The Rust Standard Library Documentation

Rust By Example

Rust Cookbook

Awesome Rust

Project List

Day Project Name Completed
Day #1 Convert Age To Days
Day #2 Finding Nemo
Day #3 Barbecue Skewers
Day #4 Is Johnny Making Progress
Day #5 Pair Of Socks
Day #6 Next Prime
Day #7 Merge Sorted Array
Day #8 Letter Combinations Of A Phone Number
Day #9 Trapping Rain Water
Day #10 Unique Binary Search Tree
Day #11 Restore IP Addresses
Day #12 Mountains or Valleys
Day #13 Need Help With Your Packing
Day #14 The Karacas Encryption Algorithm
Day #15 Valid Anagram
Day #16 Nim Game
Day #17 Prison Break
Day #18 Unique Paths
Day #19 URL Shortener
Day #20 API Challenge
Day #21 Random Maze Generator
Day #22 Marcio Mellos Challenge
Day #23 The Dining Philosophers
Day #24 The Josephus Problem
Day #25 Coin Trouble
Day #26 Briefcase Lock
Day #27 Task Scheduler
Day #28 Word Search
Day #29 Traffic Light Checker
Day #30 The Maximum Value