Devchat.tv Episode Roundup

RR 353: Removing Business Logic from Rails Controllers with Aaron Sumner


Listen Later

Panel:

  • Charles Max Wood
  • David Richards
  • Special Guests: Aaron Sumner

    In this episode of Ruby Rogues, the panel discusses removing business logic from Rails controllers with Aaron Sumner. Aaron is a long time Ruby developer, using mostly Rails, writes a blog called Everyday Rails, and most people know him from his book, Everyday Rails Testing with RSpec: A practical approach to test-driven development. They discuss service objects, the pros and cons of using them, and they emphasize not trying to change something all at once, but gradually.

    In particular, we dive pretty deep on:

    • Aaron intro
    • How to test code without controller tests?
    • The cons to controller tests
    • Soft deprecation
    • If you’re not writing controller tests, what are you writing?
    • Get the code out of the controllers and test it in more isolation
    • Service objects
    • Problem with a controller having a lot of business logic in it
    • Rails
    • Cons of service objects
    • Using a service object inside of a controller
    • Pros of service objects
    • Getting smaller can happen step-wise
    • Re-architecting should happen gradually not all at once
    • When you write a service object, there is a flow to it
    • How writing his book impacted his views
    • Start small
    • And much, much more!
    • Links:

      • Everyday Rails
      • Everyday Rails Testing with RSpec: A practical approach to test-driven development
      • Ruby on Rails
      • @EverydayRails
      • Everyday Rails GitHub
      • Picks:

        Charles

        • The 12 Week Year by Brian P. Moran and Michael Lennington
        • RubyHACK Conference
        • David

          • Ready Player One by Ernest Cline
          • Aaron

            • No code
            • Deleting code
            • 30 for 30 Podcast
            • ...more
              View all episodesView all episodes
              Download on the App Store

              Devchat.tv Episode RoundupBy Devchat.tv