Rails as a framework is famous for helping you get your application up and running quickly, but the very paradigms that make it so easy at the start can lead to maintenance nightmares down the road. Successful applications grow rapidly larger, more complex, and harder to extend and maintain.
One way to approach refactoring a monolithic application is dividing it up into a series of smaller applications that organize the work of the system through internal APIs. Faceted is a new Ruby gem that makes it easy to build these APIs using a flexible, declarative, and opinionated set of modules. In this presentation you will be introduced to Faceted, see examples of how to use it, and get a glimpse of the guiding philosophy behind the API-driven refactoring philosophy.
About the Presenter
Corey Ehmke (twitter.com/bantik) is a technologist with nearly 20 years of experience in developing for the web. He successfully transitioned out of enterprise software development with Java and .NET into Agile development with Ruby and Rails five years ago and has never looked back. An active Open Source author and contributor, he's currently serving as Senior Software Engineer at Trunk Club (TrunkClub.com), a successful startup in downtown Chicago.