尽管之前已经有100天、200天、365天的文章,但是这不是一篇象征性的500天的文章。对这样的一个事物,每个人都会有不同听看法。有的会说这是一件好事,有的则不是。但是别人的看法终究不重要,因为了解你自己的只有你自己。别人都只是以他们的角度来提出观点。

在这500天里,我发现两点有意思的事,也是总结的时候才意识到的:

  1. 编程的情绪周期
  2. 有意图的练习

那么,当我们不断地练习的时候,我们就可以写出更好的代码。

500天小结

我想你也听过一万小时天才理论的说法:要成为某个领域的专家,需要10000小时。而在这其中每重要的一点是有意图的练习——而不是一直重复性地用不同的语言去写一个相同的算法。如果我们有一天8小时的工作时间 + 2 小时的提高时间,那么我们还是需要1000天才能实现一万小时。

500天与10000小时

当然如果你连做梦也在写代码的话,那么我想500天就够了,哈哈~~。

虽然不是连击次数最多的,但是根据Most active GitHub users 的结果来说,好似是大陆提交数最多的人,没有之一。再考虑到提交都是有意义的——不是机器刷出来的,不是有意识的去刷,我觉得还是有很大成就感的。

而要实现500天连击很重要的两点是:时间和idea。但是我觉得idea并不是非常重要的,我们可以造轮子,这一点就是在早期我做得最多的一件事,不断地造轮子——如《造轮子与从Github生成轮子》一文中所说。除此,你还可以用《GitHub去管理你的idea》,每当你想到一个Idea以及完成一个idea的时间你就会多一次提交。

时间则是一件很讽刺的事,因为人们要加班。加班的原因,要么是因为工作的内容很有意思,要么是因为钱。如果不是因为钱的话,为什么不去换个工作呢?比如我司。看似两者间存在很多的对立,但是我总在想技术的提升可以在后期解决收入的问题,而不需要靠加班来解决这个问题。人总是要活着的,钱是必需的,但是程序员的收入都不低。

编程的情绪周期

接着,我观察到了一些有意思的现象——编程的情绪周期也很明显。

所谓“情绪周期”,是指一个人的情绪高潮和低潮的交替过程所经历的时间。

如下图所示的就是情绪周期:

简单地来说,就是有一个时间段写代码的感觉超级爽,有一个时间段不想写代码,但是如果换一个说法就是:有一个时间段看书、写文档的感觉很爽,有一时间段不想看书、写文档的感觉。这也就是为什么在我的GitHub首页上的绿色各种花。不过因为《物联网周报》的原因,我会定期地更新一个相关的开源项目。

但是总来说,我习惯在一些时间造一些轮子、创建文档,这就是为什么我的GitHub会有一些开源电子书的缘故。

有意图的练习

编程需要很长的学习时间,也需要很长的练习时间。尽管我是从小学编程,自认为天赋不错,但是突破了上个门槛还是花费了三四年的时间。其中的很大一部分原因是,没有找对一个合适的方向。而在这期间也没有好好的练习,随后的日子里我意识到我会遇到下一个门槛,便开始试图有意识的练习。

在我开始工作的时候,我写了一篇名为《重新思考工作》的文章。在文章中我提到了几点练习的点:

  • 加强码代码的准确性
  • 写出更整洁的代码
  • 英语口语 (外企)
  • 针对性的加强语言技能

在一些日子的练习后,我发现这还是太无聊了。天生就喜欢一些有意思的东西,有趣才更有激情吧~~。不过,像下图的打字练习还是挺有意思的:

还是能打出了一堆错误的字符。但是对比了一下大多数人的人,还算不错,至少是盲打。但是,还是存在着很大的提升空间。

随后,我开始一些错误的练习,如对设计模式和架构的练习。试图去练习一些在生产上用不到的设计模式,以及一些架构模式。而这时就意味着,需要生搬一些设计模式。最后,我开始以项目为目的的练习,这就是为什么我的GitHub上的提交数会有如此多的原因。

预见性练习

还有一种练习比较有意思,算是以工作为导向的练习。当我们预见到我们的项目需要某一些技术,我们可能在未来采用某些技术的时候,我们就需要开始预见性的练习这些技术。

好的一点是:这些项目可能在未来很受初学者欢迎。

总结

每个人都有自己的方向,都有一个不错的发展路线,分享和创造都是不错的路。

THE ONLY FAIR IS NOT FAIR . ENJOY CREATE & SHARE.

欢迎关注我的GitHub: https://github.com/phodal。

转发保留: GitHub连击500天:让理想的编程成为习惯

GitHub连击500天:让理想的编程成为习惯相关推荐

  1. c语言常用编程,常用C语言编程的习惯.doc

    常用C语言编程的习惯 编程修养 2011-11-12什么是好的程序员?是不是懂得很多技术细节?还是懂底层编程?还是编程速度比较快?我觉得都不是.对于一些技术细节来说和底层的技术,只要看帮助,查资料就能 ...

  2. 我的理想计算机应用作文,我的理想当编程师作文400字

    "水击石则鸣,人击志则宏.""有志不在年高,无志空长百岁."志者,理想也.人若无理想,则人生黯淡也. 我的理想是成为一名编程师. 说到我理想是怎么来的,自然是因 ...

  3. Github连击200天(1)——ShowCase

    今天是我连续泡在Github上的第200天,也是蛮高兴的,终于达了: 故事的背影是: 去年国庆完后要去印度接受毕业生培训--就是那个神奇的国度.但是在去之前已经在项目待了九个多月,项目上的挑战越来越少 ...

  4. 火爆GitHub:100天搞定机器学习编程(超赞信息图+代码+数据集)

    问耕 栗子 发自 麦蒿寺 量子位 出品 | 公众号 QbitAI 你是想喝一辈子糖水,还是想用AI改变世界? 但怎么想是一回事,怎么做往往是另一回事.学习和健身一样,不少人都停留在口头上,有各种借口不 ...

  5. github项目推荐:少儿图形化编程启蒙游戏

    介绍 codeABC是一个少儿编程启蒙项目,包括6个编程主题,每个主题包括超过20个关卡,typescript编写,基于Phaser游t戏引擎(https://github.com/photonsto ...

  6. Github上的一个非常流行的编程书籍索引

    非常流行的编程书籍索引 语言无关类 操作系统 智能系统 分布式系统 编译原理 函数式概念 计算机图形学 WEB服务器 版本控制 编辑器 NoSQL PostgreSQL MySQL 管理和监控 项目相 ...

  7. java8并发编程网,GitHub标星120K+的JDK并发编程指南,连续霸榜GitHub终于开源了

    前言 前面整理了一部分多线程源码的文章,看大家 正言 对于线程和 进程,我理解的就是汽车和高速公路 但是对于人脑的认知来说,"代码一行行串行"当然最容易理解.但在多线程下,多个线程 ...

  8. getallheaders函数在服务器报500错误_C语言服务器编程必备常识

    入门 包含了正确的头文件只能编译通过,没链接正确的库链接会报错. 一些常用的库gcc会自动链接. 库的缺省路径/lib /usr/lib /usr/local/lib 不知道某个函数在那个库可以nm ...

  9. C++为什么空格无法输出_那些C/C++程序员该具备的32个编程修养习惯!

    阅读本文可能需要较长时间. 1.版权和版本 好的程序员会给自己的每个函数,每个文件,都注上版权和版本. 对于C/C++的文件,文件头应该有类似这样的注释: /********************* ...

最新文章

  1. 【Java 并发编程】线程池机制 ( 测试线程开销 | 启动线程分析 | 用户态 | 内核态 | 用户线程 | 内核线程 | 轻量级进程 )
  2. 如何掌握平面设计中的减法思维
  3. Leetcode 398. 随机数索引 解题思路及C++实现
  4. C++中函数参数形式的总结
  5. 传感器为什么在低量程偏差大_传感器复习
  6. 软件测试(四)之 PrintPrimes
  7. Rust编程语言的核心部件
  8. tornado学习笔记day02-进阶与提升
  9. 用C语言实现回调函数
  10. java的两种核心机制(一)
  11. 浅析免费加密软件应该如何选择性下载
  12. 论文中插入高分辨率(dpi)图片
  13. Linux安装rabbitMQ
  14. 一些学习编程的优质网站
  15. 使用react-cropper结合图片压缩方法对图片进行裁剪压缩处理
  16. wps计算机一级考试,计算机等级考试一级WPS-Office考试大纲
  17. b500k电位器引脚接法_电位器引脚含义是什么
  18. Stay Hungry Stay Foolish的真正含义
  19. Sublist3r ---- 子域名枚举工具
  20. android 碎屏功能,android中关于点击屏幕,实现破碎的效果的实现

热门文章

  1. 优化 | 随机原始对偶混合梯度(SPDHG)算法及在图像处理中的应用
  2. 2018-10-27杭州银行信息技术岗笔试题目
  3. 程序员最喜欢说的几句口头禅!一张嘴就知道你是青铜还是王者!
  4. 初识C语言之等等等.......
  5. 万字Android技术类校招面试题汇总,Android岗
  6. 今天参加软通动力的笔试了
  7. html注入 绕过域名检查,微信域名拦截查询网页源码——一个非常实用的微信域名检测工具实现...
  8. 以太网数据帧格式及ARP协议
  9. 关于百度编辑器编辑模板
  10. 汉字编码-区位码、国标码和内码发展和区别以及为什么要加2020H、8080H