持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第3天,点击查看活动详情
昨天看了 Bulletproof Task Management in Notion,其中 Tasks 数据库中有一个字段叫做 Priority,用于根据 Urgency, Impact, Workload, Enjoyment 四个字段来计算一项任务的优先级:
根据视频及原文中提到的The Eisenhower Matrix可以知道,作者将 Matrix 中的两个维度共四种情况分为 4 个优先级:1, 2, 3, 4,数字越小优先级越高:
根据Task Database中的设置,优先级共分为四个维度:
- Urgency
- Impact
- Workload
- Enjoyment
每个维度均有 High, Medium, Low 三种程度。四个维度各有权重,最终计算出 Priority 项的值。
原文及视频中没有给出具体的计算方式,但根据视频中已有的 5 条记录,我们可以利用解方程的方式计算出每个维度的权重:
假设 High的优先级为 1,Medium的优先级为 2,Low的优先级为 3,设四个维度的权重分别为\(a, b, c, d\)。我们可以看到图中有几个特殊的Priority值:1.67、1.83、2.67,显然这是分数没有除尽而造成的截取误差。我们可以得到:
如此一来,由前四行我们可以得到方程组:
求解可得:
看样子作者认为享受程度不影响任务的完成🤣
总之,有了权重之后,我们就可以将 Priority 的计算方式写进 formula:
round(
(
if(
prop("Urgency") == "Low",
3,
if(
prop("Urgency") == "Medium",
2,
1
)
) / 3 +
if(
prop("Impact") == "Low",
3,
if(
prop("Impact") == "Medium",
2,
1
)
) / 2 +
if(
prop("Workload") == "Low",
3,
if(
prop("Workload") == "Medium",
2,
1
)
) / 6
)* 100
) / 100
单行版本:
round((if(prop("Urgency") == "Low", 3, if(prop("Urgency") == "Medium", 2, 1)) / 3 + if(prop("Impact") == "Low", 3, if(prop("Impact") == "Medium", 2, 1)) / 2 + if(prop("Workload") == "Low", 3, if(prop("Workload") == "Medium", 2, 1)) / 6) * 100) / 100
完成!🎉