根据Git推算程序员大佬作息:同样是熬夜,为什么他发量那么多?

语言: CN / TW / HK

程序员大佬都啥时间干活?同为程序员,自然有办法弄清楚了。俄罗斯程序员 Ivan Bessarabov 根据大佬们在 git 上的工作时间推算出他们的作息时间。我们查看了他们的工作时间以及照片,只能羡慕地说:同样是熬夜,为什么他发量那么多?

如何成为大佬?这恐怕是所有领域工作者都有的疑问。那么大佬都是怎么安排工作的呢?这与 TA 们的成就有何关系呢?

俄罗斯程序员 Ivan Bessarabov 想要一探究竟,他此前就职于俄罗斯互联网企业 Yandex。

这位程序员小哥通过「代码」查询了几位程序员大佬在工作日及周末的工作时间,其中包括 Linus 之父 Linus Torvalds、Go 语言之父 Rob Pike、PHP 之父 Rasmus Lerdorf、Python 之父 Guido van Rossum、Swift 之父 Chris Lattner 等。

程序员的重要产出——代码,通常存储在版本控制系统(VCS)中,将代码上传到 VCS 系统的时间点均被记录下来。其中最流行的版本控制系统是 git。每次上传代码就是一次「commit」。

$ git cat-file commit 82be015
tree 496d6428b9cf92981dc9495211e6e1120fb6f2ba
author Ivan Bessarabov <ivan@bessarabov.ru> 1563188141 +0300
committer Ivan Bessarabov <ivan@bessarabov.ru> 1563188141 +0300

Initial commit

Ivan 正是通过这种方式了解程序员大佬的工作时间。如上图所示,通过 commit 信息获取上传项目的作者、联系邮箱、上传的项目、以及上传项目的时间(以时间戳的形式)。通过编写一个简单的程序,就可以获取这些信息了。

Linus Torvalds

Linus Torvalds 是 Linux 系统和 git 项目的作者。该项目对他在 Linux 和 git 项目上的工作时间分别进行了统计。

工作日以及周末时,Linus Torvalds 在 Linux 项目中的活动时间。

工作日及周末时,Linus Torvalds 在 git 项目中的活动时间。

根据统计,Linus Torvalds 在上午 10 点提交的 commit 最多,而深夜的工作则相对少得多。看来,这位大神的工作时间非常规律。不仅如此,从发量来看,Linus 也算是程序员中的养生典范(秃头少女表示羡慕……

不过他的活跃度可不低。如图:

Rob Pike

Rob Pike 是 Go 语言之父。该项目选择了他在 Go 语言项目上的活动记录。

从工作规律上来看,似乎和 Linus 类似,但是发量就少多了。相对而言,Rob 的 commit 时间更加集中。

同样,Rob 的 contribution 时间也非常集中。

Rasmus Lerdorf

PHP 语言之父 Rasmus Lerdorf 的活动记录如下:

这恐怖的工作时间!哪怕是凌晨三四点也有相当规模的 commit,连周末也一样在工作,也难怪发量稀疏了。

相比于 Linus 老爷子,Rasmus Lerdorf 的 contribution 更加佛系。

Guido van Rossum

「仁慈的独裁者」Python 之父 Guido van Rossum 的在 CPython 项目的活动记录如下:

可怕的 commit 量,即使凌晨也保持在一定的数量,简直是程序员中的战斗机。但是 Guido 似乎偏爱在周末好好休息,休息日的贡献非常低。

所以发量不是爆肝指标,而是战斗力指数吗?

Chris Lattner

Chirs Lattner 是 LLVM 编译器和 Swift 语言的作者。他曾在苹果公司工作,并短暂就职于特斯拉,现任职于谷歌。

以下是根据他在 Swift 语言项目上的活动时间统计出的结果:

Chris 的「心型」发际线可以说是很别致了。这一发际线的成因似乎也能从 commit 分布中找出蛛丝马迹。这位大神似乎非常喜欢通宵,那么你以为他早上和中午是在补觉吗?不不不,Chris 在 twitter 上表示:经常深夜撸代码是为了白天可以有更多时间进行团队交流和合作。

从 contribution 数据上,这位大神近来工作减少了很多,是想好好休息养发护发吗?

阅读过这些数据,好奇心终于得到了一些些满足。不过,虽然有的大神即使熬夜,也能精力充沛、发量丰富,但是大家还是要劳逸结合,好好休息呀。

分享到: