

Software Unscripted
Richard Feldman
Software Unscripted, A weekly podcast of casual conversations about code hosted by Richard Feldman. Hosted on Acast. See acast.com/privacy for more information.
Episodes
Mentioned books

Jan 25, 2024 • 45min
Lambda Set Defunctionalization with Ayaz Hafiz
Richard talks with Ayaz Hafiz, a contributor to the Roc programming language, about lambda set defunctionalization. They discuss the challenges of implementing a compiler with a non-trivial type system and the benefits of defunctionalization in optimization and better inlining. They also explore Rock's abilities and the importance of early tooling in specific implementations. Lastly, they delve into the challenges of implementing a modern morphization algorithm for land assets.

Jan 23, 2024 • 48min
Implementing Databases with Glauber Costa
Glauber Costa, expert in implementing high-performance databases, discusses how hardware changes impact the tradeoffs between relational and NoSQL databases. They also talk about big data, file APIs, hardware constraints, comparing hash maps and linear searches, designing a watch mode for a compiler, and advances in storage strategies like learn indexes.

8 snips
Jan 15, 2024 • 1h 9min
The Return of Hypermedia with Carson Gross
Carson Gross, Creator of HTMX, discusses the regression in modern web development, the resurgence of hypermedia with HTMX, the benefits of combining MPAs and SPAs, the improvement and benefits of static typing, simplifying web applications with hypermedia and HTMLX, performance implications of code sharing, the role of JavaScript and TypeScript, re-examining progress in web development, and the potential of computers in web development.

Jan 6, 2024 • 1h 15min
Go and Functional Programming with Lane Wagner
Lane Wagner, Go backend engineer and founder of boot.dev, discusses Go's design and functional programming. Topics include the debate between tabs and spaces for indentation, advantages of functional programming languages, hierarchy of functions in functional programming, rock's concurrency story, breaking protocol and debugging in programming, function purity and IO operations in functional programming, Cgo, static compilation, and hot code loading in Go, and stateful IO in functional programming.

Dec 29, 2023 • 1h 8min
The Roc Programming Language with Richard Feldman
Richard Feldman, developer of the Roc programming language, discusses the language's inspiration and the challenges of using floats in data structures. They explore tag unions in Roc dictionaries and opportunistic mutation. The podcast also touches on the challenges of sorting and computing the median in functional programming, and the influences on Roc from languages like Elm, Rust, Haskell, and CoffeeScript.

Dec 10, 2023 • 1h 9min
Making JITted Code Faster with Chris Nuernberger
Chris Nuernberger, experienced in making code run faster in the context of the JVM and optimizing C++ code, discusses optimizing code in V8 and the JVM, automatic parallelization, Haskell's success as a language, language design choices in rock, challenges of incorporating dynamic libraries in the rock compiler, and the appeal of having everything in one language.

26 snips
Dec 1, 2023 • 2h 7min
Things Web Devs Can Learn from Game Devs with Casey Muratori
Richard talks with Casey Muratori, game engine programmer and creator of the term Immediate Mode GUIs, about performance and programming culture, memory safety's impact on program architecture, and lessons for web development from game development, including improvements to CSS and different approaches to front-end development.

Nov 26, 2023 • 1h 13min
How Programming has Changed with Conor Hoekstra
Conor Hoekstra, expert in programming languages, discusses the sustained success of programming languages, the rarity of big tech companies adopting new languages, the evolution of programming from ones and zeros to prompt engineering, challenges of using AI editing services, the future of programming and job opportunities, a comparison of Python, Rust, and C++, and exploring the benefits and annoyances of co-pilot in programming.

Nov 18, 2023 • 49min
Escaping Software Disenchantment with Nikita Prokopov
Nikita Prokopov, open-source Clojure developer and creator of the Fira Code typeface, discusses software disenchantment, Rust programming language, balancing developer ergonomics and performance, optimizing a parser, challenges of upgrading software libraries, impact of complexity on development, and personal preferences in software culture.

16 snips
Nov 6, 2023 • 50min
WebAssembly in Practice with Brian Carroll
Richard interviews Brian Carroll, an expert in using WebAssembly in practice. They discuss the benefits and challenges of WebAssembly, its slow adoption, and its potential to replace JavaScript. They also explore the drawbacks of using Electron for app development and the efficiency of web browsers as a software delivery platform. The podcast compares WebAssembly and JavaScript, highlighting when to use each and discussing their advantages and performance differences. Additionally, they delve into the variations in SIMD instructions targeting specific architectures and the limitations of WebAssembly for front-end development. The podcast concludes with speculation about widespread adoption and the potential for WebAssembly to replace JavaScript in building applications.


