Winamp Logo
Rustacean Station Cover
Rustacean Station Profile

Rustacean Station

English, Technology, 1 season, 153 episodes, 5 days, 8 hours, 38 minutes
About
Come journey with us into the weird, wonderful, and wily world of Rust.
Episode Artwork

Rama with Glen De Cauwsemaecker

Allen Wyma talks with Glen De Cauwsemaecker about Rama, a modular and customizable proxy built in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Introducing Glen De Cauwsemaecker [@01:26] - Rama functionality & use cases [@14:38] - Discussing the development story leading up to Rama’s upcoming release [@36:19] - Rama architecture, Glen’s background in game development [@48:06] - Closing discussion Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
5/19/202449 minutes, 27 seconds
Episode Artwork

Ratatui with Orhun Parmaksiz

Allen Wyma talks with Orhun Parmaksiz about Ratatui, a TUI library for Rust to create beautiful console-based applications in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps ⁃ [@00:00] - Meet Orhun Parmaksiz ⁃ [@01:21] - Origins of the project and overview of TUIs ⁃ [@09:32] - Rebranding from tui-rs and continuing previous work ⁃ [@14:50] - Documentation of Ratatui ⁃ [@16:18] - Collecting community feedback ⁃ [@22:00] - Custom designs in Ratatui (ratatui-splash-screen) ⁃ [@22:19] - Other terminal UI projects ⁃ [@25:32] - Status and upcoming directions for Ratatui ⁃ [@27:55] - Closing discussion Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/26/202431 minutes, 3 seconds
Episode Artwork

Isograph with Robert Balicki

Allen Wyma talks with Robert Balicki about Isograph, a framework powered by Rust to speed up your React app development. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@10:48] - GraphQL basics [@21:20] - The role of Rust within the project [@32:24] - Isograph installation [@37:16] - Isograph development [@45:46] - Upcoming features [@01:00:01] - Closing discussion Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/19/20241 hour, 2 minutes, 18 seconds
Episode Artwork

release-plz with Marco Ieni

Allen Wyma talks with Marco Ieni about release-plz, a CLI-based tool that helps you to release your Rust crates by generating changelogs and bumping the version of your crates. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Meet Marco Ieni, software engineer at Prisma, creator of release-plz [@01:17] - Release-plz creation & features [@08:50] - Conventional commit standard [@17:41] - Potential upcoming features [@21:25] - Gitea, Gitlab, Github integration [@28:14] - Release-plz development [@31:24] - Windows support [@36:22] - Message from Marco [@37:07] - Marco’s Rust podcast RustShip Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/12/202440 minutes, 18 seconds
Episode Artwork

Pavex with Luca Palmieri

Allen Wyma talks with Luca Palmieri about pavex, a new API-focused web framework for Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps ⁃ [@00:00] - Meet Luca Palmieri, software engineer, author of Zero To Production In Rust, open source maintainer & contributor ⁃ [@02:04] - Luca’s working experience, discussing time at AWS and moving to Mainmatter ⁃ [@09:01] - Pavex: a Rust framework for professionals ⁃ [@22:57] - Rustdoc JSON & the f macro ⁃ [@37:19] - Lessons from maintaining open-source projects like rocket.rs ⁃ [@52:17] - Pavex’s closed beta stage ⁃ [@56:43] - Plans for production readiness ⁃ [@01:10:43] - Potential pricing models ⁃ [@01:12:39] - Closing discussion Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/9/20241 hour, 18 minutes, 29 seconds
Episode Artwork

Launching RustRover: JetBrains' Investment in Rust

Vitaly Bragilevsky, Developer Advocate at JetBrains and author of Haskell in depth, sits down with Luca Palmieri. Vitaly explains what led JetBrains to launch a Rust-specific product, RustRover. He covers, in particular, why it is a good time to invest further in Rust, touching as well on the state of the Rust ecosystem. Luca and Vitaly also touch on the status quo of Rust developer tooling, including debuggers, profilers (or the lack thereof!), and framework-specific extensions. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] - Introduction Video recording of the interview [@01:07] - Becoming a Developer Advocate for Rust at JetBrains [@04:34] - Vitaly’s transition from Haskell to Rust Haskell in depth [@08:13] - Introducing JetBrains’ RustRover [@18:56] - Usage and status quo of Rust developer tooling [@25:12] - Vitaly’s outlook on Rust’s future [@31:47] - New use cases for Rust adoption [@35:07] - Compiler and IDE suggestions [@38:08] - JetBrains’ role and future as a Rust tooling provider [@39:59] - Reasoning behind Rust’s increasing popularity [@46:18] - Conclusion Credits Intro Theme: Aerocity Audio Editing: Mainmatter Hosting Infrastructure: Jon Gjengset Show Notes: Mainmatter Hosts: Luca Palmieri
4/4/202447 minutes, 45 seconds
Episode Artwork

cargo-semver-checks with Predrag Gruevski

Allen Wyma talks with Predrag Gruevski about cargo-semver-checks, a linter that checks your crate’s API for any semver violations. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Meet Predrag Gruevski - creator & maintainer of cargo-semver-checks [@00:35] - Exploring cargo-semver-checks, a linter for preventing breaking changes and ensuring semantic versioning [@05:00] - What is Semantic versioning (semver) [@08:17] - Determining major version bumps [@10:48] - Background of the project [@18:25] - Functionality, use cases, and project details of cargo-semver-checks [@38:51] - Future plans and upcoming features [@47:28] - Closing discussion Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/29/20241 hour, 41 minutes, 40 seconds
Episode Artwork

Hyper 1.0 with Sean McArthur

Allen Wyma talks with Sean McArthur about the 1.0 release of Hyper, the well-known Rust HTTP library. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Meet open-source engineer Sean McArthur [@01:20] - Reasons for the 9-year journey to release hyper 1.0 [@05:34] - Addressing async fragmentation [@07:38] - Sean’s transition to freelance maintenance [@10:12] - Freelancing and finding clients while working on open source [@16:56] - Hyper’s maturity and future plans [@22:16] - Stages of hyper’s development, releases, and post-release issues. [@36:14] - Closing discussion Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/22/202438 minutes, 5 seconds
Episode Artwork

Asynchronous Programming in Rust with Carl Fredrik Samson

Allen Wyma talks with Carl Fredrik Samson about his book Asynchronous Programming in Rust, a deep dive into asynchronous programming in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Meet Carl Fredrik Samson, author of Asynchronous Programming in Rust [@04:26] - Making the deal with Packt (publishing company) [@05:12] - Runtime with green threads [@07:50] - Understanding the concept of asynchronous programming [@03:17] - The benefits and purpose of using asynchronous programming [@28:35] - Comparing green threads and fibers in Rust [@35:29] - Importance of learning async programming [@41:43] - Insights into the book’s creation process, including research and writing efforts [@43:13] - Target audience and prerequisites for the book [@45:09] - Book details [@48:02] - Closing thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/17/202450 minutes, 18 seconds
Episode Artwork

Asciinema with Marcin Kulik

Allen Wyma talks with Marcin Kulik about his work on asciinema, a service that allows people to record their terminal windows to share with others, that has the custom asciinema player written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Introduction [@01:56] - Overview of Asciinema: A suite of tools for recording, replaying, and sharing terminal sessions [@09:11] - More about Marcin Kulik, the creator of Asciinema, and his background [@10:08] - Inspiration behind the creation of Asciinema [@18:52] - Marcin’s journey into Rust [@23:15] - Balancing paid development and consulting services for Asciinema [@24:36] - Progress on the Rust rewrite [@28:37] - AGG (Asciinema GIF generator) [@34:44] - Maintaining multiple languages and the role of Rust [@40:17] - Future plans for Asciinema and potential features [@47:23] - Closing discussion Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/31/202451 minutes
Episode Artwork

Unlocking Rust's power through mentorship and knowledge spreading, with Tim McNamara

Tim McNamara, author of Rust in Action and founder at Accelerant, sits down with Marco Otte-Witte. Tim discusses how Rust, despite common perceptions, is relatively easy to learn and how the compiler empowers engineers to avoid common mistakes. The conversation also emphasizes Rust’s growing adoption in companies, its role in addressing long-term maintainability challenges, and its potential to significantly reduce software energy consumption, while highlighting the importance of mentorship to ensure successful integration across organizations. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] - Introduction Video recording of the interview [@00:34] - Start of the interview [@01:27] - Tim’s role at AWS [@03:57] - Tim’s reasons for learning Rust [@04:57] - Rust in Action [@06:59] - How hard is it to learn Rust? [@13:49] - Reasons companies are holding back from adopting Rust [@23:51] - Rust’s type system and maintainability [@36:30] - Dependencies in Rust [@41:01] - Energy savings with Rust [@48:09] - Tim’s approach to pitching Rust [@54:21] - Overcoming concerns around Rust adoption [@55:36] - Recruitment strategy for Rust [@57:13] - Knowledge spreading [@01:02:41] - Conclusion Credits Intro Theme: Aerocity Audio Editing: Mainmatter Hosting Infrastructure: Jon Gjengset Show Notes: Mainmatter Hosts: Marco Otto-Witte
1/28/20241 hour, 3 minutes, 32 seconds
Episode Artwork

Prossimo with Josh Aas

Allen Wyma talks with Josh Aas about his work on Prossimo, an Internet Security Research Group (ISRG) project that is focusing on moving critical software used on the Internet to a memory safe language, such as Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Meet Josh Aas - Executive Director at ISRG (Internet Security Research Group), a non-profit dedicated to building a more secure and privacy-respecting digital infrastructure. [@01:32] - Let’s Encrypt Project - a nonprofit Certificate Authority providing TLS certificates to 363 million websites. [@06:53] - Divvi Up project - a privacy-respecting system for aggregate statistics. [@09:48] - Prossimo - ensuring memory safety for the internet’s most critical infrastructure. [@15:24] - Discussion about Curl and Rust. [@19:06] - The benefits of rewriting software, particularly transitioning from C to Rust for improved memory safety. [@34:19] - The ISRG’s ambition to make the Linux kernel memory-safe with Rust. [@37:27] - Can Zig potentially be a competitor to Rust? [@39:41] - Closing thoughts. Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/12/202440 minutes, 45 seconds
Episode Artwork

Polars with Ritchie Vink

Allen Wyma talks with Ritchie Vink about his work on Polars, a DataFrame library written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Meet Ritchie Vink - Creator of Polars [@02:00] - What is a DataFrame? [@05:19] - Arrow [@07:26] - NumPy [@11:31] - Polars vs Pandas [@17:32] - Using Polars in app development [@25:24] - Python and Rust docs [@31:49] - Polars 1.0 release [@35:21] - What keeps Ritchie working on Polars [@37:27] - Growing Polars without bloat [@39:57] - Closing discussions Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/5/202443 minutes, 10 seconds
Episode Artwork

Exploring Rust's impact on efficiency and cost-savings, with Stefan Baumgartner

Stefan Baumgartner, Senior Product Architect at Dynatrace, discusses with Marco Otte-Witte how Rust enables developers to write performant and reliable software that’s efficient at a level that leads to substantial cost savings. Stefan shares his firsthand experience with Rust, highlighting the ecosystem’s ability when it comes to delivering functioning prototypes quickly. He also discusses the importance of understanding memory management and low-level concepts in programming and how teaching Rust empowers developers to write efficient and reliable software. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] - Introduction Video recording of the interview [@00:34] - Start of the interview [@02:06] - Pitching Rust and criteria for adoption [@03:35] - What is Dynatrace [@06:15] - Stability with Rust [@09:59] - Benefits of Rust [@13:45] - Learning and teaching Rust [@19:21] - Comparing Rust’s teachability to other languages [@24:39] - The role of the compiler in Rust programming [@26:17] - Stefan’s approach to teaching Rust [@29:50] - Onboarding at Dynatrace [@34:14] - Performance versus stability [@37:12] - Rust’s highlights [@39:41] - Conclusion Credits Intro Theme: Aerocity Audio Editing: Mainmatter Hosting Infrastructure: Jon Gjengset Show Notes: Mainmatter Hosts: Marco Otto-Witte
12/6/202340 minutes, 3 seconds
Episode Artwork

Recruiting in Rust with Cedric Sellman

Allen Wyma talks with Cedric Sellmann about his experience with recuiting Rust engineers. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Guest introduction: Cedric Sellmann - Rust Recruitment Specialist, previous Java recruiter. [@07:18] - Rust’s limited mainstream adoption and challenges in verifying Rust qualifications. [@17:28] - Job hunting tips for Rust developers. [@29:06] - Current Rust job market compared to previous years. [@32:54] - The effectiveness of referrals for Rust developer job opportunities. [@35:30] - Industries hiring Rust developers: crypto, gaming, and more! [@50:31] - Advice for aspiring Rust developers. Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
11/24/202353 minutes, 38 seconds
Episode Artwork

Rust Digger with Gabor Szabo

Allen Wyma talks with Gabor Szabo about his website Rust Digger which collects data about Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - What is Rust Digger, and why is it useful? [@16:36] - Handling crates without repository links (e.g., the Fastly crate) [@22:27] - Handling crates without an owner. [@30:34] - What’s next for Rust Digger, including name squatting, malware, and dependency management. [@38:57] - What to expect in the coming months. Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
11/17/202344 minutes, 31 seconds
Episode Artwork

Kraken's migration to Rust microservices, with Rob Ede

Rob Ede, lead maintainer of Actix Web, explains to Marco Otto-Witte how (and why) Kraken chose to migrate their microservices to Rust. They also discuss Rust’s web development ecosystem at large, with a particular focus on Actix Web: Rob shares his view on how improvements in the language and framework space will eventually lead to a future where web development in Rust can be as approachable as web development in Javascript. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] - Introduction Video recording of the interview [@00:36] - Start of the interview [@01:26] - What is Actix Web? [@06:34] - Kraken’s migration from Java to Rust [@10:09] - Benefits of Rust adoption at Kraken [@12:48] - Rust vs Java [@15:42] - Future improvements for Actix Web [@21:15] - Do Rust users become contributors? [@24:08] - The future of Rust and Actix Web [@30:46] - Recommendations for adopting Rust [@31:37] - Conclusion Credits Intro Theme: Aerocity Audio Editing: Mainmatter Hosting Infrastructure: Jon Gjengset Show Notes: Mainmatter Hosts: Marco Otto-Witte
10/19/202332 minutes, 13 seconds
Episode Artwork

Learn Rust in a Month of Lunches with Dave MacLeod

Allen Wyma talks with Dave MacLeod about his book “Learn Rust in a Month of Lunches” from Manning. Rustacean Station discount code for the book: au35mac Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] Introduction: meet Dave MacLeod [@01:47] Target audience and motivation behind the book [@08:32] Taking a direct approach to learning [@15:14] Understanding shadowing in Rust [@16:56] Comparing “Learn Rust in a Month of Lunches” with “EasyRust” [@20:06] Streamlined printing: Changes to printline and print in Rust [@22:08] Dive into async Rust [@24:19] Crafting a coherent flow: process and concept tie-ins in the book [@29:46] Tackling advanced topics: macros, iterators, and closures [@33:05] Exploring the chrono crate [@35:29] Safety and testing: discussing unsafe Rust [@41:49] The book’s release date [@44:18] Dave’s experience writing the book [@46:54] Future plans and projects [@49:33] Closing thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
10/5/20231 hour, 3 minutes, 31 seconds
Episode Artwork

What's New in Rust 1.70 and 1.71

Jon and Ben discuss the highlights of the 1.70 and 1.71 releases of Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:20] - Rust 1.70 [@01:22] - Cargo’s sparse protocol by default [@03:47] - OnceCell and OnceLock [@10:56] - IsTerminal [@12:49] - Named debug levels [@14:57] - Enforced stability in the test CLI [@16:45] - Stabilized APIs Add Default impls for iterators Arc::into_inner Option::is_some_and SocketAddrExt [@24:30] - Changelog deep-dive [@24:42] - Use SipHash-1-3 instead of 2-4 [@26:06] - Alignment debug checks for pointer derefs [@27:04] - Relaxed ordering for asm! operands [@27:53] - -Zgitoxide [@28:21] - -Zdirect-minimal-versions [@29:16] - Rust 1.71.0 [@29:25] - C-unwind ABI RFC Unwinding by default? [@36:59] - Debugger visualization attributes Detailed documentation [@37:36] - raw-dylib linking Windows linking docs What is ordinal linking [@38:15] - Upgrade to musl 1.2 [@39:42] - Const-initialized thread locals [@41:14] - Changelog deep-dive [@41:40] - Uplift drop_ref clippy lints [@42:39] - Allow some recursive panics [@43:57] - Optimize cargo under rustup [@45:38] - Avoid excessive registry lookups [@46:28] - Include rust-version in publish [@47:02] - Document more semver rules Adding #[non_exhausting] Making an fn safe MSRV is a minor bump Credits Intro Theme: Aerocity Audio Editing: Aerocity Hosting Infrastructure: Jon Gjengset Show Notes: Jon Gjengset Hosts: Jon Gjengset and Ben Striegel
9/30/202350 minutes, 48 seconds
Episode Artwork

rb-sys with Ian Ker-Seymer

Allen Wyma talks with Ian Ker-Seymer about his work on rb-sys which easily allows you to integrate Ruby with Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] Guest introduction: Ian Ker-Seymer - Staff Software Engineer at Shopify [@02:04] The connection between Liquid and Shopify [@06:19] The nenefits of using WebAssembly [@11:14] Exploring the languages in Shopify’s stack, including Ruby [@14:24] Rust’s practical use cases [@16:44] How Rust became part of Shopify’s stack [@19:14] Deep dive into rb-sys [@24:17] RubyGems and Bundler: insights and considerations [@36:41] Integrating Rust into the stack [@40:52] Addressing challenges with Windows compilation [@47:46] Spotlight on rb-sys: why it’s worth exploring Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
9/28/202356 minutes, 10 seconds
Episode Artwork

What's New in Rust 1.68 and 1.69

Jon and Ben discuss the highlights of the 1.68 and 1.69 releases of Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:30] - Rust 1.68 [@01:32] - Cargo’s sparse protocol [@09:28] - Local Pin construction Implementation comments A fun hack [@13:56] - Default alloc error handler Small allocs in panic handler probably ok [@18:24] - Stabilized APIs impl From<bool> for f64 [@19:06] - Changelog deep-dive [@19:15] - Stabilize UEFI extern [@20:07] - cargo build --verbose [@20:50] - home is a cargo crate [@21:12] - Cargo.lock for workspace publish [@21:35] - Make Context !Send and !Sync [@24:24] - Rust 1.68.1 [@25:11] - Rust 1.68.2 GitHub announcement [@26:29] - Rust 1.69.0 [@28:17] - Nice PR#42069 [@29:50] - More cargo fix [@31:17] - No more debug info for build scripts Nicholas Nethercote’s blog [@34:48] - Stabilized APIs CStr::from_bytes_until_nul [@37:24] - Changelog deep-dive [@37:28] - Unaligned references is a hard error now [@38:28] - Deriving on packed structs More detailed description [@44:51] - Suggest cargo add [@45:36] - Search for macros with ! [@46:10] - Compatibility notes [@47:18] - Rust 0.1 release notes Credits Intro Theme: Aerocity Audio Editing: Aerocity Hosting Infrastructure: Jon Gjengset Show Notes: Jon Gjengset Hosts: Jon Gjengset and Ben Striegel
9/19/202351 minutes, 24 seconds
Episode Artwork

Pitching Rust to decision-makers, with Joel Marcey

Marco Otto-Witte discusses how to pitch Rust to decision-makers with Joel Marcey, the Director of Technology at the Rust Foundation. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] - Introduction Video recording of the interview [@00:33] - Start of the interview [@00:50] - Joel’s role at the Rust Foundation [@03:17] - The value of Rust adoption for companies [@07:29] - Real-world success stories with Rust [@11:34] - The implications of adopting Rust as a business [@18:17] - Rust’s competitive advantage for hiring [@20:18] - Where Rust shines [@33:35] - The future of Rust [@38:33] - The Rust Foundation’s plans for the future [@40:43] - Conclusion Credits Intro Theme: Aerocity Audio Editing: Mainmatter Hosting Infrastructure: Jon Gjengset Show Notes: Mainmatter Hosts: Marco Otto-Witte
9/11/202341 minutes, 5 seconds
Episode Artwork

Adopting Rust: present and future of the Rust web ecosystem, with Luca Palmieri

Marco Otto-Witte discusses with Luca Palmieri the present and future of the Rust web ecosystem. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] - Introduction Video recording of the interview [@00:27] - Start of the interview [@01:39] - “Zero to Production in Rust” Zero to Production in Rust [@02:40] - Luca’s experience working with Rust at AWS [@19:14] - Scenarios and use cases for Rust adoption [@34:43] - The state of the art and future of web backend development in Rust [@45:57] - Conclusion Credits Intro Theme: Aerocity Audio Editing: Mainmatter Hosting Infrastructure: Jon Gjengset Show Notes: Mainmatter Hosts: Marco Otto-Witte
8/12/202347 minutes, 3 seconds
Episode Artwork

Scanner.dev with Cliff Crosland

Allen Wyma talks with Cliff Crosland about his work on Scanner.dev that is powered by Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Introduction [@02:16] - Rust for Cloud Infrastructure [@07:34] - Exploring libcurl [@13:23] - Introducing Rust to Scanner.dev [@13:23] - Scala in Data Science [@25:22] - Rust vs. Other Languages [@40:08] - Encoding/Decoding [@45:03] - How Scanner.dev Works [@55:16] - Future of Scanner.dev [@01:00:58] - Final Information Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
8/11/20231 hour, 3 minutes, 31 seconds
Episode Artwork

Bootstrapping Rust with Albert Larsan

Allen Wyma talks with Albert Larsan about his work on bootstrapping the Rust compiler. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction to Bootstrap [@1:57] - Building the standard library and compiler. [@5:34] - The biggest challenges when bootstrapping rustc (the Rust compiler) [@11:26] - Why use Python to start the bootstrapping process? [@13:08] - Running tests as part of the Rust API to ensure that each component is well-tested. [@15:07] - Running tests on Linux, MacOS, and Windows [@18:54] - Features that the Rust bootstrap team has been working on. [@20:50] - Plans to run Clippy and fix issues. [@23:41] - Stage redesign, verification, reproducibility, and different optimizations implemented in the compiler. [@27:28] - Albert’s advice on the process of bootstrapping Rust. [@31:05] - The importance of documentation [@31:49] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
7/14/202333 minutes, 4 seconds
Episode Artwork

Shuttle with Ivan Cernja

Allen Wyma and Zeeshan Ali Khan talk with Ivan Cernja, DevRel at Shuttle, a platform for deploying Rust apps. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction. [@2:04] - Ivan’s programming background and how he got involved with Shuttle. [@4:41] - What is Shuttle? [@6:15] - Why choose Rust for Shuttle? [@9:36] - Deciding to make Shuttle open source and community feedback. [@12:38] - Shuttle AI and integration with ChatGPT. [@18:04] - Shuttle Heroes program. [@21:10] - Pain points working with Rust. [@22:51] - Async runtime issues. [@24:01] - What’s next for Shuttle? [@26:22] - The best things and advantages about using Rust. [@27:28] - Why startups are reluctant about using Rust. [@32:14] - Moving to Linz and getting involved in Rust Linz. [@36:10] - Ivan’s goal on making Rust education as accessible as possible. [@37:26] - How to get hold of Ivan and get more information about Shuttle. Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma and Zeeshan Ali Khan
6/30/202338 minutes, 49 seconds
Episode Artwork

Fish Folk with Erlend Sogge Heggen

Allen Wyma talks with Erlend Sogge Heggen, Founder of Fish Folk. Fish Folk is a collection of open source games written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Introduction to Fish Folk. [@2:17] - Initial concerns about using Rust in a game development project and how it worked out. [@5:46] - The inspiration behind Fish Folk. [@8:05] - The importance of modding and building an open and community-oriented environment. [@10:52] - Protection and licensing of the project. [@14:38] - The process of finding developers and contributors to the project. [@18:24] - Initial funding for the project and financing contributors. [@22:19] - Legalization and registration. [@23:37] - Fish Folk’s Kickstarter campaign. [@25:16] - Fish Folk’s several iterations and transitions and how they affected the development of the game. [@25:50] - The decision to switch from Macroquad to Bevy. [@31:40] - The overall experience and result of switching from Macroquad to Bevy. [@32:49] - Experimenting with different approaches and models for multiplayer implementation. [@35:22] - Plans on monetization. [@40:57] - Timelines and deadlines for the release of the game. [@44:39] - How to get involved with the project. Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
6/26/202351 minutes, 30 seconds
Episode Artwork

Daily with Kwindla Hultman Kramer

Allen Wyma talks with Kwindla Hultman Kramer, Founder and CEO of Daily, and João Neves, Staff Engineer at Daily. Daily provides SDKs for building video applications on top of the WebRTC standard using Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Introduction to Daily [@05:00] - WebRTC Implementation and sharing across different platform [@10:31] - The challenges of integrating C++ with WebRTC [@19:16] - Signaling in WebRTC - Session setup and initial configuration [@22:45] - Challenges in implementing WebRTC standards [@27:21] - Handling and working around platform and browser differences when implementing WebRTC [@30:51] - Daily’s mono repo approach for code sharing [@33:30] - The process of building and releasing code in relation to different platforms and dependencies [@35:57] - Integrating Rust, C, Objective C, and Swift for iOS development [@37:20] - Daily’s automated testing processes [@42:24] - Daily’s network simulation layer in their testing process [@44:00] - The use of Rust in implementing network simulation for testing purposes [@49:15] - Using WebAssembly alongside native code in an application, and the potential obstacles to consider [@50:52] - Crates that are being used by Daily [@52:44] - What would differentiate Daily compared to other solutions? [@55:48] - Daily vs Zoom [@56:38] - Other open-source projects from Daily [@1:01:20] - Parting thoughts and how to get in touch with Daily Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
6/16/20231 hour, 2 minutes, 53 seconds
Episode Artwork

Slint 1.0 with Tobias Hunger

Allen Wyma talks with Tobias Hunger, developer on Slint. Slint is a toolkit to efficiently develop fluid graphical user interfaces for any display. Slint has just made a 1.0 release. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Introduction [@04:02] - Slint updates and progress from the previous interview [@06:15] - Upgrades that came along releasing of Slint 1.0 [@11:12] - Bugs fixed in Slint 1.0 [@12:43] - Stability, improved tooling and other key features in the Slint upgrade [@15:34] - Multi-window support [@18:26] - Screen reader accessibility and keyboard shortcut in Slint [@22:04] - Raspberry Pi Pico and Zero 2 W [@24:21] - Rust support, line buffering and graphics acceleration [@26:10] - Other UIs that are out in the Rust space [@27:17] - Handling bugs and feature reports [@29:10] - Slint documentation [@34:02] - Patch files [@37:16] - Plans for the 1.1 release [@38:51] - Interesting ways users used Slint API [@40:30] - Slint users and Rust community feedback [@43:35] - Requiring that users have a Rust compiler installed [@46:31] - Programming with Rust vs C, C++ [@48:33] - Tobias’ great experience with the Rust community Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
6/9/202349 minutes, 43 seconds
Episode Artwork

Shuttle Launchpad with Stefan Baumgartner

Allen Wyma and Zeeshan Ali Khan talk with Stefan Baumgartner, contributor to the Shuttle Launchpad tutorial series on Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Introduction [@01:45] - What is Shuttle Launchpad and why was it created [@03:34] - Shuttle Launchpad initial development [@06:39] - Supporting multiple backends and databases [@08:32] - How did Stefan get into Shuttle [@10:27] - Rust, Shuttle, and security [@12:57] - Rust community in Austria [@15:27] - Rust Linz [@17:33] - Stefan’s career background [@21:19] - Language choice trade-offs [@25:34] - Developer communication [@27:15] - Gimoji [@28:50] - Zed [@30:00] - Copilot when working with Rust [@32:12] - VS Code [@33:14] - Shuttle Launchpad’s aim in making learning Rust much easier [@37:50] - Initial issue of creating Shuttle Launchpad [@45:25] - Differences with traditional linked list newsletters [@48:09] - Other materials and ways to learn and get started with Rust [@54:25] - Plugs for Gimoji and Shuttle Launchpad Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma and Zeeshan Ali Khan
6/5/202356 minutes, 28 seconds
Episode Artwork

CoderDojo and Rust Linz with Rainer Stropek

Allen Wyma and Zeeshan Ali Khan talk with Rainer Stropek, creator of CoderDojo Linz and Rust Linz. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction to Rust Linz [@3:23] - How did Rainer get into teaching kids in Austria how to code [@5:17] - CoderDojo’s vision in creating a coding club [@7:44] - Why text-based programming is not an option for kids younger than 10 [@11:31] - Starting programming at a young age [@18:40] - Is coding and programming for everyone? [@22:40] - Parent’s huge influence on kids who wants to pursue programming [@24:32] - CoderDojo’s approach to inclusive programming [@33:55] - CoderDojo for adults and for kids [@35:59] - Rainer’s programming background [@37:29] - Organizing Rust Linz meet-ups [@43:26] - Rust meet-up schedules [@45:09] - Call for speakers for Rust Linz [@49:22] - Using rust in building web APIs and application programming [@50:14] - Interfacing Rust with other languages [@52:19] - Future of WebAssembly [@54:01] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma and Zeeshan Ali Khan
5/27/202355 minutes, 24 seconds
Episode Artwork

PyO3 with David Hewitt

Allen Wyma talks with David Hewitt, contributor to the PyO3 crate that helps to create Python extensions using Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction PyO3 [@5:03] - History of PyO3 [@9:14] - Maintainers of PyO3 [@12:15] - Comparing different languages for machine learning [@16:21] - Python’s ability to tap into native languages [@17:38] - Consideration of using Rust with Python [@20:39] - Python’s Global Interpreter Lock (GIL) [@23:14] - Python vs Rust performance [@24:20] - Rust error handling and two reasons to move Python code to Rust [@26:08] - The complaints about Python [@31:03] - C vs Python [@33:17] - Why use Rust instead of C in the cryptography library [@36:06] - Small percentage of people who get cut out by the use of Rust [@39:36] - The importance of memory safety [@41:27] - Zig and Rust [@43:58] - The reliability of Rust use in Android Kernel [@46:32] - Python interpreter [@51:13] - Inline Python [@56:05] - How to get started with Rust [@57:41] - The future of PyO3 [@59:07] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
5/19/20231 hour, 2 minutes
Episode Artwork

smol with John Nunley

Allen Wyma and Zeeshan Ali Khan talk with John Nunley, contributor to the smol async runtime. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@1:46] - Advantage of smol [@5:40] - John Nunley’s programming background [@11:50] - Tauri, GTK and other GUI frameworks [@16:16] - Async.io [@19:28] - Writing packages and breaking up packages into smaller modules [@24:21] - John’s work career [@25:09] - Windows vs Linux API [@29:06] - windows-rs [@30:03] - Windows support with Rust [@31:46] - Recent changes in smol [@33:16] - Event Listener and how it works [@37:26] - Handling pull requests and complaints [@41:40] - smol’s integration with other runtimes [@44:54] - smol vs Tokio [@47:04] - Reason why smol is growing in popularity among GUI crates [@49:06] - Recent developments in async [@52:18] - The Async working group [@58:11] - Community-based crates with suggestions and structure [@1:00:22] - What to expect to come out of smol in the near future? [@1:02:11] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
5/12/20231 hour, 5 minutes, 6 seconds
Episode Artwork

Glidesort with Orson Peters

Allen Wyma talks with Orson Peters, creator of the Glidesort sorting algorithm that may make its way into the Rust core library. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction to Glidesort [@1:19] - What got Orson interested in sorting algorithms [@4:47] - Process of creating Glidesort [@6:06] - Quicksort and how to handle low cardinality inputs [@8:18] - Three-way comparison and binary partitioning [@10:59] - Basic terms to know about quicksort and mergesort [@15:28] - Choosing an element as a pivot [@24:16] - Stable and unstable sorting algorithms [@27:03] - How Glidesort can help with memory usage and memory savings [@35:51] - How Glidesort detects if there is already a sorting in an array [@38:19] - Linear scanning [@41:47] - When Glidesort is a good algorithm to use [@45:53] - Glidesort is a comparison-based algorithm [@49:09] - What datatype would be great for Glidesort [@52:17] - Sorting algorithms and language issues [@53:11] - Sorting algorithm in Python vs Rust [@55:52] - The challenge of implementing sorting algorithms in Rust [@58:36] - Reducing Glidesort’s code size [@1:01:21] - Standard library benchmarking criteria [@1:02:52] - Performance evaluation of Glidesort and other improvements [@1:06:08] - Quantum computing [@1:07:43] - Next on the list for Glidesort improvements [@1:10:54] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
5/5/20231 hour, 14 minutes, 40 seconds
Episode Artwork

Rust Embedded WG with Jonathan Pallant

Allen Wyma talks with Jonathan Pallant, Senior Embedded Engineer of Ferrous Systems and member of Rust Embedded Working Group about Rust on embedded systems. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@2:23] - Jonathan’s projects [@10:3] - Keyboard drivers, CP/M, IBM history [@22:19] - Jonathan’s background in embedded systems [@23:46] - Understanding more about computers and laptops [@33:37] - Rust working group for embedded systems [@37:16] - The power of Rust on microcontrollers [@40:00] - The difference between a Microcontroller and a Central Processing Unit [@42:15] - Discussing System on Chip (SoC), Memory Management Unit (MMU), and Microcontrollers [@45:50] - RISC (Reduced Instruction Set Computing) vs CISC (Complex Instruction Set Computing) architecture [@53:30] - How did the working group become an official working group? [@56:00] - Using Rust with microcontrollers [@59:54] - Choosing Rust over C or Python Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/28/20231 hour, 2 minutes, 54 seconds
Episode Artwork

SurrealDB with Tobie and Jamie Morgan

Allen Wyma talks with Tobie and Jamie Morgan, creators of SurrealDB about why they switched to Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Intro [@1:42] - What made SurrealDB switch from Go to Rust? [@4:51] - What is SurrealDB and why it was made? [@9:18] - How does SurrealDB store data? [@11:24] - SurrealDB and WebAssembly [@13:25] - SurrealDB limitations running in the browser [@14:09] - Running SurrealDB in the cloud [@15:37] - Advantage of SurrealDB over other services [@16:35] - Transparency in SurrealDB [@18:37] - Encryption in SurrealDB [@19:26] - SurrealDB licensing and open-source [@25:45] - SurrealDB services and users [@28:57] - When not to use SurrealDB? [@31:34] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/21/202332 minutes, 2 seconds
Episode Artwork

Rust Analyzer with Lukas Wirth

Allen Wyma talks with Lukas Wirth, member of the rust-analyzer team. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@1:46] - Rust Analyzer’s source of funding and history [@10:56] - Lukas’ contribution and work in Rust Analyzer [@16:01] - What is Rust Analyzer and what does it do? [@17:35] - Rust Analyzer diagnostics and implementation [@21:23] - The importance of Rust Analyzer [@25:36] - Rust Analyzer’s limitations [@32:54] - Lessons from the left-pad library issue [@35:20] - Difficulties with dependency version duplicates [@39:53] - Installing Rust Analyzer for different code editors [@44:29] - Rust Language Server vs Rust Analyzer [@51:25] - Clippy [@56:39] - Rust’s advantage over other languages [@58:08] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/15/202359 minutes, 46 seconds
Episode Artwork

Wasmer with Syrus Akbary

Allen Wyma talks with Syrus Akbary, Founder and CEO at Wasmer, a WebAssembly runtime written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - What is Wasmer? [@4:50] - How Syrus got into Wasmer [@7:55] - WebAssembly vs Docker and Kubernetes [@14:30] - WebAssembly GC proposal and updates [@18:06] - Advantage of using WASM over other techniques [@20:52] - Permission system with WebAssembly [@23:30] - Why choose Wasmer? [@25:04] - Wasmer installation process [@25:56] - What makes Rust the best language to use for creating Wasmer [@28:47] - Compiling and running your Rust codes to WebAssembly [@30:48] - Updates and features that are coming out on WebAssembly [@39:36] - Rust and WebAssembly [@46:00] - Making all applications able to compile to WebAssembly [@47:01] - Using GUI with Wasmer [@50:16] - Where to get more information about Wasmer Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/7/202351 minutes, 40 seconds
Episode Artwork

Servo with Josh Matthews

Allen Wyma talks with Josh Matthews, former Engineering Manager at Mozilla for Servo, a web browser engine written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Josh’s history with Servo [@3:54] - Community fears around the future of Rust when Mozilla had their layoffs [@6:52] - Chrome’s Javascript engine [@10:54] - How to make web design more secure with Rust [@19:50] - How Servo is using Rust [@24:49] - Servo’s responsibility as browser engine vs a JavaScript engine [@30:14] - CSS Grid support [@35:51] - Developer tools [@39:54] - Complexity in web optimization [@42:13] - Running multiple iframes within a page [@44:21] - How Rust helped Servo [@46:32] - Funding Servo [@50:19] - Where to get updates on Servo [@50:40] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/31/202351 minutes, 53 seconds
Episode Artwork

AI-NC with Tom Miles

Allen Wyma talks with Tom Miles, CTO of AI-NC, a platform written in Rust to get manufactorability feedback for hardware designs. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@0:46] - What is Spin [@1:23] - AI-NC’s company history [@2:46] - What made Tom start a machine shop company [@8:17] - AI-NC’s goal to provide automation, design, and advanced manufacturing [@17:04] - Communication between designers and assembly people [@19:22] - The margin for error in manufacturing [@30:40] - What made the team switch to Rust vs other languages [@35:06] - Libraries that AI-NC uses in their services [@42:35] - Integrations with third-party chat applications [@46:03] - Hiring Rust talent [@50:23] - Teaching people Rust [@53:27] - Advice for companies that want to use Rust [@54:42] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/24/202355 minutes, 31 seconds
Episode Artwork

Cargo Limit with Alexander Lopatin

Allen Wyma talks with Alexander Lopatin, creator of Cargo Limit, a cargo plugin that will show errors in your Rust code before any warnings. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Alexander’s programming background [@3:17] - What made Alexander interested in the Rust [@4:43] - What is Cargo Limit? [@9:19] - Cargo Limit’s features [@11:20] - Improvements that Alexander wants to make in Cargo Limit [@12:52] - Cargo extensions and installation [@13:31] - Alexander’s process for creating Cargo extensions and plugins [@16:00] - Using Neovim and integrating with Rust Analyzer [@18:57] - Upcoming upgrades and features of Cargo Limit [@24:46] - How to get in touch with Alexander and learn more [@25:28] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/17/202326 minutes, 13 seconds
Episode Artwork

Zed with Antonio Scandurra

Allen Wyma talks with Antonio Scandurra, co-creator of Zed, a high performance code editor written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@2:56] - The story behind Zed [@6:24] - Zed’s performance and features powered by Rust [@12:01] - How Zed balances speed vs features [@16:00] - What is the most important thing an editor has to have? [@18:01] - Zed customization and the ability to add plugins [@23:13] - Zed’s built-in contacts panel for team collaboration [@26:54] - Third-party services that Zed uses [@31:28] - Zed’s tab support [@32:39] - Zed’s theme customization and system [@34:31] - Top crates that power Zed [@36:05] - Zed’s plans to support other platforms [@37:56] - Porting Rust vs porting other languages [@42:09] - Zed’s pricing plans [@43:15] - Zed’s possible plan for open-sourcing parts of the editor [@44:10] - Check out more information about Zed and sign up to join the waitlist [@44:29] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/10/202345 minutes, 29 seconds
Episode Artwork

Rustdoc with Joshua Nelson

Allen Wyma talks with Joshua Nelson, team lead for the Bootstrap team for Rust, and formally on the Rustdoc team for Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@1:07] - Different groups and teams in the Rust community [@8:31] - Memory safety and security issues [@10:26] - Rust documentation [@12:13] - Joshua’s contribution to Rust’s documentation [@14:57] - How did Joshua get involved with Rust [@18:17] - Documentation and prioritizing features [@23:19] - Rust team and governance issues [@34:17] - Maintaining the code [@37:45] - Joshua’s new team and career [@42:20] - Cargo and the bootstrap tool [@46:08] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/3/202348 minutes, 52 seconds
Episode Artwork

Asynchronix with Serge Barral

Allen Wyma talks with Serge Barral about Asynchronix, a event simulation framework written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - What is Asynchronix? [@2:21] - Writing Rust documentation [@4:28] - Serge’s career & background [@8:51] - How does the Asynchronix simulator work? [@11:40] - The importance of writing the library in Rust [@16:51] - Time-based simulation and practical use cases [@26:59] - Building the custom executor [@30:48] - How long did it take to build Asynchronix? [@34:10] - Asynchronix’s vision to improve modern systems development [@40:15] - Getting in touch to learn more about Asynchronix [@41:43] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
2/24/202342 minutes, 26 seconds
Episode Artwork

Lodestone with Wilbur Zhang, Peter Jiang, and Kevin Huang

Allen Wyma talks with the Lodestone team, who is working a tool to create private Minecraft servers in a safe and convenient way using Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@2:51] - How did the Lodestone team discover Rust? [@8:26] - Motivation for writing the Lodestone project [@9:28] - Why choose Rust [@12:23] - Go vs Rust [@13:53] - Experience using Tauri [@16:05] - Lodestone’s front-end work [@19:18] - Setting up and using Lodestone [@21:46] - Issues and challenges the team is currently working on [@25:27] - The advantage of using Rust [@27:21] - Crates used in the project [@29:51] - How Actors work [@34:56] - Lodestone’s scripting system [@39:29] - Lodestone’s security and permission system [@45:37] - How to reach out to the Lodestone team [@46:19] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
2/21/202347 minutes, 28 seconds
Episode Artwork

What's New in Rust 1.65, 1.66, and 1.67

Jon and Ben discuss the highlights of the 1.65, 1.66, and 1.67 releases of Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:11] - Rust 1.65 [@01:28] - Generic Associated Types More detailed blog post [@06:48] - let-else statements if_chain crate [@16:56] - break from labeled blocks [@19:21] - Splitting Linux debuginfo [@20:44] - Stabilized APIs std::backtrace::Backtrace [@22:41] - RLS deprecation [@23:19] - Changelog deep-dive [@23:30] - Cargo queue reordering Benchmarking results [@24:54] - Niches in data-filled enums [@27:23] - poll_fn and Unpin [@28:05] - Too many personalities [@29:20] - uninit integers are UB Working Group discussion [@33:23] - Uplift let_underscore lint [@35:13] - #[non_exhaustive] on enum variants [@36:27] - Rust 1.66.0 [@36:40] - Explicit discriminants on enums with fields Dark and forbidden secrets RFC [@40:05] - core::hint::black_box Tracking issue discussion [@46:34] - cargo remove [@46:52] - Stabilized APIs Mixed integer operations BTreeMap/Set first/last operations std::os::fd [@50:51] - Changelog deep-dive [@51:10] - Cargo publish changes [@53:33] - Don’t link to libresolv or libiconv on Darwin [@54:41] - sym in asm [@55:18] - Soundness fix for impl Trait [@57:27] - Allow transmutes across lifetimes [@57:45] - Unicode 15 [@58:24] - for loops over Option and Result [@1:00:38] - Rust 1.66.1 Security advisory. Affects primarily users with insteadOf in their git config. Prefer pushInsteadOf instead. You may also be interested in: Rustup 1.25.2 [@1:02:41] - Rust 1.67 [@1:02:45] - #[must_use] on async fn [@1:04:07] - sync::mpsc updated Long-standing mpsc panic The PR crossbeam crate CachePadded AtomicCell [@1:07:52] - Stabilized APIs NonZero*::BITS [@1:08:38] - Changelog deep-dive [@1:08:45] - Ratio-aware decompression limit Original CVE Original fix [@1:10:40] - Ordering of array fields [@1:13:08] - Compilation targets Sony PlayStation 1 target Remove linuxkernel targets Target configuration x86_64-unknown-none [@1:14:45] - Dataflow-based MIR constant propagation [@1:15:37] - The drop order twist The effect on let-chains let-chains tracking issue [@1:20:48] - Inconsistent rounding of 0.5 [@1:23:24] - Android NDK update in 1.68 [@1:23:54] - Help test cargo’s HTTP protocol
2/13/20231 hour, 25 minutes, 30 seconds
Episode Artwork

Rust ABI with Aurimas Blažulionis

Allen Wyma talks with Aurimas Blažulionis, author of We Need Type Information, Not Stable ABI blog post, which details possible alternatives to a stable Rust ABI. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Who is Auri? [@3:07] - Auri’s background: video game development, hacking, and reverse engineering [@8:14] - Common advice for optimizing your code [@10:24] - Auri’s article on how to link multiple libraries together [@14:07] - What is an ABI (Application Binary Interface)? [@17:05] - ABI between C and C++ [@19:02] - ABI for Rust [@21:14] - Fat pointers and zero-size types [@23:50] - Writing FFI [@31:15] - C FFI in relation to a Rust ABI [@32:12] - System support for Rust [@39:30] - Auri’s blog and articles [@40:53] - Where to reach out to Auri Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
2/10/202342 minutes, 12 seconds
Episode Artwork

Cloudflare with Adam Chalmers

Allen Wyma talks with Adam Chalmers, software engineer at Cloudflare, which is a global network of servers located around the world, that uses Rust to help power and secure the internet. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction to Cloudflare [@3:57] - Cloudflare’s edge computing [@7:56] - Running Rust binary on Cloudflare [@10:36] - Adams’ background and work history [@15:12] - How does Cloudflare provide web security? [@32:30] - Cloudflare’s transition and rewriting from C to Rust [@37:12] - Cloudflare’s data plane and control plane [@43:00] - Hacking and security issues on Apple and other devices [@50:56] - How does Cloudflare handle onboarding people to Rust [@1:00:09] - The importance of Rust’s performance and reliability for Cloudflare [@1:05:07] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
2/4/20231 hour, 6 minutes, 25 seconds
Episode Artwork

Rust Web Programming with Maxwell Flitton

Allen Wyma talks with Maxwell Flitton, author of Rust Web Programming which details how to build web services using Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@3:21] - What led Maxwell to write and publish books about Rust [@6:02] - Type-checking and Python crashes [@8:50] - Rust technology and its sustainability [@12:32] - Python vs Rust [@13:23] - Maxwell’s background and history [@16:11] - Details about Maxwell’s book Rust Web Programming [@19:19] - Using the actor model [@24:02] - Maxwell’s thoughts and motivation for publishing more books [@32:44] - Rust community [@35:19] - Rust innovations happening in London [@36:22] - Where to purchase the Rust Web Programming book [@40:14] - What to expect for the upcoming book editions [@43:48] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/27/202346 minutes
Episode Artwork

Rust Magazine with Shuang Zhu

Allen Wyma talks with Shuang Zhu, creator of Rust Magazine, a Rust-focused online magazine that provides articles from experts and enthusiasts in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@3:28] - Rust community in China [@4:03] - Shuang Zhu’s experience using Go [@7:30] - Go vs Rust [@11:21] - Rust Magazine [@11:42] - What separates Rust Magazine from other Rust publications [@18:01] - How to contribute and submit articles to Rust Magazine [@21:41] - How to apply as an editor for Rust Magazine [@22:08] - Publishing frequency for Rust Magazine [@24:04] - How to stay up to date with the Rust Magazine [@25:26] - What made Shuang Zhu decide to create Rust Magazine [@27:25] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/20/202328 minutes, 52 seconds
Episode Artwork

Rust Nation with Ernest Kissiedu

Allen Wyma talks with Ernest Kissiedu, organizer of Rust Nation, a Rust-focused conference geared towards Rust beginners and the Rust-curious. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@3:21] - Rust Nation’s purpose and goal [@5:14] - Ernest’s background and being the community lead of Rust London Community [@13:29] - Rust communities all around the world [@16:14] - Possible guests and speakers at the Rust conference. [@22:39] - Why you should attend the Rust conference regardless of how experienced you are with Rust [@26:44] - Choosing and narrowing down the list of speakers for the conference [@31:55] - How the Rust conference will be different from other conferences [@35:29] - How to join the Rust London Community Meetup group [@42:20] - Get 15% off on Rust conference ticket price use promo code RUSTACEAN-STATION [@50:31] - How to reach out to Ernest [@51:27] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/13/202352 minutes, 2 seconds
Episode Artwork

Fermyon with Matt Butcher

Allen Wyma talks with Matt Butcher, CEO of Fermyon, who is working on Fermyon Cloud, a platform to deploy and host WebAssembly applications, with a prime focus on hosting Spin applications written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@2:13] - A deeper dive into the Cloud and its impact [@9:39] - Matt’s work experience on HP and HP Cloud. [@13:40] - Kubernetes [@20:07] - WebAssembly [@30:27] - Krustlet [@36:21] - Edge Computing [@41:05] - Fermyon Cloud [@50:48] - Where to learn more about Fermyon Cloud [@52:58] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/8/202354 minutes, 19 seconds
Episode Artwork

C2Rust with Stephen Crane

Allen Wyma talks with Stephen Crane, CTO of Immunant, who is working on C2Rust, a library that transpiles C99-compliant C code into unsafe Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - C2Rust Introduction [@01:50] - How C2Rust works and its goal as a transpiler [@05:49] - Transpilers vs compilers [@12:30] - Unstructured control flow vs structured control flow [@16:32] - The process of transforming C to Rust projects [@19:15] - Parsing C code correctly [@22:13] - The importance of compiler flags on interpreting C Code [@28:45] - C++ vs C [@38:50] - When you should you look at using C2Rust [@45:04] - The best way to run your tests in Rust [@48:15] - Projects that are currently using C2Rust [@50:29] - Improving the usability and safety of the output of rust code [@53:55] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
12/16/202255 minutes, 31 seconds
Episode Artwork

Kernel Density Estimation with Seaton Ullberg

Allen Wyma talks with Seaton Ullberg, developer of kernel-density-estimation, a Rust library that computes kernel density estimations. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:00] - Introduction [@0:55] - Crate overview and how it works [@17:49] - Kernel Density Estimation vs other competing algorithms [@24:05] - Application uses of Kernel Density Estimation [@33:38] - Why write this library [@35:03] - Why use Rust when re-writing this library [@40:26] - Seaton using f64 as a feature [@42:20] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
12/9/202243 minutes, 14 seconds
Episode Artwork

Presser with Gray Olson

Allen Wyma talks with Gray Olson, developer of Presser, a library that aims to make it easier to safely work with byte buffers. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Gray’s background and introduction [@04:18] - Gray’s art and graphic designing work for Embark Studio [@08:40] - Ray tracing and fractals [@13:44] - The most expensive process in a video game [@16:48] - Vector graphics are so hard on the GPU [@18:57] - What makes triangles very useful in drawing and designing [@22:41] - Matrix math as a fundamental building block of computer graphics [@28:13] - Understanding the concept of uninitialized memory and why Presser is necessary [@36:31] - LLVM’s “No Uninitialized Memory” attribute. [@39:06] - Rust’s virtual machine [@40:52] - Allocating memory for data [@49:34] - Safety invariants and validity invariants in the Rust ecosystem [@53:19] - How to use unsafe code in a way that does not violate the validity invariant of Rust [@1:04:01] - Embark Studio’s mission to enable those who play games to also modify the game worlds they play in [@1:07:27] - Embark Studio’s Rust game projects [@1:09:08] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
12/2/20221 hour, 11 minutes, 15 seconds
Episode Artwork

Leptos with Greg Johnston

Allen Wyma talks with Greg Johnston, creator of Leptos, a full-stack, web framework using a reactive design to build declaritive user interfaces. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:00] - Introduction of Greg [@02:12] - Programming languages has Greg worked with [@05:14] - Greg’s other passions besides programming [@10:59] - How Elm has set the agenda for a lot of Javascript front-end frameworks [@13:25] - Elm vs Rust in terms of error handling [@18:16] - What is Leptos and why Greg created it [@33:44] - Pros of using Leptos [@38:19] - Leptos’ Server Side Rendering feature [@45:44] - Leptos’ build tool limitations [@51:40] - Leptos’ ability to interact with other languages [@59:25] - Greg’s work and projects using JavaScript [@1:00:45] - Greg’s Flutter experience [@1:04:21] - Greg’s Ionic experience [@1:08:28] - HTML [@1:12:46] - Leptos’ version [@1:14:14] - Leptos’ production readiness [@1:16:23] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
11/25/20221 hour, 16 minutes, 58 seconds
Episode Artwork

Kanal with Khashayar Fereidani

Allen Wyma talks with Khashayar Fereidani, creator of Kanal, a sync and async channel library boasting the fastest implementation of channels in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:10] - Introduction [@03:10] - Where did the idea of creating Kanal come from? [@04:10] - Go vs Rust performance [@06:32] - How Kanal works with synchronous Rust [@07:40] - When did work on Kanal get started [@11:08] - What’s left to get done for Kanal to be production ready [@13:48] - Feedback so far for Kanal [@15:54] - Async frameworks that work with Kanal [@16:59] - Kinds of problems that are solved with channels [@19:11] - Channels can help in learning Rust [@19:48] - What’s next for Kanal [@20:49] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
11/20/202221 minutes, 42 seconds
Episode Artwork

cargo-auditable with Sergey Davidoff

Allen Wyma talks with Sergey Davidoff, creator of cargo-auditable, a cargo plugin for auditing your Rust dependencies for security vulnerabilities. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:10] - Introduction to cargo-auditable [@07:51] - Guarantees that cargo-auditable provides [@17:33] - Trivy and other crates that are in cargo-auditable [@19:47] - cargo-auditable vs cargo audit [@21:09] - Sergey’s programming background [@34:49] - Vulnerabilities Sergey was able to encounter and reported to RustSec [@39:47] - Feedbacks and reactions from library owners that were found to have issues [@48:52] - How does Sergey handle problems and issues he encounters? [@56:48] - Sergey’s tips and advice to those who want to improve security on their projects [@59:36] - Parting thoughts and shoutouts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
11/11/20221 hour, 4 minutes, 33 seconds
Episode Artwork

Pants with Eric Arellano and Stu Hood

Allen Wyma talks with Eric Arellano (they/them) and Stu Hood (he/him), maintainers of Pants, a build system made for monorepos. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:10] - Pants’ Introduction [@01:26] - Different languages used in building Pants [@03:25] - Pants versions [@06:00] - Pants’ history and why it started [@11:09] - What is a Monorepo and why you would want to use it [@13:48] - Polyrepo vs Monorepo [@19:04] - What makes Pants unique [@21:03] - Why Pants needed to rewrite some parts from Python to Rust and other languages [@22:31] - Why Pants chose Rust [@25:46] - Pants 1 vs Pants 2 [@27:12] - Challenges integrating Python and Rust [@29:03] - How Eric and Stu figured out which parts should be written in Python and which should be in Rust [@32:27] - Future plans and what’s next for Pants? [@36:15] - Shoutouts and parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
11/4/202242 minutes, 14 seconds
Episode Artwork

Veloren with Forest Anderson

Allen Wyma talks with Forest Anderson, co-host at Rust GameDev Podcast, and core dev on Veloren. Allen and Forest talk about Veloren, a multiplayer voxel RPG game engine, written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:11] - Introduction [@03:31] - The Rust Game Dev Team [@07:31] - The size of the community for Rust game development [@10:48] - The complexity of game development [@12:43] - How Veloren was created [@18:30] - What is Veloren [@22:52] - The kinds of games that can be developed in Veloren [@25:36] - The advantage of using Rust in game development [@31:51] - Game development experience in Linux vs Windows [@34:46] - Gaming community for Linux [@37:40] - System Requirement for running Veloren [@42:17] - Parting thoughts [@43:54] - Where to reach out and how to get involved with Veloren and in the Rust Game Dev community Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
10/7/202244 minutes, 52 seconds
Episode Artwork

What's New in Rust 1.62, 1.63, and 1.64

Jon and Ben discuss the highlights of the 1.62, 1.63, and 1.64 releases of Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:50] - Rust 1.62 [@00:58] - cargo add Maintaining sorting in TOML files toml_edit cargo-edit [@03:37] - #[default] enum variants Generated bounds part of RFC Macro helper attributes Extra bounds on derive [@07:36] - Thinner, faster mutexes on Linux Tracking issue Short thread on the change from Mara More details from Mara on pthread mutexes [@13:21] - Bare-metal x86_64 target Target triples Tier 2 target policy Tier 2 targets x86_64-unknown-none Custom target triples [@22:20] - Stabilized APIs f64::total_cmp Implementing PR Stdin::lines FusedIterator [@29:22] - Changelog deep-dive cargo -F for --features unaligned_references lint now warns by default addr_of! [@31:09] - Rust 1.62.1 Not much to talk about. We also didn’t talk about: Rustup 1.25.0 Rustup 1.25.1 [@31:56] - Rust 1.63 [@31:56] - Scoped threads The Leakpocalypse issue Pre-Pooping Your Pants With Rust [@40:41] - Rust ownership for raw file descriptors Rust I/O Safety RFC [@43:45] - const mutex initialization [@43:54] - Turbofish and impl Trait arguments Search/replace generics reference Rust reference for turbofish [@52:03] - Non-lexical lifetimes migration complete NLL stabilization and borrowck’s future polonius [@51:33] - Stabilized APIs array::from_fn Box::into_pin Things Rust-in-Linux needs from Rust [@56:27] - Changelog deep-dive cargo --config cargo new test code updated New targets: Apple WatchOS and Nintendo 3DS ​[OsStr]::join The Join trait [@1:00:24] - Rust 1.64 [@1:00:32] - IntoFuture Reference in original async/await RFC Original IntoFuture regression [@1:03:43] - C-compatible FFI types in core libc crate libcpocalypse [@1:09:37] - rust-analyzer component in rustup rust-analyzer proxy binary added to rustup [@1:13:19] - Cargo workspace inheritance and multi-target builds Inheriting attributes from the workspace [@1:15:58] - Stabilized APIs Stabilization PR for ready! [@1:18:03] - Compatibility notes Increasing the glibc and Linux kernel requirements RLS deprecation [@1:22:33] - Other changes Profile-Guided Optimization PR landing lint for unused tuple fields [@1:25:12] - Changelog deep-dive [build.jobs] Implementing PR for negative values New target: Nintendo Switch Improve derive(Debug) Other internal changes Optimizing Vec::insert Credits Intro Theme: Aerocity Audio Editing: Aerocity Hosting Infrastructure: Jon Gjengset Show Notes: Jon Gjengset Hosts: Jon Gjengset and Ben Striegel
10/5/20221 hour, 31 minutes, 49 seconds
Episode Artwork

Ockam with Mrinal Wadhwa

Allen Wyma talks with Mrinal Wadhwa, CTO at Ockam. Allen and Mrinal talk about Ockham, a toolkit, written in Rust, to build distributed applications that provide trust across hostile networks. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:10] - Mrinal’s Introduction [@01:01] - What is Ockam? [@05:04] - Building Ockam from scratch and building it open source [@10:45] - How Ockam provides security with modern data distribution [@18:15] - The reason behind building Ockam with Rust [@26:15] - Feedback that Ockam received from using Rust & Elixir [@28:04] - Concerns with Rust and Elixir [@29:38] - The most difficult part of working on Ockam [@30:42] - Competing technologies that solve the same issues as Ockam [@33:04] - When Ockam is not a good solution [@35:15] - What’s next for Ockam [@40:17] - Job opportunity with Ockam [@41:48] - Why Ockham switched From Erlang to Elixir Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
9/23/202244 minutes, 29 seconds
Episode Artwork

Axum with David Pedersen

Allen Wyma talks with David Pedersen, Core Team Member at Tokio. Allen and David talk about Axum, a web application framework written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:40] - Introduction [@1:13] - Why Axum is developed under the Tokio project umbrella [@5:58] - What to expect from Axum [@8:14] - Axum additional features [@9:40] - Why Tokio decided to roll their own web framework [@13:04] - Understanding Axum vs other web frameworks [@22:16] - Testing, reviews, and feedback of the Axum framework [@23:46] - Axum’s production readiness [@28:57] - Semantic versioning [@31:59] - Understanding and learning lessons from other web frameworks to improve Axum [@34:47] - Production use cases that should use Axum [@35:54] - David’s Rust experience vs other web frameworks [@40:25] - Clippy [@41:41] - Upcoming changes and roadmap for Axum [@45:28] - Parting thoughts and how to reach out to David Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
9/16/202249 minutes, 10 seconds
Episode Artwork

Rust at Microsoft with Nell Shamrell-Harrington

Allen Wyma talks with Nell Shamrell-Harrington, Member Board of Directors at Rust Foundation and Principal Software Engineer at Microsoft about Microsoft’s use of Rust, her time being involved with Rust, and also the Rust RFC process.. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@1:30] - Nell’s Background and Introduction [@5:31] - Rust communities all over the world [@7:10] - Handling opinions, feedback and RFCs when making changes and updating a language [@11:23] - What is a RFC and how does it work? [@17:43] - Nell’s experience switching from Ruby to Rust [@19:56] - Nell’s career background [@24:18] - How the Rust Foundation operates [@24:20] - Rust Foundation’s sponsorship model [@33:08] - What Microsoft is currently working on with Rust [@42:22] - How much Rust is going into Windows [@44:25] - Is there a public long-term plan for Microsoft’s involvement with Rust? [@48:02] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
9/9/202251 minutes, 31 seconds
Episode Artwork

Fyrox with Dmitry Stepanov

Allen Wyma talks with Dmitry Stepanov, creator of Fyrox. Fyrox is a feature-rich, general purpose game engine built in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:41] - Dmitry’s background and programming introduction [@4:12] - How did Dmitry got into building game engines [@7:39] - How Dmitry discovered Rust [@8:57] - Dmitry’s experience so far using Rust [@12:13] - When did Dmitry start working on Fyrox [@15:03] - What’s the original idea of Fyrox [@16:23] - The advantage of Fyrox over other game engines [@22:05] - Is Fyrox production ready? [@23:17] - Games and projects that are now using Fyrox [@25:58] - Things need to know before using Fyrox game engine [@30:21] - Fyrox’s monetization plan [@31:33] - Dmitry’s upcoming features and plans for Fyrox Other Resources Fyrox’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
9/2/202234 minutes, 18 seconds
Episode Artwork

Tauri with Daniel Thompson-Yvetot

Allen Wyma talks with Daniel Thompson-Yvetot, co-founder of Tauri. Tauri is a toolkit that helps developers make applications for the major desktop platforms using a variety of front-end frameworks. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:33] - Daniel’s introduction [@3:38] - Tauri’s focus on safety and security [@6:50] - Tauri’s mission to reduce their footprint [@14:48] - How does Tauri handles features that are not supported across different platforms [@23:56] - How does Tauri monetize to keep the project going? [@26:16] - Why choose Tauri over other solutions? [@28:57] - What are the tools being built with Tauri? [@31:09] - Tyler’s programming background [@35:11] - Tauri’s future release and features [@38:38] - ‘Tauri Foundations’ book by Daniel Thompson-Yvetot and Lucas Nogueira [@40:00] - Requirement on building a Tauri app [@43:13] - Parting thoughts Other Resources Tauri’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
7/24/202244 minutes, 44 seconds
Episode Artwork

Asynchronous Rust with Tyler Mandry

Allen Wyma talks with Tyler Mandry, lead on Rust Async Working Group. Rust Async Working Group is focused around implementation/design of the “foundations” for Async I/O. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:10] - Async Working Group introduction [@3:08] - Async progress over the past few years [@5:16] - The Fuchsia operating system and its goals [@6:19] - How much of Fushia is written in Rust? [@8:16] - The experience of using Rust in Fuchsia so far [@17:29] - Why are async runtimes not compatible with each other, and how might it be solved? [@23:06] - How does the working group handle feedback? [@25:33] - What’s the most important issue the working group is working on? [@32:45] - Different types of async runtimes [@34:36] - Turning synchronous into async [@39:36] - How did Tyler go from async C++ to async Rust? [@47:14] - Tyler’s code and documentation writing [@54:21] - Where to connect with Tyler Other Resources Tyler’s Blog Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
7/18/202256 minutes, 49 seconds
Episode Artwork

High Assurance Rust with Tiemoko Ballo

Allen Wyma talks with Tiemoko Ballo, author of High Assurance Rust. High Assurance Rust is a book about building performant software we can justifiably trust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:34] - Tiemeko’s introduction [@2:18] - Defining Safety critical and Mission critical [@3:22] - How to develop software in Rust and have a high assurance? [@8:21] - The lack of standardized behavior and different compilers [@13:29] - Different approaches to assurance testing [@14:54] - How does Rust’s memory safety work? [@20:57] - Temporal memory [@22:59] - What is a borrow checker and how do we know that it’s working properly? [@28:17] - The difference between fuzz testing, property-based testing, and chaos testing [@35:48] - Teimoko’s programming background [@42:55] - Teimoko’s work and projects [@46:15] - Rust’s error handling and concurrency advantages over other languages [@49:29] - What Rust lacks in terms of guaranteeing high assurance and justifiability [@53:17] - How to stay up to date on what’s happening in the security space. [@54:35] - Parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
7/8/202258 minutes, 1 second
Episode Artwork

New Rustacean with Chris Krycho

Allen Wyma talks with Chris Krycho, host of the now-ended New Rustacean podcast about learning the Rust programming language. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@1:08] - Chris’ background and introduction [@4:33] - Chris’ current career and projects [@12:17] - Rust and WebAssembly [@19:35] - Chris’ podcasting plans [@23:47] - Chris’ podcasting preparation and processes [@36:02] - Lessons and insights coming from podcasting [@48:08] - ZSH vs Fish [@53:12] - Picking out potential podcast guests and making great interviews [@57:12] - Chris’ opinion and comparison on the different programming languages [@1:07:33] - Chris’ parting thoughts and future plans Other Resources Chris’s Twitter Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
7/1/20221 hour, 11 minutes, 15 seconds
Episode Artwork

This Week in Rust - Issue 446

Highlights from This Week in Rust - Issue 446, presented by Allen and Tim, with Nell Shamrell-Harrington, co-hosting for the first time in 2022. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00:00] Welcome [@00:00:10] - Introduction [@00:00:52] - Agenda [@00:01:27] - Interview with Nell Shamrell-Harrington about editing This Week in Rust [@00:06:21] Submitting an article to This week in Rust TWIR Github Repository github.com/rust-lang/this-week-in-rust TWIR Twitter account @thisweekinrust [@00:07:42] Call for volunteers to co-host an episode [@00:08:38] - Quote of the week I wrote a bespoke time-series database in Rust a few years ago, and it has had exactly one issue since I stood it up in production, and that was due to pessimistic filesystem access patterns, rather than the language. This thing is handling hundreds of thousands of inserts per second, and it’s even threaded. Given that I’ve been programming professionally for over a decade in Python, Perl, Ruby, C, C++, Javascript, Java, and Rust, I’ll pick Rust absolutely any time that I want something running that I won’t get called at 3 AM to fix. It probably took me 5 times as long to write it as if I did it in Go or Python, but I guarantee it’s saved me 10 times as much time I would have otherwise spent triaging, debugging, and running disaster recovery. “Configuring uWSGI for Production Deployment” (2019) by at Peter Sperl and Ben Green from Bloomberg uWSGI’s max-requests and max-worker-lifetime options are intended to reduce the chance of memory leaks affecting production workloads [@00:14:47] - Crate of the week: osmpbf A Rust library for reading the OpenStreetMap PBF file format (*.osm.pbf). It strives to offer the best performance using parallelization and lazy-decoding with a simple interface while also exposing iterators for items of every level in a PBF file. OpenStreetMap Humanitarian OpenStreetMap Team (HOT OSM) [@00:16:40] Official Notices [@00:16:43] - Rust Compiler June 2022 Steering Cycle [@00:21:24] Highlights [@00:21:51] (async) Rust doesn’t have to be hard Rust Is Hard, Or: The Misery of Mainstream Programming Stack Overflow Developer Survey: Most loved programming language [@00:28:28] clippy book [@00:29:40] Rolling co-lead roles for T-compiler [@00:36:33] Hyper vs Rocket - Low Level vs Batteries included Rust is surprisingly expressive (2013) by Steve Klabnik [@00:40:00] Macro Patterns - A match made in heaven by Conrad Ludgate [@00:41:11] Web Scraping with Rust by Gints Dreimanis Hyper with Sean McArthur [@00:44:09] Trivia About Rust Types: An (Authorized) Transcription of Jon Gjengset’s Twitter Thread by Jimmy Hartzell [@00:46:01] Rust language’s explosive popularity comes with challenges by Ed Targett “A proactive approach to more secure code” (2019) by Microsoft Security Response Center Project Zero team at Google [audio] Rust Foundation with Rebecca Rumbul Credits Intro Theme: Aerocity Audio Editing: Tim McNamara Hosting Infrastructure: Jon Gjengset Show Notes: Tim McNamara Hosts: Tim McNamara, Nell Shamrell-Harrington and Allen Wyma.
6/27/202256 minutes, 19 seconds
Episode Artwork

Zig with Andrew Kelley

Allen Wyma talks with Andrew Kelley, creator of Zig. Zig is a general-purpose programming language and toolchain for maintaining robust, optimal, and reusable software. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:51] - Andrew’s introduction [@2:55] - Rust vs Zig [@5:27] - What is undefined behavior (UB) and what causes it? [@11:37] - How does Zig deal with undefined behavior? [@16:09] - How well does Zig work in production? [@22:46] - Deeper dive into Andrew’s programming background [@33:35] - Zig’s mission statement and what they’re doing as a non-profit [@37:38] - Zig’s update release management [@40:06] - Andrew’s OkCupid project [@42:20] - Andrew’s preparations and motivations for making a language [@46:11] - Zig using LLVM [@49:12] - What’s next for Zig? [@54:20] - Parting thoughts Other Resources Zig’s Github Andrew’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
6/24/202256 minutes, 25 seconds
Episode Artwork

What's New in Rust 1.60 and 1.61

Jon and Ben discuss the highlights of the 1.60 and 1.61 releases of Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:15] - Rust 1.60 [@01:45] - Source-Based Code Coverage -Cinstrument-coverage documentation grcov cargo-llvm-cov [@08:21] - cargo --timings Example output for Cargo build Cargo documentation [@10:21] - New syntax for Cargo features Optional dependencies Dependency features [@17:06] - Incremental compilation status Incremental disabled in 1.59 [@20:06] - Instant monotonicity guarantees “And now we come upon a sad state of affairs” PR moving from Mutex to AtomicU64 PR removing backsliding protection [@26:01] - Stabilized APIs Arc::new_cyclic Source for Arc::new_cyclic <[u8]>::escape_ascii usize::abs_diff [@32:27] - Changelog deep-dive Stabilize #[cfg(panic = "..")] Port cargo from toml-rs to toml_edit toml_edit crate Adding OpenWRT target OpenWRT [@36:59] - Rust 1.61 [@36:59] - Custom exit codes from main Termination ExitCode Why ExitCode is opaque try_trait_v2 [@45:05] - More capabilities for const fn Meta tracking issue for const fn [@52:20] - Static handles for locked stdio Stdout::lock [@54:33] - Stabilized APIs Vec::retain_mut <*const T>::offset [@59:22] - Changelog deep-dive std::thread::available_parallelism Respecting Linux cgroups Cargo dropping num_cpus Sparse registries RFC Implementation Call for testing Linux baseline requirements bump Likely landing in 1.64 Compatibility Notes #[ignore = ".."] Removing “everybody loops” When rustdoc stopped looping everybody [@1:12:55] - Rust 2024 Roadmap Living roadmap Credits Intro Theme: Aerocity Audio Editing: Aerocity Hosting Infrastructure: Jon Gjengset Show Notes: Jon Gjengset Hosts: Jon Gjengset and Ben Striegel
6/21/20221 hour, 15 minutes, 49 seconds
Episode Artwork

Fig with Grant Gurvis

Allen Wyma talks with Grant Gurvis, Founding Engineer at Fig. Fig adds IDE-style autocomplete to your existing terminal. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:32] - Grant’s bio and Fig introduction [@4:25] - Fig’s support and integration expansion [@6:05] - Differentiating Warp and Fig [@8:38] - Changes that need to happen in order to support Linux and Windows [@10:36] - Fig’s switch to Rust [@18:40] - Grant’s experience using different programming platforms [@25:06] - Fig’s monetization plans [@26:53] - Fig’s user reviews and feedback [@29:55] - Opportunites for Rust engineers Other Resources Fig’s GitHub Grant’s GitHub Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
6/17/202231 minutes, 10 seconds
Episode Artwork

This Week in Rust - Issue 445

Highlights from This Week in Rust - Issue 445, presented by Tim and Allen. Themes for the discussion include getting work as a Rust developer, creating a specification for Rust, and the health of the community. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] Welcome [@00:10] - Introduction [@01:49] - Agenda [@02:44] - Quote of the week Rust is a perfect language for a dad like me, who every day puts kids to sleep, and tired after long day of work and chores, can sit down and possibly write some code for the hobby open source project, even when he’s already just half awake. And it usually just works, tend to be robust and make the day feel extra productive. [@04:14] - Crate of the week Tectonic d3.js matplotlib [@07:26] Official Notices [@07:30] - Concluding the events of last November [@14:20] Highlights [@14:27] - [video] Rust makes you feel like a GENIUS by Tris Oaten [video] Wat lightning talk [video] Rust: Your code can be perfect [@18:32] - Builder Lite pattern by matklad [@22:06] - The Rust Jobs Market by Alfie John [@26:55] - Introducing the Ferrocene Language Specification by Ferrous Systems Ferrous Systems and AdaCore to join forces on Ferrocene [audio] Rust Safety with Quentin Ochem and Florian Gilcher High Assurance Rust [@32:12] Simple rust interview questions by Maciej Flak [@36:36] PR 97046: improve case conversion happy path by Conrad Ludgate Other items [@39:12] Call for Participation: mirrord [@39:25] RFC: create a “types team” [@40:37] PR: improve error message for E0081 Credits Intro Theme: Aerocity Audio Editing: Aleksandar Nikolic Hosting Infrastructure: Jon Gjengset Show Notes: Tim McNamara Hosts: Tim McNamara and Allen Wyma.
6/16/202242 minutes, 6 seconds
Episode Artwork

Rust Foundation with Rebecca Rumbul

Allen Wyma talks with Rebecca Rumbul, Executive Director and CEO at Rust Foundation. The Rust Foundation is an independent non-profit organization to steward the Rust programming language and ecosystem, with a unique focus on supporting the set of maintainers that govern and develop the project. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@1:00] - Rebecca’s Bio [@2:36] - The Rust Foundation [@7:27] - How the Rust Foundation deals with legal work [@9:26] - How the Rust Foundation helps all contributors [@12:47] - Scoring matrix to measure the value [@15:20] - DevX Initiative & Ernest Kissiedu [@17:14] - Competing in funding projects [@20:29] - Applying for a membership in The Rust Foundation [@23:25] - Company membership benefits [@28:34] - The Rust Foundation can potentially connect people and projects [@31:08] - Board member Nell Shamrell-Harrington & The Rust Foundation sponsoring [@35:00] - Rebecca on making tough decisions [@36:46] - Nell’s weekly newsletter [@40:20] - What makes a company pay for a Platinum membership? [@44:21] - Rebecca’s background [@49:28] - Anything difficult in running The Rust Foundation? [@51:16] - Future plans for Rust Foundation [@54:12] - Contacting The Rust Foundation [@54:48] - Parting words Other Resources Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
6/10/202256 minutes, 47 seconds
Episode Artwork

This Week in Rust - Issue 444

Highlights from This Week in Rust - Issue 444. This week features a juicy post-mortem, open source, open hardware, and lots of news from around the Rust ecosystem. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] Welcome [@00:10] - Introduction [@00:50] - Agenda [@01:23] - Quote of the week This is the difference in approaches of the two languages. In C++ if the code is vulnerable, the blame is on the programmer. In Rust if the code is vulnerable, Rust considers it a failure of the language, and takes responsibility to stop even “bad” programmers from writing vulnerable code. I can’t stress enough how awesome it is that I can be a careless fool, and still write perfectly robust highly multi-threaded code that never crashes. [@03:09] Allen: Rust is both good and bad at marketing [@03:30] - Crate of the week [@04:15] - Tim and Sean discuss parsing in episode 2022-05-26 at 47:10 [@05:10] Official Notices [@05:22] - Announcing Rust 1.61.0 Custom exit codes from main [Note from Tim: I say “termination crate”, but should have said “Termination trait”.] More capabilities for const fn “Basic” handling of fn pointers Add trait bounds to a const fn dyn trait and impl Trait support Stdio handles can be locked directly Several stabilized APIs [@08:07] Highlights [@08:27] - Developer survey: JavaScript and Python reign, but Rust is rising [@09:09] - Sean: “Rust adoption has nearly quadrupled in the last two years, going from 600k developers in Q1 2022 to 2.2m in Q1 2022.” [@13:00] - Redust by Will Nelson [@13:50] Allen: I think the comments are actually more interesting. They are starting to point to something really—I don’t know whether it’s good or bad for the community—where, you know, people start rolling their own crates instead of, say, doing stuff upstream. It kind of goes back to what Tim was complaining about before [Easy Mode for Rust, discussed on This Week in Rust - Issue 441]—well, lightly pointing out to people out there—that okay, now which crate should I use? [@16:20] Tim: Open source is really complicated. You need to talk to people. That’s … challenging. [Laughs] [@16:40] Josh Triplett on Building with Rust, discussing the orphan rule [@16:50] Sean: Rust is not very good at sharing between crates. [@19:07] - Rust: A Critical Retrospective by bunnie Links The Hardware Hacker, bunnie’s autobiography [video] “Shenzhen: An Alternative to the American way of Innovation” [@28:56] A Programmer’s Brain, by Felienne Hermans, about working memory in programmers. [@19:58] - Hacking the Xbox book [@20:04] - [video] Linux.conf.au 2013 keynote discussing Chumby and creating a hardware startup [@20:20] - betrusted.io, a secure communications system that runs the Xous microkernel operating system [@21:07] - Tim: Security-critical applications have issues when they … rely on Rust. There’s one quote I want to pull out of the post, which is: “I’m not sure if there is even a good solution to this problem, but, if you are super-paranoid and your goal is to be able to build trustable firmware, be wary of Rust’s expansive software supply chain attack surface!” [@26:09] - Sean: bunnie I think that you are absolutely, totally, qualified. [@30:17] - Allen: I did see a macro that he put in there. … I forget extact. It was very crazy and I was like, “Come on, no one’s every going to write something crazy like this” and then I took a look at the RFC that Sean’s gonna do and in the comments there was a crazy one like that and I was like, “oh wow, this guy’s point’s valid”. [@30:49] - Hyrum’s Law, named after Hyrum Wright. With a sufficient number of users of an API, it does not matter what you promise in the contract: all observable behaviors of your system will be depended on by somebody. [@31:50] Fixing memory leaks by Lily Mara [@34:01] - tracing crate, created as part of the tokio project [@32:33] - “Is it possible to cause a memory leak in Rust?” - Stack Overflow [@33:06] - std::ops::Drop trait documentation std::mem::forget and Box::leak for intentionally leaking memory Out-of memory (OOM) killer internals page from the Linux memory management wiki [@37:54] tracing::instrument::Instrument trait, which fixes this issue [@41:29] Building a Cloud Database from Scratch: Why We Moved from C++ to Rust by Yingjun Wu GAT (generic associated traits) Allen: [C++ vs Rust] is like apples vs apple pie. [@45:50] - [video] Deref and Drop traits by Dan Chiarlone “Smart pointers”, chapter 15 of The Rust Programming Language. std::ops::Deref trait documentation [@46:40] - Optimizing the size of your Rust binaries by Sylvain Kerkour cargo-bloat, for determining the size impact of code and dependencies twiggy, a similar tool for WASM targets [@48:10] - RFC: Add more support for fallible allocations in Vec by Daniel Paoliello and contributors Sean: This RFC is intended as a stop-gap, to unblock on-going work like—I imagine—adding Rust to the Linux kernel while better long-term solutions are explored. “Example: Implementing Vec” chapter of the Rustnomicon, describes how Vec’s memory allocation works in detail Never type reference documentation [@54:40] Tim: I want to bring out a comment that was made to me in private, because I’ve been toying with the idea of becoming a rustc contributor, particularly on the standard library side, and Ashley Mannix sent me a really lovely note, which was: “Rust is also chronically friendly so nobody gets chewed out for making mistakes. They happen. They get caught. They get patched. You learn something new. It’s ok.”. [@55:51] - How we use Rust, SQLx and Rocket for Oso Cloud by Steve Olsen Other items [@57:20] Meetups [@57:31] Major release announcements DataFusion 8.0 IntelliJ Rust plugin 2022.1 [@57:40] Join us in the #this-week-in-rust channel of the Rustacean Station Discord server Credits Intro Theme: Aerocity Audio Editing: Aleksandar Nikolic Hosting Infrastructure: Jon Gjengset Show Notes: Tim McNamara Hosts: Tim McNamara, Sean Chen, and Allen Wyma.
6/8/202258 minutes, 22 seconds
Episode Artwork

egui with Emil Ernerfeldt

Allen Wyma talks with Emil Ernerfeldt, creator of egui. egui is a simple, fast, and highly portable immediate mode GUI library for Rust. egui runs on the web, natively, and in your favorite game engine (or will soon). Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:41] - History of Emil’s last name “Ernerfeldt” [@1:25] - Getting Emil on this podcast [@4:06] - Emil’s Bio and egui [@11:52] - Building egui [@16:47] - Immediate mode [@26:27] - Knowing when to use egui [@31:35] - Parent-child contraints [@34:21] - Immediate mode is dynamic [@36:22] - Refresh rate and Continuous mode [@39:11] - Themes in egui [@39:59] - egui more for development or client side app? [@45:17] - Opinions on hiring people and Emil’s company [@49:09] - Opinions on products built by you vs built by others [@53:48] - Other GUIs [@56:54] - Future plans on egui [@58:45] - Anything else you want to mention? Other Resources egui’s Github Emil’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
6/3/20221 hour, 1 minute, 49 seconds
Episode Artwork

This Week in Rust - Issue 443

Highlights from This Week in Rust - Issue 443. This week features a new section within the newsletter as well as the hosts Sean, Allen and Tim chatting about compilers, front-end development, extending databases with Rust and more. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] Welcome [@00:10] - Introduction [@00:50] - Agenda [@01:20] - Quote of the week [@02:50] - Crate of the week [@03:30] Highlights [@03:45] - Things are Getting Rusty in Kernel Land Rust for Linux GitHub org Version 6 of the Rust patchset Supporting Linux kernel development in Rust LWN article discussing the Linux Plumbers 2020 session that kicked off the effort Prossimo funding the effort, sponsored by Google [@09:45] - The Rust Borrow Checker - A Deep Dive MIR (Mid-level representation) introduction From MIR to binaries discusses how binaries are generated MIR borrow check section of the rustc dev guide rustc_borrowck crate within the compiler [@14:40] - PixelBox Public Alpha PixelBox source code egui GUI framework for Rust PyTorch, a popular Python wrapper for the Torch machine learning framework ONNX machine learning format [@18:00] - Rust Ergonomics: Default and From std::default::Default trait documentation std::convert::From trait documentation std::convert::Into trait documentation Code Like a Pro in Rust book by Brendan Matthews, published by Manning [@23:30] - Our Experience Porting the YJIT Ruby Compiler to Rust YJIT: Building a New JIT Compiler for CRuby [talk] MoreVMs’21: “YJIT: Building a New JIT Compiler Inside CRuby” – Maxime Chevalier-Boisvert [@30:30] - Asteracea JSX introduction, from the ReactJS project [audio] Carl Lerche on macros (skip to 28:25) How does WebAssembly fit into the web platform?, an article discussing the interacting with the DOM from wasm. [@37:46] - Ferrite: A Judgmental Embedding of Session Types in Rust Haskell Session Types with (Almost) No Class [pdf] Session Types for Rust Session type Affine type, definition from Wikipedia. [Note from Tim: the definition provided by me in the podcast is incorrect. The term “affine type” is derived from affine logic, not affine transformation.] [@40:40] - New newsletter section: Call for testing RFC: Deduplicate cargo workspace information Scoped threads in the standard library crossbeam crate rustc dev guide [@45:45] - [video] Neon - Building a Postgres storage system in Rust pgx crate for extending PostgreSQL in Rust neon database source code [@50:55] - Extending SQLite with Rust Stored procedure English Wikipedia article Other items [@59:30] Final Comment Period for RFCs, PRs [@59:42] What is “yeet”? Credits Intro Theme: Aerocity Audio Editing: Brógan Molloy Hosting Infrastructure: Jon Gjengset Show Notes: Tim McNamara Hosts: Tim McNamara, Sean Chen, and Allen Wyma.
5/30/20221 hour, 1 minute, 3 seconds
Episode Artwork

Buttplug with Kyle Machulis

Allen Wyma talks with Kyle Machulis, lead developer on Buttplug. Buttplug is an open-source standards and software project for controlling intimate hardware such as sex toys. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:58] - Kyle’s Introduction [@3:17] - What got Kyle into sex tech and why start Buttplug [@9:08] - How does Buttplug operate and what functions does it provide? [@11:45] - How did Rust come into their project? [@19:48] - How was their experience with the Rust community? [@28:05] - What protocols does Buttplug use and develop? [@33:33] - Buttplug’s capabilities, limitations, and safety protocols [@44:23] - Why the name “Buttplug”? [@51:53] - Buttplug’s push for not just entertainment but also health and wellness purposes [@56:07] - How people can help contribute to pushing Buttplug’s project [@59:45] - Kyle’s parting thoughts Other Resources Buttplug’s Twitter Buttplug’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
5/28/20221 hour, 1 minute, 30 seconds
Episode Artwork

This Week in Rust - Issue 442

Tim McNamara, Sean Chen and Allen Wyma discuss their highlights from This Week in Rust 442. Themes include security, testing, embedded development and async Rust. Watch out for the cameo by the Ada programming language towards the end! Timestamps Welcome [@00:12] Introductions and agenda [@01:20] Quote of the week [@02:57] Official updates [@03:01] Security advisory: the rustdecimal crate [@06:55] CTCFC Agenda A whirlwind tour of Embedded Rust by James Munns Async Rust for Embedded Systems by Dario Nieuwenhuis Rust in Automotive by Christof Petig and Florian Gilcher [@09:50] Highlights from the newsletter [@10:15] Kani Rust Verifier Project announcement [@20:29] Rocket web framework v0.5 2nd release candidate [@23:35] Xilem, a UI architecture for Rust [@29:30] Over-Engineering A Fairly Simple Coding Challenge [@35:26] RepliByte’s release announcement [@39:07] Securing Crates, discussing side channel attacks [@44:09] Modeling Interconnected Social and Technical Risks in Open Source Software Ecosystems, a related paper [@47:10] Parsing/Recursive Descent Parser [@54:10] Rust Safety with Quentin Ochem and Florian Gilcher Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Credits Intro Theme: Aerocity Audio Editing: Aleksandar Nikolic Hosting Infrastructure: Jon Gjengset Show Notes: Tim McNamara Hosts: Tim McNamara, Allen Wyma, and Sean Chen
5/26/202258 minutes, 58 seconds
Episode Artwork

Actix Web with Rob Ede

Allen Wyma talks with Rob Ede, lead developer on Actix Web. Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:27] - Rob’s programming background [@3:28] - Rob’s experience with Actix Web [@8:46] - What got Rob into Rust [@14:01] - How Rust came into their project [@22:21] - How Rob got involved in the Actix web framework [@24:28] - Actix Web versions [@30:24] - Why Actix Web does not use Hyper [@38:14] - Actix Web’s upcoming updates and roadmap [@38:56] - Rob’s parting thoughts Other Resources Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
5/20/202242 minutes, 49 seconds
Episode Artwork

This Week in Rust - Issue 441

Tim McNamara and Allen Wyma discuss their highlights from This Week in Rust 441. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Credits Intro Theme: Aerocity Audio Editing: Jan Lund Hosting Infrastructure: Jon Gjengset Show Notes: Tim McNamara Hosts: Tim McNamara and Allen Wyma
5/18/202235 minutes, 10 seconds
Episode Artwork

Slint with Tobias Hunger

Allen Wyma talks with Tobias Hunger, developer on Slint. Slint is a toolkit to efficiently develop fluid graphical user interfaces for any display. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:30] - Tobias’ introduction [@2:21] - What does Slint offer compared to other GUI frameworks? [@6:52] - Slint’s UI language [@9:02] - From SixtyFPS to Slint, what’s the idea behind the name change? [@14:57] - Different industries that Slint is serving [@18:45] - Three different options for licensing Slint [@21:39] - Slint’s progress and efforts in supporting more customization [@32:07] - Slint’s upcoming projects and roadmap [@35:19] - Tobias parting thoughts Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
5/13/202240 minutes, 24 seconds
Episode Artwork

Rust Safety with Quentin Ochem and Florian Gilcher

Allen Wyma talks with Quentin Ochem, Lead of Product Management and Business Development at AdaCore and Florian Gilcher, Managing Director at Ferrous Systems. Rust use in safety-critical industries is becoming more and more desired from users. Allen, Quentin, and Florian discuss the recent partnership between AdaCore and Ferrous Systems. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@1:46] - What is Ferrocene? [@6:08] - Why does Ferrocene need to exist? [@10:18] - How can Ferrocene help industries that require high-quality security? [@16:14] - Why AdaCore decided to support Rust. [@21:25] - Does Ada use a VM? [@24:06] - What brought Quentin & Florian together to work on Rust? [@30:52] - What are the changes that came along with AdaCore and Ferrous Systems’ partnership? [@40:46] - How in demand is AdaCore and Ferrous System with their customers in different industries? [@47:01] - AdaCore and Ferrous System’s quality management [@49:35] - Quentin & Florian’s parting thoughts. Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
5/8/202250 minutes, 54 seconds
Episode Artwork

Game Development with Rust and WebAssembly with Eric Smith

Allen Wyma talks with Eric Smith, author of Game Development with Rust and WebAssembly. Game Development with Rust and WebAssembly teaches you how to make games for the web, using Rust and WebAssembly. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:59] - Eric’s introduction [@3:26] - Eric’s experience using Rust vs other programming languages [@9:20] - What makes Rust appealing? [@11:32] - Why Rust is becoming a good language for game development. [@13:47] - Comparison of different game engines [@19:48] - Insights on Rust game development [@26:06] - Eric talks about his book — Game Development with Rust and WebAssembly [@29:17] - WebAssembly versus other platforms [@41:29] - Eric’s writing process [@43:24] - Is Rust web ready? [@50:19] - Parting thoughts and where to check out Eric’s book Other Resources Eric’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/29/202252 minutes, 25 seconds
Episode Artwork

clap with Ed Page

Allen Wyma talks with Ed Page, maintainer of clap. Command Line Argument Parser (clap) is a library to help create CLI apps using Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:41] - Ed’s introduction of clap [@3:09] - What makes clap better than other parsing solutions? [@7:30] - Ed’s programming background [@10:10] - Ed’s comparison of Rust vs other programming languages [@14:06] - Ed and his team’s participation in the Rust community [@22:07] - Futurewei’s Rust development efforts [@26:51] - How did Ed start in Rust and what took him to clap [@32:05] - How does clap handle customization. [@34:28] - clap’s 3.0 & 3.1 release [@42:03] - What are the future plans for clap [@47:40] - argparse vs Click [@51:34] - Ongoing plans for clap’s improvement [@53:45] - Ed’s efforts on keeping CLI alive [@56:09] - What is cargo-script? [@1:03:12] - Ed’s view about the state of education in Rust [@1:08:06] - Ed’s tips and tricks for beginners. Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/24/20221 hour, 10 minutes, 32 seconds
Episode Artwork

Armin Ronacher on experimental deserialization with Deser

Allen Wyma talks with Armin Ronacher, creator of Deser. Deser is an experimental serialization system for Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:50] - Armin’s background [@2:49] - The difference between Jinja & Jinja2 [@3:47] - What is Twig? [@4:14] - Where did the names Jinja & Twig come from? [@7:36] - What makes Jinja2 good in portablility? [@12:46] - Armin’s programming history [@16:07] - How did Armin go from Delphi to Python? [@19:18] - The Pocoo team [@23:25] - When did Armin start using Rust? [@27:26] - The pros & cons of mixing Python and Rust together [@36:14] - Stacktrace errors [@41:41] - How does Armin deal with developers having different compilers in a working environment. [@45:57] - Armin talks about Serde and other serialization challenges [@55:33] - Serialization Frameworks [@1:04:23] - Where to check out Armin’s library: https://github.com/mitsuhiko/deser [@1:07:34] - Armin’s tips and tricks for people starting in Rust Other Resources Armin’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/15/20221 hour, 9 minutes, 14 seconds
Episode Artwork

Purdy with Marty Jones

Allen Wyma talks with Marty Jones, creator of Purdy. Purdy is an experimental PDF renderer built on top of WebGPU. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:55] - Marty’s Background [@4:06] - What sparked Marty’s interest in PDFs [@6:21] - What kind of primitives are built into PDF? [@8:56] - How to solve edge cases in PDFs? [@11:54] - Property-based testing [@16:54] - The deciding factor that got Marty into creating his library. [@19:59] - What is Web GPU [@22:13] - Marty’s goal with PDF JS [@24:08] - Why use PDF JS? [@29:02] - Why Marty used Rust instead of JavaScript [@30:15] - What’s next with PDF JS? [@36:51] - Legalities of PDFs [@41:42] - How to reach Marty Other Resources Marty’s Github What is unique about PDF rendering? Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/8/202247 minutes, 10 seconds
Episode Artwork

Rusty Engine

Allen Wyma talks with Nathan Stocks, creator of Rusty Engine. Rusty Engine is a simple 2D game engine for those who are learning Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:46] - Nathan’s background and programming history [@11:08] - Nathan talks about his Python course and other programming languages [@18:13] - What led Nathan to create his Rust course [@25:12] - Bevy & other game engines [@36:50] - Nathan’s views and opinions with Unreal Engine [@40:59] - Malware and other safety issues with Rust [@43:20] - Why Nathan prefers Rust over other languages [@47:15] - Nathan’s experience working with Go [@53:37] - Nathan’s announcement with his ongoing course [@54:41] - Nathan’s tips and tricks for beginners who want to learn Rust Other Resources Nathan’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
4/1/202258 minutes, 22 seconds
Episode Artwork

Rust Servers, Services, and Apps with Prabhu Eshwarla

Allen Wyma talks with Prabhu Eshwarla, author of Rust Servers, Services, and Apps. Rust Servers, Services, and Apps teaches you how to build web servers, RESTful services, server-rendered apps, and client front-ends in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:49] - Prabhu’s Introduction [@1:28] - Elixir vs Rust [@4:20] - Prabhu’s Phoenix experience [@8:09] - What is required to do web development? [@25:09] - Java vs Rust [@29:07] - Asynchronous programming vs multithreading [@34:13] - Why Rust is a good choice for blockchain [@42:12] - What is Blockchain? [@53:34] - Next generation of blockchain - Assests, NFTs, Data Storage [@1:02:50] - Why Prabhu thinks Rust is the right language for web development [@1:04:42] - Prabhu’s tips for people who are beginners in Rust [@1:09:42] - Prabhu’s book and parting thoughts. Other Resources Zeeshan’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/25/20221 hour, 11 minutes, 49 seconds
Episode Artwork

id3 with Roel

Allen Wyma talks with Roel, creator of id3. id3 is a Rust library used for reading id3. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:44] - Roel’s Bio [@1:59] - What is ID3? [@4:41] - What does ID3 tech consists of and what is its structure? [@09:08] - What got Roel interested in ID3? [@10:49] - What are some notable projects that use ID3? [@19:57] - ID3 Future Roadmap [@24:37] - The Rust Community in the Netherlands [@25:30] - Go vs Rust [@29:23] - Roel’s programs and upcoming events [@31:37] - Hackerspace and Roel’s parting thoughts Other Resources Roel’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/18/202233 minutes, 5 seconds
Episode Artwork

PancakeDB with Martin Loncaric

Allen Wyma talks with Martin Loncaric, creator of PancakeDB. PancakeDB is a database that focuses on low latency ingestion of data. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:35] - Martin’s Bio [@1:30] - What is PancakeDB? [@5:48] - How does Pancake compare to CSV & Parquet? [@7:09] - Where did the idea of working on PancakeDB come from? [@9:25] - PancakeDB license & monetization [@14:00] - What makes PancakeDB so highly performant [@18:21] - How Martin got into Big Data [@21:22] - How PancakeDB addresses the data ingestion problem [@26:28] - Where did the name Pancake DB come from? [@27:42] - Recommended ways to implement data ingestion [@30:37] - Rust vs other languages when it comes to data processing [@34:05] - What brought Martin to Rust [@37:23] - How can Rust improve & Martin’s parting thoughts Other Resources Martin’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/11/202239 minutes, 46 seconds
Episode Artwork

What's New in Rust 1.58 and 1.59

Jon and Ben discuss the highlights of the 1.58 and 1.59 releases of Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:10] - Rust 1.58 [@01:18] - Captured identifiers in format strings [@07:40] - Reduced Windows Command search path ripgrep CVE ripgrep fix commit [@11:05] - More #[must_use] in the standard library Tracking issue for #[must_use] PRs When to use #[must_use] [@17:16] - Stabilized APIs std::fs::OpenOptions Tracking issue for *::unwrap_unchecked [@22:50] - Rust 1.58.1 Security Advisory C++ is probably also vulnerable [@27:15] - Rust 1.59 [@28:00] - Inline assembly std::intrinsics Inline assembly by example [@39:06] - Destructuring assignments [@44:00] - Const generics defaults and interleaving [@46:11] - Future incompatibility warnings [@51:28] - Creating stripped binaries [@53:54] - Incremental compilation off by default Incremental disabled back in Rust 1.52.1 The identified issue [@58:50] - Stabilized APIs available_parallelism num_cpus crate [@1:03:04] - Changelog deep-dive cargo r -r Tracking issue for v0 symbol mangling Switching to v0 by default HashSet and HashMap method bounds changed fantoccini using multiple impl blocks Credits Intro Theme: Aerocity Audio Editing: Aerocity Hosting Infrastructure: Jon Gjengset Show Notes: Jon Gjengset Hosts: Jon Gjengset and Ben Striegel
3/8/20221 hour, 13 minutes, 39 seconds
Episode Artwork

Tor with Nick Mathewson

Allen Wyma talks with Nick Mathewson, one of the creators of Tor Project. Tor is free and open-source software for enabling anonymous communication. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:39] - Nick’s Bio & Tor Project Introduction [@2:33] - Deeper dive into Tor [@8:07] - Advantage of Rust over C when trying to bring stronger privacy to internet. [@21:44] - The History of Tor [@26:02] - How does Tor stay in business despite being a free service? [@28:11] - What is Onion Routing and how does it work at a high level? [@38:54] - The Tor Browser [@42:14] - Advise on how to maintain anonymity online [@55:17] - Rust vs other languages [@1:03:54] - Tips & tricks for people who are starting off in Rust [@1:06:00] - Parting thoughts Other Resources Tor’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
3/4/20221 hour, 7 minutes, 27 seconds
Episode Artwork

zbus with Zeeshan Ali

Allen Wyma talks with Zeeshan Ali, creator of zbus. zbus is a Rust library used for interprocess communication using D-Bus. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:51] - Zeeshan’s Bio and zbus [@7:16] - D-Bus at the high level [@14:43] - Knowing when to use D-Bus or message queue [@19:28] - Authentication methods when going non-local [@20:16] - Is it possible to use D-Bus on Kubernetes? [@22:00] - D-Bus is able to support multiple async runtimes [@28:18] - Difference between Tokio and async-std [@32:30] - Async Foundations working group [@40:06] - Is it expensive to run async runtime? [@41:37] - zbus macros and their Matrix channel [@44:00] - IPC (Inter-Process Communication) Other Resources Zeeshan’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/30/202250 minutes
Episode Artwork

Gitoxide with Sebastian Thiel

Allen Wyma talks with Sebastian Thiel, creator of Gitoxide. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:31] - Gitoxide [@6:29] - Reasons why Sebastian chose Rust [@9:45] - Story of Gitoxide [@13:29] - Status of Gitoxide [@15:41] - git2 [@23:24] - “Gix” is now “Ein” [@28:14] - JGit [@32:02] - Reference for the implementation of Gitoxide [@38:31] - Getting sponsored for Gitoxide [@41:56] - Accounting timesheet and the vision for Gitoxide [@48:38] - Ways to help Gitoxide [@50:00] - Tips for beginners in Rust Other Resources Sebastian’s Github Learn Rust with Gitoxide - Youtube Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/22/202255 minutes, 16 seconds
Episode Artwork

Lumen with Paul Schoenfelder

Allen Wyma talks with Paul Schoenfelder, contributor to Lumen. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:27] - Paul’s Bio and Lumen [@4:30] - Lumen can only compile Erlang [@9:26] - SSA (Static Single Assignment) [@12:02] - BEAM [@22:03] - Web Assembly [@25:02] - Rust makes low level stuff easy to implement [@34:44] - WASM Browser limitations [@37:01] - Erlang’s Observer and Distribution Protocol [@41:10] - What is WASM (Web Assembly)? [@49:01] - WASI (WebAssembly System Interface) [@55:31] - Why should I learn another language when I can stick with Javascript? [@1:01:30] - The WASM working group vs The community group [@1:08:39] - How to participate in Lumen? Other Resources Lumen’s Github Paul’s Github Paul’s Website Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/14/20221 hour, 13 minutes, 7 seconds
Episode Artwork

Yew with Julius Lungys

Allen Wyma talks with Julius Lungys, contributor to Yew. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@1:29] - Core values and benefits of Yew [@3:32] - The performance of Yew [@6:57] - Cargo workspaces [@8:05] - Trunk & Wasm-pack [@10:07] - Virtual DOM & Debugging [@11:24] - Source Maps in Yew [@12:21] - Krustlet [@13:34] - Reasons to choose Wasm over JavaScript [@15:26] - Ecosystem of Yew [@16:32] - Glue package [@21:32] - How Yew relates to Elm [@22:32] - Functional Components [@25:05] - Server Side Rendering (SSR) [@26:52] - When should you consider Yew [@34:24] - TypeScript [@38:46] - Is Yew limited to the browser? [@39:56] - Electron [@41:03] - Yew’s browser support [@44:14] - Tips for beginners from Julius Other Resources Julius’s Github The Company (Nikulipe) Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
1/7/202247 minutes, 13 seconds
Episode Artwork

LibertyOS with Daniel Teberian

Allen Wyma talks with Daniel Teberian, the creator of LibertyOS. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:41] - Daniel’s Bio [@3:14] - Recent work on LibertyOS [@4:36] - Getting help from some crates or totally starting from scratch? [@8:08] - The team behind LibertyOS [@10:04] - Every processor is different so you can’t write Rust for everything [@17:27] - What can LibertyOS do at the moment? [@20:19] - How to support writing Rust programs on a Rust-based OS? [@27:38] - How are decisions made for LibertyOS? [@34:07] - Cargo check [@37:12] - More on the LibertyOS members [@42:34] - Why LibertyOS may change their name [@44:46] - Final words and ways to contribute to the project Other Resources Daniel’s Github Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
12/31/202147 minutes, 10 seconds
Episode Artwork

Code Like a Pro in Rust with Brenden Matthews

Allen Wyma talks with Brenden Matthews, the author of the book Code Like a Pro in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:41] - Brenden’s Bio [@1:30] - Where the idea to write the book came from [@4:32] - Pythonic, Rustacious/Idiomatic Rust and other coding style terms [@6:25] - Writing idiomatic code [@10:19] - Helper methods [@12:34] - From trait [@15:20] - Into trait [@17:00] - Errors in Rust [@26:59] - Other languages borrowing Rust’s ideas for memory safety and no null type [@29:21] - Kotlin, Dart, Swift & Zig [@30:58] - LLVM, Swift & Rust and evolution of languages [@35:32] - Backwards compatibility in Rust [@39:00] - Experiences and the improvements in Rust [@42:44] - Components are added manually, but should they be installed by default? [@48:16] - Knowing when to use libc and adding a C runtime [@59:58] - Who Code Like a Pro in Rust is written for Other Resources Brenden’s Blog Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
12/24/20211 hour, 2 minutes, 23 seconds
Episode Artwork

What's New in Rust 1.56 and 1.57

Jon and Ben discuss the highlights of the 1.56 and 1.57 releases of Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:14] - Rust 2021 edition [@01:16] - What is an edition? [@05:03] - Disjoint captures in closures Niko’s “view types” proposal [@09:00] - IntoIterator for arrays [@11:12] - Or patterns in macro_rules [@13:31] - New default Cargo feature resolver Details on the new resolver [@15:16] - Additions to the prelude std::prelude FromIterator [@19:38] - Panic macro consistency and new reserved syntax [@20:33] - Implicit formatting captures (more on Reddit) [@25:00] - Reserved syntax for “f-strings” [@27:54] - Why panic! had to change [@28:55] - Other uses for reserved syntax [@30:15] - Warnings promoted to errors Future incompatibility warnings [@35:23] - cargo fix [@36:20] - Rust 1.56 [@36:30] - Cargo.toml rust-version Cargo book entry [@42:54] - New bindings in binding @ pattern [@44:27] - Stabilized APIs [@49:27] - Changelog deep-dive [@49:27] - impl From<[(K, V), N]> for collections RFC for adding collection literal macros [@53:07] - Remove P: Unpin bound on impl Future for Pin [@55:16] - Instant backsliding protection optimization May end up being removed! [@58:01] - LLVM 13 upgrade LLVM’s new pass manager [@59:23] - Have Cargo set environment variables [@1:00:17] - Rust 1.56.1 Security advisory The “Trojan Source” vulnerability Rust RFC on non-ASCII identifiers [@1:04:52] - Rust 1.57 [@1:05:20] - Panic in const contexts [@1:07:20] - Custom Cargo profiles Cargo book on profiles [@1:08:45] - Fallible allocation Fallible collection allocation RFC Linux Torvals on handling allocation failures Rust features still needed by the Linux kernel [@1:12:33] - Stabilized APIs [@1:16:45] - Changelog deep-dive [@1:16:50] - Vec::leak no longer allocates [@1:18:03] - Nintendo 3DS added as Tier 3 platform [@1:19:03] - Cargo no longer passes through RUSTFLAGS Environment variables set by Cargo [@1:20:13] - Lots more #[must_use] in std [@1:22:00] - File::read_to_* optimized [@1:23:24] - Curly braces macros accept following . and ? [@1:25:22] - Banter – Rust all the way down. Credits Intro Theme: Aerocity Audio Editing: Aerocity Hosting Infrastructure: Jon Gjengset Show Notes: Jon Gjengset Hosts: Jon Gjengset and Ben Striegel Transcript: Eric Seppanen
12/23/20211 hour, 27 minutes, 14 seconds
Episode Artwork

Refactoring to Rust with Lily Mara

Allen Wyma talks with Lily Mara, the author of the book Refactoring to Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@1:26] - Lily’s Bio [@3:33] - Her blogs helped her improve her writing [@5:09] - How the book came to be [@9:34] - Knowing when to add a new language to an existing project [@12:07] - Tools for measuring memory usage [@15:04] - Garbage collection [@18:30] - Strongly and weakly typed languages & dynamic vs static dispatch [@21:13] - About the book [@25:40] - Go being treated like a C library [@27:02] - Memory allocators [@35:51] - When did Lily started working on the book? [@37:44] - Writing examples (it’s hard!) [@46:36] - How technical are the editors? [@49:00] - The Rust community is very welcoming [@50:14] - Publishers that are publishing Rust books [@52:17] - Lily’s Twitch stream for Manning [@53:07] - Lily’s advice for aspiring Rust developers Other Resources PyO3 Flutter Rust Bridge Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
12/11/202157 minutes, 18 seconds
Episode Artwork

Game Development with Herbert Wolverson

Allen Wyma talks with Herbert Wolverson, the author of the book Hands-on Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@0:57] - About Herbert and his book [@3:01] - Explaining Rust’s traits [@4:27] - The book is for intermediate programming [@5:32] - Most beneficial part about using Rust over other languages [@7:42] - Unreal Engine [@11:13] - Unreal, Unity & Godot [@13:44] - Bevy Engine & Amethyst Engine [@18:31] - Zig [@20:38] - Herbert’s Bracket-Lib engine [@24:18] - Creating a game engine from scratch [@34:03] - ECS (Entity Component System) & OPP (Object-Oriented Programming) [@42:02] - Other game engines mentioned in the book [@43:12] - Macroquad & Miniquad [@45:39] - Amethyst [@49:51] - RG3D [@51:58] - Book Status & Rust Brain Teasers [@57:44] - Pragprog Publishing [@01:02:30] - How to contact Herbert Other Resources Hands-on Rust Roguelike Tutorial The Bracket Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma Hosts: Allen Wyma
11/26/20211 hour, 5 minutes
Episode Artwork

Error Handling in Rust with Jane Lusby

Allen Wyma talks with Jane Lusby, the Error Handling Project Group Lead, and also the Project Director of Collaboration at Rust Foundation. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:57] - Jane’s bio [@04:10] - Jane’s contributions to Clippy [@08:54] - Eyre [@15:49] - Failure & Anyhow [@17:13] - Choosing between anyhow & eyre [@20:05] - AnyError and ThisError [@23:31] - Color-eyre [@26:08] - Other crates that are also in eyre [@28:59] - Error Handling Group [@38:12] - Collaboration with other groups [@46:05] - Rust 2021 & 2018 Editions Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
11/19/202152 minutes, 58 seconds
Episode Artwork

Tokio Ecosystem with Alice Ryhl

Allen Wyma talks with Alice Ryhl, one of the maintainers of the open source project Tokio. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:40] - Alice’s Bio [@01:08] - Managing pull requests on GitHub [@05:00] - Alice’s involvement in Tokio [@08:23] - Tokio’s topics page [@11:06] - Alice’s favorite part of contributing [@12:55] - Changes in Tokio since Alice joined [@16:52] - Measuring metrics [@19:38] - Cooperative & preemptive scheduling [@24:30] - Diesel [@25:45] - Definition of [blocking]((https://ryhl.io/blog/async-what-is-blocking/) [@27:37] - I/O threads [@31:21] - What are sleeping threads? [@33:41] - Tokio Console [@41:14] - Pros and cons of using actors [@47:05] - Alice’s academic background [@49:22] - Tokio’s upcoming roadmap [@57:33] - Replacing epoll with io_uring [@58:56] - Axum, Tower, and Loom [@01:01:45] - Web frameworks for Rust [@01:05:57] - How to contact Alice Other Resources Rust in Android Platform Tokio’s Discord Tokio’s Topics Pages Cooperative Scheduling Tokio Metrics Actors in Tokio io_uring with Tokio Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma Hosts: Allen Wyma
11/12/20211 hour, 8 minutes, 50 seconds
Episode Artwork

Hyper with Sean McArthur

Allen Wyma talks with Sean McArthur, the creator of Hyper, an HTTP library for Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@01:37] - The history of Hyper [@07:41] - Is Hyper a client or a server side component? [@11:09] - Async/await [@13:24] - Benefits to using async over blocking? [@14:35] - Relationship between Tokio and Hyper [@16:11] - Mio – Metal IO [@16:48] - Can Hyper run on other async runtimes? [@18:27] - Fuchsia OS [@22:39] - Governance of the Hyper Project [@25:25] - Why did Hyper choose Tokio? [@34:35] - Reqwest [@36:07] - cURL [@38:29] - What is a C application binary interface (ABI)? [@50:29] - HTTP/3 support in future [@50:54] - Differences between HTTP/2 and HTTP/3 [@53:26] - Rust library for C [@57:26] - Upcoming plan for Hyper [@01:00:36] - Advice for newcomers to Rust? Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
11/5/20211 hour, 5 minutes, 18 seconds
Episode Artwork

Warp with Zach Lloyd

Allen Wyma talks with Zach Lloyd, the founder of Warp. Warp is a blazingly fast, Rust-based terminal that makes you and your team more productive. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:58] - Is Warp a GUI app? [@04:08] - The history of Warp [@06:27] - Difference between Warp and other Unix shells like Csh [@10:22] - Warp’s open API [@13:50] - Terminal improvements over the last 10 years [@17:06] - Sharing blocks & live collaboration [@19:08] - Will Warp run on multiple platforms? [@21:45] - Zach’s background [@25:38] - Why Rust over Go? [@29:51] - Warp’s dependencies [@36:36] - Objective-C vs. Rust [@41:49] - Zach’s build pipeline [@43:21] - cargo-bundle [@44:52] - Warp’s business model [@46:28] - Postman [@49:50] - Funding & business pitch of Warp [@54:30] - Zach’s Rust setup [@57:46] - Tips for newcomers to Rust Other Resources Warp’s Twitter Warp’s GitHub Zach’s engineering handbook Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
11/3/20211 hour, 2 minutes, 51 seconds
Episode Artwork

Rust Web Development with Bastian Gruber

Allen Wyma talks with Bastian Gruber, author of “Rust Web Development”, about his book. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@01:22] - Bastian’s Bio [@02:53] - “Rust Web Development” on Manning [@04:06] - Using Rust for web development [@04:52] - Hyper.rs [@05:13] - Choices of frameworks for Rust web development [@07:49] - Rocket in production [@08:35] - Tools for Rust web services [@10:39] - Choosing SQLx over Diesel? [@13:58] - Why Bastian switched from Node.js to Rust [@17:36] - Bastian’s role at Twilio [@19:57] - Popularity of Rust in Berlin [@25:57] - Warp [@29:14] - Zero to Production in Rust [@31:03] - How does Bastian write? [@37:48] - Rust vs other languages [@42:40] - Tips to help you stand out as a Rust developer [@46:21] - Tips for beginners Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
10/26/202152 minutes, 28 seconds
Episode Artwork

What's New in Rust 1.54 and 1.55

Jon and Ben discuss the highlights of the 1.54 and 1.55 releases of Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:37] - Rust 1.54 [@00:55] - Attributes can invoke function-like macros The doc attribute [@04:04] - wasm32 intrinsics stabilized std::intrinsics Target families [@06:59] - Incremental compilation is re-enabled by default Rust 1.52.1 disables incremental compilation Incremental compilation issues tracking issue [@08:55] - Stabilized APIs [@11:00] - Changelog deep-div [@11:04] - cargo report and future incompatibility lints [@14:12] - LLVM mutable noalias is on again [@16:24] - CARGO_TARGET_TMPDIR [@17:24] - Use semver 1.0 Checking semver 1.0 against crates.io [@19:18] - Rust 1.55 [@19:26] - Cargo deduplicates compiler errors [@20:24] - Faster, more correct float parsing The PR Reddit post with details [@22:20] - io::ErrorKind variants updates [@28:08] - Open range patterns added [@29:44] - Stabilized APIs [@29:44] - MaybeUninit [@32:44] - ops::ControlFlow Try trait (v2) RFC [@35:59] - string::Drain::as_str [@37:52] - Changelog deep-dive [@38:08] - Build scripts informed about rustc configuration [@38:38] - cargo clippy --fix [@39:10] - Clippy lint override survey [@40:07] - #[doc(hidden)] on trait implementations Credits Intro Theme: Aerocity Audio Editing: Jeremy Jung Hosting Infrastructure: Jon Gjengset Show Notes: Jon Gjengset Hosts: Jon Gjengset and Ben Striegel Transcript: Eric Seppanen
10/25/202144 minutes, 28 seconds
Episode Artwork

History of Rust with Ben Striegel

Allen Wyma talks with Ben Striegel, a member of Rust’s official community outreach team, about the history of Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@1:56] - What got Ben first interested in Rust? [@3:03] - How Ben got involved [@9:36] - Rust 1.0 [@16:21] - What does move mean? [@17:36] - The Borrow Checker [@20:04] - What language was the Rust compiler first written in? [@25:04] - Choosing LLVM over GCC [@33:28] - 2 ways to target Windows [@34:39] - libc and musl [@36:22] - Rust Editions [@46:46] - Does Rust have a small standard library? [@54:18] - Why TOML? TOML vs YAML [@58:53] - “Tree shaking” in Rust? [@01:00:48] - Who created Cargo? [@01:02:26] - Rust’s milestones [@01:07:42] - Mozilla 2020 layoffs Discussion on /r/rust [@01:12:33] - Will Rust stay open-source? [01:18:10] - Future of Rust [01:24:48] - Who decides what changes make it into Rust? Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
10/22/20211 hour, 32 minutes, 39 seconds
Episode Artwork

Tokio with Carl Lerche

Allen Wyma talks with Carl Lerche, a principal engineer at AWS, also one of the founders of Tokio. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:35] - Carl’s Bio [@02:30] - Apache Cassandra [@07:45] - Epoll [@07:51] - Kqueue [@07:55] - I/O Completion Ports [@14:07] - Eventual [@18:55] - Module pin [@28:35] - What do macros expand to? [@30:41] - Cargo-expand [@42:44] - What’s new since Tokio 1.0 [@45:02] - Tokio-console [@01:05:15] - Tokio ecosystem Other Resources Carl’s Github Carl’s personal blog Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
10/12/20211 hour, 16 minutes, 7 seconds
Episode Artwork

Gleam with Louis Pilfold

Allen Wyma talks with Louis Pilfold, the creator and lead designer of Gleam. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:55] - Louis’s Bio [@02:15] - Erlang [@09:03] - Rust Project Manager, Cargo [@12:15] - Reason of using Rust to implement the compiler [@19:01] - Why Erlang? [@23:07] - Erlang programming model [@27:45] - How does Gleam work? [@31:07] - Problems with TypeScript [@33:38] - What is Erlang Dialyzer? [@38:06] - Changes to Gleam compiler [@44:47] - Gleam v0.17 [@49:45] - Pros and Cons of using Rust as a compiler [@52:30] - Tips and Tricks for beginners Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
10/1/20211 hour, 7 seconds
Episode Artwork

Rust for Rustaceans by Jon Gjengset

Allen Wyma talks with Jon Gjengset, a software engineer at AWS, about his book Rust for Rustaceans. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@11:24] - Noria [@13:00] - Jon’s Youtube Channel [@21:53] - Crust of Rust [@25:13] - What does it mean to be a Rustacean? Niko Matsakis’ Rustacean Principles [@27:23] - What does intermediate content mean? [@30:03] - Chapter on memory in Rust [@41:21] - Does Rust prevent bugs? [@58:20] - The Linux kernel and memory allocation failures [@1:05:43] - Feature flag discoverability [@1:10:14] - Tips for beginners Other Resources Jon’s Fosstodon Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
9/25/20211 hour, 21 minutes, 48 seconds
Episode Artwork

Rust Code Coverage with Daniel McKenna

Allen Wyma talks with Daniel McKenna, a software enginner, about his code coverage tool for Rust projects, Tarpaulin. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@01:35] - LLVM [@05:50] - Vectorcast [@07:00] - Cargo-kcov [@07:38] - Gdb [@07:47] - ptrace.2 [@14:40] - Arduino [@15:47] - Probe-rs [@22:42] - Tarpaulin Crater (tater) [@23:34] - Tarpaulin-viewer [@27:51] - ImGui [@31:00] - Ndarray [@32:09] - Is rust a competitor of Julia and Python in terms of machine learning? [@36:10] - When did Daniel get into programming? [@49:20] - Tips for beginners [@53:53] - FiraCode Other Resources Writing a Debugger Writing a Linux Debugger Setup Awesome Rust Mentors Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
9/18/202155 minutes, 49 seconds
Episode Artwork

From Zero to Production with Luca Palmieri

Allen Wyma talks with Luca Palmieri, a principal engineer at TrueLayer, about his book called “Zero To Production in Rust”. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@02:30] - Book ideas [@13:20] - Reasons for using Rust in production [@10:34] - Asynchronous Programming in Rust [@16:45] - Actix Web [@32:21] - Challenges in using Rust as backend language [@36:30] - What is krustlet? [@46:35] - How is the process of writing the book [@54:50] - Rust edition 2021 [@57:40] - Rust’s community [@59:37] - Rust for Rustaceans [@1:00:26] - Rust in Action [@1:01:34] - Tips for beginners Other Resources Luca’s blog Hexagonal Architecture Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
9/10/20211 hour, 7 minutes, 42 seconds
Episode Artwork

Rust in cURL

First time guest host, Allen Wyma talks with Daniel, the original author of cURL, about using Rust in cURL. cURL is a command line tool and library for transferring data with URLs. cURL, and its data transfer core, libcurl are both written in C, which is known to be not memory safe. While it is almost impossibe to rewrite it into another language, offering a third-party library written in Rust could take a further step forward. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Highlights Architecture of cURL & libcurl What brought Daniel to Rust? How long has he been using Rust? What language was Daniel working in before that? Third party libraries written in Rust? What benefits does Rust bring to cURL? Resources Curl Daniel’s Blog Project Gemini Timestamps [@05:10] - cURL 7.78.0 [@07:44] - Implementing Protocol [@09:25] - HTTP/3 [@13:30] - Architecture of cURL & libcurl [@17:40] - cURL as a hybrid library [@19:40] - Replacing C with Rust [@34:00] - Experience of using Rust [@35:40] - async/.await in rust [@40:45] - Anything dislike about Rust? [@42:35] - Challenge of integrating with Rust [@48:00] - Can Rust help curl survive? [@49:10] - Tips for beginners? Credits Intro Theme: Aerocity Audio Editing: Plangora Hosting Infrastructure: Jon Gjengset Show Notes: Plangora Hosts: Allen Wyma
9/3/202155 minutes, 25 seconds
Episode Artwork

What's New in Rust 1.52 and 1.53

Jon and Ben discuss the highlights of the 1.52 and 1.53 releases of Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:31] - Rust 1.52 [@01:31] - Stabilized APIs [@04:28] - All integer division and remainder APIs made const [@07:45] - Rust 1.52.1 and incremental compilation [@11:30] - LLVM 12 Disable “mutable noalias” Bringing Stack Clash Protection to Clang/x86, the Open Source Way [@16:15] - unsafe_op_in_unsafe_fn lint [@23:03] - Rust 1.53 [@23:03] - IntoIterator for arrays [@26:45] - Unicode identifiers [@29:37] - Or patterns [@31:05] - Stabilized APIs BITS associated const on numeric primitives [@36:36] - {f32, f64}::from_str now parse and print special values (NaN, -0) according to IEEE RFC 754. [@38:05] - {f32, f64}::is_subnormal [@41:11] - Cargo changes RFC: Make the authors field optional [@43:52] - Rust 2021 Edition Preview [@43:52] - What is an edition? [@47:33] - Additions to the prelude [@50:54] - Default Cargo feature resolver [@51:49] - IntoIterator for arrays [@53:09] - Disjoint capture in closures [@54:35] - Panic macro consistency [@56:00] - Reserving syntax [@1:01:38] - Or patterns in macro_rules [@1:03:16] - Promoting two warnings to hard errors Credits Intro Theme: Aerocity Audio Editing: Jeremy Jung Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Jon Gjengset and Ben Striegel Transcript: Eric Seppanen
7/12/20211 hour, 7 minutes, 8 seconds
Episode Artwork

What's New in Rust 1.50 and 1.51

Jon and Ben take a look at the features of the Rust 1.50 and 1.51 releases. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:47] - Rust 1.50 [@03:02] - Const Generic Array Indexing [@04:30] - Const Value Repetition for Arrays Accidental Stabilization [@07:15] - Safe Assignment to ManuallyDrop in Unions [@09:40] - Niche for File on UNIX Niches for Non-Empty Variants Using Padding for Niches [@14:39] - Library Changes Mara Bos on the journey to bool::then bool::then PR The Clamp RFC [@20:27] - Changelog Deep-Dive Rust Changelog Cargo Changelog compare_and_swap deprecation Deterministic .crate files [@25:11] - Rust 1.51 [@25:24] - Const Generics MVP What Was and Wasn’t Stabilized [@30:00] - array::IntoIter stabilization Implementing IntoIterator for [T; N] [@37:53] - Cargo’s New Feature Resolver Resolver v2 RFC Resolver v2 in Cargo Book Issues Solved by New Resolver [@45:26] - Splitting Debug Information Why This Was Complicated split-debuginfo option [@51:34] - Stabilized APIs offset_of! is (was) Unsound ptr::addr_of! Raw pointer creation RFC Ergonomic string interpolation Unifying panic! Manual vTable for Wakers [@1:10:30] - Changelog Deep-Dive Rust Changelog Cargo Changelog Documenting Nested Derefs Smarter target-cpu=native [@1:14:45] - Rust Async Vision Doc Async Foundations Working Group Credits Intro Theme: Aerocity Audio Editing: Aerocity Hosting Infrastructure: Jon Gjengset Show Notes: Jon Gjengset Hosts: Jon Gjengset and Ben Striegel Transcript: Eric Seppanen
4/18/20211 hour, 18 minutes, 55 seconds
Episode Artwork

What's New in Rust 1.48 and 1.49

Jon and Ben take a look at the features of the Rust 1.48 and 1.49 releases. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:10] - Rust 1.48 [@01:10] - Easier linking in Rustdoc [@03:57] - Adding search aliases in Rustdoc [@07:03] - Implement TryFrom<Vec<T>> for fixed-length arrays slice::as_chunks [@10:51] - future::ready and future::pending [@15:21] - More stdlib APIs made const [@18:05] - mem::uninitialized will now panic if any inner types inside a struct or enum disallow zero-initialization [@20:18] - When trait bounds on associated types or opaque types are ambiguous, the compiler no longer makes an arbitrary choice on which bound to use [@24:20] - Rust 1.49 [@24:20] - 64-bit ARM Linux reaches Tier 1 [@30:20] - Test framework captures output in threads [@33:36] - Library changes poll::is_ready and poll::is_pending made const [@34:36] - You can now bind by reference and by move in patterns [@38:09] - Unions can now implement Drop, and you can now have a field in a union with ManuallyDrop<T> [@42:00] - Rust Survey 2020 Results Credits Intro Theme: Aerocity Audio Editing: T.J. Telan Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Jon Gjengset and Ben Striegel
1/13/202144 minutes, 36 seconds
Episode Artwork

What's New in Rust 1.46 and 1.47

Jon and Ben take a look at the features of Rust 1.46 and 1.47. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:55] - Rust 1.46 [@01:55] - const fn improvements [@08:38] - The track_caller attribute [@11:51] - Minor changes 1.46 pre-release testing [@21:46] - Rust 1.47 [@21:46] - Traits on larger arrays Tracking Issue for min_const_generics [@29:14] - Shorter backtraces [@30:26] - LLVM 11 [@32:07] - Control Flow Guard on Windows [@34:28] - Library changes The Tau Manifesto [@40:04] - Minor changes SemVer Compatibility Guide Announcing the Error Handling Project Group Announcing the Portable SIMD Project Group Credits Intro Theme: Aerocity Audio Editing: Cole Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Jon Gjengset and Ben Striegel
12/1/202049 minutes, 8 seconds
Episode Artwork

WebAssembly on the Server with Krustlet

Taylor Thomas explains how Krustlet runs WebAssembly modules in Kubernetes and why it’s a promising option for the future of server side applications. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to be interviewed, propose a topic for an episode, or help create the podcast itself! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:55] - Kubernetes [@07:37] - WebAssembly [@12:06] - WebAssembly Runtimes and WASI Specification [@15:42] - WebAssembly vs Containers vs Native Binaries [@25:11] - Krustlet and the case for writing it in Rust [@30:52] - Missing APIs in WASI [@33:38] - Wascc vs Wasmtime runtimes [@38:15] - Rust ecosystem for Kubernetes and WebAssembly [@40:23] - Comparing other languages to Rust [@45:09] - Rust learning curve, experiences as a beginner [@53:16] - Next steps for Krustlet and WebAssembly Referenced Resources Krustlet Kubernetes Open Container Initiative WebAssembly WASI Wasmtime waSCC WebAssembly meets Kubernetes with Krustlet Introducing Krustlet, the WebAssembly Kubelet Kubernetes: A Rusty Friendship The Safety Boat: Kubernetes and Rust A Heaping Helping of Stacks Credits Intro Theme: Aerocity Audio Editing: Jeremy Jung Hosting Infrastructure: Jon Gjengset Show Notes: Jeremy Jung Hosts: Jeremy Jung Guests: Taylor Thomas
9/22/20201 hour, 3 minutes, 2 seconds
Episode Artwork

RedisJSON

Jeremy talks with Christoph Zimmermann about Redislabs’ new JSON module, which is written in Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to be interviewed, propose a topic for an episode, or help create the podcast itself! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@15:12] - Why Rust [@18:57] - Mentioning Microsoft Presentation On Rust [@19:25] - Jeremy - Clarifying The Benefits Of Rust On Developer Productivity Compared To C++ [@20:23] - Response To Productivity 00:21:12: Checking At Compile Time Helps [@23:29] - How have you found Rust as a Language For Interacting With Other Languages? [@24:28] - Were Most Bugs Around Unsafe Blocks? [@25:42] - Do You Think Rust Had Future With Redis Server? [@26:45] - Redis Labs Is Looking To Implement Further Modules In Rust Because Of Redis SDK [@27:39] - Overcoming Rust Learning Curve [@28:25] - Coming From 20 Years Of C To Rust [@28:52] - Jeremy - Rust As First Language [@31:30] - Comparing Languages [@32:24] - What Might An Application Look Like That Uses Redis-Json? [@33:45] - Performance Differences With Redis JSON 2 [@35:14] - How Would You Overcome Rust’s Overhead Compared To C? [@36:32] - Do You Think (Concurrency Will Present Itself More Often In Future Redis Modules)? [@37:54] - Could Redis Move Towards A More Concurrent Multi-threaded Database? [@40:05] - What The Redis Community Does Do With Multicore To Increase Throughput [@43:27] - How Did Redis-JSON 2 Leverage Rust’s Type System? [@44:53] - Time Check [@45:10] - End Question: Distro & Editors Of Choice [@46:40] - ARM & Apple Chips [@48:17] - More Redis Resources And Community Referenced Resources Christoph’s Podcast Christoph’s FOSDEM Talk RedisJSON on GitHub Redislabs Credits Intro Theme: Aerocity Audio Editing: Cole Hosting Infrastructure: Jon Gjengset Show Notes: Cole and Jeremy Webb Hosts: Jeremy Webb Guests: Chrisoph Zimmermann
8/29/202049 minutes, 45 seconds
Episode Artwork

What's New in Rust 1.44 and 1.45

Jon and Ben examine the features of Rust 1.44 and Rust 1.45. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:21] - Rust 1.44 (Detailed Release Notes) [@01:50] - cargo tree subcommand [@04:52] - async/await in #[no_std] contexts [@12:16] - Unicode 13 is now supported [@17:16] - rustc now respects the -C codegen-units flag in incremental mode [@18:47] - Special cased vec![] to map directly to Vec::new() [@28:51] - Rust 1.45 [@29:14] - Fixing an unsoundness in float to integer casts [@39:16] - Stabilizing function-like procedural macros in expressions, patterns, and statements [@43:29] - str::strip_prefix and str::strip_suffix Bonus: Opening up the Rust Core Team agenda See also: The Inside Rust Blog Credits Intro Theme: Aerocity Audio Editing: Jeremy Jung Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Jon Gjengset and Ben Striegel
8/19/202046 minutes, 56 seconds
Episode Artwork

This Week in Rust - Issue 352

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from TWiR 352, published on August 18, 2020, as well as short interviews with upcoming RustConf speakers Harrison Bachrach, Esteban Kuber, and Jam. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources Laying the foundation for Rust’s future Learning Rust: The Compiler is your Friend Why Rust is a great fit for embedded software Why Rust’s Unsafe Works I am a Java, C#, C or C++ developer, time to do some Rust Async Unicorns love Rust Linux Packages For Rust (2/3) - Building with GitHub Actions using Custom Actions and Docker Container Images Rust RFCs Repo RustConf This Week in Rust GitHub Repo Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
8/18/202020 minutes, 53 seconds
Episode Artwork

This Week in Rust - Issue 351

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from TWiR 351, published on August 11, 2020, as well as short interviews with upcoming RustConf speakers Micah Tigley, Rebecca Turner, and Samuel Lim. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources Announcing Rust 1.45.1 Announcing Rust 1.45.2 Headcrab: July 2020 progress report This Month in Rust OSDev (July 2020) Learning Rust: Mindsets and Expectations Blue Team Rust: What is “Memory Safety”, really? Creating Linux Packages for Rust Projects (1/2) Reverse Engineering a USB Device with Rust Some Learnings from Implementing a Normalizing Rust Representer [video]Learning Rust by Working Through the Rustlings Exercises Rust Language Cheat Sheet 2019 -> 2020 [audio]The State of Rust 2 with Alex Chrichton [audio]The State of Rust with Steve Klabnik RFC: ‘C unwind’ ABI Procedural vtables and wide ptr metadata Edition 2021 and beyond Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
8/12/202019 minutes, 58 seconds
Episode Artwork

RustFest 2019 Interview Series: Burnout in Open Source Software; The Rust Roadmap

Two more long-awaited interviews from RustFest 2019: Katharina Fey on the phenomenon of burnout in software and in open source communities and Florian Gilcher on Rust’s annual roadmaps. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:50] Part 1: Burnout w/ Katharina Fey [@01:54] - How common is burnout in software? [@03:24] - How does burnout manifest in volunteer endeavors like open source software? [@08:10] - How does rotation of responsibilities alleviate burnout? [@13:41] - What communities succeed at combating burnout? [@16:44] - Final thoughts on burnout and governance [@19:50] Part 2: The Rust Roadmap w/ Florian Gilcher Rust 2019 roadmap Rust 2020 roadmap Credits Intro Theme: Aerocity Audio Editing: Eddy Petrisor Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel
8/4/202049 minutes, 3 seconds
Episode Artwork

This Week in Rust - Issue 350

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from TWiR 350, published on July 28, 2020, as well as short interviews with upcoming RustConf speakers Siân Griffin, Jane Lusby, and Ashley Hauck. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources Announcing Rust 1.45.1 Announcing Rust 1.45.2 Headcrab: July 2020 progress report This Month in Rust OSDev (July 2020) Learning Rust: Mindsets and Expectations Blue Team Rust: What is “Memory Safety”, really? Creating Linux Packages for Rust Projects (1/2) Reverse Engineering a USB Device with Rust Some Learnings from Implementing a Normalizing Rust Representer [video]Learning Rust by Working Through the Rustlings Exercises Rust Language Cheat Sheet 2019 -> 2020 [audio]The State of Rust 2 with Alex Chrichton [audio]The State of Rust with Steve Klabnik RFC: ‘C unwind’ ABI Procedural vtables and wide ptr metadata Edition 2021 and beyond Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
8/3/202023 minutes, 21 seconds
Episode Artwork

This Week in Rust - Issue 349

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from TWiR 349, published on July 28, 2020. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources This Week in Rust #349 Opening up the Core Team agenda Rust’s CI is Moving to GitHub Actions IntelliJ Rust Changelog #127 Rust Analyzer Changelog #35 Notes on A Smaller Rust Rust Explained using Easy English Tutorial for Tokio and async Rust Cell, RefCell, and Interior Mutability in Rust Async/Await for AVR with Rust Making a Game in 48 hours with Rust and WebAssembly Inline assembly Add a new #[instruction_set(...)] attribute for supporting per-function instruction set changes RFC: ‘C unwind’ ABI RFC: Add JSON backend to Rustdoc RFC: Named arguments Establish a new error handling project group Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
7/28/202010 minutes, 23 seconds
Episode Artwork

This Week in Rust - Issue 348

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from TWiR 348, published on July 21, 2020. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources Announcing Rust 1.45.0 Learn how to make a Sokoban game in Rust Clear Explanation of Rust’s module system Rewriting FORTRAN Software in Rust Writing a kernel driver with Rust Packaging and Vendoring Production Rust Software - Windows Async Rust, but less intimidating Rust: What is Ownership and Borrowing Boiled Down Crate: OnceCell Curso Rust zbus is looking for contributors just: Add extensible recipe and justfile attributes libnet: Segfault in icmp send rust: fs::remove_dir_all rarely succeeds for large directories on window RFC: C unwind ABI Add oneof configuration predicate to support exclusive features RFC: Promote aarch64-unknown-linux-gnu to a Tier-1 Rust target Add Drop::poll_drop_ready for asynchronous destructors Stabilize Cargo’s new feature resolver Add the partial-closure-args RFC Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
7/21/202011 minutes, 32 seconds
Episode Artwork

This Week in Rust - Issue 347

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from TWiR 347, published on July 14, 2020. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources Announcing Rustup 1.22.1 Lang Team Design Meeting: Path to Membership Perspective on Rust Community Moderation The Soul of a New Debugger Async Interview #8: Stjepan Glavina Using RabbitMQ in Rust Rust Analyzer Changelog #33 IntelliJ Rust Changelog #126 This Month in Rust OSDev Rust es orientado a objeto? Fuzzing Rust with Shnatsel Two Sum Problem - Leet Code + Rust Rust and WebAssembly - EdgeXR @ Netlight Opt-in Stable Trait VTables Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
7/14/20208 minutes, 34 seconds
Episode Artwork

This Week in Rust - Issue 346

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from TWiR 346, published on July 6, 2020. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources Announcing Rustup 1.22.0 Ownership of the standard library implementation Choosing a Rust web framework, 2020 edition Simple Rocket Web Framework Tutorial POST Request Transpiling a Kernel Module to Rust: The Good, the Bad and the Ugly Ringbahn II: The Central State Machine What is a Dangling Pointer? Super Hero Rust fuzzing RFC: IndexGet and IndexSet RFC: Add a new #[instruction_set(...)] attribute for supporting per-function instruction set changes Inline const expressions and patterns Inline Assembly This Week in Rust GitHub Repo Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
7/7/20207 minutes, 51 seconds
Episode Artwork

This Week in Rust - Issue 345

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from TWir 345, published on June 29, 2020. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources Faster Rust Development on AWS EC2 with VSCode Rust Verification Tools Extremely Simple Rust Rocket Framework Tutorial Build a Smart Bookmarking Tool with Rust and Rocket Secure Rust Guidelines Examining ARM vs x86 Memory Models with Rust Rust Stream: Iterators Manipulating ports, virtual ports and pseudo terminals Database Project Gooseberry Ruma Crates.io token scopes Linking modifiers for native libraries Portable packed SIMD vector types Hierarchic anonymous life-time Inline const expressions and patterns Inline Assembly Deduplicate Cargo workspace information Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
6/30/20209 minutes, 43 seconds
Episode Artwork

Mun

First time host, long time editor Jeremy talks with Bas and Remco, creators of the Mun project. Mun is a programming language empowering creation through speedy, hot reloading iteration written in Rust. Why Rust for a project like this? That’s what we explore in this episode. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources The Mun Website The Mun github repo Pull Requests The Mozilla Grant The Amethyst Project The Mun community Discorrd Credits Intro Theme: Aerocity Audio Editing: Jeremy Webb and Jeremy Jung Huge thanks to him for denoising the guests’ tracks. Hosting Infrastructure: Jon Gjengset Show Notes: Jeremy Webb Hosts: Jeremy Webb Guests: Remco Kuijper and Bas Zalmstra
6/26/202050 minutes, 38 seconds
Episode Artwork

This Week in Rust - Issue 344

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from this week’s issue of TWiR. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources Announcing Rust 1.44.1 Writing Non-Trivial Macros in Rust How to Design For Panic Resilience in Rust Tour of Rust - Chapter 8 - Smart Pointers Thread-local Storage - Part 13 of Making our own executable packer RISC-V OS using Rust - Chapter 11 Zero To Production #2: Learn By Building An Email Newsletter [video] Crust of Rust: Smart Pointers and Interior Mutability [video] CS 196 at Illinois [video] Rust Stream: The Guard Pattern and Interior Mutability [video] Ask Me Anything with Felix Klock GitUI Ruma RFC: ‘C unwind’ ABI impl From<char> for String stabilize leading_trailing_ones Add TryFrom<{int}> for NonZero{int} Stabilize #[track_caller] Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
6/23/202012 minutes, 5 seconds
Episode Artwork

This Week in Rust - Issue 343

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from this week’s issue of TWiR. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources 2020 Event Lineup - Update Announcing RustFest Global 2020 🎉 RustConf 2020 Registration is Open Understanding the Rust Ecosystem Errors in Rust: A Deep Dive Getting Started With The STM32 Nucleo-F302R8 and Rust Rustls Security Review & Audit Report [audio] AreWePodcastYet - Interview with Tim McNamara, author of Rust in Action [video] Rust Notebooks (Jupyter and Evcxr) - Getting Started RFC: add the Freeze trait to libcore/libstd add Windows system error codes that should map to io::ErrorKind::TimedOut impl PartialEq<Vec<B>> for &[A], &mut [A] Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
6/16/20206 minutes, 4 seconds
Episode Artwork

This Week in Rust - Issue 341 and 342

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from this week’s issue of TWiR. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources Issue 341 This Week in Rust 341 RustConf Rust Contributor Survey A Retrospective on the 2018 rust-lang.org redesign Contributing to Rust How to build a WebSocket server with Rust Custom Types in Diesel Fuzzing Sequoia-PGP Sorting algorithms in Rust 3D boids swimming in perfect harmony: Implementing the boids flocking algorithm in Rust Aprende Rust en español A Rust and WASM tutorial on building Bitcoin infrastructure Crust of Rust: Iterators Rust and Tell Berlin - May 2020 Issue 342 Announcing Rust 1.44.0 So What’s Up with Microsoft’s (and Everyone Else’s) Love of Rust? Why the developers who use Rust love it so much Zero To Production #1: Setup - Toolchain, IDEs, CI This Month in Rust OSDev (May 2020) This Month in Rust GameDev #10 - May 2020 This month in rustsim #11 (April - May 2020) RiB Newsletter #12 - ZK-Rustups Graph & Tree Traversals in Rust Memory-Safety Challenge Considered Solved? An Empirical Study with All Rust CVEs Simple sorting algorithms in Rust Berbagai alasan melakukan Programming dalam Rust [Rust Web development Boilerplate free with Rocket](https://youtu.be/tjH0Mye8U_A) Educational Rust Live Coding - Building a web app - Part 4 Iterators - Rust Browser computation with WebAssembly Live Stream Jonathan Teaches Jason Rust! Ruma-events project Database project Maud project Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
6/9/202011 minutes, 21 seconds
Episode Artwork

This Week in Rust - Issue 340

Nell Shamrell-Harrington — lead editor of This Week in Rust — takes you through highlights from this week’s issue of TWiR. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced resources Compiling Rust binaries for Windows 98 SE and more: a journey] Conway’s Game of Life on the NES in Rust Writing Python inside your Rust code — Part 4 Zero To Production #0: Foreword How to organize your Rust tests Rust Macro Rules in Practice Bringing WebAssembly outside the web with WASI by Lin Clark Microsoft’s Safe Systems Programming Languages Effort 3 Part Video for Beginners to Rust Programming on Iteration Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
5/27/20205 minutes, 24 seconds
Episode Artwork

This Week in Rust - Issue 339

Nell Shamrell-Harrington - lead editor of This Week in Rust - takes you through highlights from this week’s issue of TWiR. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Referenced Resources This Week in Rust GitHub Repository Five Years of Rust The case for using Rust for Automotive Software Rust releases for single and multiple targets with GitHub Actions Rust and C++ Cardiff Virtual Meetup Jonathan Teaches Jason Rust! RFC: Transition to rust-analyzer as our official LSP (Language Server Protocol) implementation RFC: Reading into uninitialized buffers Credits Hosting Infrastructure: Jon Gjengset Show Notes: Nell Shamrell-Harrington Hosts: Nell Shamrell-Harrington
5/19/20207 minutes, 34 seconds
Episode Artwork

What's New in Rust 1.42 and 1.43

Jon and Ben examine the features of Rust 1.42 and Rust 1.43. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:45] - Useful line numbers on unwrap #[track_caller] [@04:22] - Subslice patterns Stabilization report Ignoring with .. @-patterns struct updates with .. [@16:09] - matches! Macro documentation Jon proposes assert_matches [@18:13] - Error::description deprecation RFC Soft deprecation in 1.27 failure thiserror anyhow eyre Jane expermenting with track_caller in eyre [@24:23] - Other changes in 1.42 Documentation improvements to cargo [@26:47] - Rust 1.43 [@27:17] - item macro fragments and parser improvements in general More details about the problem PR that fixed this [@33:30] - Primitive type inference [@36:22] - Smaller changes surfacing in release notes Steve Klabnik’s blog post Rust 2020 roadmap on “finishing things” [@39:00] - New cargo environment variables Cargo target directory assert_cmd Environment variables set by cargo [@43:39] - Associated consts on numeric types Ben’s RFC Issue from way back when The associated constants PR (2015) max_value PR (2015) PR for Ben’s RFC [@51:54] - What can we do in an edition? Error::source RFC [@54:20] - The primitive module use paths The Rust prelude Next edition prelude [@57:50] - String implements AsMut<str> [@59:40] - cargo profile in config cargo global configuration [@1:02:03] - New feature resolver cargo merges features between dependency types [@1:05:30] - Lots of new clippy lints: 1.42, 1.43 All the clippy lints Pruning unwanted clippy lints [@1:08:52] - Rustfest postponed Credits Intro Theme: Aerocity Audio Editing: @alphastrata Hosting Infrastructure: Jon Gjengset Show Notes: Jon Gjengset Hosts: Jon Gjengset and Ben Striegel
5/8/20201 hour, 10 minutes, 53 seconds
Episode Artwork

What's New in Rust 1.41

Jon and Ben examine the features of Rust 1.41. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@02:39] - Relaxed restrictions when implementing traits [@09:54] - cargo install updates packages when outdated [@12:20] - Less conflict-prone Cargo.lock format [@20:27] - More guarantees when using Box<T> in FFI Rust Unsafe Code Guidelines Working Group [@26:22] - NonZero* numeric types now implement From<NonZero*> for smaller integer widths [@30:40] - Reducing support for 32-bit Apple targets soon [@31:47] - Compiler frontend support for constant propagation Inside Rust Blog - Constant propagation is now on by default [@35:06] - Cargo profile overrides [@39:52] - Nested custom Self receivers Credits Intro Theme: Aerocity Audio Editing: Zoran Zaric Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Jon Gjengset and Ben Striegel
2/19/202045 minutes, 18 seconds
Episode Artwork

RustFest Interviews Triple Feature: Rust Release Engineering; Developing the Developer Tools; Rust in Latin America

Another trio of interviews from RustFest 2019: Pietro Albini on Crater and the Rust Infrastructure Team; Pascal Hertleif on the Rust Developer Tools Team; and Santiago Pastorino on the Rust Latam conference in Latin America. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] Part 1: Crater & Rust Release Infrastructure w/ Pietro Albini [@01:01] - What is your role in the Rust project? [@01:46] - What lessons did the infrastructure team learn from the Rust 2018 release? [@03:29] - How do you feel about potential future Rust editions in 2021 or beyond? [@06:26] - Do you think Rust’s regular release cycle too fast or too slow? [@08:56] - How does Crater guard against language regressions, and what things doesn’t it catch? rust-lang/crater [@11:12] - How has Crater scaled as the ecosystem has grown, and is it at risk of becoming infeasible to run? [@16:17] - How can someone get involved with the Infrastructure Team? #infra Discord channel [@17:25] Part 2: Developer Tools w/ Pascal Hertleif [@18:23] - What is the Developer Tools Team? [@19:39] - What tools is the Developer Tools Team responsible for, and what purposes do they serve? [@24:46] - Which tools in particular would you like to draw attention to? [@26:19] - How does rust-analyzer compare to RLS? rust-lang/rls rust-analyzer/rust-analyzer [@29:42] - How does the Developer Tools Team coordinate? [@32:00] - How was your experience at RustFest this year? [@36:21] Part 3: Rust Latam w/ Santiago Pastorino [@36:46] - What is Rust Latam? [@37:42] - What inspired you to start a Rust conference in Latin America? [@39:06] - How big is Rust Latam? [@40:15] - What is interest in Rust like in Latin America? [@42:42] - What is the broader software industry like in Latin America? [@44:59] - What’s next for Rust Latam? [@45:42] - How did you get into Rust? [@50:17] - What venues are there for Spanish or Portuguese-speaking Rust users? Rust Brazilian Telegram Group [@51:34] - How can someone learn more about Rust Latam? Credits Intro Theme: Aerocity Audio Editing: Zoran Zaric Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Ben Striegel
2/7/202053 minutes, 32 seconds
Episode Artwork

RustFest Interviews Triple Feature: Rust for AAA Game Development; Async Foundations with `async-std`; and Powerful Concurrency Primitives with `crossbeam`

Three more interviews from RustFest 2019: Jake Shadle on using Rust for high-performance game engines at Embark, applying lessons learned from working on EA DICE’s Frostbite engine; Yoshua Wuyts on async-std and Rust’s async ecosystem; and Stjepan Glavina on crossbeam, Rust’s foundational library for powerful concurrency primitives. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] Part 1: Game Development @ Embark Studios w/ Jake Shadle [@01:25] - What is yours (and Embark’s) background in game development? [@02:14] - What is the relevance of the Frostbite engine and what is your experience with it? [@04:15] - What makes you think that Rust as a language is suitable for game development? [@06:13] - How is parallelism employed in a game engine on the scale of Frostbite? [@07:07] - Where is the Rust library ecosystem lacking for your use case, and what crates are you making use of? [@11:13] - Why is Embark interested in WebAssembly? [@14:20] - How can someone get in touch or learn more about Embark? embark.dev Inside Rust at Embark [@15:09] Part 2: async-std w/ Yoshua Wuyts [@15:48] - How much of the Rust standard library is async-std intended to emulate? [@17:12] - Is there anything from async-std that ought to be upstreamed into the standard library? [@19:20] - Does async-std run into any conflicts with the types or traits defined in futures-rs or the standard library? [@22:21] - How complete or incomplete is Rust’s async ecosystem and async language support? async-trait: a procedural macro for providing async trait methods on stable Rust [@26:21] - How close is async-std to being a drop-in replacement for the standard library? [@28:32] - What’s next for the development of async-std? [@30:07] - With the advent of async-std version 1.0, what would an eventual 2.0 release look like? [@32:09] - Who is using async-std? [@32:54] - How can someone get in touch or get involved? async.rs github.com/async-rs [@34:02] Part 3: crossbeam w/ Stjepan Glavina [@34:29] - What is crossbeam and what is its history? [@36:41] - What is epoch-based garbage collection, and why would a Rust user want to use it? [@38:17] - How does epoch-based garbage collection compare to std::sync::Arc? [@41:30] - What is your background in concurrent programming? [@42:59] - How do crossbeam’s channels compare to those in the standard library? [@44:33] - How much research was involved in writing crossbeam? [@45:35] - Do crossbeam’s channels provide a selection interface? [@46:34] - What other primitives does crossbeam provide? [@48:37] - How confident are you in the correctness of crossbeam’s implementation? [@49:46] - How is crossbeam related to rayon and async-std? [@51:53] - What’s next for crossbeam? Credits Intro Theme: Aerocity Audio Editing: Zoran Zaric Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel, Zoran Zaric Hosts: Ben Striegel
1/22/202053 minutes, 43 seconds
Episode Artwork

What's New in Rust 1.40

Jon and Ben review the changes introduced in Rust 1.40. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:52] - #[non_exhaustive] structs, enums, and variants [@12:31] - Macro and attribute improvements StackOverflow: How do I create a function-like procedural macro? [@24:33] - Borrow check migration warnings are hard errors in Rust 2015 [@25:21] - More const fns in the standard library const-hack issue label Rustacean Station: Compile-Time Evaluation, Interpreted Rust, and UB Sanitizing: Talking to Oliver Scherer about Miri [@28:31] - The todo! macro [@34:28] - slice::repeat [@35:09] - mem::take [@36:55] - BTreeMap::get_key_value and HashMap::get_key_value Ivan Dubrov: Tricking the HashMap [@40:24] - Standardized functions for converting floating-point types to byte arrays of specific endianness Proposed Rust RFC: Standard lazy types Rust PR: Stabilize the matches! macro [@45:55] - Cargo tweaks Credits Intro Theme: Aerocity Audio Editing: Jeremy Jung Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Jon Gjengset and Ben Striegel
1/13/202049 minutes, 19 seconds
Episode Artwork

Double Feature: Jan-Erik Rediger on RustFest & Lucio Franco on the Tonic gRPC framework

Two more interviews from RustFest 2019, first with lead RustFest organizer Jan-Erik Rediger and second with Tokio contributor Lucio Franco on the Tower gRPC framework. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to be interviewed, propose a topic for an episode, or help with hosting or audio editing! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:00] Part 1: RustFest w/ Jan-Erik Rediger [@00:43] - Who were the original founders of RustFest and what is the history of the conference? [@06:04] - What is timeline like for organizing a conference of this scale and what has been your experience with organizing RustFest? [@12:04] Part 2: Tonic w/ Lucio Franco [@12:52] - What is Tonic? [@13:38] - What is gRPC? [@14:57] - What is Tonic/gRPC useful for? [@16:05] - How is Tonic related to Tower and Tokio? [@22:11] - What are you using Tonic for? [@25:13] - How can people learn more about Tonic and get involved? Credits Intro Theme: Aerocity Audio Editing: Jeremy Jung Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Host: Ben Striegel
1/10/202025 minutes, 59 seconds
Episode Artwork

Compile-Time Evaluation, Interpreted Rust, and UB Sanitizing: Talking to Oliver Scherer about Miri

In the first of our mini-interviews from RustFest 2019, we talk to Oliver Scherer about Miri, an interpreter for rustc’s internal bytecode, its use in const-evaluation, and its potential as an external tool for sanitizing unsafe code. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to be interviewed, propose a topic for an episode, or help create the podcast itself! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:15] - What is const-evaluation and what can you do with it? [@03:23] - What is Miri and how long has it been in development? [@07:05] - What does the future hold for Miri? [@07:54] - How long have you been working on rustc and Miri? [@12:22] - How much of Miri does rustc use today? [@13:33] - How does Miri help people detect undefined behavior in unsafe code? [@16:46] - How would a user begin using Miri directly to test their unsafe code? [@19:15] - What happens if you try to const-evaluate unsafe code? [@20:33] - What’s next for const-evaluation in rustc? [@21:58] - Who else is helping to develop Miri? Credits Intro Theme: Aerocity Audio Editing: alphastrata Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Ben Striegel
12/23/201924 minutes, 29 seconds
Episode Artwork

Creating Static Sites in Rust with Vincent Prouillet

Vincent Prouillet talks about his experience building the Zola static site generator (formerly known as Gutenberg) and reflects on five years of working with Rust. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to be interviewed, propose a topic for an episode, or help create the podcast itself! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps [@00:59] - What’s a static site generator? [@03:52] - How easy is it to build and edit a site? [@07:58] - Why create a new static site generator? [@12:35] - The Tera template engine and Vincent’s experience building it [@17:53] - Creating filters and tests to use with Tera [@24:29] - What’s a taxonomy? [@25:48] - Mapping content to URLs [@30:53] - The experience of being an open source maintainer [@33:57] - Rust crates and features used by Zola [@36:57] - How the Rust ecosystem ensured fast performance [@40:35] - Is Rust ready for web applications? [@43:25] - What applications are best suited to Rust now? [@46:50] - Issues or things you wish existed in Rust? [@51:08] - Helping out with Zola References and Resources Vincent Prouillet Personal Site @20100Prouillet Zola Zola Website Zola Forum Tools/Crates used by Zola pulldown-cmark (Markdown) syntec (Syntax highlighting using Sublime Text definitions) rayon (Parallel computation) heaptrack (Memory Profiler) Static Site Hosts Github Pages Netlify Crates for Web Applications jsonwebtoken Bcrypt Validator Compiled Template Engines askama maud horrowshow Runtime Template Engines Tera (Jinja2-like HTML template engine) ramhorns rust-mustache Static Site Generators Hugo Jekyll Pelican Other links Forestry (WYSIWYG CMS for Static Sites) Keyword Arguments RFC kickstart (Scaffolding tool) Credits Intro Theme: Aerocity Audio Editing: Jeremy Jung Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Jeremy Jung
12/19/201954 minutes, 24 seconds
Episode Artwork

What's New in Rust 1.39

Jon and Ben review the long-awaited changes in Rust 1.39. Contributing to Rustacean Station Rustacean Station is a community project; get in touch with us if you’d like to be interviewed, propose a topic for an episode, or help create the podcast itself! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@1:03] - References to by-move bindings in match guards [@2:44] - Attributes on function parameters [@7:01] - Borrow check migration warnings are hard errors in Rust 2018 “NLL for Rust 2015” in Rustacean Station episode on Rust 1.36 (timestamp: 36:24) [@10:15] - More const fns in the standard library Inside Rust Blog: if and match in constants on nightly Rust [@14:16] - Improvements to std::time::Instant [@16:22] - rustup 1.20.0 [@19:32] - Stable async/await “std::future” in Rustacean Station episode on Rust 1.36 (timestamp: 4:27) How Rust optimizes async/await I How Rust optimizes async/await II Rust Blog: Async-await on stable Rust! Announcing the Async Interviews wasm-bindgen-futures [@34:42] - What’s next in Rust? Polonius Chalk [@36:20] - A public call for feedback for the Rust 2020 Development Roadmap Credits Intro Theme: Aerocity Audio Editing: Jeremy Jung Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Jon Gjengset and Ben Striegel
11/26/201943 minutes, 3 seconds
Episode Artwork

What's new in Rust 1.38

Jon and Ben review the changes introduced by the Rust 1.38 release. Get in touch with us if you’d like to be interviewed, propose a topic for an episode, or help out! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@1:15] - Pipelined compilation [@3:25] - Linting some incorrect uses of mem::uninitialized Rustacean Station episode on Rust 1.36 with discussion on std::mem::MaybeUninit [@6:30] - #[deprecated] attribute on macros Rust reference: Diagnostic attributes [@11:30] - std::any::type_name Security advisory for the destabilization of std::error::Error::type_id in Rust 1.34.2 [@16:00] - slice::{concat, connect, join} now accepts &[T] in addition to &T [@18:10] - *const T and *mut T now implement std::marker::Unpin [@20:55] - New convenience methods for working with std::time::Duration [@22:25] - cargo fix --clippy [@23:40] - Diff-friendly format for Cargo.lock [@25:00] - Looking forward to Rust 1.39 futures v0.3 milestone tokio v0.2 milestone tower v0.1 milestone hyper v0.13 milestone Credits Intro Theme: Aerocity Audio Editing: Zoran Zaric Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Jon Gjengset and Ben Striegel
10/14/201934 minutes, 3 seconds
Episode Artwork

Rust in Production: An Interview with Armin Ronacher

Armin Ronacher talks about getting into Rust, when to use it, writing Rust extensions for Python, building the Symbolicator web application with actix, creating debugging libraries, and the Rust ecosystem. Get in touch with us if you’d like to be interviewed, propose a topic, or help out! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:16] - What got you interested in Rust? [@02:58] - Abstraction with good performance in Rust vs Python [@04:50] - Rust doesn’t need asynchronous code [@06:10] - Building thread safe applications [@07:05] - What excited you about using Rust? [@08:59] - Sentry [@11:41] - Introducing Rust to Sentry [@13:49] - Anything easier to write in Rust vs Python? [@16:53] - Writing extensions vs writing services [@20:01] - Flow of sending a minidump to Symbolicator [@22:35] - Symbolicator makes sense as a service [@24:05] - Building a better debugging world [@25:12] - More things symbolicator does [@26:06] - What’s Milksnake [@28:43] - Other ways to embed Rust in Python [@30:47] - Why use Actix for Symbolicator? [@35:23] - Is it too early to write web applications? [@38:09] - What would you do differently in hindsight? [@42:59] - Don’t want a Django or Rails [@44:37] - When to write a web application? [@48:13] - What do you wish existed in Rust? [@50:36] - Game backends [@52:23] - Anything else? [@54:05] - Why companies aren’t using Rust for web development [@54:52] - Why async/await is not the only blocker for web development [@57:22] - Resources for web development in Rust [@59:03] - Wrap Up Credits Intro Theme: Aerocity Hosting Infrastructure: Jon Gjengset Show Notes: Jeremy Jung Host: Jeremy Jung
9/17/20191 hour, 2 minutes, 25 seconds
Episode Artwork

What's New in Rust 1.37

We review the new features in the Rust 1.37 release and give shout-outs to all the volunteers who have helped make Rustacean Station so far. Get in touch with us if you’d like to be interviewed, propose a topic, or help out! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:21] - Referring to enum variants through type aliases [@02:55] - Built-in Cargo support for vendored dependencies [@04:08] - Using unnamed const items for macros [@06:41] - Profile-guided optimization [@09:06] - Choosing a default binary in Cargo projects [@10:17] - #[repr(align(N))] on enums [@11:06] - Library changes [@16:48] - New sponsors of Rust infrastructure Async/Await in Libra Core [@19:58] - async/await stabilization in Rust 1.39 [@22:08] - Miscellaneous new features [@26:06] - Thanking the people who make Rustacean Station possible! Credits Intro Theme: Aerocity Audio Editing: Jon Gjenset Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Jon Gjenset & Ben Striegel
8/31/201933 minutes, 18 seconds
Episode Artwork

Organizing Colorado Gold Rust: An interview with conference founder J Haigh

We interview J Haigh about their experience organizing this year’s first-ever Colorado Gold Rust conference, what brought them to Rust, and what inspired them to give back to Rust’s community. Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@00:41] - Colorado Gold Rust [@01:48] - What got you into Rust? RustConf @ag_dubs (Ashley Williams) @carols10cents (Carol Nichols) [@03:01] - Getting involved with the Rust community Rust Boulder/Denver Meetup @focusaurus (Peter Lyons) [@07:50] - What is the Recurse Center? [@09:21] - Organizing a conference Auraria Campus @argorak (Florian Gilcher) Rust Fest Rust Community Events Team’s example timeline for organizing a conference Rust Belt Rust Rust Belt Rust 2018’s budgeting report [@17:27] - What have you learned for next time? [@19:36] - Who is helping with the conference? Nicholas Young [@22:05] - Community Inclusivity [@24:44] - CFP software [@25:34] - Finding a venue for a conference Credits Intro Theme: Aerocity Audio Editing: Reece McMillin Hosting Infrastructure: Jon Gjengset Show Notes: Jeremy Jung Hosts: Ben Striegel
8/25/201928 minutes, 6 seconds
Episode Artwork

Ruma and the Matrix Communication Protocol: An Interview with Jimmy Cuadra

We interview Jimmy Cuadra about Matrix, an open and decentralized communication protocol, and his implementation in Rust known as Ruma. Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] Timestamps & referenced resources [@01:35] - Meet Jimmy Cuadra [@04:46] - How did you get into Rust? @bascule (Tony Arcieri) The Rust Programming Language Book [@08:47] - What is Matrix? Matrix: an open network for secure, decentralized communication libpurple Ruma: Introduction to Matrix [@14:32] - Why “Matrix”? [@16:44] - What forms of communication does Matrix enable? [@17:59] - What pieces of Matrix does Ruma implement? [@20:27] - Why did you decide to use Rust? [@23:52] - How challenging has Ruma been to implement? [@30:27] - What libraries does Ruma leverage? Serde: a framework for serializing and deserializing data structures efficiently and generically Diesel: a safe, extensible ORM and query builder [@34:02] - If you could start all over again, what would you do differently? [@38:57] - Does Ruma use any unstable Rust features? Has it previously? [@42:30] - What other implementations of Matrix exist? [@46:42] - How difficult to implement is the Matrix specification? [@52:59] - How close to maturity is Ruma? Credits Intro Theme: Aerocity Audio Editing: Reece McMillin Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Abdou Seck, Ben Striegel
8/8/20191 hour, 3 minutes, 29 seconds
Episode Artwork

Announcing Rustacean Station and Rust 1.36

Meet Rustacean Station, a new Rust “meta podcast”, and take a dive into the new 1.36.0 Rust release with Ben and Jon. If you would like to offer Rust-related podcast content for us to host, or would like advice and resources on making your own Rust podcast, get in touch with us via the venues below! Twitter: @rustaceanfm Discord: Rustacean Station Github: @rustacean-station Email: [email protected] In the episode [@4:27] - std::future [@11:29] - std::task [@14:22] - the alloc crate [@18:52] - std::collections::HashMap and hashbrown [@22:50] - std::mem::MaybeUninit and the deprecation of std::mem::uninitialized (mentioned: Error::type_id destabilization and std::pin discussion) [@36:24] - NLL for Rust 2015 (mentioned: MIR) [@44:45] - cargo --offline and cargo fetch [@46:50] - ongoing stdlib constification [@47:25] - read_vectored and write_vectored [@49:05] - Iterator::copied [@49:58] - dbg! enhancements [@51:19] - #[must_use] for is_err and is_ok Credits Intro Theme: Aerocity Audio Editing: Reece McMillin Hosting Infrastructure: Jon Gjengset Show Notes: Ben Striegel Hosts: Ben Striegel, Jon Gjengset Special Thanks: Chris Krycho, Andrew Gallant, Mae McCauley
7/12/201954 minutes, 28 seconds