DHH · 2025-07-12 · source ↗ · whole document (4)
Рабочая установка, июль 2025
> Через год всё это перевернётся ещё раз — см. [#501, рабочая установка](../temy/04-rabochaya-ustanovka.md).
- ОС: Linux, Ubuntu + Omakub, чуть больше года. Двадцать лет до этого — только Mac. Linux «просто лучше» для веб-разработчика: ближе к тому, куда деплоишь, среда воспроизводима, новая машина — за 30 минут «и она идеальна, а не почти».
- Монитор: один, большой. Apple Pro Display XDR 6K 32" — единственное, что осталось от Apple.
- Клавиатура: Lofree Flow84, низкопрофильная механика. «Angels are singing. Where have you been my whole life?» Keychron не понравился. Жалеет, что 20 лет в «пузыре Mac» не искал.
- Мышь: Logitech MX 3; по Magic Mouse скучает.
- Редактор: Neovim + LazyVim. TextMate 20 лет (помогал Аллану Одгору выпустить его в 2005-м) — и это был главный якорь на Mac. Три дня проклятий при переходе, на следующей неделе — «this is sweet». Совет: не собирать конфиг с нуля из 17 серий, взять LazyVim.
- Переключение виртуальных столов — 5 мс на Linux против принудительной анимации macOS. «It changes how you use the computer». Подсмотрел у ThePrimeagen.
- IDE — нет. Автодополнение — нет. «I want to interact with characters directly».
- TypeScript: «I hate TypeScript as much as I like JavaScript». Видит только издержки — лишние символы, гимнастику типов, `any` у тех, кто сдался. «Here's my permission, you don't have to use TypeScript».
## Три языка новичку
1. Ruby — «magic for beginners»: `puts "hello world"` и всё, без церемоний. Книга «Learn to Program» Криса Пайна. Если хочешь веб — сразу Rails, учить язык вместе с ним: учиться надо на программе, которую хочешь.
2. JavaScript — без него в вебе никуда.
3. Go — для низкоуровневого: HTTP-прокси в компании пишут на нём. «Don't write your business logic in Go».
Не Ruby для всего: 3D-движок на нём никто не напишет. Себя определяет как объектно-ориентированного «в сердце»; функциональные языки уважает и признаёт, что ни разу не написал на них ничего настоящего — «a little embarrassing».