这也是我关于自己在Github上连续提交173天的过程。准确说这并不是我连续173天在Github提交代码,在整个过程中总共中断了两次,第一次是在农历大年三十,和家人吃完年夜饭聊天完已经过了提交时间点了,第二次是在3月2号,家里的猫因为生病照顾了一个晚上。总得来讲这是一次非常有挑战但是却收获很大的过程。

开始

故事起因于自我懈怠的感知,我在去年年底有很长一段时间不知道自己改做什么,处在十分疲惫的状态,以至于在12月的时候连着一周没有任何提交,知道我觉得自己应该做些什么改变。我想起了很早之前的一遍博客:《我泡在GitHub上的177天》,于是,我决定试着实践一次在 Github 上进行连续提交,以改变自己的状态。

我试着按照博客中的约定给自己定下了几条提交的要求:

  1. 提交必需要有意义,不能是简单的编辑格式或者修改错字;
  2. 不能自动化提交过程,不能作弊。

前半段

不可否认,在这个计划刚开始的时候热情十足,有过40个提交的一天,以及好些个十几个提交的日子,虽然40个提交只是整理博客带来的,但也是让我很是激动。即使我在前半端的时间里有过两次终端也没有对降低我的热情。

后半段

在第60天之后,这个挑战的难度就开始显现了,一是我开始出现的疲惫,另一个是因为我开始出现提交枯竭。我在这次挑战中的提交大概有以下几类:

  1. 博客已经相应带来的修改;
  2. 自己的项目想法的提交,比如 SMSFilters
  3. 《强化学习导论(第二版)》的学习笔记;
  4. 对开源项目的贡献,包括issue和PR;
  5. 日常阅读文章的记录。

博客刚开始写得勤,一周一到两篇,后来能两三周一篇就已经算很多了;项目的想法不可能一直有;学习笔记越到后边越困难,渐渐一章一节的时间就加长了;对开源的项目的提交并不能都得到合并;阅读的文章也不能总是读到很优秀的文章。所以后来,每天的提交频率基本处于保底。

结束和总结

今天决定这是这次挑战的最后一个提交,写成一遍简短的博客做为结束。终于如释重负,放下了心头的重担。

正如那篇博客提及的一样,如果一个好习惯被刻意过度遵循的话也会变成坏事;每天完成的一个目标连起来形成一条链时,它会激励你去继续完成目标,保持这条链不断裂。

最后,我觉得对于 Github 的提交统计计算也有一些小的提示和想法:

  1. fork别人的项目也是算提交的,即使你没给别人提交PR,可能Github觉得这也算是为开源的传播贡献了一份力量吧;
  2. 提交时间上,在北京时间大约一点之前的提交都还算是头一天的提交,当然我觉得在这个点提交也是要冒没赶上的风险的;
  3. commit 之后就算时间了,不一定要马上推送到远程;
  4. 好的想法也算是提交,对一篇文章的想法也可以包含在内。

我最后的建议是进行一次这样的挑战,可以给自己带来一个好的习惯。