Jon's Miscellany Podcast

August 2020 Q&A

Posted Sat, 08 Aug 2020 19:00:42 +0000Video on YouTube

Questions and answers session from August, 2020.

Timestamps

  • [@00:00:00] Introduction
  • [@00:02:38] Your shell prompt?
  • [@00:02:56] Swift vs Rust?
  • [@00:03:31] Understanding difficult concepts
  • [@00:03:56] Is Rust too complex?
  • [@00:05:04] Dvorak and Colemak
  • [@00:05:26] GPT-3
  • [@00:07:10] Higher-ranked trait bounds
  • [@00:07:54] Protocol parsers
  • [@00:09:09] GPU programming
  • [@00:10:46] Haskell
  • [@00:11:08] Why Rust over C++/C?
  • [@00:12:26] Master’s thesis
  • [@00:13:13] tokio/async-std
  • [@00:15:26] Debuggers
  • [@00:15:42] Data structures and algorithms
  • [@00:16:05] Working before going back to school
  • [@00:16:18] Object-oriented programming
  • [@00:16:55] Crate review streams
  • [@00:17:25] How did you pick your area?
  • [@00:18:17] WebAssembly
  • [@00:18:44] Plans after graduating?
  • [@00:19:23] Macros over generics?
  • [@00:20:02] Competitive programming
  • [@00:20:37] Reading papers on screens
  • [@00:21:40] Coolest upcoming feature
  • [@00:23:41] Ethics in ML
  • [@00:25:03] Is Rust general-purpose?
  • [@00:26:17] Rust networking
  • [@00:26:40] C++ vs Go
  • [@00:27:14] Second favorite language
  • [@00:27:55] Fiction and “faction”
  • [@00:28:13] Musical instruments
  • [@00:28:48] Formal languages
  • [@00:30:01] Distributed systems stream
  • [@00:30:20] Favorite flavor of bagel
  • [@00:30:42] Handling millions of connections
  • [@00:32:17] Is higher education necessary?
  • [@00:33:28] Self-referential structs
  • [@00:34:13] SIMD in Noria
  • [@00:34:45] The tracing crate
  • [@00:35:32] Game development
  • [@00:36:35] Beautiful CS ideas
  • [@00:37:51] When do you graduate?
  • [@00:38:22] Pronouncing your name
  • [@00:38:43] Memory orderings
  • [@00:39:34] When did you start with Rust?
  • [@00:39:55] What do you use for drawing?
  • [@00:40:18] Crust of Rust Schedule
  • [@00:40:36] “Rewrite in Rust” memes
  • [@00:42:18] Developing a database
  • [@00:42:55] Is Big Tech too big?
  • [@00:44:07] async fn in traits
  • [@00:45:32] Functional programming
  • [@00:45:43] Blockchains
  • [@00:46:22] Favorite Rust crate
  • [@00:46:42] Recommended CS Books
  • [@00:48:41] Quantum computing
  • [@00:49:05] Do you play video games?
  • [@00:50:32] Getting into MIT
  • [@00:51:08] Thank for the thank yous!
  • [@00:51:45] Streaming topics
  • [@00:52:15] What YouTubers do you watch?
  • [@00:54:20] Providing async and sync APIs
  • [@00:54:48] Next steps for Noria
  • [@00:56:13] Moving to LA
  • [@00:56:55] Advice to Rust beginners
  • [@00:57:24] Being good at maths
  • [@00:58:00] Your next job?
  • [@00:58:11] Imposter syndrome
  • [@00:59:27] “jonhoo”
  • [@00:59:47] Publishing to graduate
  • [@01:00:08] Low-level resources
  • [@01:01:15] Memory ordering stream
  • [@01:01:27] Rust over Go
  • [@01:01:45] Debugging distributed code
  • [@01:03:31] Covariance
  • [@01:04:14] Garbage collection
  • [@01:04:59] Web development in Rust
  • [@01:05:20] Lifetimes in other languages
  • [@01:06:14] Things in Rust you dislike
  • [@01:07:36] Missing Rust libraries
  • [@01:09:20] Learning async/await
  • [@01:09:55] Background before college
  • [@01:10:30] Favorite board game
  • [@01:11:16] Standardized testing
  • [@01:12:26] Other ways to learn Rust
  • [@01:13:06] Working as a student
  • [@01:13:46] Noria in production
  • [@01:14:05] Publishing your first crate
  • [@01:14:25] Working with Malte
  • [@01:14:52] Maths in CS
  • [@01:15:14] Teaching computer science
  • [@01:16:35] Favorite animal
  • [@01:17:04] How did you choose your lab?
  • [@01:17:58] Writing good documentation
  • [@01:19:26] What is Covariance?
  • [@01:19:57] What’s for dinner?
  • [@01:20:11] RISC-V
  • [@01:20:32] Epoch-based GC
  • [@01:21:30] actix
  • [@01:21:49] From ML to HPC
  • [@01:22:11] Red flags for Rust FFI
  • [@01:23:46] Implementing a protocol
  • [@01:24:02] Fully understanding Rust
  • [@01:24:43] Can you make a Rust course?
  • [@01:25:09] Windows window managers
  • [@01:25:55] Documentation in LaTeX
  • [@01:26:24] Finding good papers
  • [@01:27:15] Lack of motivation
  • [@01:29:11] C and MPI
  • [@01:30:05] Rust and maths
  • [@01:30:38] if let chains
  • [@01:31:08] More FFI red flags
  • [@01:31:30] Learning GPU in Rust
  • [@01:32:06] Laptop recommendations
  • [@01:32:33] PC specifications
  • [@01:33:13] Time management
  • [@01:34:36] Teaching with Rust
  • [@01:35:30] Big CS conferences?
  • [@01:36:19] Rust for ML
  • [@01:37:53] AsyncDrop
  • [@01:39:49] Missing Semester class
  • [@01:40:25] Better docs than rustdoc
  • [@01:40:48] Dotfiles on GitHub
  • [@01:41:37] What to work on?
  • [@01:42:39] Pi vs Tau
  • [@01:43:05] Solution you’re proud of
  • [@01:44:00] Favorite restaurant
  • [@01:44:36] The insight of Pin
  • [@01:45:06] More streams like this?
  • [@01:45:17] Embedded Rust
  • [@01:45:28] Distributed systems resources
  • [@01:46:08] Code style and rustfmt
  • [@01:48:01] Grad school opportunity cost
  • [@01:50:03] Stagnated rustc PR
  • [@01:50:59] Non-programming hobbies
  • [@01:52:11] Rust in 10 years
  • [@01:53:24] Wayland in OBS
  • [@01:54:03] npm_modules vs Rust crates
  • [@01:55:44] Dark-mode GitHub
  • [@01:56:31] Advice to an 18-year old
  • [@01:57:14] Arguing for Rust adoption
  • [@01:59:00] What do you wish you knew before PhD
  • [@02:00:07] Small Rust crates you like
  • [@02:00:32] Getting started with Rust OSS
  • [@02:00:48] Taking notes
  • [@02:01:40] WSL2
  • [@02:02:22] Rust as an introductory language
  • [@02:03:13] CS electives at university
  • [@02:04:07] Breaking into Rust jobs
  • [@02:04:33] What would you change in Rust?
  • [@02:05:40] What drew you to Rust?
  • [@02:06:07] Which Linux distro?
  • [@02:06:27] Industries that benefit from Rust
  • [@02:07:38] DuckDuckGo
  • [@02:07:58] Plotting
  • [@02:09:00] Favorite dessert
  • [@02:09:30] Exciting nightly features
  • [@02:10:28] Programming beverage
  • [@02:10:57] Made it to the end