{"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":"Explorer: Data Frames in Elixir with Chris Grainger","slug":"explorer-data-frames-in-elixir-with-chris-grainger","published_at":"2025-07-24T10:30:00+00:00","page_url":"https://stenobird.com/podcast/elixir-wizards/explorer-data-frames-in-elixir-with-chris-grainger","show_page_url":"https://stenobird.com/podcast/elixir-wizards","url":"https://smartlogic.fireside.fm/s14-e09-explore-data-frames-elixir","audio_url":"https://aphid.fireside.fm/d/1437767933/03a50f66-dc5e-4da4-ab6e-31895b6d4c9e/6042bbd7-5491-4ee9-b080-8b1c58a270e6.mp3","summary":"Explorer brings the powerful data-frame workflows of R's dplyr and Python's pandas directly into the Elixir ecosystem. By leveraging Polars and Rust NIFs, it enables high-performance, lazy, and distributed data manipulation on the BEAM.","meta_description":"Learn how Explorer brings Polars-powered data frames, lazy evaluation, and seamless Nx integration to Elixir for end-to-end data pipelines.","key_points":["Main idea: Explorer implements tidy data principles in Elixir using Polars for high-performance data manipulation","Practical takeaway: Use lazy evaluation to build optimized query plans that minimize memory usage and avoid eager evaluation overhead","Technical advantage: Seamless interoperability between Explorer and Nx via the Nx container protocol allows zero-copy tensor operations","Failure mode: Be cautious with distributed data frames, as complex operations like distributed joins are not yet supported","Practical takeaway: Integrate Explorer with Ecto and LiveView to build interactive, real-time data dashboards and ETL pipelines"],"chapters":[{"start_ms":60000,"title":"Introduction to Amplified","summary":"Chris Grainger introduces his work in AI-based knowledge management for intellectual property."},{"start_ms":255000,"title":"Transitioning from R and Python to Elixir","summary":"A discussion on why Elixir's concurrency model and functional nature are ideal for data-heavy applications."},{"start_ms":455000,"title":"The Importance of Tidy Data","summary":"Exploring how the principles of tidy data and the Polars engine inspired the creation of Explorer."},{"start_ms":655000,"title":"Real-world Data Pipelines","summary":"How Explorer integrates with Elasticsearch and other sources to perform aggregations and statistical analysis."},{"start_ms":1030000,"title":"Interoperability with Nx","summary":"Deep dive into how Explorer implements the Nx container protocol for seamless machine learning workflows."},{"start_ms":1210000,"title":"Handling Large Datasets with Lazy Evaluation","summary":"How leveraging Polars' lazy API allows for query optimization and memory-efficient streaming."},{"start_ms":1410000,"title":"Distributed Data Frames","summary":"The current state and limitations of running data operations across multiple nodes in a cluster."}],"topics":["Elixir","Explorer","Polars","Data Frames","Machine Learning","Nx","Rust NIFs","Data Engineering","Tidy Data","BEAM"],"duration_seconds":2575,"processing_state":"processed","actions":[{"name":"request_transcript","method":"POST","url":"https://stenobird.com/v1/public/podcasts/elixir-wizards/episodes/explorer-data-frames-in-elixir-with-chris-grainger/transcription-requests","description":"Idempotently request low-priority transcript generation for this episode."},{"name":"read_markdown","method":"GET","url":"https://stenobird.com/podcast/elixir-wizards/explorer-data-frames-in-elixir-with-chris-grainger.md","description":"Read the agent-friendly Markdown representation of this episode resource."}]}}