Python in Elixir Apps with Victor Björklund

Python in Elixir Apps with Victor Björklund

Released Thursday, 31st July 2025
Good episode? Give it some love!
Python in Elixir Apps with Victor Björklund

Python in Elixir Apps with Victor Björklund

Python in Elixir Apps with Victor Björklund

Python in Elixir Apps with Victor Björklund

Thursday, 31st July 2025
Good episode? Give it some love!
Rate Episode
List

In this episode, Elixir Wizard Charles Suggs sits down with Victor Björklund to map out the landscape of Python integration in Elixir applications. From HTTP APIs and external services to embedded runtimes like ErlPort, PythonX, and the Venomous library, we evaluate each approach’s impact on performance, coupling, and developer experience. Victor draws on real-world examples like Scrapy-based web scraping and the Swedish BankID authentication to illustrate best practices for error handling, process pooling, and effective telemetry across the BEAM boundary.We also tackle the practical side of deployment: packaging Python dependencies in Mix releases, mocking Python calls in tests, and deploying multi-language apps with confidence. Wrapping up, Victor shares his wishlist for even tighter interop (think multiple Python interpreter instances per VM) and offers low-risk entry points, like automating monthly reports, for teams ready to explore the power of Python’s ecosystem within Elixir.Key topics discussed in this episode:Integration methods: HTTP APIs, ports, ErlPort, PythonX, VenomousPerformance vs. coupling trade-offs across interop patternsManaging the Global Interpreter Lock (GIL) with process poolsLeveraging mature Python libraries (Scrapy, BankID, etc.)Error handling strategies across BEAM↔Python boundariesTesting mixed-language systems: mocks and integration testsPackaging and deploying Python alongside Elixir releasesMonitoring and telemetry for multi-language pipelinesFunctional programming advantages in Elixir workflowsTool selection guidance by project requirementsFuture possibilities: multiple Python interpreters in one VMCommunity resources for Python–Elixir interop helpLinks mentioned:jawdropping.iohttps://cplusplus.com/ https://www.python.org/https://react.dev/https://nodejs.org/enhttps://erlport.org/https://hexdocs.pm/pythonx/Pythonx.htmlhttps://pyrlang.github.io/Pyrlang/Python GIL (Global Interpreter Lock): https://realpython.com/python-gil/https://github.com/devinus/poolboyhttps://hexdocs.pm/venomous/Venomous.htmlTry-catch https://syntaxdb.com/ref/python/try-catchhttps://www.scrapy.org/https://www.bankid.com/en/https://www.phoenixframework.org/https://www.tzeyiing.com/posts/using-a-hunky-poolboy-to-manage-your-python-erlport-processes-in-elixir/https://medium.com/stuart-engineering/how-we-use-python-within-elixir-486eb4d266f9https://x.com/bjorklundvictorhttps://victorbjorklund.com/https://www.linkedin.com/in/victorbjorklund/hello@victorbjorklund.com

Show More