This book will teach you how to build a multi-tenanted Ruby on Rails application and how to build subscriptions into that app.
What's a multi-tenanted application? Think of applications like GitHub, where each user or organisation can have their own separate area within the application. Or how about Heroku where each user has their own separate app group. Those are multi-tenanted applications.
In this book we'll be building a multi-tenanted forum application using some seriously good best practices, working with tools and processes like Behaviour-Driven Development, and PostgreSQL schemas. That's just the first four chapters.
In the 5th chapter, the book covers adding subscriptions to an application using the Braintree gateway.
It's a great book and demonstrates a number of effective techniques for building multi-tenant rails applications. Also shows you how to use Warden without Devise and how to utilize Rails Engines.
I do wish that the author would delve into when using multiple postgres schemas are beneficial vs scoping users in one large DB. This is a decision that is at the heart of the subject matter and warrants more discussion.
Another critique I have, and this is certainly a matter of personal preference, is that although the book practices Test Driven Development, it begins on the outside with large integration tests rather than on the 'inside' with unit specs.
I understand that both the 'inside-out' and 'outside-in' approaches have their advantages and disadvantages, but I think from a tutorial-follow-along standpoint, the former may work better.
This is a great book about creating a muti-tenant web application (Software as a Service) where you need to partition users' data and access. What this book is also great for is several programming practices that are illustrated and used along the way, including Test Driven Development, You Ain't Gonna Need It, Don't Repeat Yourself, and showing at least one pitfall of Doing the Simplest Thing That Works that can lead you into a chasm you'll have to back out of without more careful Big Design Up Front.
All those nifty buzz-phrases notwithstanding, Radar has put out a great book that I really recommend to any serious practitioner.
Book is written in a form of practical study. It leads you through through the common process of taking small decisions and making respective refactoring. It will also improve your TDD skills as well cause it provides a lot of great examples how to use Capybara for integration tests.