Look for any podcast host, guest or anyone
Showing episodes and shows of

Chris Krycho

Shows

Winning SlowlyWinning Slowly8.05: The Postmodern Condition—ExaminedThe Postmodern Condition, Jean–François Lyotard Lyotard’s postmodernism, the politics of power, and aesthetics: what do we keep and what do we reject? Show Notes Errata Chris, because he was slightly sick, forgot that although we were recording in February, the episode was coming out in March. This threw off everything we said about dates for the rest of the episode. Whoops! (The book schedule is adjusted accordingly below.) Things mentioned on the show “Information wants to be free” The Year of Our Lord 1943, Alan Jaco...2020-03-1839 minWinning SlowlyWinning Slowly8.04: The Postmodern Condition—ExplainedNote: Hey listeners, sorry for the weirdness—I (Chris) accidentally published this pointing to the audio for last week’s episode. All fixed now! Jean-François Lyotard on postmodernity, science, and kitschy art. The Postmodern Condition, Jean–François Lyotard Show Notes We do our best to explain this dense piece of French aesthetic theory, its arguments with German idealist philosophers, and its very strong feelings about non-avant-garde art. Errata Chris, because he was slightly sick, forgot that although we were recording in February, the episode...2020-03-0435 minWinning SlowlyWinning SlowlyJake Meador: In Search of the Common GoodHey listeners, we had a miscommunication leading to the episode originally being published with the wrong intro music—sorry to any of you who got that earlier version! This new version has the right intro music (and one edit fix Chris caught listening back through the episode as a bonus). Sorry about any hassle or confusion! An interview with author and editor (and our friend) about his new book! Show Notes An interview with author and editor (and our friend!) Jake Meador—focused especially on his book In Search of the Common Good: Chri...2019-12-0559 minWinning SlowlyWinning Slowly7.13: A Healthy TensionChris and Stephen talk about an interesting article… and then pivot to the nature of this podcast and some of their healthy differences—about the show, and in approach to these questions in general. Show notes Isaac Asimov’s Caves of Steel Alan Jacobs’ Pinboard “The Web Falls Apart” Chris’ newsletter Across the Sundering Seas the last couple weeks, on progress and decline: Flux (#27) Edges (#28) Jaron Lanier Your Undivided Attention, Episode 9: The Dictator’s Playbook Chris’ Christology class Chris also wrote a follow-up post on Twitter bots and decline, to which Stephen thoughtfully replied. Music “Em...2019-11-2144 minWinning SlowlyWinning Slowly7.09: FrictioneersCan adding a little friction back to user interfaces save us? Show notes We talk about the currently-trendy concept of (design) friction and how it is necessary but not sufficient for right action on the Internet. Links Facebook admits that it intentionally defrauded children by making it easy to buy in-game purchases The creator of the retweet button now thinks it was a bad idea (Mea culpa: We stated this article was written in Wired but it was in BuzzFeed) Dark patterns Alt-Meat Trounces Animal Meat’s Massive Inefficiencies The Launch: After tw...2019-08-2937 minWinning SlowlyWinning Slowly7.08: Literally Metaphorically Listen for EarthquakesShow Notes We pause from issue-focused episodes and try to pull together the threads of the season so far to take a step toward our ethic of technology. Stephen imitating Lewis Mumford saying “I said that!!!” Links Donald Trump cannot block critical Twitter users, court rules The Lindy effect – John D. Cook on the expected lifetimes of technology: …if all you know is that a technology has survived a certain amount of time, you can estimate that it will survive about that much longer. President Bush’s “can’t get foo...2019-08-0837 minNew RustaceanNew RustaceanMeta 3: Happy CodingA story and a dream (and the promise of Rust): the final episode of New Rustacean! Show Notes Rust by Example Winning Slowly Mass Affection buttondown.email/rewrite patreon.com/chriskrycho Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Lozada Alexander Payne Andrew Dirksen Andrew Thompson Anthony Deschamps Anthony Scotti Arlen Haftevani Arlo (Hyena) Arun Kulshreshtha Behnam Esfahbod Benjamin Manns Benjamin Wasty Brandon ‘Spanky’ Mills Brian Casiello Brian Manning Brian McCallister Bryan Stitt Caryn Finkelman Cass Costello Cat Dad Chap Lovejoy Charlie Egan Chip Chris Palmer Christoffer Ceutz Cristian Paul Dan Abrams Daniel Daniel Bros...2019-05-2700 minNew RustaceanNew RustaceanNews: Rust 1.35WASI, Option::copied, and the future of async/await syntax! Show Notes Rust 1.34.1 release notes blog post discussion about Error::type_id Rust 1.34.2 release notes blog post discussion about Error::type_id Rust 1.35 release notes blog post WASI The Bike Shed episode Async/await std::futures API docs internal thread on syntax for .await Sponsors Thanks to Parity for sponsoring the show and hiring Rust developers! Patreon Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Lozada Alexander Payne Andrew Dirksen Andrew Thompson Anthony Deschamps Anthony Scotti Arlen Haftevani Arlo (Hyena) ...2019-05-2400 minNew RustaceanNew RustaceanCYSK: bindgen and cbindgenAutomatic generation of FFI types between Rust and C APIs. Show Notes bindgen the official guide API docs cbindgen a blog post by one of the main authors of the crate rust-ffi Binding libraries for scripting languages PyO3 Neon Rustler a great write-up from the folks at Discord Helix Sponsors Thanks to Parity for sponsoring the show and hiring Rust developers! Patreon Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Lozada Alexander Payne Andrew Dirksen Andrew Thompson Anthony Deschamps Anthony Scotti Arlen Haftevani Arlo (Hyena) Arun Kulshreshtha Behnam Esfahbod Benjamin Manns ...2019-05-1800 minNew RustaceanNew Rustaceane031: FFI Deep DiveExposing Rust types and functions to C API consumers. Show Notes It’s impossible to make the declarations below follow the order I talked through them on the recording without also making them horrible to read, so just use this outline instead: add_in_rust Strings concat_strings free_rust_string Point point_translate union OpaquePoint opaque_point_new opaque_point_translate opaque_point_free Links Rust FFI Omnibus the repository for the show RFC #2195 Sponsors Thanks to Parity for sponsoring the show and hiring Rust developers! Pa...2019-05-1400 minWinning SlowlyWinning Slowly7.04: Not Better EnoughRejecting solutionism, the problems of the humane, and wise change. Show Notes We dig into the challenge of taking a non-solutionist approach and rejecting a technocratic view of the world… while not rejecting “interventions” and making real progress along the way. Corrections Stephen accidentally referred to Chris’ reference in his newsletter to C. S. Lewis’ foreword to St. Athanasius’ On the Incarnation as “On the Annunciation”—the annunciation is a related but distinct bit of Christian doctrine, when the Incarnation was announced (‘annunciated’) to Mary, the mother of Jesus. Chris thought we talked...2019-05-0938 minNew RustaceanNew Rustaceane030: Can You See Me Now?Item visibility and pub(<restricted>) as API design tools. Show Notes The easiest and most effective way to understand the example in this case will simply be to look directly at the source code. You can read the docs for each of the nested modules, but you’ll be doing a lot of navigating around for that. Also, I am using Cargo’s --document-private-items flag, so that you can see all the items in all the modules, even those which are not public, but note that usually you would not see docs...2019-04-2700 minNew RustaceanNew RustaceanNews: Rust 1.33 and 1.34Moar const fn, some Pin, and alternative Cargo registries! Show Notes 1.33 release notes Pin RFC API docs 1.34 release notes Sponsors Thanks to Parity for sponsoring the show and hiring Rust developers! Patreon Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Lozada Alexander Payne Andrew Dirksen Andrew Thompson Anthony Deschamps Anthony Scotti Arlen Haftevani Arlo (Hyena) Arun Kulshreshtha Behnam Esfahbod Benjamin Manns Benjamin Wasty Brandon ‘Spanky’ Mills Brian Casiello Brian Manning Brian McCallister Bryan Stitt Caryn Finkelman Cass Costello Cat Dad Chap Lovejoy Charlie Egan Chip Chris Palmer Christoffer Ceutz Cristian Paul...2019-04-2000 minNew RustaceanNew Rustaceane029: I’m Out to CUsing Rust’s Foreign Function Interface (FFI) with C! Show Notes The code samples here directly match the things I described in the show, so you will likely want to look at add and ffi::add, then Point, translate, and ffi::translate in that order. Links Other helpful Rust FFI discussions: The Rust Programming Language’s materials the nomicon Rust FFI Omnibus the Reference’s discussion the associated Rust API docs Sponsors Thanks to Manning for sponsoring the show and giving all of you a 40%-off discount on the...2019-04-0400 minWinning SlowlyWinning Slowly7.01: Do We Really Need to Keep the Internet Around?Season 7’s charter—by way of a rollicking argument about Alan Jacobs’ The Year of Our Lord 1943 and Tolkien’s idea of eucatastrophe. Show Notes Major figures we discuss in this episode: Alan Jacobs’ recent work The Year of Our Lord 1943: Christian Humanism in an Age of Crisi Jacques Ellul C. S. Lewis T. S. Eliot Jacques Mauritain Simone Weil J.R.R. Tolkien The Lord of the Rings The Silmarillion eucatastrophe: from “On Fairy Stories” (published in The Monsters and the Critics) Other topics/figures/books/etc. we mentioned: The Bill Nye/Ken Ham de...2019-03-2738 minNew RustaceanNew RustaceanBonus 14: How the Sausage Gets MadeHow I make the show, and why you won’t find it on Google Play, Spotify, or Stitcher. Show Notes Winning Slowly guest lectures on podcasting: A, B Audio recording/editing/production software: Icecast Rogue Amoeba Audio Hijack Loopback Ferrite iZotope RX previous episodes of interest building a markdown link extractor using rustdoc Sponsors Thanks to Parity for sponsoring the show and hiring Rust developers! Patreon Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Lozada Alexander Payne Andrew Dirksen Andrew Thompson Anthony Deschamps Anthony Scotti Arlen Haftevani Arlo (Hyena) Arun Ku...2019-03-2400 minNew RustaceanNew RustaceanBonus 13: I Still Make Silly MistakesA story about parsing command-line arguments manually and some thoughts on “rookie mistakes.” Show Notes why you might want to invoke the same program with different names Python’s argparse library Commander in Node clap structopt pulldown-cmark Sponsors Thanks to Parity for sponsoring the show and hiring Rust developers! Patreon Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Lozada Alexander Payne Andrew Dirksen Andrew Thompson Anthony Deschamps Anthony Scotti Arlen Haftevani Arlo (Hyena) Behnam Esfahbod Benjamin Manns Benjamin Wasty Brandon ‘Spanky’ Mills Brian Casiello Brian Manning Brian McCallister Bryan Stitt Caryn Fink...2019-02-2800 minNew RustaceanNew Rustaceane028: Meet My AssociatesAssociated items: functions and methods, constants, types, and (very briefly!) GATs. Show Notes Iterator source the first Traits deep dive episode RFC #1598 RFC #195 The Reference on associated items Rust 1.20 deals.manning.com/new-rustacean Sponsors Thanks to Manning for sponsoring the show and giving all of you a 40%-off discount on their whole store (but especially Carol Nichols’ and Jake Goulding’s Rust in Motion video content and the Rust in Action MEAP!) at deals.manning.com/new-rustacean Patreon Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Lozada Alexander Payne Andrew Dirk...2019-02-2200 minNew RustaceanNew RustaceanNews: Rust 1.32dbg!, unified paths, more places you can use Self, and a bunch of const fn stabilizations—plus some neat community highlights! Show Notes Rust 1.32 blog post release notes smaller builds on Twitter Amethyst examples docs RustConf 2018 keynote insta Sponsors Thanks to Parity for sponsoring the show again. Go check out their Rust jobs! Patreon Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Payne Andrew Dirksen Andrew Thompson Anthony Deschamps Anthony Scotti Arlen Haftevani beaorn Behnam Esfahbod Benjamin Wasty Brandon ‘Spanky’ Mills Brian Casiello Brian Manning Brian McCallister Bryan Stitt Caryn Finkel...2019-01-2300 minNew RustaceanNew RustaceanNews: Rust 1.31 and the 2018 Edition, Part IIStabilizing rustfmt, clippy, tool lints, and const fn (all in both editions!), and the 2018 Edition-specific features: syntax changes and non-lexical lifetimes! Show Notes Rust 1.31 Blog Post Rust 1.31 Release Notes Rust 2018 Edition Guide a simple NLL example const fn in the reference and “const contexts” “uniform paths” the raw string syntax Sponsors Thanks to Parity for sponsoring the show again. Go check out their Rust jobs! Patreon Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Payne Andrew Dirksen Andrew Thompson Anthony Deschamps Anthony Scotti beaorn Behnam Esfahbod Benjamin Wasty Brandon ‘Spanky’ Mills Brian...2019-01-1400 minNew RustaceanNew RustaceanNews: Rust 1.31 and the 2018 Edition, Part IAn overview of the edition, and some of the improvements that are available in both the 2015 and 2018 editions: better lifetime elision, some Cargo features, and some library stabilizations. Show Notes Rust 1.31 Blog Post Rust 1.31 Release Notes Rust 2018 Edition Guide Previous episodes of direct interest: News: Rust 1.28 News: Rust 1.29 and 1.30 Sponsors Thanks to Parity for sponsoring the show again. Go check out their Rust jobs! Patreon Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Payne Andrew Dirksen Andrew Thompson Anthony Deschamps Anthony Scotti beaorn Behnam Esfahbod Benjamin Wasty Brandon ‘Spanky’ Mills Bria...2019-01-0700 minWinning SlowlyWinning Slowly6.13: A Four-in-One SpecialWrapping up Season 6 by covering the topics we intended to cover before Chris’ experience with burnout broke everything. Show Notes On burnout: Chris’ New Rustacean episode Chris’ blog posts Shannon Vallor and Technology and the Virtues “Why American Farmers Are Hacking Their Tractors With Ukrainian Firmware” Music “Tiananmen Square” by Cameron Blake “Winning Slowly Theme” by Chris Krycho. Sponsors Many thanks to the people who help us make this show possible by their financial support! This month’s sponsors: Daniel Ellcey Kurt Klassen Jake Grant Jeremy W. Sherman Marnix Klooster Nathaniel Blaney Spe...2019-01-0137 minNew RustaceanNew RustaceanInterview: Integer32Show Notes Things we mentioned on the show: the playground Ferrous Systems Magical JSON: https://quicktype.io EddyB’s company: Lyken Software Solutions Integer32 blog: “Tech Conference Budget Case Study: Rust Belt Rust 2018” Sponsors Thanks to Manning for sponsoring this episode; don’t forget to grab some of their content at 40% off using the code podnewrust18! Thanks to Parity for sponsoring the show again. Go check out their Rust jobs! Patreon Sponsors Adam Green Aleksey Pirogov Alexander Kryvomaz Alexander Payne Andrew Dirksen Andrew Thompson Anthony Deschamps Anthony Scotti beaorn B...2019-01-0100 minNew RustaceanNew Rustaceane027: Trust Me; I Promise!An intro to unsafe Rust and Rust’s idea of safety. Show Notes Errata A quick correction: on the show I said that a trait needed to be unsafe when it had an unsafe fn method. This isn’t correct: safe traits can have unsafe methods, and unsafe traits can exist without any methods at all (as implied by my reference to Send and Sync). You can see this in practice in the following example, which compiles just fine! trait ASafeTrait { unsafe fn unsafe_method() {} } unsafe AnUnsafeTrait {} The idea of an unsa...2018-12-0100 minNew RustaceanNew RustaceanNews: Rust 1.29 and 1.30Procedural macros, better paths, and the Rust 2018 beta! Show Notes Rust 1.29: blog post release notes Rust 1.30: blog post release notes RFC: path clarity Sponsors Thanks to Parity for sponsoring the show again. Go check out their Rust jobs! Patreon Sponsors Adam Green Aleksey Pirogov Alexander Payne Alexander Kryvomaz Andrew Thompson Anthony Deschamps Anthony Scotti Behnam Esfahbod Benjamin Wasty Brandon ‘Spanky’ Mills Brian Casiello Brian Manning Bryan Stitt Bryce Johnston Caryn Finkelman Cass Costello Chap Lovejoy Charlie Egan Chip Chris Palmer Daniel Dan Abrams Daniel Bross Daniel Coll...2018-11-1600 minWinning SlowlyWinning Slowly6.12: Beer RulesRegulation as neither bogeyman nor panacea, but a way of protecting out the right spaces for genuine competition to emerge. Show Notes Back in September, we recorded this episode live, both of us in person, at Pikes Peak Brewing Company in Monument, Colorado—as Stephen was out visiting Chris and just hanging out for a weekend. We talk a bit about the history of the beer industry in the 20th and 21st century, with an eye to the way that government intervention can variously make things much worse or much better, when it’s tailored just...2018-11-0840 minNew RustaceanNew RustaceanBonus 12: Translating Between LanguagesMusings inspired by a project translating TypeScript to Rust Sponsors Thanks to Manning for sponsoring the show and giving all of you a 40%-off discount on their whole store (but especially Carol Nichols’ and Jake Goulding’s Rust in Motion video content and the Rust in Action MEAP!) at deals.manning.com/new-rustacean Patreon Sponsors Aaron Turon Adam Green Aleksey Pirogov Alexander Payne Alexander Kryvomaz Andrew Thompson Anthony Deschamps Anthony Scotti Behnam Esfahbod Benjamin Wasty Brandon ‘Spanky’ Mills Brian Casiello Brian Manning Bryan Stitt Bryce Johnston Caryn Finkelman Cass Costello Chap Lovejoy Charlie...2018-10-2400 minNew RustaceanNew RustaceanBonus 11: BurnoutWhat burnout is, the many ways it can happen to us, and what we can do about it. Show Notes My blog posts on burnout (and the RSS feed) Mayo clinic guidelines Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Antonin Carette Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Brian Casiello Brian Manning Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Damien Stanton Dan Abrams Daniel Bross Daniel Collin Daniel Mason Daniel P. Clark David Hewson Derek Morr Eugene Bulkin Graham Wihlidal Hans Fjällemark Henri S...2018-09-2300 minNew RustaceanNew RustaceanNews: Rust 1.28Stable `#[global_allocator]`, more Rust 2018 Edition schedule news, video learning resources, and a static site generator! Show Notes Rust 1.28: blog post release notes wee_alloc: repository blog post rustfmt RC Nick Cameron’s LinuxConfAu 2018 tutorial Gutenberg Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Antonin Carette Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Brian Casiello Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Damien Stanton Dan Abrams Daniel Collin Daniel Mason Daniel P. Clark David W. Allen David Hewson Derek Buckley Derek Morr Eugene Bu...2018-08-1719 minNew RustaceanNew Rustaceane026: Functional Programming IdeasHow Rust both borrows from FP languages and charts its own, very different course. Show Notes Sponsored by Parity Technologies! Parity is hiring Rust developers so if you’re interested, you should check out their job listings! Links Maybe Haskell “shared mutable state is the root of all evil” “code smells” Persistent Data Types/Structures rpds crate immutable.rs Sponsors Aaron Turon Alexander Kryvomaz Alexander Payne Anthony Deschamps Anthony Scotti Antonin Carette Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Brian Casiello Chap Lovejoy Charlie Eg...2018-07-2500 minNew RustaceanNew Rustaceane025: Traits Deep Dive, Part IIIClosure traits, `impl trait`, `dyn trait`, and object safety! Show Notes Sponsored by Parity Technologies! Parity is hiring Rust developers so if you’re interested, you should check out their job listings! Links RFC #1733: Trait Aliases RFC #255: Object Safety Ch. 17 in the Second Edition of The Rust Programming Language Huon Wilson’s post Example You can see all of the pieces of the final example described in the show here (and the module has the required definitions for Point). let points = vec![ Point { x: 1.0, y: 2.0 }, Point { x: 12.0, y: 4.3 }, Poin...2018-07-0500 minNew RustaceanNew RustaceanNews: Rust 1.27Stable SIMD, `dyn trait`, `rustfix` and the alpha release of the Rust 2018 Edition Preview! Show Notes Rust 1.27: blog post release notes This Week in Rust The Rusty Spike Hello Rust Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Antonin Carette Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Brian Casiello Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Damien Stanton Dan Abrams Daniel Collin Daniel Mason Daniel P. Clark David W. Allen David Hewson Derek Buckley Derek Morr Eugene Bulkin [Hans Fjällemark] Henri Sivonen I...2018-06-3000 minNew RustaceanNew Rustaceane024: Traits Deep Dive, Part IIOperators as sugar for traits, traits as generic constraints, monomorphization, and universal and existential types. Show Notes on monomorphization, see also Sean Griffin’s RustConf 2017 talk zero-cost abstractions Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Antonin Carette Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Brian Casiello Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Damien Stanton Dan Abrams Daniel Collin Daniel Mason Daniel P. Clark David W. Allen David Hewson Derek Buckley Derek Morr Eugene Bulkin [Hans Fjällemark] Henri Sivonen Ian Jones Jak...2018-06-2000 minNew RustaceanNew RustaceanCYSK: The wasm toolswasm intro, wasm-bindgen, and wasm-pack Show Notes WebAssembly asm.js wasm-bindgen wasm-pack Rust wasm working group GitHub org Twitter This week in Rust and WebAssembly Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. Allen David Hewson Derek Morr Eugene Bulkin [Hans Fjällemark] Henri Sivonen Ian Jones Jakub “Limeth” Hlusička James Cooper Jerome Froelich John Rudnick Jonathan Turner Jupp Müller...2018-06-0100 minNew RustaceanNew RustaceanNews: Rust 1.26impl trait, match on references, Results from main, and more. A good way to mark three years since Rust 1.0! Show Notes Rust 1.26: blog post release notes RFC #2115 The Rusty Spike webassembly.studio burntsushi’s now-1.0 crates: regex csv docopt Search crates VS Code plugin Sponsors Aaron Turon adsertoris Alexander Payne Anthony Deschamps Anthony Scotti Antonin Carette Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Brandon “Spanky” Mills Brian Casiello Chap Lovejoy Charlie Egan Chip Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. All...2018-05-1500 minNew RustaceanNew Rustaceane023: Traits Deep Dive, Part IDefining and using your own traits, using other crates' traits, and the orphan rule. Show Notes Traits— in the Rust book in Rust by Example Also of interest: specialization: RFC #1210 recent blog posts: “Maximally minimal specialization: always applicable impls” “Sound and ergonomic specialization for Rust” Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Antonin Carette Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Brian Casiello Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. Allen D...2018-04-2800 minNew RustaceanNew RustaceanNews: Rust 1.25Paths and matches and SIMD, cargo new changes, and tons of community-driven learning materials! Show Notes Rust 1.25.0 blog post RFC #1358 – #[repr(align)] RFC #2325 – SIMD stabilization RustConf CFP Hello Rust “Functional and Concurrent Programming in Rust” Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Antonin Carette Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Brian Casiello Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. Allen David Hewson Derek Buckley Derek Morr Eugene Bulkin [Hans Fjällemark] Henri Sivonen I...2018-03-3100 minNew RustaceanNew RustaceanBonus 10: “Becoming a Contributor”My Rust Belt Rust 2017 talk! Show Notes slides video script on my website Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. Allen David Hewson Derek Morr Eugene Bulkin [Hans Fjällemark] Henri Sivonen Ian Jones Jakub “Limeth” Hlusička James Cooper Jerome Froelich John Rudnick Jonathan Turner Jupp Müller Justin Ossevoort Karl Hobley Keith Gray Kilian Rault Luca Schmid Masashi...2018-03-1700 minNew RustaceanNew RustaceanNews: Rust 1.24Performance wins, incremental compilation, and the Rust 2018 Roadmap and Epoch. Show Notes Rust 1.24.0 blog post Rust 1.24.1 blog post Rust 2018 Roadmap RFC Rust Epochs RFC Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. Allen David Hewson Derek Morr Eugene Bulkin [Hans Fjällemark] Henri Sivonen Ian Jones Jakub “Limeth” Hlusička James Cooper Jerome Froelich John Rudnick Jonathan Turner Jupp Müller Ju...2018-03-0200 minNew RustaceanNew RustaceanCYSK: SerdeThe library for serialization and deserialization in Rust. Show Notes Serde custom derive serde_json its JSON parsing its JSON writer Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. Allen David Hewson Derek Morr Eugene Bulkin [Hans Fjällemark] Henri Sivonen Ian Jones Jakub “Limeth” Hlusička James Cooper Jerome Froelich John Rudnick Jonathan Turner Jupp Müller Justin Ossevoort Karl Ho...2018-02-1000 minNew RustaceanNew Rustaceane023: Send and SyncThe “marker traits” that Rust uses for safe concurrency. Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. Allen David Hewson Derek Morr Eugene Bulkin Guido Hoermann [Hans Fjällemark] Hendrik Sollich Henri Sivonen Ian Jones Jakub “Limeth” Hlusička James Cooper Jerome Froelich John Rudnick Jonathan Turner Jupp Müller Justin Ossevoort Karl Hobley Keith Gray Kilian Rault Luca Schmid Masashi Fujita Matt Rudder...2018-02-0100 minNew RustaceanNew RustaceanInterview – Diesel 1.0, with Sean Griffin – Part 2Getting Diesel to 1.0, writing docs and exposing problems with the API, improving Diesel in the future, and thinking about API design for open source libraries in general. Show notes Macros 2.0 The Bike Shed episodes on Diesel 0.99 and 1.0 126: Speaking of Compilers… - where Sean talked about some of the same changes mentioned on the show here. 135: A Series of Unfortunate Examples - where Sean talks a bit more about his adventures writing docs for Diesel 1.0 (and the corresponding feature freeze). Generic associated types, which you may have heard of under the name “associated type constructors” Multitenancy Library patter...2018-01-2200 minNew RustaceanNew RustaceanInterview – Diesel 1.0, with Sean Griffin – Part 1Growing Diesel's community, self-imposed technical challenges, and some of the ways Diesel has contributed to the Rust ecosystem. Show notes Sean’s previous appearance on the show Chat app options: IRC Slack Gitter The Diesel Gitter room Discord SQL back ends PostgreSQL SQLite MySQL endianness byteorder crate object safety trait object Sean’s RustConf talk monomorphization Custom derive and procedural macros Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan...2018-01-1300 minNew RustaceanNew RustaceanNews: Rust 1.23Show notes Rust 1.23 1.23 release notes rustdoc tracking issue rustdoc blog post not copying function arguments the first news episode the impl period impl period announcement final newsletter Diesel ORM Firefox Quantum “Fearless Concurrency in Firefox Quantum” e015: Not dumb pointers. WebAssembly classic asteroids game a password generator Yew JSX stdweb Glimmer VM spike “Rust and the Case for WebAssembly in 2018” “New Year’s Rust: A Call for Community Blogposts” my other podcast, Winning Slowly Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Chap Lov...2018-01-0600 minNew RustaceanNew RustaceanIncreasing Rust's Reach: Matt GathuMatt’s experience porting wget to Rust. Show Notes Rosetta Code wget Matt’s Rust implementation Matt’s blog posts Writing a Command Line Tool in Rust Testing a Rust Command Line Tool Rust Nairobi Meetup @RustNairobi Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. Allen David Hewson Derek Morr Eugene Bulkin Henri Sivonen Ian Jones Jakub “Limeth” Hlusička James Coope...2017-12-3100 minNew RustaceanNew RustaceanIncreasing Rust's Reach: Lee BaillieLee’s experience designing a new website for Rust. Show Notes Increasing Rust’s Reach Ember Rails Talks at RustConf (as Liz Baillie) at RustFest Kyiv (as Liz Baillie) comparing Rust and Ruby at a meetup Sinatra Helix the Slackbot framework Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. Allen David Hewson Derek Morr Eugene Bulkin Henri Sivonen Ian Jones Jaku...2017-12-2600 minNew RustaceanNew RustaceanIncreasing Rust's Reach: Anna LiaoAnna's experience learning Rust while porting a Raspberry Pi Python project as part of the Increasing Rust’s Reach 2017 program. Show Notes Increasing Rust’s Reach Go This Week In Rust PyCon Raspberry Pi Sense HAT PyCascades Andrew Gallant (burntsushi) ripgrep RustBridge exercism.io the other Sense HAT Rust conversion Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Chap Lovejoy Charlie Egan Chris Jones Chris Palmer Coleman McFarland Dan Abrams Daniel Collin Daniel P. Clark David W. Allen David Hews...2017-12-2100 minNew RustaceanNew RustaceanNews: Rust 1.21 and 1.22Quality of life improvements, Failure, wasm, and rustdoc fun. Links and Notes Rust 1.21 blog post “When Will the RLS be Released?” Rust 1.22 Rusty Spike Rust Fest Rust Belt Rust YouTube channel my talk: script and slides the Failure crate prior art: error-chain wasm support in Rust itself external Markdown files for docs the RFC the implementation Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Anton Van Moere Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Caryn Finkelman Charlie Egan Chris Jones Christian Schwarz Chris Palmer Dan Abrams Dani...2017-11-2400 minNew RustaceanNew RustaceanMeta 2: Two milestonesTwo years and fifty episodes of New Rustacean—time to celebrate with stickers and shirts! Links JavaScript to Elm Idris Elixir Shirts Get them here! – available till Oct 9, 2017 at 8:00 PM EDT. Sponsors Aaron Turon Alexander Payne Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Charlie Egan Chris Jones Chris Palmer Dan Abrams Daniel Collin [David W. Allen] David Hewson Derek Morr Eugene Bulkin Henri Sivonen Ian Jones Jakub "Limeth" Hlusička James Cooper Jerome Froelich Jonathan Turner Jupp Müller...2017-09-2500 minNew RustaceanNew RustaceanCYSK: RayonSafe, threaded, parallel code in Rust!Links and NotesRayon Source Crate Docs README blog post Other things referenced on the show Request for Explanation #10 [e016: RefCells and code smells] – on mutability ["embarassingly parallel"] https://www.newrustacean.com/show_notes/e016/index.html ["embarassingly parallel"]: https://en.wikipedia.org/wiki/Embarrassingly_parallelSponsors Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Charlie Egan Chris Jones Chris Palmer Dan Abrams Daniel Collin [David W. Allen] De...2017-09-1600 minNew RustaceanNew RustaceanNews: Rust 1.20Associated constants, conference season, meetups, and more! Links and NotesRust 1.20blog postchangelogAssociated items RFC – and see the code for today's show for examples of the variants I described on the show!RustConf 2017RustFest 2017registrationRust Belt Rust 2017registration (and don't forget to use code newrustacean for 20% off!)rustrations.clubSponsorsAnthony DeschampsAnthony ScottiAleksey PirogovAndreas FischerAndrew ThompsonAustin LeSureBehnam EsfahbodBenjamin WastyBrent VatneCharlie EganChris JonesChris PalmerDan AbramsDaniel Collin[David W. Allen]Derek MorrEugene BulkinHenri SivonenJakub "Limeth" HlusičkaJames CooperJonathan TurnerJordan HendersonJupp MüllerJustin OssevoortKarl HobleyKeith GrayKilian RaultLuca SchmidMasashi FujitaMatt RudderMatthew PiziakMax JacobsonMessense LvMicael BergeronNathan SculliNick Steve...2017-09-0100 minNew RustaceanNew RustaceanBonus 9: Open source is mostly just normal peopleMy experience with ember-cli-typescript as an example: we're all just people muddling along and doing our best.Links and Notesember-cli-typescriptThe Bike Shed #118: Nonsense In, Nonsense OutSean's appearance on New Rustacean: Interview 1SponsorsAnthony DeschampsAnthony ScottiAleksey PirogovAndreas FischerAndrew ThompsonBehnam EsfahbodBenjamin WastyBrent VatneCharlie EganChris JonesChris PalmerChristopher GiffardDan AbramsDaniel Collin[David W. Allen]Derek MorrEugene BulkinHenri SivonenJakub "Limeth" HlusičkaJames CooperJonathan TurnerJordan HendersonJupp MüllerJustin OssevoortKarl HobleyKeith GrayKilian RaultLuca SchmidMatt RudderMatthew PiziakMax JacobsonMessense LvMicael BergeronOliver Uvman - see the Tomaka Patreon and arewegameyet.comOvidiu CurcanPascal HertleifPatrick O'DohertyPeter TillemansPhilipp KellerRalph Giles ("rillian")Randy Ma...2017-08-1419 minNew RustaceanNew Rustaceane021: Keeping your types under coverUsing type aliases and creating custom type wrappers for more expressive and safer code. Links and Notes Deref Iterator std::io::Result Sponsors Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Brent Vatne Charlie Egan Chris Jones Chris Palmer Dan Abrams Daniel Collin David W. Allen Derek Morr Eugene Bulkin Henri Sivonen Jakub "Limeth" Hlusička James Cooper Jonathan Turner Jordan Henderson Jupp Müller Justin Ossevoort Karl Hobley Keith Gray Kilian Rault Luca Schmid Matt Rudder Matthew Piziak Max Jacobson Messense Lv Micael Be...2017-07-1800 minNew RustaceanNew RustaceanNews 3: Increasing Rust's ReachGrowing Rust's diversity to help Rust grow. Links and Notes Initiative blog post Initiative submission form Sponsors Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Behnam Esfahbod Benjamin Wasty Charlie Egan Chris Jones Chris Palmer Christopher Giffard Dan Abrams Daniel Collin Derek Morr Eugene Bulkin Henri Sivonen Jakub "Limeth" Hlusička James Cooper Jonathan Turner Jordan Henderson Jupp Müller Justin Ossevoort Karl Hobley Keith Gray Kilian Rault Luca Schmid Matt Rudder Matthew Piziak Max Jacobson Messense Lv Micael Bergeron Ovidiu Curcan Pascal Hertleif Patrick O'Doherty Peter Tillemans Ph...2017-07-0400 minNew RustaceanNew RustaceanCYSK: RocketAn accessible, well-designed web framework in Rust! Links and Notes Rocket Hyper Iron Django Rails ASP.NET MVC Procedural macros in the Rust book first edition second edition – still in progress at time of publication RFC #1566 implementation tracking issue metaprogramming Lisp Sponsors Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Ben Whitley Behnam Esfahbod Benjamin Wasty Charlie Egan Chris Jones Chris Palmer Christopher Giffard Dan Abrams Daniel Collin Derek Morr Eugene Bulkin Henri Sivonen Jakub "Limeth" Hlusička Jonathan Turner Jordan Henderson Jupp Müller Justin Ossevoort Karl Hobl...2017-07-0100 minNew RustaceanNew RustaceanInterview 4 – Jonathan Turner: Part 3Smoothing the Rust dev story Future work on the RLS, in Rust itself, and in Servo. Show Notes Building the Rust Language Service: Language Server Protocol plugins RLS reference VS Code plugin Kalita Alexey's vscode-rust langserver.org The 2017 Rust Roadmap Improved match ergonomics around references const generics RFC #1931 Working on Servo: Servo Windows nightlies LLVM Apple's use on their graphics pipeline: OpenGL Metal clang Swift Project Quantum WebKit KHTML Safari Sponsors Anthony Deschamps Anthony Scotti Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Ben Whitley Behnam Esfahbod Benjamin...2017-06-1700 minNew RustaceanNew RustaceanInterview 4 – Jonathan Turner: Part 2Making Rust Better Rust as the fusion of systems and high-level programming languages, and the RLS. Show Notes The survey Language adoption: Guido van Rossum and Python Matz (Yukihiro Matsumoto) and Ruby Dart Building the Rust Language Service: Racer rustw Language Server Protocol Demo at RustConf 2016 Anders Hejlsberg – designer or lead developer of Turbo Pascal, Delphi, C#, and TypeScript Serde Roadmap GitHub Project Language Server Protocol plugins RLS reference VS Code plugin Kalita Alexey’s vscode-rust langserver.org The 2017 Rust Roadmap Improved match ergonomics around references const generics RFC #1931 Sponsors Anth...2017-05-3000 minNew RustaceanNew RustaceanInterview 4 – Jonathan Turner: Part 1Getting to Rust Background, TypeScript, coming to Rust, and how helpful the Rust community can be. Show Notes On Jonathan's programming backstory: TI-99/4A Commodore 64 Cray Chapel TypeScript Yehuda Katz ECMAScript Language Committee Data locality CPPCast BASIC Pascal Ultima After the transition to working on Rust full-time: Improving the error messages— design issue Jonathan's personal blog post "Helping with the Rust Errors" Official Rust blog post announcing and describing the feature, "Shape of Errors to Come" Elm error list issue Sponsors Anthony Deschamps Anthony Sc...2017-05-0100 minNew RustaceanNew RustaceanCYSK: RLSWhere the RLS came from, what it can do, and how you can start using it today! Notes One major ergonomic improvement to developing in Rust in 2017 is coming via the Rust Language Service: an initiative that lets us share a common core of functionality between every editor – from Vim to VS Code and everything in between. In today's episode, I give some background on it and talk about how you can start using it today! Links Rust Language Service repo blog posts announcement alpha 2 release first rustup release vscode-rust Language Server Pr...2017-04-1800 minNew RustaceanNew Rustaceane020: Putting code in its placeHow do we organize code in Rust? Where do we break it apart into modules or crates, and why? Notes Structuring code in a language like Rust can seem a bit more ambiguous than doing the same in a language with classes to attach all our functionality to, but in practice, the concerns are much the same: modules are namespaces, and we group by responsibility. In today's episode, I talk through that philosophy (and give some comparisons to other languages), and then look at what it looks like in practice! Links Learning...2017-04-0100 minNew RustaceanNew RustaceanBonus 8: Giving back (by teaching)On the responsibilities and opportunities we have to help others with our knowledge and abilities. Notes Many of us have been very blessed with opportunities and support as we learn software. We should go out of our way to share with others in kind. Today, my focus is on teaching, but there are lots of ways to "give back." And I'd love to hear your thoughts and things you're doing in that vein! Links Julia Evans keyof and Mapped Types in TypeScript 2.1 -- the blog post I mentioned writing a...2017-03-1900 minNew RustaceanNew Rustaceane019: Let's `Clone` a `Cow` code{white-space: pre;} The final pieces of the story for (single-threaded) memory management in Rust. Notes Sometimes, we actually do need to copy types. Wouldn't it be nice if Rust gave us a convenient way to do that when it's convenient, or when the cost is low enough that the ergonomic tradeoffs are worth it? Well, perhaps unsurprisingly, it does! The Copy and Clone traits, plus the Cow type, give us everything we need! Links underhanded.rs The typess std::marker::Copy "Copy types...2017-02-2800 minNew RustaceanNew RustaceanCYSK: clapA Command-Line Argument Parser. Links crates.io docs.rs GitHub videos book YAML: example from clap YAML associated Rust implementation example from lightning-rs: YAML associated Rust implementation Sponsors Sponsors Aleksey Pirogov Andreas Fischer Andrew Thompson Austin LeSure Ben Whitley Charlie Egan Chris Palmer Christopher Giffard Daniel Collin Derek Morr Jakub "Limeth" Hlusička Jordan Henderson Jupp Müller Keith Gray Lachlan Collins Luca Schmid Matt Rudder Matthew Piziak Max Jacobson Micael Bergeron Ovidiu Curcan Pascal Hertleif Peter Tillemans Philipp Keller Ralph Giles ("rillian") Raph Levien reddraggone9 Steven Murawski St...2017-02-1500 minNew RustaceanNew Rustaceane018: `Borrow`, `AsRef`, `Deref`: my head hurts nowThree traits which are essential for designing good, Rustic APIs. Notes Borrow, AsRef, and Deref are a little complicated, but they're well-worth understanding. Together, they give you tools for dealing with everything from HashMap and friends to conversions involving smart pointer types to easily using String and str or Vec and slice together. Links AsRef, Borrow, and Deref: Borrow and AsRef in The Rust Programming Language collections::borrow::Borrow std::convert::AsRef std::ops::Deref persistent data structures "Rust and Rest" – Arnin Roacher sentry-cli Particularly relevant previous episodes: e008: Just like something el...2017-02-0100 minNew RustaceanNew RustaceanCYSK: quick-xmlA pull-parser for reading and writing XML. Links crates.io docs.rs GitHub syntax highlighting – example from lightning-rs Sponsors Aleksey Pirogov Andreas Fischer Ben Whitley Cameron Mochrie Chris Palmer Christopher Giffard Daniel Collin Derek Morr Jakub “Limeth” Hlusička Jupp Müller Keith Gray Lachlan Collins Luca Schmid Matt Rudder Matthew Piziak Micael Bergeron Ovidiu Curcan Pascal Hertleif Peter Tillemans Philipp Keller Ralph Giles (“rillian”) Raph Levien reddraggone9 Ryan Ollos Steven Murawski Vesa Kaihlavirta Vlad Bezden William Roe Zaki (Thanks to the couple people donating who opted out of the reward tier, as well. Yo...2017-01-0900 minNew RustaceanNew RustaceanNews 2: Let's talk roadmap!Rust’s achievements in 2016 and goals for 2017 Links Rust releases: 1.10: blog post | release notes 1.11: blog post | release notes 1.12: blog post | release notes 1.12.1: blog post 1.13: blog post | release notes 1.14: blog post | release notes Rust 2017 roadmap RFC text RFC discussion Other official Rust blog posts: Shape of errors to come Incremental compilation Milestone: beta Milestone: across crates Milestone: in typechecking Cargo workspaces: Original RFC and discussion Documentation Rust Language Service: Announcement post on internals.rust-lang.org Demo Non-core projects mentioned on the show: Futures Tokio Rocket My projects Lightning RFC #1636: text discussion tracking issue (where you can contribute!) 2016-12-2900 minWinning SlowlyWinning Slowly5.07: Books, The Internet, and Homeless PeoplePositive / Invisible / Legal (Organized):public libraries and the common good Show Notes We talk libraries. Why? Because public libraries are awesome. They’re on of the few unalloyed successes in social experiments. They do good in a wide array of areas, and they’re free to use (because we support them as taxpayers). If you want to hear Chris giddy, this is the episode. The second of two episodes recorded live at NC State University on September 22, 2016. (Yep, our schedule is way different this year. You can thank Stephen’s Ph.D. thesis...2016-11-0125 minNew RustaceanNew RustaceanInterview 3 – Carol (Nichols || Goulding)Carol (Nichols || Goulding) on learning Rust, teaching Rust, and building community NotesChris talks with Carol (Nichols || Goulding), a Rust community team member, co-author of the first major revision of The Rust Programming Language, and co-founder of the first Rust consultancy. Links XSLT (XML Style Sheet Transformations) Rspec Rails Think Through Math — remedial math tutoring app built with Rails Rust for Rubyists The Rust Programming Language Julia Evans RustConf 2016 keynote Rust by Example Rustlings SASS language Carol’s in-progress implementation #rust-community — open meetings at 4pm UTC every Wednesday, with minutes available online first Rust commun...2016-09-3000 minWinning SlowlyWinning Slowly5.04: Stuffy, Boring, Old, LamePositive / Visible / Social (Organized): orchestras and the question of “public goods” Show NotesWe talk about orchestras, ask whether financial viability is a guide to the health or importance of particular institutions (hint: Betteridge’s Law), and look at how orchestras and other such institutions can be real markers of cultural health even for the people they don’t directly affect. Links An article in The New York Times, in 1903, referenced in The Perilous Life of Symphony Orchestras, by Robert J. Flanagan: The permanent orchestra season has, as usual, been financially a bad one...2016-09-2029 minNew RustaceanNew RustaceanBonus 7: Katas—or: learning by doingKatas—or: learning by doing Notes One of the best ways to learn is to pick a small problem you have already internalized, and to do it again but in a new language or in a new way in a language you already know. Links AreWeGameYet AreWeIDEYet AreWeWebYet Setting our vision for the 2017 cycle Incremental Compilation cargo-incremental: internals post repo Elm Dave Thomas’ CodeKata Crates I used in my Rust “kata”: Hyper docs crate repo Serde docs crate repo Pencil (inspired by Flask) docs crate repo handlebars-rust: docs crate repo Sponsors Ale...2016-09-1000 minNew RustaceanNew RustaceanBonus 6: It doesn‘t have to be sexyBuilding (and celebrating) all the little, not-so-glorious pieces of the Rust ecosystem. Notes We love the Rust compiler team. But there’s more to the Rust community, and more required for Rust to be as great as it can be, than just the language itself. We need to celebrate other libraries, and even the small ones, just as much (and maybe more) than changes to the language. We need to dig in and work on building the whole ecosystem. (The good news is, we are!) Links futures-rs “Zero-cost futures in Rust” Tokio “Announci...2016-08-2000 minNew RustaceanNew Rustaceane017: Point me where I need to goA deep dive on references and pointers in Rust. Notes By listener request, today we look at the syntax and semantics of referencing and dereferencing and the corresponding & and * operators. As was the case with e016, the code samples have little to say in their documentation; reading the code will be necessary for seeing the ideas. Links “Inside the Fastest Font Renderer in the World” The Rust Platform: original blog post Rust internals discussion Reddit discussion Hacker News discussion follow-up Reddit discussion Cargo vendoring support in nightly MIR on by d...2016-08-0800 minNew RustaceanNew Rustaceane016: RefCells and code smellsDigging deeper on smart pointers and mutability with Cell and RefCell. Notes What are the Cell and RefCell types, and when should we use them? Today, we follow up both the detailed discussion of smart pointers in e015 and the closely related discussion in Interview 2 with Raph Levien, and look at two types you need to have a good idea how to deal with if you want to use these smart pointer types more ergonomically—that is, how to use them without feeling like you’re beating your head against a wall! Link...2016-07-2300 minNew RustaceanNew RustaceanInterview 2::Part 2 – Raph LevienRaph Levien on Rust’s current strengths and places it can improve Notes Chris chats with Raph Levien about what inspired him to build a text editor, as well as about where the rough edges in the Rust development story are today, and how we might improve them going forward. Links Rust/Ruby bridge: Helix blog post GitHub Rust Bridge project Ropes original paper Rust implementation C++ implementation Yehuda Katz on Code Newbie Creating Ember JS - Part I Creating Ember JS - Part II Rust and Swift (xi): Hopes for the ne...2016-07-0500 minNew RustaceanNew RustaceanInterview 2::Part 1 – Raph LevienRaph Levien on using Rust to build the Xi editor Notes Chris chats with Raph Levien about his background in software development, what attracted him to Rust, and how he’s using Rust to build the Xi Editor, a project which aims to be the fastest text editor out there, with native user interfaces and a Rust text engine. Links Past work: GIMP GTK GhostScript Google Web Fonts Current projects: font-rs pulldown-cmark Xi Editor fuzz testing sanitizers FreeType HarfBuzz ICU Ropes Wikipedia summary original paper “log n operation”, or O(log n) Big O...2016-06-2500 minNew RustaceanNew Rustaceane015: Not dumb pointersBox, String, Vec, Rc, and Arc have this in common: they’re not dumb. This episode, we take a close look at smart pointer types—from a few we’ve already talked about, like Box, Vec, and String, to some new ones, like Rc and Arc. What smart pointers are, and what makes them ‘smart’. Why we want or need smart pointers. A bit about Box. A lot more about Rc and Arc. Links RustConf Rust Belt Rust Conference sessions Rusty Radio feed Rust Exercism track All exercism language tracks Sponsors Aleksey Pirogov Ch...2016-06-1800 minNew RustaceanNew RustaceanNews 1: One year and countingA year in, Rust is changing fast but still stable. Links Rust 1.9 blog post release notes LLVM Projects built with LLVM Wikipedia discussion MIR blog post play.rust-lang.org – note the MIR button! Two enhancements enabled by MIR: Non-zeroing dynamic drop RFC pull request and discussion Issue 811: “Non-lexical borrow scopes and better treatment of nested method calls” Cargo blog post rustup blog post install from rustup.rs Sponsors Aleksey Pirogov Chris Palmer Daniel Collin Derek Morr Hamza Sheikh Lachlan Collins Leif Arne Storset Luca Schmid Micael Bergeron Pascal Hertleif Ralph Giles (“rillian”) Ralph “FriarTech” Loizzo reddrag...2016-05-3100 minNew RustaceanNew RustaceanBonus 5: Better than open-source contributionsSome things matter more than contributing to open-source software in your free time. A lot more. It’s trendy to ask for open-source work as evidence of your interest in tech and commitment to software development. Trendy and completely wrong. Companies should not demand open-source contributions from their employees, and beyond that, should learn to recognize that profit is not the most valuable thing in the world. People are. Links Xi editor Rust survey Expecting people to do open-source work Python Testing 18: Testing in Startups and Hiring Software Engineers with Joe Stump Tweet about it by...2016-05-1000 minNew RustaceanNew Rustaceane014: Stringing things alongStrings &strs and Vecs and slices (and Unicode) – oh, my! Notes This episode, I take a deep dive on strings in Rust, looking at the differences between String and &str, discussing Unicode a bit, and then expanding the discussion to think about how these types relate to the types they’re built on (like Vec). Links Strings: The Rust Book Rust by Example str docs: module primitive type String module type definition Dereferencing coercions std::ops::Deref Sponsors Aleksey Pirogov Chris Palmer Derek Morr Hamza Sheikh Lachlan Collins Leif...2016-04-2600 minNew RustaceanNew RustaceanBonus 4: We can have nice thingsJust how good Rust is, and how you can learn it even if you’re busy. Notes Sometimes life goes crazy and I don’t have time to do all the technical writing required for a full episode, but I can’t get Rust off my mind, so I record an episode like this one. Where I talk a bit about how versatile Rust is and suggest some surprising ways you might be able to use it. Links Rust 1.8 blog post Fake build tool in F♯ HackerNews on Rust 1.8 Someone using it for pers...2016-04-1900 minNew RustaceanNew Rustaceane013: Staying aliveReasoning about and using lifetimes in Rust (and why we need them) Notes Lifetimes are our way of reasoning about how long a given piece of data is available and safe to use in Rust. The reason we don't have the dangling pointer problem is that we do have lifetimes instead. They're not magic, they're just a bit of semantics and syntax that let us specify the rules for how long any given item lives, and how long references to data must be valid. Links Diesel Tutorial API...2016-04-0500 minNew RustaceanNew Rustaceane012: I'm not familiar with that expressionWhat it means to be an expression-oriented language, and how that works out in Rust. Notes Rust is an expression-oriented language. What does that mean, and how does it play out in Rust? We look at if and match blocks, discuss looping constructs, and examine functions, and then widen out to discuss how having an expression-oriented language can change the way we think about programming. Links Redox Servo alpha announcement WebRender Wired article on Dropbox Rust documentation on expression-oriented-ness: Rust Book Rust by Example Rust Reference Removing Rust ternary Digits of pi...2016-03-2100 minNew RustaceanNew Rustaceane011: Once Upon a TypeType systems: strong vs. weak, dynamic vs. static, and degrees of expressivity. Notes Talking about type systems! A broad and wide-ranging discussion about type systems in general, with specific examples from languages like PHP, JavaScript, Python, C, C++, Java, C♯, Haskell, and Rust! What is a type system? What are the kinds of things we get out of type systems? What are the tradeoffs with different type systems? What is Rust’s type system like? What is especially attractive about Rust’s type system? A comment on the C integer/character string addition exampl...2016-03-0800 minNew RustaceanNew RustaceanInterview 1::Part 2 – Sean GriffinSean Griffin on type systems and hopes for Rust's future Notes Chris chats with Sean Griffin about the tradeoffs between mental overhead and type safety, the expressiveness of different type systems, and some of the places where Rust currently falls down. Corrigenda Sean noted he could be wrong about IEnumerable<T> not having a Sum method in C♯, and post-show research indicated that he was (it's possible it was added after he had stopped doing .NET work, of course). See the documentation for details on how IEnumerable<T>...2016-02-2500 minNew RustaceanNew RustaceanInterview 1::Part 1 – Sean GriffinSean Griffin on Rust, ORMs, and Web Frameworks Notes Chris chats with Sean Griffin about his programming background and initial experience with Rust, Rust's appeal, and what he's doing with Diesel and some of his plans for a new web framework in Rust. Links Ruby on Rails Active Record Diesel GitHub Gitter The Bike Shed episodes which include talk of Rust and Diesel 51: Is Sim City Still Running (with Steve Klabnik) 49: A More Practical Haskell 48: Is Everyone Trying Their Best? 46: Don't Breath, Save the Planet 44: It Won't Crash... It Might Crash 39: Okay...2016-02-1500 minNew RustaceanNew RustaceanBonus 3: Building as a communityCommunity is one of the most important parts of a programming language community, or indeed any technical community. In this episode, I talk a bit about what happens when you don't have a good community, how Rust's community has done well so far, and then how to keep building a good community and how to build good things as a community. Sponsors Aleksey Pirogov Chris Palmer Derek Morr Hamza Sheikh Luca Schmid Micael Bergeron Ralph Giles (“rillian”) reddraggone9 William Roe Become a sponsor Patreon Venmo Dwolla Cash.me Follow New Rustacean: Twitter: @newr...2016-02-0100 minNew RustaceanNew Rustaceane010: Macros rule!Macros rule! NotesBecause of the way macros are exported—before name resolution on crates occurs—the documentation for the macros defined in the source for this episode occurs in the Macros section of the show_notes crate documentation, rather than within the documentation for this module. (See the Rust Book discussion of documenting macros for details.) Even so, the source is still in this module; see the implementations for details. Links Rust book: Macros Rust by Example: Macros Rust reference: Macros “Macro by Example” (original paper) Nick Cameron: Macros Macros in Rust Part 1...2016-01-1800 minNew RustaceanNew Rustaceane009: Composing a Rustic tuneNotes Last time, we looked at generics and traits at a high level. This time, we dig deeper on traits, looking specifically at std::iter::Iterator as an example of a powerful trait that can be composed across types, and then at how we might compose multiple traits on a single type. We also talk about the syntax for traits, the use of marker traits, some of the things you can’t presently do with traits, and even just a smidge about the future of traits in Rust. All that in less than 20 minutes! ...2016-01-0900 minNew RustaceanNew Rustaceane008: Just like something elseNotes In this episode we cover—at a very high level—two more fundamental concepts in Rust programming: generics and traits. Generics gives us the abilitty to write types and functions which can be used with more than one type. Traits give us the ability to specify behavior which can be implemented for more than one type. The combination gives us powerful tools for higher-level programming constructs in Rust. Comments on source code Now that we have a handle on how tests work, we’ll use them to validate the behavior of our...2015-12-2700 minWinning SlowlyWinning Slowly3.14: Smorgasbord, Part IWe start wrapping up Season 3, tackling five topics that one or the other of us wanted to talk about but couldn’t get the other one all that excited about, or which we didn’t feel like we had enough to say yet: venture capitalism (both of us) online classes (Stephen) the ethics of algorithms (Chris) tracking people at work (Stephen) transparency in business (Chris) Links Venture capitalism article on Wikipedia Insightful piece by Ben Thompson at Stratechery: “Venture Capital and the Internet’s Impact” “Democratizing celebrity styling: Uber for your hair has arrived” Algorithms failing: “Keep Calm and Ra...2015-10-2730 minWinning SlowlyWinning Slowly3.06: SPACE!We geek, we gush, and we even manage to say a few serious things about the future of humanity while talking about New Horizons, Rosetta, science fiction, nation-state rivalries, and how we would love to go visit other places in the solar system (or galaxy). Errata: Chris said New Frontiers was an ESA probe; it was in fact a NASA probe. He was thinking of Rosetta, an ESA project to land on a comet—which they did, after the greatest gravity boost sequence in history: Slingshot this!Note: yep, those are children fussing in the ba...2015-08-2527 minWinning SlowlyWinning Slowly3.05: You Have Agency. Use It.Blogging is not what it was in 2008. It has changed in some ways for the better, in some ways for the worse, and in a few ways that it’s hard to tell. Picking up from an Iranian blogger, Hossein Derakhshan, who was jailed for his political views in 2008, we take a look at hyperlinking, the stream, and personal agency. How can we keep the good of the blog world of 2008 and the good of the stream? Links “The Web We Have to Save” (Hossein Derakhshan) His follow-up on the response “The End of Surfing” (Chris Krycho) “79 These on Tec...2015-08-1828 minWinning SlowlyWinning Slowly3.02: The Ad-Driven Web, Part IIIn which we continue our conversation from 3.01, turning our attention from the system issues which led to the modern state of the web to what we ought to do about it—as consumers of content, as producers of content, and even as advertisers. Links Quartz: “Over one-fifth of people use ad-blocking software—and it’s beginning to hurt” Ad blocking: AdBlock Plus—associated with some not-so-savory practices, including letting advertisers buy their way onto a white list. μBlock: aiming to be super light-weight, and no shenanigans about letting advertisers buy exceptions. Two variants: μBlock μBlock Origin—the bloc...2015-07-2830 minWinning SlowlyWinning Slowly2.15: MetapodcastingShow NotesChris and Stephen reflect on Season 2: what did we talk about, what have we learned, why do we take breaks, and what changes can you expect for Season 3? For that matter, when is Season 3 coming? And what in the world is the difference between a “series” and a “season” anyway? Before You Go Patreon—it’s a thing; we’ll be doing it. Keep an eye out. Music “Enanthropoisis” by Chris Krycho. Permission granted to remix! Seriously. It’s Creative Commons Attribution licensed, just like all of our content on this show. “Winning Slowl...2015-05-1224 minWinning SlowlyWinning Slowly2.14: Starbucks UniversityShow NotesChris and Stephen take three recent articles about the super-structure of how our society pays for college and scrutinize the issue. How does American society value what college delivers? (What does it deliver?) How do we fund it? Should we fund it? We take the time not just to ponder, but to celebrate an unlikely organization that’s doing some incredibly innovative moves in the space. Also Stephen inadvertently insults a whole group of people. Sorry about that. Before You Go “The Brutality of Police Culture in Baltimore” by Conor Friedersdorf “Orioles VP Angelos...2015-05-0531 minWinning SlowlyWinning Slowly2.10: So You’ve Been HackedShow NotesChris and Stephen use the news of communications tool Slack’s recent hacking incident to discuss the nature of digital security. Along the way we make a plea for candy, claim that almost all companies are digital companies now, offer some security tips to our listeners, and deliver a long bloopers reel. We hope we induce just enough paranoia to get things moving in your security life, but not too much. Before You Go These maps show why internet is way more expensive in the US than Europe by Allan Holmes and Chris Zu...2015-04-0731 minWinning SlowlyWinning Slowly2.09: Hi, We’re the InternetShow NotesChris and Stephen use Chris’s first two ridesharing experiences as a jumping-off point to discuss services like Uber and Lyft from a host of angles: ethical, financial, technological, social, legal, and personal. Put on your seatbelts, folks: this one’s a long one. Note: Chris told the drivers of his Lyft and Uber rides that he was going to talk about his experience on this podcast, and they agreed to talk with him. Before You Go NC State: PKP brothers must vacate house by the weekend by Ken Smith, Mark Simpson, Stan...2015-04-0331 minWinning SlowlyWinning Slowly2.05: Beauty-MakingShow Notes In which we ask: What exactly is art? Specifically, is photography art? But more generally, can anyone actually define art? How does the difficulty in defining art affect the makers of art, and why do people spend so much time trying to draw lines around it? How have democratizing forces changed the nature of art in the last few decades, and what does that bode for our future? Before You Go N.B. In addition to the clarifications Stephen offered, we should note that Chris’ initial description overstated the case a bi...2015-02-2431 minWinning SlowlyWinning Slowly1.13: Hello Ello?Show NotesIn which we talk about new social media player Ello—some initial impressions, venture capital’s influence in Silicon Valley and its distinctive shape there vs. elsewhere, and thoughts on business model and communication. Chapters Intro (0:44) Definitely Still a Beta (0:44–5:27) That’s Not a Gift (5:27–14:02) How People React to News (14:02–22:32) A Working Business Model (22:32–28:32) Conclusion (28:32–30:04) Outtake (30:04–30:10) Music “Aldebaran Serpent” from Tower by Falcon Arrow. Used by permission. (Isn’t that album art fantastic?) “Winning Slowly Theme” by Chris Krycho. We asked him for permission, and he said “Yes.” Links Things we talked about on the...2014-10-1430 minWinning SlowlyWinning Slowly1.06: Rebuke Me Some PeopleShow NotesIn which we discuss the necessity of extending charity to each other in our conversations, especially conversations on controversial issues. Springboarding from public/internet reactions to Christian musician Michael Gungor’s discussion of his views on Genesis, we talk about the necessity of charity, Chris’ Rules for Argument, the importance of taking a long-term view on friendship and persuasion, and what to do in the face of serious disagreement about important issues. Chapters Intro (2:06) Act Like Grownups (2:06–6:15) Rules 0 and 1 (6:15–15:55) But We Still Disagree (15:55–23:58) Calling People on the Carpet (23:58–30:50) Conclusion (30:50–31:45) Music “Perfect World”, from I...2014-08-1931 min