Ruby Science

How to Read This Book

This book contains three catalogs: smells, solutions and principles.

Start by looking up a smell that sounds familiar. Each chapter on smells explains the potential problems each smell may reveal and references possible solutions.

Once you’ve identified the problem revealed by a smell, read the relevant solution chapter to learn how to fix it. Each solution chapter explains which problems it addresses and potential problems that can be introduced.

Lastly, smell and solution chapters reference related principles. The smell chapters reference principles that you can follow to avoid the root problem in the future. The solution chapters explain how each solution changes your code to follow related principles.

By following this process, you’ll learn how to detect and fix actual problems in your code using smells and reusable solutions, and you’ll learn about principles that you can follow to improve the code you write from the beginning.

Ruby Science

The canonical reference for writing fantastic Rails applications from authors who have created hundreds.

Work with us to make a new Rails app, or to maintain, improve, or scale your existing app.