Rustacean Station  cover image

Rustacean Station

Latest episodes

undefined
Jun 9, 2020 • 11min

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: hello@rustacean-station.org 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
undefined
May 27, 2020 • 5min

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: hello@rustacean-station.org 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
undefined
May 19, 2020 • 8min

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: hello@rustacean-station.org 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
undefined
May 8, 2020 • 1h 11min

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: hello@rustacean-station.org 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
undefined
Feb 19, 2020 • 45min

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: hello@rustacean-station.org 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
undefined
Feb 7, 2020 • 54min

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: hello@rustacean-station.org 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
undefined
Jan 22, 2020 • 54min

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: hello@rustacean-station.org 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
undefined
Jan 13, 2020 • 49min

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: hello@rustacean-station.org 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
undefined
Jan 10, 2020 • 26min

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: hello@rustacean-station.org 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
undefined
Dec 23, 2019 • 24min

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: hello@rustacean-station.org 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

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app