笑死,程序员延寿指南开源了。。

2024-03-21 08:59
文章标签 程序员 开源 指南 延寿

本文主要是介绍笑死,程序员延寿指南开源了。。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

上一篇:全网显示 IP 归属地,是怎么实现的?

 

来源|金磊/丰色/量子位(ID:QbitAI)报道

最近,一个名为《程序员延寿指南》的项目在GitHub上大受欢迎,几天狂揽5.5k颗星星

53e0289ee6b32970b15c300c2de8eb81.png

这个项目的作者本人,恰恰就是一名程序员

cf9375bd2c62200d621d8769c462d560.png

在这份延寿指南中,各种方法被严格地划分成输入、输出和上下文三类,每一种方法都有可以量化的指标和结果。

6c08413887c5da147891a1d4ba684412.png

这可不是瞎编,据作者表示每一个步骤和方法都有严格的研究依据——

其中有不少方法,都是根据Science、Nature、柳叶刀等顶刊中的最新研究“提取”的。

相比保温杯泡枸杞,简直过于硬核了有木有?!

来看看到底是个怎么延寿法。

程序员,该如何延寿?

纵观这个项目,其所围绕的一个关键词是——

ACM

但并不是你以为的那个ACM,它的全称是All-Cause Mortality,中文叫做全因死亡率

(连关键词都挺程序员味道的)

全因死亡率,严谨地来讲,是指一定时期内各种原因导致的总死亡人数与该人群人口数之比。

而这个项目要做的,就是把这个ACM在程序员人群中“打下去”

项目作者所参考的主要指标,便是与ACM相关的众多文献了。

但在这其中,也需要注意2点:

  • 增加寿命与ACM关系非线性:这里假设 DeltaLifeSpan=(1/(1-ACM)-1)*10

  • 变量无法简单叠加:各个变量之间并不符合独立同分布假设

因此,项目作者便将“ACM打下去”的工作,划分为了更细致的三大类,并给它们取名为:

输入输出上下文

程序员延寿大法一:输入,Input

这里的“输入”,好比程序里的Input,而是指程序员群体从外界摄入到体内的各种因素。

主要包括固体、液体、气体、光照和药物等。

“固体”为例,项目作者便以发表在JAMA子刊的一项研究为例做佐证:

224d46736756c271d58ca426d9218f1e.png

这项为期八年的研究表明,如果每天平均每天增加至少半份红肉摄入,那么ACM将增加10%。

而每周吃两份红肉或加工肉类(不包括禽或鱼类),则ACM会增加3%。

df0aec2e57e09d88d59da52d84db5fa9.png

当然,除了红白肉的分析之外,项目作者也列举了其它人们平时会摄入的食物,对ACM的影响分析。

总结来说便是:

  • 吃白肉:ACM可降低3%-11%

  • 蔬果为主ACM可降低17%-26%

  • 多吃辣:ACM可降低23%

  • 多吃坚果:ACM可降低4%-17%

  • 少吃蛋黄:若每天吃0.5颗,ACM会增加7%

  • 中量碳水、多吃植物蛋白:ACM可降低10%

除了“吃的”之外,平时我们“喝的”也会对ACM产生影响:

喝咖啡(-12%~-22% ACM)、喝牛奶(-10%~-17% ACM)、喝茶(-8%~15% ACM)、少喝或不喝甜味饮料(否则每天一杯+7% ACM,+多巴胺)、戒酒或每周100g(纯酒精量(g)=饮酒量(ml)×酒精浓度)。

92cc9a2792a47f94927e2fc820c6f72a.png

《柳叶刀》研究:每天1斤牛奶或酸奶,心血管死亡风险下降23%

至于气体方面,首先要解决的便是吸烟问题了。

对此,项目作者在经过对ACM文献调研之后发现:

吸烟会让ACM增加50%,寿命平均缩短11至12年。

除此之外,像多晒太阳可以降低40%的ACM。

而药物方面,例如二甲双胍可以让糖尿病人可以平均多活3年、复合维生素可以患癌风险降低8%,亚精胺和葡萄糖胺分别可以降低ACM30%-60%和39%。

分享资料:Alibaba开源内网高并发编程手册.pdf

程序员延寿大法二:输出,Output

类比上述的输入,这里的输出指的便是程序员们在体外的一些活动了。

例如运动方面,根据《柳叶刀》一项120万人参与的研究,仅是 挥拍运动,若是每周能保持3次,每次45-60分钟,便可以让ACM降低47%

还有程序员们得好好刷牙,这样会让ACM降低25%!

4654f07b6e953e53d2978b7bedd52929.png

除此之外,睡觉也是降低ACM的重要因素。

例如JAMA Network Open的一项研究,便指出了每晚的睡眠时长与全因死亡率的关联。

具体而言,每天睡7小时全因死亡率最低。

若是在22-24点间睡觉最好,早睡和晚睡会分别增加43%和15%的ACM。

4c79319a37a14350170fb7f6be129c12.png

程序员延寿大法三:上下文,Context

就像一段代码有了外部变量,这段代码便无法独立运行。

程序员们的健康也是如此,ACM会受到外部环境的影响。

例如研究表明,悲观情绪会与ACM有所关联(虽然乐观情绪并不会起到保护作用)。

甚至贫富差距减肥都与ACM息息相关06db182dc2a1b1f7d7db89529e374c55.png

……

当然,项目作者也对这项工作提出了不足之处

因为有些文献之间有显著矛盾的观点,例如对于碳水摄入的比例;还有些文献存在较大争议,例如有人认为22点前睡觉会43%的ACM。

因此,项目作者也指出:

所有文献表明的更多是相关而非因果。

那么问题就来了:

延寿指南,靠谱吗?

这本指南,充满干货,文档中一本正经的态度也让人忍俊不禁。

但同时,它也躲不过“程序员的严谨”——有人就提出了很重要的一个问题:

引用的链接都有可信度吗?

毕竟这年头“谣言”可是不少,而这里面还包括不少第三方的文章。

76da35fa309a7ad73db942908dce04ec.png

于是,我们找到项目作者本人,与他深度交流了一番。

作者:背后的论文全部看过

项目作者在我们的采访以及回答网友疑问中都表示,虽然有的链接放的不是原文,但里面的内容都可以溯源。涉及到的论文他都一一读过。

还得提一句的是,他自述曾为了根治鼻炎,在看完医生的同时,还自发看过不下4、50篇论文,包括欧洲鼻窦炎鼻息肉诊疗指南EPOS等。

可以说,医学论文没少看。

但是由于这类专业论文读起来十分晦涩,也缺少阅读体验,项目中的证据才用了这些易读的文章呈现。

现在经过大家的建议,他已经在陆续加源文献,并且后续也会把期刊名、影响因子、评级等常规评价方式透出来。

同时大家也注意到,里面涉及到了一些结论矛盾的研究,也正如刚才所述,作者也都一一标注。

而关于矛盾研究,他认为,可以根据研究本身的质量做评估。

因为有时候一些研究也并非完全矛盾,研究时间、研究人群、实验方法不同时,同一个选题确实会得出不同的结果。

项目由头要追溯到小时候

说起来很有趣,作者是在小时候突然有一天意识到:原来自己终有一天会离开世界。

这让他很难过,一度对着父母大哭。

正是这次发现,让小小年纪的他就想着以后一定要活得更久一些0a3b6c54a891c54b353524eef8c906f6.png

在成长的过程中,他看过很多没有依据包括长辈灌输的“养生方法”,就萌生了量化各个因素对全因死亡率影响的念头,开始了经年累月的数据积累。

前几个月他在参加一个技术社群之后小范围分享了这些数据,没想到引起了非常高的好评率,还经常有人找到他要材料,索性就开源了。

网友:How to live longer with hair?

这个项目一放上程序员聚集的GitHub,短短一天就涨了1500+star。

在别的平台,有不少非程序员网友还会贴心地转给身边的程序员朋友看。

有人打趣道:目标、行动、分析、输入输出……这几个关键字一出来,简直就是被OKR支配的寿命管理。

而作者的解释就更有趣了:因为最近经常听到human-in-the-loop的观念,这个文档里人就可以看成一个Object,修改不同的输入、输出、上下文,就可以改变人。

1cebd8da33372468e0b300d5772041e5.png

(可以,这很程序员。)

写不完的bug,没日没夜的加班……如何活得更长,确实是这个群体非常值得关注的问题。

不过,大家似乎并不满足于此。

比如在项目的Issues中,就有人提问:

How to live longer with hair

d0becd9faf14f1ee3911c69538fa6f71.png

对程序员来说,头发可是比什么都重要:头发都没有了,要这长命百岁有何用……

6db3e4e82683584e718c2749d4b20b49.png

以及不仅要保住头发,还要显年轻才行。

这不就有人问:

“作者大大,是否有兴趣开一个How to look young?

63e2fdf5cff2136913c4ca0e32c29909.png

毕竟二十多岁被人说像七老八十的滋味谁明白?(旺柴)

3c72cce29d13eb13d01fcac9405b2552.png

总之,别的不说,这届程序员是越来越有觉悟了——做饭、养生、考公、买房……全都安排得明明白白的。

而这些意见,作者表示会考虑。

比如他想到了“延寿先锋”哈佛教授David Sinclai,或许后面在找到足够的证据后,可以把他的食谱加上来。

以及有足够的数据支撑的话,他还会加上多巴胺量表

当然,“活得久且开心更重要”

作者神秘的面纱在这里揭晓,对,他本人也是一名程序员,还很年轻,90后。

他叫吴承霖,毕业于厦门大学计算机专业,曾在腾讯担任高级AI研究员,是当时部门最年轻的T3.3高级员工。

他的GitHub主页项目不多,但每一个标星数都不少。

5a321b24e78cee82948d1acf93ebce47.png

也许有人已经听过他的名字,他在几年前就入选了福布斯30位30岁以下精英和胡润30位30岁以下创业领袖。

是的,他现在已经是一家公司的CEO了。

81c75204f4b43ee2ca4789fb16ebd5ce.png

这家公司就是深度赋智,主要以AutoDL的形式提供AI中台SaaS服务,聚集了一帮来自腾讯、Google、百度、华为等公司的程序员。

对于这个爆火的项目,吴承霖表示谈不上什么意不意外。

他说,程序员的眼睛、鼻子、腰椎、脊椎、肝等几个部位都比较容易出问题。

因此“定向检测和预防性检测很重要”,当然,话锋一转,他也指出:“核心还是得自己对“健康”有较高的洞察力。”

现在的他基本会按照这些量表去生活,主要是运动和晒太阳方面做的还不够。

不过他不会苛求自己100%实行,毕竟:

活得久而开心比单纯的活得久重要。

最后,作为程序员的你,觉得如何才能“延寿续命”呢?

a017c6c64e31bab598112c6f8cc46241.png

GitHub项目地址:https://github.com/geekan/HowToLiveLonger

参考链接:

[1]https://jamanetwork.com/journals/jamainternalmedicine/fullarticle/2759737
[2]http://mdrf-eprints.in/1114/1/Association_of_dietary_patterns_and_dietary_diversity_with_cardiometabolic_disease_risk_factors.pdf
[3]https://pubmed.ncbi.nlm.nih.gov/34152010/#:~:text=Among%20Chinese%20adults%2C%20we%20found,diabetes%20and%20chronic%20kidney%20disease.
[4]https://jamanetwork.com/journals/jamanetworkopen/fullarticle/2783717
[5]https://www.nature.com/articles/s41591-020-1112-0.pdf

感谢您的阅读,也欢迎您发表关于这篇文章的任何建议,关注我,技术不迷茫!小编到你上高速。 

    · END ·

最后,关注公众号互联网架构师,在后台回复:2T,可以获取我整理的 Java 系列面试题和答案,非常齐全。

2b9e64e41722d57c35288c73b9bf3b1f.png

正文结束

推荐阅读 ↓↓↓

1.Alibaba开源内网高并发编程手册.pdf

2.2T架构师学习资料干货分享

3.从零开始搭建创业公司后台技术栈

4.程序员一般可以从什么平台接私活?                                                  

cc8cc1eb5a5edb740ce39b4b45dc2ee2.gif

这篇关于笑死,程序员延寿指南开源了。。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/832286

相关文章

Python中图片与PDF识别文本(OCR)的全面指南

《Python中图片与PDF识别文本(OCR)的全面指南》在数据爆炸时代,80%的企业数据以非结构化形式存在,其中PDF和图像是最主要的载体,本文将深入探索Python中OCR技术如何将这些数字纸张转... 目录一、OCR技术核心原理二、python图像识别四大工具库1. Pytesseract - 经典O

SpringMVC高效获取JavaBean对象指南

《SpringMVC高效获取JavaBean对象指南》SpringMVC通过数据绑定自动将请求参数映射到JavaBean,支持表单、URL及JSON数据,需用@ModelAttribute、@Requ... 目录Spring MVC 获取 JavaBean 对象指南核心机制:数据绑定实现步骤1. 定义 Ja

HTML5 getUserMedia API网页录音实现指南示例小结

《HTML5getUserMediaAPI网页录音实现指南示例小结》本教程将指导你如何利用这一API,结合WebAudioAPI,实现网页录音功能,从获取音频流到处理和保存录音,整个过程将逐步... 目录1. html5 getUserMedia API简介1.1 API概念与历史1.2 功能与优势1.3

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

SQLite3命令行工具最佳实践指南

《SQLite3命令行工具最佳实践指南》SQLite3是轻量级嵌入式数据库,无需服务器支持,具备ACID事务与跨平台特性,适用于小型项目和学习,sqlite3.exe作为命令行工具,支持SQL执行、数... 目录1. SQLite3简介和特点2. sqlite3.exe使用概述2.1 sqlite3.exe

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Redis过期删除机制与内存淘汰策略的解析指南

《Redis过期删除机制与内存淘汰策略的解析指南》在使用Redis构建缓存系统时,很多开发者只设置了EXPIRE但却忽略了背后Redis的过期删除机制与内存淘汰策略,下面小编就来和大家详细介绍一下... 目录1、简述2、Redis http://www.chinasem.cn的过期删除策略(Key Expir

SpringBoot整合Apache Flink的详细指南

《SpringBoot整合ApacheFlink的详细指南》这篇文章主要为大家详细介绍了SpringBoot整合ApacheFlink的详细过程,涵盖环境准备,依赖配置,代码实现及运行步骤,感兴趣的... 目录1. 背景与目标2. 环境准备2.1 开发工具2.2 技术版本3. 创建 Spring Boot

Python远程控制MySQL的完整指南

《Python远程控制MySQL的完整指南》MySQL是最流行的关系型数据库之一,Python通过多种方式可以与MySQL进行交互,下面小编就为大家详细介绍一下Python操作MySQL的常用方法和最... 目录1. 准备工作2. 连接mysql数据库使用mysql-connector使用PyMySQL3.