{"podcast":{"title":"Elixir Wizards","slug":"elixir-wizards","podcast_index_feed_id":674321,"rss_url":"https://feeds.fireside.fm/smartlogic/rss","website_url":"https://smartlogic.fireside.fm","image_url":"https://media24.fireside.fm/file/fireside-images-2024/podcasts/images/0/03a50f66-dc5e-4da4-ab6e-31895b6d4c9e/cover.jpg?v=3","author":"SmartLogic LLC","episode_count":201,"summary":"Elixir Wizards is an interview-style podcast from SmartLogic featuring conversations with developers, engineers, and industry leaders about the Elixir programming language and the broader software development landscape. Each episode explores how modern systems are built, from distributed architectures and infrastructure to developer workflows, security, and emerging technologies like AI. While rooted in the Elixir ecosystem, the show often branches out to compare approaches across languages, platforms, and disciplines. Whether you’re working in Elixir or just interested in how software is evolving, Elixir Wizards offers practical insights and thoughtful perspectives from the people building today’s systems.","last_synced_at":null,"page_url":"https://stenobird.com/podcast/elixir-wizards"},"episode":{"title":"Zigler: Zig NIFs for Elixir with Isaac Yonemoto","slug":"zigler-zig-nifs-for-elixir-with-isaac-yonemoto","published_at":"2025-05-29T10:00:00+00:00","page_url":"https://stenobird.com/podcast/elixir-wizards/zigler-zig-nifs-for-elixir-with-isaac-yonemoto","show_page_url":"https://stenobird.com/podcast/elixir-wizards","url":"https://smartlogic.fireside.fm/s14-e01-zigler-zig-nifs-for-elixir","audio_url":"https://aphid.fireside.fm/d/1437767933/03a50f66-dc5e-4da4-ab6e-31895b6d4c9e/f9ba6a94-b5b3-4b26-abf3-279ab8a0bad9.mp3","summary":"Explore how Zigler enables high-performance Elixir applications by embedding Zig code directly within Elixir modules. Learn how to leverage Zig's safety and speed for tasks like SIMD-powered LLM acceleration and fault-tolerant hardware interfacing.","meta_description":"Learn how Zigler brings Zig's performance and safety to Elixir through seamless NIF generation, SIMD support, and robust execution modes.","key_points":["Main idea: Zigler automates the complex bridge between Elixir and Zig, allowing for inline Zig code authoring","Practical takeaway: Use 'dirty' or 'threaded' NIF modes to prevent long-running low-level tasks from blocking the Erlang VM","Failure mode: Avoid executing heavy workloads in 'normal' NIF mode if they exceed the one-millisecond threshold to prevent VM instability","Technical advantage: Leverage Zig's compile-time metaprogramming and SIMD capabilities for high-throughput tasks like LLM token selection","Practical takeaway: Implement OTP-style fault tolerance to manage unreliable hardware interfaces through transparent error recovery"],"chapters":[{"start_ms":60000,"title":"Introduction and Life Updates","summary":"Isaac discusses his transition from professional software engineering to launching a biotech startup and his continued use of Elixir for bioinformatics."},{"start_ms":455000,"title":"Zig's Compile-Time Metaprogramming","summary":"An exploration of how Zig handles variables and code execution at compile time to enable powerful low-level abstractions."},{"start_ms":670000,"title":"Managing NIF Execution Modes","summary":"A deep dive into the risks of long-running NIFs and the use of 'dirty' and 'threaded' modes to protect the BEAM."},{"start_ms":1045000,"title":"Type Safety and Low-Level Risks","summary":"Discussing the importance of type checking when passing data between Elixir and Zig to prevent system crashes."},{"start_ms":1240000,"title":"Namespace Management in Zigler","summary":"How Zigler manages C function visibility and module namespaces to prevent polluting the Elixir environment."},{"start_ms":1435000,"title":"Real-World Use Case: LLM Hardware","summary":"How Zigler was used to interface Elixir with custom LLM hardware, providing an OpenAI-compatible API with high reliability."},{"start_ms":1630000,"title":"SIMD and Performance Optimization","summary":"Using Zig to implement high-speed token sorting and filtering for large language models."},{"start_ms":2200000,"title":"Zigler 0.14 and Future Roadmap","summary":"Updates on new OS support for Windows and FreeBSD, and the ongoing commitment to the library's 1.0 release."}],"topics":["Elixir","Zig","Zigler","NIF","LLM","SIMD","Bioinformatics","Low-level programming","BEAM","Hardware acceleration"],"duration_seconds":2580,"processing_state":"processed","actions":[{"name":"request_transcript","method":"POST","url":"https://stenobird.com/v1/public/podcasts/elixir-wizards/episodes/zigler-zig-nifs-for-elixir-with-isaac-yonemoto/transcription-requests","description":"Idempotently request low-priority transcript generation for this episode."},{"name":"read_markdown","method":"GET","url":"https://stenobird.com/podcast/elixir-wizards/zigler-zig-nifs-for-elixir-with-isaac-yonemoto.md","description":"Read the agent-friendly Markdown representation of this episode resource."}]}}