Максим Байтович – Run.rar. Как запустить тело, если ты разработчик (страница 1)
Run.rar. Как запустить тело, если ты разработчик
Пролог. Почему ваше тело требует ребута, а не патча
В какой-то момент я поймал себя на мысли, что отношусь к автомобилю внимательнее, чем к собственному телу.
Моя машина проходила техническое обслуживание каждые десять тысяч километров. Для неё покупалось лучшее масло, качественные свечи и бензин с моющими присадками. Я прогревал двигатель перед поездкой в мороз и никогда, ни при каких обстоятельствах не игнорировал загоревшийся сигнал «Check Engine». Если на приборной панели появлялось предупреждение, я немедленно сворачивал в сервис. Потому что понимал: маленькая проблема, которую не решили вовремя, превращается в капитальный ремонт двигателя.
А теперь давайте честно посмотрим на то, как я относился к собственному телу. Если проводить аналогию с программным кодом, я годами лепил костыли и ставил заплатки на систему, которая требовала полного рефакторинга. Моё тело работало на кофеине, фастфуде и трёхчасовом сне во время релизов. Я пытался «пропатчить» хроническую усталость энергетиками, больную спину — сомнительными мазями из рекламы, а нарастающую апатию — героическими попытками отоспаться в выходные. Спойлер: отоспаться впрок невозможно, это миф, в который мы все хотим верить.
Я программист. Моя работа — находить баги, декомпозировать сложные системы на управляемые модули и выстраивать архитектуру, которая способна выдерживать пиковые нагрузки без падения. Я делал это для серверов, для баз данных, для микросервисов. Но когда дело касалось собственного организма, я действовал как самый неопытный стажёр: хаотично, без плана, без документации и без тестов. Я не знал, как работает моя сердечно-сосудистая система. Я не понимал, почему болит спина. Я понятия не имел, что такое пульсовые зоны и зачем они нужны.
Переломный момент не был похож на сцену из фильма. Не было драматичной музыки, внезапного озарения или какого-то особенного события. Я просто однажды встал из-за рабочего стола, почувствовал острую вспышку боли в пояснице и осознал простой, пугающий факт: ещё пара лет в таком режиме — и мой личный сервер выйдет из строя. Не на час, не на день. Навсегда. Без возможности восстановления из бэкапа, потому что бэкапа нет. Никто не делает резервную копию вашего позвоночника.
Я решил начать бегать. Не потому что «это модно», не чтобы доказать что-то окружающим и уж точно не из-за внезапной любви к спорту. Я выбрал бег по очень прагматичной причине: это самый простой и одновременно самый мощный инструмент для перезагрузки всей системы. Для бега не нужен абонемент в зал. Не нужно сложное оборудование. Не нужно подстраиваться под чужое расписание. Нужны только вы, любая поверхность под ногами и желание изменить своё состояние.
Однако здесь меня ждало открытие, которое сначала ввело в ступор, а потом разозлило. Все книги, статьи и видео о беге, которые я находил, были написаны на чужом для меня языке. Они говорили о «радости движения», советовали «дышать сердцем», «почувствовать ритм земли» и «услышать своё тело». Честно? Я не знаю, что значит «услышать своё тело». Моё тело молчало. А когда оно начинало говорить, это обычно была боль в пояснице. Все эти советы прекрасно работают для людей с определённым складом ума. Мой ум так не работает. Ему нужны чёткие входные данные, понятные алгоритмы, измеримые метрики и однозначная обратная связь.
И тогда я применил к собственному организму тот же подход, который использовал в работе. Я написал техническое задание на самого себя. Я перевёл всю физиологию бега на язык, понятный инженеру. Я убрал эзотерику и оставил только то, что можно измерить, проверить и воспроизвести. Я превратил пульс в аналог загрузки центрального процессора. Я описал восстановление мышц как процесс деплоя после обновления. Я представил суставы и связки как компоненты системы, которые нужно тестировать перед каждым запуском.
Результат превзошёл ожидания. Через полгода системных тренировок я не просто мог пробежать несколько километров без остановки. У меня перестала болеть спина — проблема, с которой я мучился годами. Поднялась продуктивность — я стал успевать больше за меньшее время. Выровнялся эмоциональный фон — я перестал срываться на коллегах из-за мелочей. И, что стало для меня самым неожиданным бонусом, баги в коде начали отлавливаться быстрее, а архитектурные решения — приходить яснее.
Эта книга — не про спорт высоких достижений. Я не буду учить вас рвать личные рекорды и бегать марафоны на износ. Я не стану обещать, что вы похудеете на десять килограммов за месяц. Этого не будет. Вместо этого я предлагаю вам системную инструкцию по эксплуатации собственного тела в условиях, для которых оно эволюционно не предназначено: многочасовая статичная работа за монитором, высокие ментальные нагрузки, хронический стресс и дефицит движения.
Мы будем говорить на одном языке. Языке логики, данных, архитектурных решений и обработки исключений. Если вы читаете этот пролог, сгорбившись над ноутбуком, чувствуя, как затекает шея, немеет правая рука от компьютерной мыши, а в голове — вязкий туман от шестой кружки кофе, — добро пожаловать. Вы по адресу.
Мы запустим RUN.rar. Ваше тело — это проект, который заслуживает чистого кода.
Вы готовы к ребуту?
Глава 1. Системные требования к организму
Перед тем как устанавливать любое сложное программное обеспечение, мы всегда проверяем системные требования. Достаточно ли оперативной памяти? Потянет ли процессор? Совместима ли версия операционной системы? Игнорирование этого шага приводит к предсказуемому результату: программа либо не запустится, либо будет работать с отвратительной производительностью, либо повесит всю систему.
С бегом та же история, но здесь есть нюанс. В отличие от программного обеспечения, которое мы выбираем осознанно, наше тело — это предустановленная система. Мы получили её при рождении, не читая лицензионного соглашения. И большинство из нас никогда не заглядывало в документацию. Мы просто пользуемся телом каждый день, не понимая, как оно устроено и какие процессы в нём происходят. Пришло время открыть эту документацию и прочитать, что написано в разделе «Системные требования».
1.1. Почему вы устаёте не от работы, а от среды выполнения
Давайте будем откровенны. Мы, разработчики, любим жаловаться на переработки, на дедлайны, на бесконечные правки от заказчиков и на legacy-код, который никто не рефакторил со времён доткомов. Мы искренне убеждены, что устаём именно от работы. Это убеждение настолько привычно, что мы никогда не подвергаем его сомнению. Но я хочу, чтобы вы сейчас на минуту задумались над одной мыслью, которая может показаться вам кощунственной. Ваш мозг — это, возможно, самый совершенный биологический процессор из когда-либо существовавших. Он способен обрабатывать колоссальные объёмы информации без физического износа. Нейроны не устают в том смысле, в каком устают мышечные волокна после интенсивной нагрузки. Проблема не в вычислительной мощности. Проблема в том, в какой среде эта мощность эксплуатируется.
Давайте проведём полноценный аудит вашего типичного рабочего дня. Не того идеального дня, который вы описываете в отчётах для руководства, а реального. Того самого, который начинается с мысли «сегодня лягу пораньше» и заканчивается залипанием в телефоне в час ночи. Что представляет собой среда выполнения вашего организма?
Представьте себе сервер, который пытается обслуживать высоконагруженное приложение, находясь в следующих условиях. Его система охлаждения работает на минимальных оборотах, потому что вентиляторы забиты пылью. Блок питания выдаёт нестабильное напряжение, потому что подключён через дешёвый сетевой фильтр, купленный на распродаже десять лет назад. Процессор вынужден работать в режиме постоянного троттлинга из-за перегрева. А системный администратор вместо того, чтобы устранить причину, пытается решить проблему, наращивая виртуальную память.
Примерно так функционирует тело человека, который восемь, десять, а иногда и двенадцать часов в день сидит перед компьютером. Ваше кресло, купленное когда-то по акции без всякого учёта анатомических особенностей, не поддерживает спину. Поза, которую вы принимаете бессознательно — плечи сведены вперёд, подбородок вытянут к монитору, грудная клетка сжата, — называется «креветка». В этой позе диафрагма, главная дыхательная мышца, оказывается заблокированной. Вы дышите поверхностно, только верхней третью лёгких. Организм работает в состоянии хронической гиповентиляции: ему катастрофически не хватает кислорода, но сигнал тревоги приглушён, потому что вы привыкли.
Посмотрите на своё питание. Это не режим заправки топливом, это хаотичные пакеты данных из службы доставки. Простые углеводы, насыщенные жиры, избыток соли и сахара. Энергетические качели: резкий скачок сахара в крови после обеда, за которым следует такой же резкий провал через пару часов. В этот момент вы чувствуете себя разбитым и идёте за очередной чашкой кофе или сладким батончиком, замыкая порочный круг.
Гидратация организма? Забудьте. Вместо чистой воды — литры кофе. Кофе — это не вода. Кофеин — это диуретик, он способствует выведению жидкости. Вы думаете, что восполняете запасы влаги, а на самом деле медленно, но верно движетесь к обезвоживанию. А теперь вспомните, сколько раз за день вы встаёте из-за стола. Не чтобы дойти до кухни за очередной порцией кофе, а чтобы просто размяться, потянуться, пройтись. Я готов поспорить, что это число можно пересчитать по пальцам одной руки.