Elixir Wizards

Web Development Frameworks: Elixir and Phoenix vs. Ruby on Rails with Owen Bickford & Dan Ivovich


Listen Later

On today’s episode, Elixir Wizards Owen Bickford and Dan Ivovich compare notes on building web applications with Elixir and the Phoenix Framework versus Ruby on Rails. They discuss the history of both frameworks, key differences in architecture and approach, and deciding which programming language to use when starting a project.

Both Phoenix and Rails are robust frameworks that enable developers to build high-quality web apps—Phoenix leverages functional programming in Elixir and Erlang’s networking for real-time communication. Rails follows object-oriented principles and has a vast ecosystem of plug-ins. For data-heavy CRUD apps, Phoenix's immutable data pipelines provide some advantages.

Developers can build great web apps with either Phoenix or Rails. Phoenix may have a slight edge for new projects based on its functional approach, built-in real-time features like LiveView, and ability to scale efficiently. But, choosing the right tech stack depends heavily on the app's specific requirements and the team's existing skills.

Topics discussed in this episode:
  • History and evolution of Phoenix Framework and Ruby on Rails
  • Default project structure and code organization preferences in each framework
  • Comparing object-oriented vs functional programming paradigms
  • CRUD app development and interaction with databases
  • Live reloading capabilities in Phoenix LiveView vs Rails Turbolinks
  • Leveraging WebSockets for real-time UI updates
  • Testing frameworks like RSpec, Cucumber, Wallaby, and Capybara
  • Dependency management and size of standard libraries
  • Scalability and distribution across nodes
  • Readability and approachability of object-oriented code
  • Immutability and data pipelines in functional programming
  • Types, specs, and static analysis with Dialyzer
  • Monkey patching in Ruby vs extensible core language in Elixir
  • Factors to consider when choosing between frameworks
  • Experience training new developers on Phoenix and Rails
  • Community influences on coding styles
  • Real-world project examples and refactoring approaches
  • Deployment and dev ops differences
  • Popularity and adoption curves of both frameworks
  • Ongoing research into improving Phoenix and Rails
  • Links Mentioned in this Episode:

    SmartLogic.io

    Dan’s LinkedIn
    Owen’s LinkedIn
    Ruby https://www.ruby-lang.org/en/
    Rails https://rubyonrails.org/
    Sams Teach Yourself Ruby in 21 Days
    Learn Ruby in 7 Days
    Build Your Own Ruby on Rails Web Applications
    Django https://github.com/django
    Sidekiq https://github.com/sidekiq
    Kafka https://kafka.apache.org/
    Phoenix Framework https://www.phoenixframework.org/
    Phoenix LiveView https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html#content
    Flask https://flask.palletsprojects.com/en/3.0.x/
    WebSockets API https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
    WebSocket connection for Phoenix https://github.com/phoenixframework/websock
    Morph Dom https://github.com/patrick-steele-idem/morphdom
    Turbolinks https://github.com/turbolinks
    Ecto https://github.com/elixir-ecto
    Capybara Testing Framework https://teamcapybara.github.io/capybara/
    Wallaby Testing Framework https://wallabyjs.com/
    Cucumber Testing Framework https://cucumber.io/
    RSpec https://rspec.info/

    ...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

    262 Listeners

    The Changelog: Software Development, Open Source by Changelog Media

    The Changelog: Software Development, Open Source

    285 Listeners

    Startups For the Rest of Us by Rob Walling

    Startups For the Rest of Us

    694 Listeners

    Software Engineering Daily by Software Engineering Daily

    Software Engineering Daily

    630 Listeners

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

    Syntax - Tasty Web Development Treats

    985 Listeners

    REWORK by 37signals

    REWORK

    212 Listeners

    CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

    CoRecursive: Coding Stories

    185 Listeners

    Elixir Mix by Charles M Wood

    Elixir Mix

    13 Listeners

    The Stack Overflow Podcast by The Stack Overflow Podcast

    The Stack Overflow Podcast

    63 Listeners

    Thinking Elixir Podcast by ThinkingElixir.com

    Thinking Elixir Podcast

    31 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

    47 Listeners

    Elixir Mentor by Jacob Luetzow

    Elixir Mentor

    2 Listeners

    Elixir Friends by German Velasco

    Elixir Friends

    0 Listeners