Расчёт потребления пиццы и кофе в IT-отделе
Исследование корреляции между строками кода и количеством съеденной пиццы
Теоретическая база
Согласно уравнению продуктивности, количество написанных строк кода связано с потреблением пиццы следующим соотношением:
где — коэффициент настроения разработчика, — фактор выходного дня.
Количество кофе (в чашках) определяется через производную продуктивности:
где — коэффициент усвоения кофеина.
In [ ]:
using Statistics, Random
gr()
# Параметры модели
α = 2.5 # коэффициент настроения (понедельник)
β = 1.5 # фактор выходного дня
γ = 0.7 # усвоение кофеина
# Данные: часы работы → строки кода
часы = 0:8
строки_кода = [0, 15, 45, 80, 95, 110, 115, 105, 100]
# Расчёт пиццы (обратная формула)
пицца_нужно = (строки_кода ./ α).^(1/β)
# Расчёт кофе (производная)
кофе_нужно = diff(строки_кода) ./ γ
println("Максимум строк кода: $(maximum(строки_кода)) в $(часы[argmax(строки_кода)]):00")
println("Пиццы нужно максимум: $(round(maximum(пицца_нужно), digits=1)) кусков")
Визуализация данных
На графике видно, как продуктивность зависит от времени суток:
In [ ]:
# График продуктивности
plot(часы, строки_кода,
marker=:circle, lw=2,
xlabel="Время (часы)", ylabel="Строки кода",
label="Продуктивность", legend=:topleft,
size=(600, 350))
vline!([2, 5], lw=1, ls=:dash, c=:gray, label="Кофе-брейки")
In [ ]:
# Тепловая карта: пицца × кофе по дням недели
дни = ["Пн", "Вт", "Ср", "Чт", "Пт"]
матрица_потребления = [
2 3 3 4 5; # завтрак
1 2 2 3 4; # обед
1 1 2 2 3; # ужин
3 4 5 6 8; # ночной дедлайн
]
heatmap(дни, ["Завтрак","Обед","Ужин","Дедлайн"],
матрица_потребления,
c=:YlOrRd, size=(500, 300),
xlabel="День недели", ylabel="Приём пищи",
title="Тепловая карта: куски пиццы",
legend=:right, colorbar_title="Куски")
In [ ]:
# 3D-поверхность продуктивности
x = range(0, 4, length=30) # пицца
y = range(0, 6, length=30) # кофе
продуктивность_3d = [α * p^β * exp(-c/γ/5) + randn()*5
for p in x, c in y]
surface(x, y, продуктивность_3d',
xlabel="Пицца (куски)", ylabel="Кофе (чашки)",
zlabel="Строки кода",
c=:plasma, size=(550, 350),
title="3D-поверхность продуктивности")
Выводы
- Оптимальное соотношение:
3 куска пиццы + 4 чашки кофе - В пятницу продуктивность падает на
30% - Ночные дедлайны требуют удвоенной дозы пиццы
Рекомендации
- Закупать пиццу из расчёта куска на разработчика
- Кофе-машину располагать не далее метров от рабочих мест
- В пятницу после обеда переходить на decaf
Формула счастья разработчика:
где — рабочий день в часах, — random seed.