kvisaz (kvisaz) wrote,
kvisaz
kvisaz

Category:

Компиляция будущего

Компилятор превращает язык высокого уровня, который понятен человеку, в машинные коды, которые понятны компьютеру. После этого перевода программа становится компактной и быстрой - навсегда.

Интерпретатор - он тоже так делает. Но каждый раз снова. Каждый раз он начинает жевать лапшу, настроганную программистом из языка высокого уровня, чтобы перевести её и исполнить - шаг за шагом.

Исследуя книги Дэвида Аллена про GTD, я пришёл к выводу, что в них проповедуется принцип компилятора. Ты переводишь свои мысли о проектах, написанные в твоей голове на языке крайне высокого уровня с использованием нечёткой логики, теории вероятности и геометрии Лобачевского, в конкретный машинный код.

Что такое конкретный машинный код для человека? Это действие, которое в идеале может выполнять и обезьяна. Это действие, которое не требует обдумывания. Ты уже обдумал его заранее.

В этом - реальный практический ключ к победе над прокрастинацией.

Именно в обдумывании скрывается сильнейшая ментальная попоболь (англ. butthurt), которая тормозит человека в процессе работы и вообще заставляет его откладывать работу на потом.

Как мне поднять сайт? С чего мне начать? Ой, да идите вы, говорит мозг, лучше запусти игрушку - там думать не надо, все действия расписаны. Так происходит прокрастинация великолепных проектов, которые греют твою фантазию годами, пока мозг согревается рубкой древесины и сборкой золота с помощью подручных орков.

Люди много раз пытались "геймифицировать" процесс работы, процесс борьбы с прокрастинацией, но похоже, что они заходили не с той стороны. Они привешивают индикаторы и графики, пытаются выдавать уровни и экспу, как в онлайн-играх. Кое-что из этого, действительно, работает.

Но послушайте, ведь база любой игры заключается не в наградах. Она заключается в ограничении и упрощении действий. И чем проще и понятнее действия, чем легче угонять машины или собирать золото, тем лучше. Наградой в играх сам по себе уже служит её процесс. Боже мой, я угнал машину за 45 секунд, всего лишь нажав несколько клавиш. Как же это прекрасно! И слезы счастья текут по лицу. Нет, если где и есть лучший мир, так это не на небесах, а в играх.

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

Исполнение на физическом уровне - это и есть действие машины. А описание конкретного действия - это машинный код. Обдумывание в голове - перевод с очень высокоуровневого языка мыслей и желаний в машинные коды.

И вот что я открыл - меня действительно больше мучает обдумывание. Тормоза происходят на этапе перевода "мысли -> конкретный шаг". Жесткие и болезненные ошибки выскакивают уже на этом этапе. Вспоминая известный фильм, не так страшен inception, как последующий exception.

И если ты обдумываешь дело в режиме интерпретатора - каждый такой exception означает прерывание дела, отвлечение, потерю фокуса и, как следствие, расстройство, лень и прокрастинацию. Для тех, кто не знает, что такое exception - это вылет программы. Типа "Оба-на, я хотел покрасить балкон, а краски-то нет". И это ещё хорошо, что краски - бывает так, что на месте не оказывается и балкона.

Так вот, соль предложений Дэвида Аллена заключается в том, чтобы перестать думать в процессе. Фазы компиляции и рабочего запуска жизненных программ надо разносить. Это кстати, удобно - потому что, по некоторым признакам, внутри нас отдельно живет Думатель и отдельно Делатель.

Достаточная компиляция по Дэвиду Аллену заключается в том, что ты определяешь первое максимально элементарное действие по проекту. Только одно, следующее действие ты можешь определить позже.

То есть он предлагает компилировать не проект целиком - тут мозг может лопнуть даже у кашалота, и никто не требует такой титанической, а главное, ненужной работы. Он предлагает компилировать хотя бы одно действие и, главное, заранее.

Компилированные действия для разных проектов Дэвид Аллен предлагает хранить в списках или папках, неважно. Важно, чтобы они были записаны вне твоего мозга (первая аксиома его системы). Важно, чтобы когда ты был болен или спросонок или пьян, то, вместо того, чтобы звонить бывшим или оставлять неприличные комментарии на чужих форумах, ты мог бы запустить руку в такую папку, вытащить листок и, сфокусировав мутный взгляд, прочитать
- О-о-тправить отчёт.xls на адрес "mychef@dir.com.

Это не то, конечно, к чему призывает Дэвид Аллен, но я попробовал и сообщаю, что некоторые действия, действительно, можно успешно выполнять и в очень плохом ментальном состоянии. В этом Принцип Компилятора родня методу "Семь фактов".

В целом абсолютные плюсы Принципа Компилятора заключаются в следующем:
- ты думаешь, когда тебе удобно думать;
- а работать можешь в любом состоянии;
- непосредственные действия по проекту ускоряются до невероятных пределов (ага, до несколько минут);
- устраняется ошибка вылета мозга из рабочего состояния на этапе действия.

Принцип Компилятора я обнаружил и раньше, еще в 2012 году, когда начал составлять чек-листы (точнее, подробные пошаговые инструкции) для некоторой своей повторяющейся работы. Я обнаружил, что независимо от того, сколько времени было потрачено на пошаговую инструкцию, она окупалась невероятным увеличением скорости работы и абсолютным спокойствием в процессе ("поток" - это про это).

Что меня останавливало от дальнейшего развития? Понимание того, что невозможно составить подробную пошаговую инструкцию для всех проектов. Невозможно скомпилировать всё, потому что многое меняется или только становится известным в процессе работы над проектом. Это было причиной того, что дальнейшая работа над чек-листами заглохла (хотя теми, что я сделал, я с успехом продолжал пользоваться).

После прочтения Дэвида Аллена я понял, что достаточно компилировать хотя бы одно действие. Компилировать в новом проекте означает "найти следующий элементарный шаг". Так и запомните.

Следующий элементарный шаг в виде письменной инструкции.

Как узнать, насколько он элементарен? Если вы смело можете передать его другому человеку и если вы уверены, что действие будет именно таким, каким надо - значит, инструкция скомпилирована правильно.

Отсюда, кстати, открываются ворота для множества неисчислимых путей. Я укажу только два очевидных пути:
- Собственная пошаговая инструкция, собранная из успешных отдельных шагов, что усиливает быстродействие.
- Делегация примитивных действий другим людям, что усиливает твое быстродействие еще сильнее.


Перефразируя Ницше - "Человек это мост между интерпретатором и компилятором". Компилятор действий - вот истинный облик сверхчеловека.

Но об этом, конечно, Дэвид Аллен постеснялся сказать.
Tags: Как научиться работать, Книги
Subscribe

  • Внутренняя федерация

    Попытки осознать умственные страдания и дать отпор автоматическим внутренним вскрикам не привели меня к тому, что эти страдания и вскрики исчезли.…

  • Самооценка невыспавшегося человека

    Петер Шпорк "Сон. [Почему мы спим и как нам это лучше всего удается]" - книга немецкого врача сомнолога 2010 года. Книга, которую полезно…

  • "Сила воли" Дэвид Малкольм

    На днях начал читать книжку "Сила воли" (с) Дэвид Малкольм. Не путать с похожим названием от автора Келли Макгонигал. update: я её дочитал,…

  • Post a new comment

    Error

    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 10 comments

  • Внутренняя федерация

    Попытки осознать умственные страдания и дать отпор автоматическим внутренним вскрикам не привели меня к тому, что эти страдания и вскрики исчезли.…

  • Самооценка невыспавшегося человека

    Петер Шпорк "Сон. [Почему мы спим и как нам это лучше всего удается]" - книга немецкого врача сомнолога 2010 года. Книга, которую полезно…

  • "Сила воли" Дэвид Малкольм

    На днях начал читать книжку "Сила воли" (с) Дэвид Малкольм. Не путать с похожим названием от автора Келли Макгонигал. update: я её дочитал,…