Такие ошибки выявить легко, но многие из них гораздо сложнее и хитроумнее. Некоторые можно воспроизвести лишь в определенных условиях и необычных ситуациях – настолько необычных, что разработчикам очень трудно их найти. «Покажите мне, как вы пришли к этой проблеме», – снова и снова твердят программисты. «Ну, – говорит человек, который нашел баг, – я находился вот здесь и кликнул на этот пункт меню. Нет, подождите, возможно, это был другой пункт меню. Гммм… Не знаю… Словом, все сломалось прямо утром, так что, пожалуйста, исправьте все до обеда».
Баги порождают боль
Много лет назад в моей компании пользовались известным приложением редактирования видео для создания онлайн-клипов. Чтобы на нас не подали в суд, назовем эту программу VideoBug. Поскольку этот видеоредактор создавал очень качественное изображение, для его работы требовалась колоссальная память и вычислительная мощность. На слабом компьютере программа работала не очень хорошо. Но узнать, годится ли твой компьютер для этой программы, было невозможно, пока ты не оказывался в ситуации, когда тебе хотелось головой биться о стену от раздражения. Использование VideoBug было отличным способом обрести глубокое понимание и оценить всю боль багов.
Иногда эта боль оказывается легкой, словно мгновенный разрыв аудиодорожки: на предварительном просмотре все было нормально, а ошибка проявилась только в окончательном варианте. Ты исправляешь видео снова и снова, стараясь выправить аудиодорожку, нарушаешь сроки, лишаешься сна, не идешь на первый концерт своего ребенка. В конце концов, полностью удаляешь этот видеопроект, переделываешь его с самого начала и через 12 часов он, наконец, начинает работать нормально.
А порой боль бывает очень острой: например, когда компьютер зависает после целой ночи работы над видеопроектом, и все ваши усилия идут прахом. «Разве ты не сохранил свой проект?» – спрашивают тебя, и тебе хочется всех убить – сразу после того, как поубиваешь разработчиков VideoBug.
Как-то раз один из членов нашей команды находился в другой комнате, отделенной от меня трехфутовой бетонной стеной. И тут я услышал его ругань. Он ругался последними словами, кричал, топал ногами, а потом я услышал, как рухнул большой шкаф с компьютерными дисками.
«Чертов VideoBug», – подумал я.
А теперь соберите воедино чувства сотен, тысяч и даже миллионов пользователей программы VideoBug, и вы поймете, как казалось бы, крохотные баги могут породить огромные трудности. Даже сегодня простой поиск в сети показывает нам жалобы тысяч пользователей на проблемы, не упомянутые на официальном сайте VideoBug.
Вы можете спросить: «Почему бы просто не взять хорошо работающий видеоредактор?» Со временем мы так и сделали. Но работа с VideoBug нас многому научила – мы привыкли сохранять результаты своей работы каждые 10 секунд и постоянно были готовы к катастрофе. И нам было легче жить с ужасной программой, чем учиться работать в совершенно новой системе.
Очень хорошая метафора для нашего разума. Наше ментальное программирование – наши циклы – могут причинять нам боль, но часто оказывается проще жить с болью, чем вкладываться в изучение новой системы.
Однако преимущества изучения новой системы практически безграничны. Негативные циклы не только причиняют нам боль, они еще и удерживают нас в прошлом. Они нас ограничивают. Если мы перейдем на новый видеоредактор, то тем самым облегчим себе задачу создания нового видео. В мире же разума избавление от собственных ограничений открывает перед нами безграничные возможности, потому что воображение – это основа mind hacking.
Как отладить разум
Повторю: наш разум – это результат тысяч повторенных уроков, хороших и плохих, истинных и ложных, точных и неточных. Все они превращены в ментальные «циклы», которые могут быть позитивными (Мне нравится заниматься физическими упражнениями) или негативными (Я никогда не найду настоящую любовь). Они могут быть конструктивными (Я должен тратить деньги разумно) и деструктивными (Я стал бы счастливее, если бы выпил).
Такие привычные мысли управляют нашими эмоциями, поведением и самой нашей жизнью. Поскольку они укоренились очень глубоко и являются результатом долгих лет опыта и воспитания, выявить подобные циклы довольно трудно. Лучший способ выявления негативных циклов – это анализ качества жизни. Особое внимание нужно обратить на те сферы, в которых ощущается боль. Например:
• Трудности в отношениях
• Трудности в работе
• Трудности в общении с членами семьи
• Юридические проблемы
• Финансовые проблемы
• Проблемы со здоровьем
• Устойчивые негативные убеждения (Я никогда не добьюсь успеха. Никто не заслуживает доверия.)
• Устойчивые негативные чувства (цинизм, безнадежность, отчаяние)
• Устойчивые неудачи
• Тревожность
• Депрессия
• Зависимость
• Жизнь в подвале родительского дома и/или в своей машине.
Для меня визит агентов секретной службы и последующая трезвость стали точкой сильнейшей боли: я понял, что что-то нужно менять. В моей жизни было и множество точек слабой боли. Например, когда отец поймал меня за кражей водки из домашнего бара. Тогда мне было уже за тридцать! Конечно же, красть водку из бара меня заставила повседневная ментальная боль.
Проблема заключается в том, что мы настолько привыкаем к боли, что перестаем ее замечать. Как человек, который постоянно носит тесные туфли. Мы убеждаем себя, что это такая мелочь, которая не стоит нашего внимания и усилий. «Боль не так уж и сильна, – твердим мы себе, – я вполне могу с ней жить». А тем временем боль продолжает усиливаться, и мы хромаем по жизни в маленьких и тесных кроссовках.
К счастью, есть методы, которые помогают выявлять причиняющие боль циклы. Первый такой метод основывается на японском приеме менеджмента, известном, как «Пять почему».
Метод № 1: Пять почему
Сакити Тоёду можно было бы назвать королем японских «ботаников».
В конце XIX века на многих японских текстильных фабриках все еще использовались ручные деревянные станки. Они требовали значительных трудозатрат, работали медленно и стоили дорого. После нескольких лет экспериментов Тоёда изобрел станок на паровой тяге, что позволило в четыре раза повысить производительность, в два раза сократить расходы и значительно улучшить качество ткани[58].