Допустим, у тебя глючит MacBook.

Не тормозит — именно глючит. Конкретные, видимые симптомы:

Ты видишь симптомы. Ты не видишь причину.

Это важное различие. Запомни его.


Болезнь — это не поломка. Это сообщение.

Первый инстинкт при глюке — убрать симптом.

Экран мигает — пошеруди провода. Треск из динамиков — убавь громкость. Клавиши не работают — почисти клавиатуру. Батарея садится — поменяй блок питания.

Ты что-то сделал. Руками потрогал. Деньги потратил. Ощущение, что «занялся проблемой».

Симптом ушёл. На неделю.

Потом вернулся. Или появился другой.

Это происходит потому, что ты работаешь с поверхностью, а баг сидит внутри. Отвёртка, термопаста, пылесос, влажная салфетка — всё это инструменты для железа. Они не достают до причины, которая живёт в другом месте.

У тела — ровно та же история.

Голова болит — выпил таблетку. Спина ноет — купил новый стул. Кожа шелушится — сменил крем. Желудок крутит — исключил глютен.

Симптом придавил. На время.

Потом вернулся. Или переехал в другое место.

Потому что ты работал с экраном. А баг сидит в коде.

Поверхностные заплатки и чтение логов
Поверхностная заплатка успокаивает экран, но не читает логи.

Что такое «залезть в операционную систему»

Когда опытный техник получает глючащий MacBook, он не смотрит на корпус.

Он открывает Terminal. Смотрит логи. Проверяет, какие процессы запущены в фоне, что стартует при загрузке, нет ли конфликтов между версиями библиотек. Запускает диагностику на уровне ядра системы.

Снаружи — красивый алюминиевый корпус. Внутри — конкретная строчка кода, которая производит симптом.

Он ищет не «где болит». Он ищет «почему болит».

Это разные вопросы. С разными ответами.

Большинство людей всю жизнь отвечают на первый вопрос. Эта книга — про второй.


Перечень причин, которых снаружи не видно

Когда MacBook глючит на программном уровне, список типичных причин выглядит так:

Ни один из этих багов не виден на корпусе.

С телом — список похожий по структуре:

Снаружи видно: симптом. Внутри сидит: одна из этих причин.


Дефект — твой лучший диагност

Вот контринтуитивная вещь.

Большинство людей хотят убрать дефект. Как можно быстрее. Чтобы не видеть.

Но без дефекта обнаружить баг — почти невозможно.

Подумай. Если MacBook работает «нормально» — ты не лезешь в логи. Не смотришь фоновые процессы. Не проверяешь, что запускается при старте. Система как будто в порядке.

Баг при этом может сидеть внутри годами. Просто пока не проявился.

Дефект — это видимый сигнал невидимой проблемы. Система говорит тебе: «Смотри сюда. Вот где искать».

Это не враг. Это указатель.

«Дефект — это самая честная обратная связь, которую система умеет давать. Она не жалуется. Она сообщает.»
Дефект как навигационный маяк
Дефект как координата: сигнал ведёт к скрытому сбою.

Человек, который умеет читать дефекты — не тот, кто страдает меньше. Это тот, кто двигается быстрее. Потому что у него есть координаты.


Почему «залатать» не работает

Есть два способа работать с глюком.

Вариант № 1: Убрать симптом. Заглушить сигнал. Почистить снаружи. Поставить заплатку. Через время — снова.

Вариант № 2: Найти баг. Устранить причину. Симптом уходит сам. Не возвращается.

Повторные заплатки и глубокий debug
Повторные заплатки расходятся по кругу; глубокая диагностика идёт к причине.

Первый вариант — быстрее. В моменте. Второй — дольше. В моменте.

Но за пять лет первого пути ты потратишь на симптомы больше времени, денег и сил, чем за один раз второго.

Это не мораль. Это арифметика.


Несколько слов о повторах в этой книге

Ты заметишь: некоторые мысли здесь встречаются снова в разных обёртках.

Это не забывчивость и не «вода».

Одна и та же истина должна лечь в разные ситуации из твоей жизни. Только тогда она перестаёт быть «умной мыслью» и становится твоей рабочей установкой.

Программу можно скомпилировать под разные операционные системы. Исходный код — один. Но пока он не скомпилирован под твою конкретную среду — он не исполняется.

Повторы здесь работают именно так: каждый раз та же истина компилируется под другой контекст из твоей жизни. Потому что у каждого читателя своя локальная среда. И мысль, которая не зашла через метафору с MacBook, может зайти через пример с работой. Или через пример с отношениями. Или через пример с болью в спине.

Одна идея, скомпилированная под разные контексты
Одна мысль начинает работать только после компиляции под личный контекст.

Пока она не зашла именно на твоём языке — она не работает как своя.


Задание на сейчас

Возьми любой хронический симптом — физический или эмоциональный. Что-то, что возвращается. Напиши одно предложение: что ты обычно делаешь с этим симптомом.

Это попытка убрать симптом — или найти причину?

Ответ пиши честно. Не для книги. Для себя.