DHH · 2025-07-12 · source ↗ · whole document (15)
Ruby и красивый код
## Динамическая типизация — «буду защищать до смерти»
Аргументы против статической типизации в его мире:
- Повторы. `User user = new User()` — слово три раза. «I don't have time for this».
- Метапрограммирование становится мучением; из-за этого TypeScript выкинули из Turbo.
- Инструменты порождают шаблонный код. Языки с хорошим автодополнением терпят гораздо больше boilerplate — «ты же его не печатаешь». Он печатает: «I chisel them out of the screen with my bare hands».
- Баги ловятся тестами, не компилятором.
И главная оговорка: система на 10 миллионов строк и сто тысяч программистов — другой мир, там нужны другие методы. Ошибка — считать, что то же самое нужно одному человеку в спальне.
> «You don't use your Pagani to go pick up groceries at Costco.» — [1:11:47](https://youtu.be/vagyIcmIGOQ?t=4307)
Про своё раннее евангелие Rails признаётся: вёл его как крестовый поход. Понял позже, что мозги у людей настроены по-разному, и кому-то нужна страховка IDE.
## Ruby — язык-люкс
> «Ruby is a luxury language… It is the Coco Chanel of programming languages. Something that not everyone can afford. And I mean this in the best possible way.» — [1:23:01](https://youtu.be/vagyIcmIGOQ?t=4981)
Считал сам: ~15% операционного бюджета уходило на серверы приложений. Чтобы улучшить экономику на 7 пунктов, нужен язык вдвое быстрее. А если Ruby делает программиста на 10% продуктивнее — это двигает стрелку куда сильнее. Ровно та же логика, по которой все теперь сходят с ума по ИИ.
Масштаб: Shopify — миллион динамических запросов в секунду в чёрную пятницу, ~30% всей электронной коммерции, монолит на 5 миллионов строк Ruby. Твиттер ушёл с Rails — «и десять лет ничего не происходило» — лучшая реклама.