Rustacean Station  cover image

Rustacean Station

Latest episodes

undefined
Jun 16, 2022 • 42min

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: hello@rustacean-station.org 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.
undefined
Jun 10, 2022 • 57min

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: hello@rustacean-station.org 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
undefined
Jun 8, 2022 • 58min

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: hello@rustacean-station.org 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.
undefined
Jun 3, 2022 • 1h 2min

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

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: hello@rustacean-station.org 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.
undefined
May 28, 2022 • 1h 2min

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: hello@rustacean-station.org 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
undefined
May 26, 2022 • 59min

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: hello@rustacean-station.org Credits Intro Theme: Aerocity Audio Editing: Aleksandar Nikolic Hosting Infrastructure: Jon Gjengset Show Notes: Tim McNamara Hosts: Tim McNamara, Allen Wyma, and Sean Chen
undefined
May 20, 2022 • 43min

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: hello@rustacean-station.org 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
undefined
May 18, 2022 • 35min

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: hello@rustacean-station.org Credits Intro Theme: Aerocity Audio Editing: Jan Lund Hosting Infrastructure: Jon Gjengset Show Notes: Tim McNamara Hosts: Tim McNamara and Allen Wyma
undefined
May 13, 2022 • 40min

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

Remember Everything You Learn from Podcasts

Save insights instantly, chat with episodes, and build lasting knowledge - all powered by AI.
App store bannerPlay store banner