作为程序员，你在 2015 年都有哪些进步、收获与成长？
本来懒得写年度总结的，结果 弟弟邀请我回答，那就趁上班前稍微写一下吧。 先来一张 Github 的 Contribution 图： （我公开的仓库基本都是去年写的比较差的代码，大家没必要去看哈） 然后是一些统计数据，截至昨天： 将计蒜客的前端代码从原始的 HTML+CSS+JS 的开发，改为了采用 Browserify 方案的模块化。 基于模块化之上，设计了三层结构（可以在这里看到：完全使用browserify的方式生成前端代码有什么问题? - Jasin Yip 的回答），从而优化了静态资源的管理和加载策略，结合后端同学配置的强制缓存，做到了只有页面的 HTML 和百度统计脚本需要向服务器拉取，其余全部 from cache，极大提高了加载性能。 同时还推动了代码规范检测工具及自动化文档生成器的引入。 在自身的技术方面，今年学了 Vue，体验了 0.1x ~1.x 版本重构时无文档时代的酸爽，因为 Vue 结合 Webpack 会更爽，所以顺手学了 Webpack。 接触了 Vagrant，学会了从使用别人的环境到自己构建 vagrant 环境。 重度使用了 CodeMirror，在其之上根据业务封装了几层。在封装的过程中，设计模式和面向对象思想得到了很大的提升，把理论融入到了实际生产当中。 今年还花了大量的时间去研究 Mock Server 的搭建，在知乎和圈内朋友中讨论了挺多的，还输出了一篇大纲（ ），只是最近实在太忙，还没有时间写下去，只在公司内部做了一次技术分享，在这次再次跟各位等着看的朋友说声抱歉。 后端方面，由于项目中使用的是 Laravel，所以稍微学了一下，然后在新的 Node.js 项目中，参考 Laravel 的设计撸了一个简易的 Node.js MVC 框架，由于才开发半个月，目前还很简陋。目前主要用于前端监控系统的开发当中。 在时间管理方面，在 BOSS 的教导下灵活地使用日程表，大大提升了效率。 由于前端团队的扩充，从 BOSS 身上以及知乎上学习到了一些比如 OKR 之类的管理思想，并结合共享的日程表，提升了统筹团队进度的能力。 其实这一年还受到了一些挫折，比如去年年底写的教小朋友编程的项目，在今年上线第一版后就被砍了，作为第一个上了生产环境的项目，当时其实低落了挺久的。当然，每次经历挫折都能学到一些东西，在此之后，我没有再对我写的代码投放感情了。 另外，现实给我的完美主义打了好几巴掌，有好几次想推动新技术，被拒绝了好几次 ，现在我也不会再对公司的老项目再有什么大刀阔斧的想法了，只能一点一点推。当然，新项目还是会尽可能引入好技术的，毕竟没有那么多历史遗留问题。 Anyway，2015 年依然是我这二十多年来最精彩的一年。
1. Github多坚持了365天，一共有5165个commits，欢呼·~~。 发现：有些事，你多坚持一点点，你就能坚持下来。 2. 审阅的英文版书籍出版了，然后也翻译完了~~。 明白了：原来很多事情并没有相像中的那么难。 而，其实翻译一本书是一件很难的事，尽管之前我一直觉得很简单。 3. 看了一百多本计算机书——你真正需要的只是一本书的一两章，不要浪费时间全看完。 4. 三个月前，PM和Tech Lead一起创业去了。然后就是我当Tech Lead，才知道什么叫欲哭无泪——原来是当小弟的，现在突然变成大哥了。因为那时是当小弟，没啥做不了的，所以当时还签了三本书：一本写作、两本翻译——一本在翻译、一本已经翻译完了。那时正在换架构——重做，白天忙得要死，晚上回来还要写作和翻译等等。虽然不加班，但是每天累得和狗一样。 5. 年末总结的时候，总结了Web开发的流程： 而，我们就是那些觉得以前的代码是遗留代码，将其重新设计以后，我们又将其变成遗留代码。 6. 试着玩微信公众号(搜索: phodal)，然后在最后一天，有了原创保护——再也不怕被到处转载了。。