DHH · 2025-07-12 · source ↗ · whole document (12)
Доктрина Rails: девять принципов
Basecamp и HEY — по ~100 000 строк Ruby. Basecamp — примерно 420 экранов. HEY при запуске отправляла в браузер 40 килобайт JavaScript; Gmail — 28 мегабайт несжатого. Та же задача.
Разделение фронтенда и бэкенда он называет «одним из великих преступлений против веб-разработки».
## 5. Ни одной парадигмы
Ruby в ядре объектный, но заимствует функциональное: цепочки блоков, неизменяемые строки. Rails — ремикс: он не придумывал ни ActiveRecord, ни MVC.
## 6. Возвышай красивый код
`class Project < ApplicationRecord; belongs_to:account; has_many:participants` — Лекс прочитал это вслух, ничего не меняя. Хайку.
ActiveRecord — «жемчужина короны». Паттерн из книги Фаулера «Patterns of Enterprise Application Architecture» (2001), одной из немногих, которые он читал много раз. Суть: таблицы становятся классами, строки — объектами. Не прячет SQL, а убирает из него утомительное. SQL знать надо — он пережил десятилетие NoSQL и остался.
## 7. Острые ножи
> «Here's a dull butter knife. Cut your damn steak, right? That's a very frustrating experience. You want a sharp knife even though you might be able to cut yourself.» — [2:19:10](https://youtu.be/vagyIcmIGOQ?t=8350)
Отрежешь виртуальный палец — отрастёт, а компетентность вырастет.
## 8. Ценить интегрированные системы
Rails решает всю проблему веба, а не один кусок.
## 9. Прогресс важнее стабильности — здесь он передумал
> «If there's one that's dated, it's probably that one.» — [2:20:10](https://youtu.be/vagyIcmIGOQ?t=8410)