- BrainTools - https://www.braintools.ru -

8 часов за ноутбуком: что происходит с мозгом разработчика, если смотреть на это глазами нейрофизиологии

Я решил перестать гадать, почему к вечеру код превращается в тыкву, а мозг [1] — в перегретый сервер. Вместо очередного поста про выгорание я полез в нейрофизиологию, собрал немного собственных данных, поигрался с ЭЭГ-гарнитурой, трекером сна [2] и статистикой коммитов. В этой статье — что реально происходит с вниманием [3], рабочей памятью [4] и дофаминовой системой разработчика в течение 8 часов за ноутбуком. Будет и биология, и цифры, и немного кода.


Почему я вообще полез в нейрофизиологию

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

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

Я выгрузил историю коммитов за 3 месяца и посмотрел распределение по времени. Параллельно я начал читать про рабочую память, префронтальную кору и нейромедиаторы. Оказалось, что 6–8 часов непрерывной когнитивной нагрузки — это почти марафон для мозга.

Самое неприятное — субъективно мы не чувствуем падение качества мышления [5] сразу. Нам кажется, что всё ок. Но скорость принятия решений падает, вариативность гипотез снижается, а мозг начинает выбирать более простые решения.

У вас бывало такое: в конце дня выбираешь более костыльный вариант, хотя утром бы точно сделал красиво? Это не лень. Это нейрофизиология.


Что происходит с вниманием и рабочей памятью

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

Рабочая память — штука ограниченная. В среднем 4–7 элементов одновременно. Когда мы дебажим сложную асинхронную логику [6], мы постоянно держим в голове состояние нескольких потоков, флагов, зависимостей.

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

Я ради интереса [7] провёл мини-эксперимент. Использовал потребительскую ЭЭГ-гарнитуру и замерял относительную мощность бета-ритма (ассоциируется [8] с активной концентрацией) и тета-ритма (часто растёт при утомлении).

Вот пример обработки сырых данных в Python:

# language: python

import numpy as np
import pandas as pd
from scipy.signal import welch

def bandpower(data, sf, band):
    low, high = band
    freqs, psd = welch(data, sf, nperseg=sf*2)
    idx = np.logical_and(freqs >= low, freqs <= high)
    return np.trapz(psd[idx], freqs[idx])

df = pd.read_csv("eeg_session.csv")

sf = 256  # частота дискретизации
beta_band = (13, 30)
theta_band = (4, 8)

results = []

for hour in range(8):
    segment = df[df["hour"] == hour]["signal"].values
    beta = bandpower(segment, sf, beta_band)
    theta = bandpower(segment, sf, theta_band)
    results.append({
        "hour": hour,
        "beta_theta_ratio": beta / theta if theta != 0 else 0
    })

print(pd.DataFrame(results))
8 часов за ноутбуком: что происходит с мозгом разработчика, если смотреть на это глазами нейрофизиологии - 1 [9]

График получился довольно показательный: после 4–5 часов непрерывной работы отношение бета к тете падало. Это косвенный признак снижения концентрации.

Интересно, что субъективно я в этот момент ещё чувствовал себя нормально.


Дофамин, задачи и бесконечные уведомления

Теперь про дофамин. В IT мы живём в системе мелких вознаграждений: прошёл тест — маленький всплеск, закрыл тикет — ещё один, получил апрув — отлично.

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

С точки зрения [10] нейрофизиологии, частые микропереключения увеличивают когнитивную стоимость задачи. Мозг тратит ресурсы на восстановление контекста. И вот тут начинается самое неприятное: префронтальная кора устает быстрее.

Я написал простой скрипт на JavaScript, который анализировал активность переключений окон (через логирование фокуса в рабочей среде):

// language: javascript (Node.js)

const fs = require('fs');

const data = JSON.parse(fs.readFileSync('window_activity.json'));

let switches = 0;
let lastWindow = null;

data.forEach(event => {
  if (lastWindow && event.window !== lastWindow) {
    switches++;
  }
  lastWindow = event.window;
});

const hoursWorked = (data[data.length - 1].timestamp - data[0].timestamp) / 3600000;

console.log("Switches per hour:", switches / hoursWorked);
8 часов за ноутбуком: что происходит с мозгом разработчика, если смотреть на это глазами нейрофизиологии - 2 [9]

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

Может, стоит иногда закрывать лишние вкладки не ради эстетики, а ради нейронов?


Ошибки, реакция и скорость мышления

Я решил проверить ещё одну вещь — как меняется скорость реакции [11] и принятия решений к концу дня. Для этого написал простой тест на Go, который запускал серию задач на выбор правильного ответа с ограничением по времени.

// language: go

package main

import (
	"fmt"
	"math/rand"
	"time"
)

func main() {
	rand.Seed(time.Now().UnixNano())

	start := time.Now()
	correct := 0

	for i := 0; i < 50; i++ {
		a := rand.Intn(100)
		b := rand.Intn(100)
		answer := a + b

		var input int
		fmt.Printf("%d + %d = ", a, b)
		fmt.Scan(&input)

		if input == answer {
			correct++
		}
	}

	duration := time.Since(start)
	fmt.Println("Correct:", correct)
	fmt.Println("Time:", duration)
}
8 часов за ноутбуком: что происходит с мозгом разработчика, если смотреть на это глазами нейрофизиологии - 3 [9]

Я проходил этот тест утром и вечером. Разница во времени выполнения достигала 18–25 процентов. Количество ошибок росло.

И это на примитивной арифметике. Представьте, что происходит, когда вы вечером проектируете сложный распределённый сервис.

Плюс добавляется ещё один фактор — глюкозный обмен. Мозг потребляет до 20 процентов энергии тела. При длительной работе без перерывов падает доступность глюкозы в активных областях. Это напрямую влияет на скорость нейронной передачи.

Вы замечали, что после тяжёлого созвона хочется сладкого? Это не просто привычка.


Что я поменял в своей работе

После всех этих наблюдений я перестал героически сидеть 8 часов подряд.

Я разбил день на когнитивные блоки по 90 минут с обязательной паузой. Самые сложные архитектурные задачи — только в первые 3–4 часа после начала работы. Рефакторинг средней сложности — во второй половине дня. Рутину и код-ревью — ближе к вечеру.

Количество багов в вечерних коммитах снизилось. Я стал реже откатывать свои же решения на следующий день.

Самое важное — я перестал верить ощущению, что если я сижу за ноутбуком 8 часов, значит работаю эффективно все 8 часов.

Мозг — не сервер с линейной деградацией производительности. Он скорее как система с нелинейной просадкой после порога нагрузки.

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

Автор: isergeymd

Источник [12]


Сайт-источник BrainTools: https://www.braintools.ru

Путь до страницы источника: https://www.braintools.ru/article/26290

URLs in this post:

[1] мозг: http://www.braintools.ru/parts-of-the-brain

[2] сна: http://www.braintools.ru/article/9809

[3] вниманием: http://www.braintools.ru/article/7595

[4] памятью: http://www.braintools.ru/article/4140

[5] мышления: http://www.braintools.ru/thinking

[6] логику: http://www.braintools.ru/article/7640

[7] интереса: http://www.braintools.ru/article/4220

[8] ассоциируется: http://www.braintools.ru/article/621

[9] Image: https://sourcecraft.dev/

[10] зрения: http://www.braintools.ru/article/6238

[11] реакции: http://www.braintools.ru/article/1549

[12] Источник: https://habr.com/ru/articles/1004324/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1004324

www.BrainTools.ru

Rambler's Top100