Loading video player...
I’ve finally finished my first official Rust project: a CLI weather app. In this video I recap the biggest lessons, challenges, and best practices I picked up along the way. If you’re on your own Rust journey, I hope this gives you some inspiration to get your hands dirty and start building! In this video, break down the code for fetching data from an API with the reqwest crate, handling JSON deserialization using serde, and why Rust's enums are a total game-changer compared to languages like Go. We also dive into why you should enable Clippy (especially pedantic mode) to help you write idiomatic Rust. Clippy gives better feedback than AI (Codex 5.3) and actually helps you learn from your mistakes. No matter how much you read, you have to get your hands dirty. Building small, green-field projects is the best way to stop feeling overwhelmed and start feeling confident. ⟡˖ Watch Live I live stream the entire process of learning Rust and building these projects every Monday, Wednesday, and Thursday at 12pm PT. Subscribe to follow along with the journey! ⟡˖ Links https://github.com/bashbunni/measured Translate JSON requests to data structures in your language of choice - https://app.quicktype.io/ ⟡˖ How to support bunni: Join this channel to get access to perks: https://www.youtube.com/channel/UC9H0HzpKf5JlazkADWnW1Jw/join bashbunni is partnered with Tailscale! Tailscale leverages the Wireguard protocol to create a user friendly, low latency, peer-to-peer mesh network. It's free for individuals + get three months free off of any paid plan with code 'bashbunni'. https://link.bashbunni.dev/tailscale ⟡˖ My other corners of the Internet: https://twitch.tv/bashbunni https://github.com/bashbunni https://discord.com/invite/Y3vbKS4K9j (come hang!) https://mastodon.social/@bashbunni https://twitter.com/sudobunni https://bsky.app/profile/bashbunni.dev Chapters: 00:00 - Intro: Recap of the First Rust Project 00:19 - Why You MUST Use Clippy (Pedantic Mode) 01:12 - Clippy vs. AI for Debugging Rust 02:15 - Weather App Demo & Functionality 02:41 - Handling JSON & API Requests with Reqwest 03:07 - Pattern Matching & Error Handling 03:55 - Complex Deserialization with Serde 04:56 - Working with Synchronous Code 05:12 - Power of Rust Enums & New Type Variants 05:42 - Handling User Input (stdin to an enum) 06:27 - Implementing the FromStr Trait 07:03 - Custom Error Types vs. Anyhow 09:13 - Idiomatic Rust: Explicit Returns & Formatting 09:42 - The Importance of Hands-on Practice 10:42 - Final Retro + Feedback #programming #learntocode #rustlang #rustseries #bashbunni #buildinpublic #livestream #softwareengineering #learnprogramming