AnyMath 文档
Notebook

It部门披萨和咖啡消费的计算

代码行与披萨食用量的相关性调查

理论基础

根据生产力方程,编写的代码行数为 与披萨消费相关 通过以下比例:

哪里 -开发人员的情绪系数, -周末因素。

咖啡的量 (以杯为单位)是通过生产力的导数确定的:

哪里 -咖啡因吸收系数。

In [ ]:
using Statistics, Random
gr()

# 模型参数
α = 2.5    # 情绪系数(星期一)
β = 1.5    # 周末因素
γ = 0.7    # 咖啡因吸收

# 数据:开放时间→代码行
小时=0:8
string_code= [0, 15, 45, 80, 95, 110, 115, 105, 100]

# 比萨计算(逆公式)
pizza_you需要=(代码行。/ α).^(1/β)

# 咖啡的计算(衍生)
咖啡应该=diff(代码行)。/ γ

println("最大代码行数:$(maximum(lines of code))in$(hours[argmax(lines of code)]):00")
println("比萨饼需要最多:$(圆形(最大(需要比萨饼),数字=1))件")
最大代码行数:115at6:00
披萨最大需要:12.8件

数据可视化

该图表显示生产力如何取决于一天中的时间。:

In [ ]:
# 生产力图表
plot(时钟,string_code, 
     marker=:circle, lw=2, 
     xlabel="时间(小时)", ylabel="代码行",
     label="生产力", legend=:topleft,
     size=(600, 350))
vline!([2, 5], lw=1, ls=:dash, c=:gray, label="咖啡休息时间")
Out[0]:
No description has been provided for this image
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="件")
Out[0]:
No description has been provided for this image
In [ ]:
# 3d生产力表面
x = range(0, 4, length=30)   # 比萨
y = range(0, 6, length=30)   # 咖啡
production_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生产力表面")
Out[0]:
No description has been provided for this image

结论

  1. 最佳比率: 3 куска пиццы + 4 чашки кофе
  2. 上周五,生产率下降 30%
  3. 深夜截止日期需要双倍剂量的比萨饼

建议

*基于购买比萨饼 每个开发人员一块
*将咖啡机放在不超过 距离工作场所的米
*星期五下午改用无咖啡因

开发者的幸福公式:

哪里 -工作时间, -随机种子。