Come journey with us into the weird, wonderful, and wily world of Rust.
Similar Podcasts
Thinking Elixir Podcast
The Thinking Elixir podcast is a weekly show where we talk about the Elixir programming language and the community around it. We cover news and interview guests to learn more about projects and developments in the community.
Rocket
Countdown to excitement! Every week Christina Warren, Brianna Wu and Simone de Rochefort have accelerated geek conversation. Tech, comics, movies, games and books, no galaxy is off limits! Hosted by Christina Warren, Brianna Wu, and Simone De Rochefort.
The Infinite Monkey Cage
Brian Cox and Robin Ince host a witty, irreverent look at the world through scientists' eyes.
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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
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: hello@rustacean-station.org 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