Elixir Wizards

Python in Elixir Apps with Victor Björklund


Listen Later

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, Venomous
  • Performance vs. coupling trade-offs across interop patterns
  • Managing the Global Interpreter Lock (GIL) with process pools
  • Leveraging mature Python libraries (Scrapy, BankID, etc.)
  • Error handling strategies across BEAM↔Python boundaries
  • Testing mixed-language systems: mocks and integration tests
  • Packaging and deploying Python alongside Elixir releases
  • Monitoring and telemetry for multi-language pipelines
  • Functional programming advantages in Elixir workflows
  • Tool selection guidance by project requirements
  • Future possibilities: multiple Python interpreters in one VM
  • Community resources for Python–Elixir interop help
  • Links mentioned:

    jawdropping.io

    https://cplusplus.com/
    https://www.python.org/
    https://react.dev/
    https://nodejs.org/en
    https://erlport.org/
    https://hexdocs.pm/pythonx/Pythonx.html
    https://pyrlang.github.io/Pyrlang/
    Python GIL (Global Interpreter Lock): https://realpython.com/python-gil/
    https://github.com/devinus/poolboy
    https://hexdocs.pm/venomous/Venomous.html
    Try-catch https://syntaxdb.com/ref/python/try-catch
    https://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-486eb4d266f9
    https://x.com/bjorklundvictor
    https://victorbjorklund.com/
    https://www.linkedin.com/in/victorbjorklund/
    ...more
    View all episodesView all episodes
    Download on the App Store

    Elixir WizardsBy SmartLogic LLC

    • 4.9
    • 4.9
    • 4.9
    • 4.9
    • 4.9

    4.9

    22 ratings


    More shows like Elixir Wizards

    View all
    Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

    Software Engineering Radio - the podcast for professional software developers

    271 Listeners

    The Changelog: Software Development, Open Source by Changelog Media

    The Changelog: Software Development, Open Source

    283 Listeners

    Talk Python To Me by Michael Kennedy

    Talk Python To Me

    584 Listeners

    Software Engineering Daily by Software Engineering Daily

    Software Engineering Daily

    626 Listeners

    Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

    Syntax - Tasty Web Development Treats

    987 Listeners

    REWORK by 37signals

    REWORK

    211 Listeners

    CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

    CoRecursive: Coding Stories

    189 Listeners

    Elixir Outlaws by Elixir Outlaws

    Elixir Outlaws

    24 Listeners

    Elixir Mix by Charles M Wood

    Elixir Mix

    13 Listeners

    Thinking Elixir Podcast by ThinkingElixir.com

    Thinking Elixir Podcast

    32 Listeners

    Beam Radio by Lars Wikman

    Beam Radio

    11 Listeners

    Software Unscripted by Richard Feldman

    Software Unscripted

    26 Listeners

    Oxide and Friends by Oxide Computer Company

    Oxide and Friends

    58 Listeners

    Elixir Mentor by Jacob Luetzow

    Elixir Mentor

    2 Listeners

    The Pragmatic Engineer by Gergely Orosz

    The Pragmatic Engineer

    62 Listeners