Работа, основанная на знаниях, позволяет разделить создание ценности и время, затрачиваемое на работу. Производительность измеряет это разделение. Я определяю производительность как скорость создания стоимости. А деньги — хороший показатель стоимости, поэтому ваша почасовая ставка — хороший показатель вашей продуктивности.

Важно понимать, что некоторые люди намного более продуктивны, чем другие. Моя интуиция подсказывает мне, что разница между лучшими и средними должно составлять около 30%. Это интуитивное чувство определенно ошибочно: разница в производительности часто составляет порядки величины для любого заданного домена. Во многих случаях разница бесконечна, потому что средний исполнитель никогда не сможет производить что-то с тем же качеством, что и топ-исполнитель, независимо от того, сколько времени или ресурсов ему предоставлено.

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

Сложности прямого измерения продуктивности

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

  • Какова ценность фрагмента кода?
    Программа предоставляет пользователю X ценности, а пользователь взамен платит Y сумму. X всегда больше, чем Y на свободном рынке. Y очень легко измерить, однако я не вижу удобного способа измерения X. В гиперконкурентной среде X, вероятно, будет лишь немного выше, чем Y, но для инновационных продуктов или тех, которые достигли монополии, X может быть более чем на порядок. выше. Таким образом, ценность продукта, созданного программистом, не может быть измерена.
  • Генерация ценности задерживается.
    Программист пишет функцию, которая может не предоставляться пользователям в течение нескольких дней, недель или месяцев. После того, как он будет выпущен, как долго эта функция будет активна? Только после того, как функция завершила полный жизненный цикл, есть надежда на количественную оценку ценности, а это может произойти спустя годы после написания программы. Кроме того, трудно оценить стоимость ресурсов разработчика, необходимых для исправления ошибок, работы с некачественным кодом или переписывания частей кода.
  • Групповой вклад и вклад во времени
    Функция имеет ценность только в целом, однако часто она генерируется несколькими участниками, которые составляют ее различные части. Очевидно, что не все части равны, но если все они необходимы, как определить их соответствующую ценность?
    Это еще более осложняется тем фактом, что хорошая командная работа повышает продуктивность всех участников. Кому следует отнести это повышение производительности?
    Это аналогичная проблема, если вы пытаетесь определить свою ежедневную или часовую производительность. Насколько ценен код, о котором вы подумали или написали за это время, по сравнению с общей ценностью кода? Я не вижу способа ответить на эти вопросы.

Прокси для измерения продуктивности

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

Показатели, связанные с работой

  • Написано строк кода
    Сложность функциональности программного обеспечения должна быть представлена ​​в информационном содержании кода. Очевидно, что требуется больше строк кода, чтобы содержать больше информации, однако код может более или менее эффективно хранить эту информацию.
    Таким образом, сложность кода равна количеству строк кода, умноженному на эффективность, с которой код кодирует информацию. К сожалению, я не вижу реального способа измерения этого коэффициента эффективности, а без него этот показатель практически бесполезен.
    Эта ситуация еще более усложняется тем фактом, что иногда предпочтительнее код с меньшей плотностью информации, если он повышает удобочитаемость и масштабируемость. Одним из примеров этого является объектно-ориентированное программирование.
    На практике этот показатель, вероятно, можно получить, просмотрев историю push-уведомлений GitHub. Я не использую это как меру моей продуктивности.
  • Количество отработанных часов
    Это показатель, который используют почти все компании. Базовая схема заключается в том, что роль требует, чтобы сотрудник выполнял X, Y и Z, размещалась вакансия и вознаграждение увеличивалось до тех пор, пока не мог быть нанят человек с такими способностями, после чего этот человек должен был работать сорок часов в неделю.
    Самое интересное в этой схеме то, что она определяется спросом и предложением подходящих работников. Чем больше людей ищут такую ​​работу, тем ниже оплата и наоборот. Выплачиваемая сумма должна быть меньше, чем ценность, которую сотрудник приносит бизнесу, но, кроме того, эта предельная оплата не отражает, какую ценность работник производит, а только его дефицит.
    Я лично измеряю этот показатель, чтобы ограничить свои часы в сорок. часовая отметка, которая увеличивает мое внимание к улучшению качества, а не количества моей работы. Кроме того, когда я впервые перешел на 40-часовую рабочую неделю, эта метрика помогла мне научиться работать такое количество часов.
    FocusMate — это один из способов учета рабочего времени.
  • Количество часов использования различного программного обеспечения
    RescueTime регистрирует время использования различных программ в течение дня. Сфокусировано означает, что курсор щелкнул по нему или вы печатаете его. Время, проведенное на Facebook, YouTube, Netflix и т. д., по большей части не позволяет вам создавать ценность и поэтому должно быть полностью исключено из вашего рабочего времени.
    Время, затрачиваемое на электронную почту, Slack и т. д., повышает вашу отзывчивость, и для выполнения рабочих обязанностей требуется определенное участие, однако оно редко приносит пользу умственному труду и должно быть сведено к минимуму.
    Соотношение времени, затрачиваемого на такие сайты, как Stack Overflow vs в вашей среде кодирования — еще одна важная метрика. Новички будут тратить гораздо больше времени на поиск ответов в Stack Overflow, а эксперты смогут напрямую писать код.
    Я использую RescueTime для отслеживания этого показателя.

Метрики, связанные с фокусом

Следующие несколько прокси являются более экспериментальными.

  • Отслеживание зрачков
    Немецкая компания TobiiPro разработала технологию отслеживания глаз, которую можно носить как очки. Очки создают наложение видео, на котором глаза фокусируются в поле зрения. В сочетании с базовым программным обеспечением для распознавания изображений это может измерять количество времени, потраченное на просмотр экрана компьютера, записной книжки, доски или окна, а также измерять, насколько активно при этом двигаются глаза.
    Тем не менее, я заметил, что смотрю в окно или закрываю глаза, когда делаю одну из самых важных умственных работ. Также кажется, что циклы интенсивного сосредоточения, за которыми следует расслабленное и творческое мысленное размышление, могут быть очень продуктивными для некоторой работы. Так что попытка слишком сильно сфокусироваться может быть вредной.
    Я связался с TobiiPro, чтобы узнать о покупке их очков.
  • Расширение зрачков
    Когда кто-то выполняет арифметические действия в уме или выполняет другие когнитивные задачи, его зрачки расширяются на несколько миллиметров (Думай, быстро и медленно, Даниэль Канеман). Я не знаю, проявляют ли люди в состоянии потока/сфокусированной работы такой же аффект, но это возможно.
    PupilEXT — это установка для пупилометрии с открытым исходным кодом, которая стоит несколько сотен долларов. Текущий форм-фактор предполагает размещение головы участника прямо на упоре для подбородка, когда он смотрит прямо в камеру, что явно не способствует рабочей среде. Будем надеяться, что в будущем какая-нибудь компания решит выпустить устройство для пупилометрии.
  • Сканирование ЭЭГ
    Оно измеряет концентрацию напрямую, измеряя амплитуды различных мозговых волн. Это пример успешной лабораторной установки с многочисленными продуктами, доступными на рынке в диапазоне от нескольких сотен долларов. Эти продукты способны измерять качество сна и медитации, но будут ли генерироваться какие-либо полезные данные, если они будут записываться во время работы? Я не знаю, но это кажется интересным направлением исследований.
    У моего друга есть повязка Muse, которая продается менее чем за 400 долларов, и я мог бы получить такую ​​же, чтобы поэкспериментировать.

Метрики, связанные со здоровьем

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

Появляется все больше носимых устройств, позволяющих измерять эти показатели здоровья. Muse ($364) умеет записывать качество сна и медитации. Уровни могут непрерывно измерять концентрацию глюкозы в крови. Существуют датчики непрерывного лактата и мониторы вариабельности сердечного ритма (139 долларов США) для измерения показателей упражнений. А в будущем непрерывный уровень кортизола сможет измерять стресс. Дайте мне знать в комментариях, если вы хотите, чтобы статья обсуждала эту тему более подробно.

Использование показателей для повышения эффективности

Сбор значимых метрик — первый шаг. Просмотр и ответственность перед ними — вот где реализуется их ценность.

Просмотр показателей

Обсуждаемые выше метрики собираются из GitHub, FocusMate, RescueTime, PupilEXT, TobiiPro, Levels, Polar, PK Vitality и Muse. Идея заключалась бы в том, чтобы использовать общедоступные API всех этих продуктов для сбора и просмотра данных метрик в одном месте. Если вы хотите, чтобы я разработал этот продукт, дайте мне знать в комментариях ниже.

Подотчетность по показателям

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

Мой текущий рабочий процесс

Я все еще оптимизирую это и буду регулярно обновлять этот раздел по мере того, как меняю свой образ жизни.

Еженедельный рабочий процесс

Понедельник, утро: напишите приоритетный список из трех дел, которые нужно сделать к концу недели.
В середине недели: запланируйте 15-минутную встречу с XXX за 20 долларов, которая предоставить сторонний профессиональный взгляд на программирование.
Пятница, полдень: составить еженедельный отчет и отправить его моему партнеру по подотчетности.

Ежедневный рабочий процесс

6:00–6:15 Пробуждение, творческая медитация.
6:15–6:30 Завтрак, чистка зубов.
6:30–7:30 Молитва, чтение Библии, медитация.
7:30–7:50 На велосипеде в спортзал.
7:50–8:30 Утренний поход в спортзал, холодный душ, на работу на велосипеде.
8:30–9:00 Рабочая встреча.< br /> 9:00–17:00 Работа.
17:00–21:30 Общение.
21:30–6:00 Сон.

Рабочий процесс

Я потрачу первые 10 минут рабочего времени, разделив свой день на части по часу, каждый час будет иметь от одной до трех точечных задач, которые нужно выполнить. Затем я завершаю каждый час работы под наблюдением сеанса FocusMate, сообщая в начале моему партнеру по фокусу, чего я надеюсь достичь, а в конце — что я на самом деле сделал. Эта почасовая сводка также записывается в документ Word и отправляется мне по электронной почте в конце каждого дня вместе с моими показателями RescueTime и FocusMate. Его также распечатывают и скрепляют на видном месте на моем рабочем месте.

В конце каждой недели эти ежедневные сводки объединяются в еженедельную сводку, которая отправляется партнеру по подотчетности, который проверяет, выполнил ли я определенные показатели и выполнил ли я свои еженедельные цели. Последствием провала является пожертвование на благотворительность через StickK.

Текущие показатели включают следующее.

  • Приходить на работу в 8:30 и уходить в 17:00 плюс-минус десять минут.
  • Не тратьте рабочее время на Facebook, Netflix, Disney Plus, Paramount Plus, FlamScans, Shonen Jump, Threes или любые другие социальные сети, потоковое видео, сервис комиксов/манги или игры.
  • Не более одного часа в день в рабочее время в Gmail и телефонных сообщениях.
  • Пробуждение в 6 утра и время сна в полночь.
  • Утренняя гимнастика каждый день.
  • Нет горячего душа.
  • Выполните не менее двух из трех еженедельных заданий.

За каждое ежедневное нарушение я буду жертвовать 1% своей недельной зарплаты после уплаты налогов на благотворительность. Таким образом, если я каждый день буду нарушать все шесть показателей, это составит 45% моей зарплаты.

Потенциальные будущие показатели включают в себя предотвращение всплесков глюкозы, проведение ежедневных сеансов медитации определенного качества, достижение определенного количества сна каждую ночь и достижение определенного балла с помощью Muse в рабочее время.

Первая неделя с 16 по 22 апреля 22 года будет пробной и не будет пожертвований на благотворительность.