

Self-Directed Research
OneVariable GmbH
This is the Self-Directed Research Podcast! Our hosts, James and Amos, host hyper focused technical deep dives
Visit sdr-podcast.com/ for more information about the podcast, check out all episodes and learn about who we are and how to support us!
Questions, comments, interested in sponsoring? Send an email to contact@sdr-podcast.com
Visit sdr-podcast.com/ for more information about the podcast, check out all episodes and learn about who we are and how to support us!
Questions, comments, interested in sponsoring? Send an email to contact@sdr-podcast.com
Episodes
Mentioned books

12 snips
May 28, 2025 • 27min
Proxying is just dumb routing
James and Amos dive into the fascinating world of routing and proxying, simplifying complex networking concepts. They tackle the roles of DNS and BGP in navigating internet intricacies. A unique take on building computing systems with salvaged technology sparks creativity. The importance of reverse proxies in web development shines through, enhancing performance and security. Optimizing message protocol design and data encoding for efficiency rounds out the conversation, along with a look at build acceleration to supercharge development timelines.

10 snips
Dec 11, 2024 • 43min
The Embedded Buddy System
James shares why you might want to design embedded systems as a network of devices, instead of trying to cram everything into a single chip
Visit sdr-podcast.com/the-embedded-buddy-system to see the show notes and transcript!
**Sponsor:** Poststation, a tool from OneVariable that makes it easy to set up communication between your desktop, laptop, or an embedded Linux system, to as a many connected microcontrollers as you need.
If you're a company building a product around multiple devices, and would like to have all of the "plumbing", tooling, and device management handled out of the box, send us an email to contact@onevariable.com for early access.

Dec 4, 2024 • 48min
Merde is not Serde
In a rare direct follow-up episode, Amos shares an even differenter take on Serde, this time focusing on the kind of needs a server would have when handling data. Spoiler: Yes, merde means poop in French.
Visit sdr-podcast.com/episodes/merde-is-not-serde/ to see the show notes and transcript!
CodeCrafters is a service for learning programming skills by doing. Visit our referral link at CodeCrafters to start your free trial. If you decide to upgrade, you'll get a discount and a portion of the sale will support this podcast.

Nov 27, 2024 • 41min
A different serde
A bit about how serde works well, a bit about how serde doesn't work well, and a bit about a different, questionable way of doing things
Visit sdr-podcast.com/episodes/a-different-serde/ to see the show notes and transcript!
CodeCrafters is a service for learning programming skills by doing. Visit our referral link at CodeCrafters to start your free trial. If you decide to upgrade, you'll get a discount and a portion of the sale will support this podcast.

Nov 20, 2024 • 41min
My home automation journey
Embark on a fascinating journey through the world of home automation. Discover the evolution of Bluetooth and its challenges in connecting smart devices. Delve into the differences between mesh networking and point-to-point connections, focusing on security and privacy. Hear real-life anecdotes about integrating the Philips Hue system and the complexities of DIY projects. Experience the emotional benefits of automation while navigating the humorous pitfalls of technology compatibility. It's a blend of tech insights and personal reflections!

8 snips
Nov 13, 2024 • 37min
Compile Time Crimes
Dive into the world of compile time with creative techniques for managing data schemas and identifiers. Learn how to deduplicate lists to optimize embedded systems, alongside powerful methods for reducing binary sizes in bandwidth-limited environments. Explore the intricacies of Rust programming, comparing its macro capabilities to other languages and tackling challenges in memory safety. Discover how modern microcontrollers have evolved to handle complex tasks, making them essential in today’s tech landscape.

Nov 6, 2024 • 39min
Target triples
Dive into the fascinating world of Target Triples, where humor and nostalgia blend with tech talk. Learn about CPU architectures and the evolution of Apple's Darwin kernel. Discover the rise of China's Loongson processors and their impact on the semiconductor landscape. Explore Google's Fuchsia OS and its implications for modern devices. Delve into ABI design and the nuances of float targets, revealing the challenges of programming across various platforms. Enjoy a witty exploration of programming technology's evolution!

Oct 30, 2024 • 34min
What good is partial understanding?
The discussion dives into the complexities of partial understanding in machine communication. It highlights the importance of self-describing formats for clearer data exchange and touches on the challenges of varying protocols. Hiram's rule is examined, showcasing user reliance on informal patterns in APIs. The podcast also navigates data parsing between languages like C and Rust, emphasizing type safety and error management. Unique message handling techniques through postcard RPC are explored, alongside the critical role of data normalization in transitioning from XML to JSON.

Oct 23, 2024 • 30min
Things you might not have known about clipboards
Dive into the quirky world of clipboards and their unexpected history! Discover how clipboard functionalities have evolved from early computing to today's diverse operating systems. Explore the challenges posed by Rich Text Format and differing browser behaviors. Unravel the complexities faced by web developers in code highlighting and clipboard usage. Plus, hear a charming story about a dedicated developer on a mission to fix clipboard bugs. It's a light-hearted journey through the unseen intricacies of a common tool!

Oct 16, 2024 • 22min
Async Allocators
Dive into the intriguing world of asynchronous allocators and their implications in programming, especially with Rust. Unpack the complexities of memory management and the challenges it poses across different systems. Explore the stark contrasts between server scalability and embedded system constraints. Discover innovative solutions for async memory management and how future language designs might prioritize compile-time safety checks, enhancing both efficiency and code usability.