我的2017年总结
在知乎上,我回复了《coding到没脾气的时候,你一般都会干什么?》https://www.zhihu.com/question/264015952/answer/278283535这个问题。答案如下
“【不扯淡】年轻时死磕,年长点让小弟死磕,现在抓个专家一起吃饭,没有什么是一顿饭解决不了的,不行就二顿
工程师的能力不是编码和死磕,而是解决问题
很多人点赞,就说的再明白点
- 年轻死磕是为了长本事,30岁以前都可以这样做
- 带团队后,要懂得任务下放,让更多人帮你,别带人越多越累
- 30岁之后是打牌阶段,技能积累足够用,这时要注重社交,打组合拳才能玩的更好
少抱怨,多思考,未来更美好
强调30岁不是我创造的,大部分人都会认为30岁后事情,压力会明显大得多,比如家庭,孩子,房子,车子,票子,甚至是管理,权利,欲望等等吧。我感受最深的是身体不如从前和记忆力明显下降。”
这其实是我这1年一个非常大的变化。想明白了很多事,心态上好了很多。另外,作为网红的好处的是你能够接触到更多信息和更好的朋友圈子。这其实是以前没法做到的。我本身也是偏于内向的人,只是不得已做公众号,演讲,布道,应酬,收获当然也是相当丰富的。以前看事情是点,现在看的是趋势,能够做到心中有数,自然胸有成竹的感觉。
淡然,自省,大概是个比较好的状态。
2017年年初儿子出生,银川没有合适工作,不得已,去了去哪儿工作,这也是个艰难的选择。之后去了得到,现在在阿里巴巴,关于工作的个中曲折后面会讲。在qunar的时候比较闲,跟着莫子(付洪波)老师练了半年多的形意拳,后来被方圆和timyang等老司机影响,也开始学习摄影。其实书法,诗歌,摄影类的艺术来说是有共性的,希望自己能够坚持下去。
在个人品牌方面,这1年时间做了很多场500+人得演讲,写了很多精华文章,单篇最高超过9万阅读量。Node全栈公众号超过1.8万粉丝,我的个人知乎半年时间粉丝超过2200人(之前没玩过,感谢justjavac大神带路),组织了几次活动,也算是不错的尝试,可以接触到更多的Node.js相关的高手和各种需求,解决方案,对我的知识面是有很大提升的。另外,从qunar到阿里巴巴大厂摸爬滚打,也是学到很多东西,大厂是有很多有内涵的东西的,当然这要靠自己挖掘。同时,建立了个人网站 i5ting.com,目前东西还比较少,但至少起步了。
在2017年,完成了2本书:《更了不起的Node.js》和个人诗集《春天的恐惧症》。更了不起的Node.js拖了2年了,从Node 4写到node9了,过程是痛苦极了的,其实这2年对我的成长也是极大的,大部分时间都是在构建我个人的知识体系。本书“了不起”就是个很难讲的,要讲清楚“更了不起”就是件更难的事儿!好在node在最近2年应用场景等方面有了更广更好的应用,自身知识体系加上qunar和阿里巴巴的经验,能完成也是不容易的,换工作也是有好处的。目前2本书都交给编辑了,应该很快可以面世了。
儿子已经一岁了,我媳妇把孩子照顾的非常好,健康,活泼可爱。这一年,我往返北京和银川太多次了。以前在quanr的时候,我没有租房,几乎每周末都回家。宝宝还没出生,我就到北京上班了,在qunar工作的那段时间里,我是最嚣张的,请了好多假。每周五晚上回银川,周日晚上回北京,卧铺车厢无情的空调,吹得我中风几次。可是,还是要回家。老婆孩子都在地方,才是家。最难过的是周一到周五,只能看媳妇通过微信发来宝宝的视频,一遍一遍的看,一遍一遍的想哭。
媳妇发来宝宝的视频
媳妇发来宝宝的视频
只有九秒,一遍一遍的看
宝宝二个月了
已经会吃衣袖了
媳妇发来宝宝的的视频
只有九秒,既短又长
已经有六天没有见到了
愈加想念
他不会说话,只会哭喊
他不会动,虽然很想动
他不乖,除了吃奶的时候
他还不能陪爸爸一起玩
媳妇发来宝宝的视频
只有九秒,一遍一遍的看
一路上,一遍一遍的看
一遍一遍的想笑,想哭。。。
“路人一定都觉得爸爸是个可爱的神经病”
关于工作
很多人在网上黑我,说我换工作比较多。当然这是事实,但也要不至于如何如何吧。
Qunar的管理和公司流程做的非常好,其内部被携程合并之后能做的事儿并不多。其实在qunar做的事儿是比较少得,大部分时间都在往返北京和银川的路上。在qunar,我做了3件事儿
从qunar离职后,我去了得到,罗胖的公司。知识付费领域做的相当好的品牌。最有希望的独角兽,我以为自己能够在里面做出点成绩,我对罗辑思维的评价
- 品控做的确实好,所有产品公司里确实牛逼,打磨一个课程能够如此用心,真是难得。编辑工作做的也极好,对于错字,典故等也审核极其严格。
- 产品细节做的也不错,快刀青衣对产品的把握感觉非常好,如果没想清楚,宁可不加,这在某种程度上,保证里app的简洁。
但是一个快速增长的公司必然面临扩张期的阵痛,老的项目一堆,新招一堆高手也不会立马奏效。面临的都是两难选择,之前的东西不想碰,自己擅长的又用不上,真是很尴尬。之前我以首席架构师进去的,但没法在架构上做改进,很多东西不是一个人能搞定的。另外业务发展太快就导致管理跟不上,天天各种需求追的要命,还要兼顾团队建设,这事情哪能鱼和熊掌兼得呢。
我对自己的定位是专注于Node.js技术,既然没法做更多Node.js相关的内容,不如就离开。
我个人挺喜欢快刀的做事风格,也可怜他的处境。我也创过业,也激情过。我特别理解他的想法。他选了个好方向,罗胖和脱不花也确实是在各自领域做的不错,祝福吧。
之后,我去了阿里巴巴大文娱,就是之前的老优酷,技术名声以前是不太好的。但好在被阿里收购1年多得时间,基本都改成阿里基因了。我进入的时间还好,老板也很信任,交给我很多我很有干劲的工作。比如h5播放器,之前很多人都没搞定,把一个极其传统的代码改成一个时髦的开发方式,使用babel,webpack,做了单元测试和端到端测试,采用模块化和面向对象,架构做的我觉得还不错。我能感觉到团队的变化,我很高兴的。当然,我对大家也是比较狠的,每天review代码到很晚,每个细节都会抠,每天回家都非常玩,大家其实状态还不错,解决了以前的困扰,在技术能力上也有提升,最重要的是有成就感,原来这样写代码,大家都可以的。这种带团队的过程对我来说也是非常有成就感的。当播放器成熟,内部稳定后,通过公司审批后,也会走开源之路,也希望给公司的技术影响力做一些贡献。
我是降薪来的阿里,原因有三,一是有事可为,老板重用你给你机会,二是集团内部是open的,偏偏我知识面足够可以看出它们的好处,算是另一种补偿吧,三是对个人品牌是一个升级,狼叔的职业生涯到此已经足够了,进可攻退可守,也算另一种自由吧!
钱多是个优势而已,还有氛围,文化,信仰
- 牛人多
- 业务需要
- 成熟后有更多精力
- 内部竞争,优胜劣汰
- 财务相对自由,可以追求信仰了
前几天还和 @苏千 聊,我和 @死月絲卡蕾特 相继入职阿里,还有cnode社区著名程序员也即将入职阿里,当时大家开玩笑说:
“前端的终极归宿是阿里,不是在阿里,就是在去阿里的路上”
另外要说的一点是pc和h5站在使用Node.js做api中间层,其最佳实践已成型,量也是极大的。以前前端玩得还是比较弱,如果能够缓存+控制页面数据,获得一个性能极大的提升也是极好的。2018年,争取拿这个做主题演讲上qcon或archsummit大会。
每天忙得很开心,这就是我现在状态。其实,我的折腾还是在于想做些事情。如果你也想跟我一起做事,请将简历邮件给我 langshu.ssl@alibaba-inc.com,团队大量招人,也可以帮忙推荐给集团其他部门。
关于《更了不起的Node.js》一书
节选部分和目录,让大家先睹为快。
Node.js 简介
Node.js 诞生于 2009 年,由 Joyent 的员工 Ryan Dahl开发而成,之后 Joyent 公司一直扮演着 Node.js 孵化者的角色。由于诸多原因,Ryan 在2012年离开社区,随后在2015年由于 Node 贡献者对 es6 新特性集成问题的分歧,导致分裂出iojs,并由 iojs 发布1.0、2.0和3.0版本。由于 iojs 的分裂最终促成了2015年Node基金会的成立,并顺利发布了4.0版本。Node.js基金会的创始成员包括 Google、Joyent、IBM、Paypal、微软、Fidelity 和 Linux基金会,创始成员将共同掌管过去由 Joyent 一家企业掌控的 Node.js 开源项目。此后,Node.js基金会发展非常好,稳定的发布5、6、7、8等版本,截止发稿最新版本已经是8.6,长期支持版本是6.11。
Node.js 不是一门语言也不是框架,它只是基于 Google V8 引擎的 JavaScript 运行时环境,同时结合 Libuv 扩展了 JavaScript 功能,使之支持 io、fs 等只有语言才有的特性,使得 JavaScript 能够同时具有 DOM 操作(浏览器)和 I/O、文件读写、操作数据库(服务器端)等能力,是目前最简单的全栈式语言。
早在2007年,Jeff Atwood 就提出了著名的 Atwood定律
任何能够用 JavaScript 实现的应用系统,最终都必将用 JavaScript 实现
目前 Node.js 在大部分领域都占有一席之地,尤其是 I/O 密集型的,比如 Web 开发,微服务,前端构建等。不少大型网站都是使用 Node.js 作为后台开发语言的,用的最多的就是使用Node.js做前端渲染和架构优化,比如 淘宝双十一、去哪儿网的 PC 端核心业务等。另外,有不少知名的前端库也是使用 Node.js 开发的,比如,Webpack是一个强大的打包器,React/Vue是成熟的前端组件化框架。
Node.js通常被用来开发低延迟的网络应用,也就是那些需要在服务器端环境和前端实时收集和交换数据的应用(API、即时聊天、微服务)。阿里巴巴、腾讯、Qunar、百度、PayPal、道琼斯、沃尔玛和 LinkedIn 都采用了 Node.js 框架搭建应用。
另外, Node.js 编写的包管理器 npm 已成为开源包管理了领域最好的生态,直接到2017年10月份,有模块超过47万,每周下载量超过32亿次,每个月有超过700万开发者使用npm。
当然了,Node.js 也有一些缺点。Node.js 经常被人们吐槽的一点就是:回调太多难于控制(俗称回调地狱)和 CPU 密集任务处理的不是很好。但是,目前异步流程技术已经取得了非常不错的进步,从Callback、Promise 到 Async函数,可以轻松的满足所有开发需求。至于 CPU 密集任务处理并非不可解,方案有很多,比如通过系统底层语言 Rust 来扩展 Node.js,但这样会比较麻烦。笔者坚信在合适的场景使用合适的东西,尤其是在微服务架构下,一切都是服务,可以做到语言无关。如果大家想使 JavaScript 做 CPU 密集任务,推荐 Node.js 的兄弟项目 fibjs,基于纤程(fiber,可以简单理解为更轻量级的线程),效率非常高,兼容npm,同时没有异步回调烦恼。
关于本书
本书是我学习和使用 Node.js 的总结。在学习和使用 Node.js 的过程中,我写了不少文章,并对一些文章进行了加工和完善,发表在cnode论坛和Node全栈公众号(nodeonly)上。在2015年初,我在天津创业,位置在空港附近,为了招人不得不做一些科普、布道的工作。当时是被忽悠的,创始人都不拿工资(蠢,被坑死后才知道),结婚后媳妇在银川,我手上没钱,又不好意思找媳妇要,所以和 StuQ 做了一点课程,效果还不错,后来就和 StuQ 结缘,做知乎 Live 等,霍老板钦定 StuQ 明星讲师。随着 Node.js 科普、布道的增加,我就萌生了写一本书的想法,希望能比较系统地总结相关知识,巩固自己的知识体系,而不是停留在『零散』的状态中。正好被博文视点的大编辑张春雨发现,于是就有了这本书。
首先,我参考一些相关的书籍,作了一个基础的思维导图。接下来,就要开始写作了,这也是最艰难的一关。
我没有按照从头到尾的顺序写,而是已有相对比较完善的知识点入手,比如Koa框架、异步流程控制等等。就这样,一点一点地写,实在不想写了,就先搁置一下,过两天继续写。整个过程持续了2年,和编辑开玩笑说:“开始写的时候是Node 4.0,交稿的时候Node已经8.0了”。
我在写作的过程中,给自己提了一个要求:尽量深入浅出,条理清晰。至于是否达到了,希望读者们多多批评指正,并给我提意见和建议。
目录
博文视点的美女编辑在苦逼的整理中,预计出版在3月之后,20章,800页+,定价预计在130+。
主题演讲
精华文章
年度文章《2017,我们来聊聊 Node.js》 https://cnodejs.org/topic/58eee565a92d341e48cfe7fc,此文截止发稿已经单篇超过9万阅读量。在qcon大会,被徐川主编选为推荐文章,答疑解惑,大局观还是相当不错的。另外《Node.js 2016 回顾以及2017展望》h ttps://cnodejs.org/topic/588a959b1dc8ff8739cbc66d 也是类似的精华文章。
网友yanlele评价
毕业开始就开始撸JS,因为以前java出身,始终放不下java,最近两个月才开始真正接触node,一直在想node真的有前景嘛?一直很困扰在下,在下所在的城市,几乎没有用node真正意义上做开发的公司。这篇文章我也是前几天才看到,反反复复看了很多遍,真的写的很好。希望node在未来的18年会越来越好。
狼叔回复的《Node相比传统服务端技术栈好在哪里?》https://cnodejs.org/topic/5a328967d92f2f5b185ace96,回复之后某个喷子的文章,据说贺老hax在阅读此文,因为太投入,导致坐过站了。
狼叔说:本来不想回复的,匿名的那哥们写的挺好的,虽然不懂他为什么要匿名。但看到某些回复,不得不说几句。乱解读,误人子弟的事,还是有必要澄清的,以免Node有无端被黑,相信这也是所有布道者都应该承担这种除魔卫道的责任。
《请别拿“死”人做文章》https://cnodejs.org/topic/59daf46f2543cb3368b1627e,主要是因为Node.js之父Ryan Dahl在google使用go,导致某些人过度解读。故而回复,以正视听
狼叔说:Node.js之父Ryan Dahl在2012年就离开社区的,我们必须要承认他作为创始人的伟大创举,但不能标签化,ryan不代表node,从他离开社区后,对于社区而言,他就“死”在曾经的丰功伟绩上,未来与他无关!
《迷茫时学习Node.js最好的方法》https://cnodejs.org/topic/59c75a3dd7cbefc511964688,这篇文章反响还不错,解决了部分人的迷茫。
狼叔说:这是真事儿,在3w咖啡整理书稿,然后小弟梁过来了,聊聊他的现状,一副很不好的样子,在天津我曾带过他大半年,总不能不管,我给他的建议是:“每天看10个npm模块”
对于学习Node.js迷茫的人来说,这是最好的方式,当你不知道如何做的时候,就要向前(钱)看,你要知道积累哪些技能对以后有好处。对于学习Node.js必经之路,一定是要掌握很多模块用法,并从中汲取技巧、思路、设计思想的。与其不知道学什么,为什么不每天积累几个技巧呢?
《请叫我Node.js 8》兼发布说明,https://cnodejs.org/topic/592e377e855efbac2cf7a4dd,Node.js 8的发布是里程碑事件,随后就发布了Koa 2.x正式版。
为了避免和V8引擎的名字冲突,请叫我Node.js 8
核心内容
- 是下一个长期支持版本
- 更新 V8 到 5.8版本: 核心变更TurboFan & Ingnition(加了jit即时编译)
- 更新 npm 到 5.0.0:宇宙最快+自带lock文件
- 引入新的 c/c++ 扩展方式:N-API,解决addon的编译问题
- Async函数性能提升
- Async Hooks API支持
《如果你来设计一个基于Webpack的前端开发工具》https://cnodejs.org/topic/591919d4ba8670562a40f106,对于webpack和前端工程化演讲,自以为是得意之作。能够真正从如何打包,到浏览器解包过程来分析的,目前看只有我一个人。帮玉浩review了《Webpack前端工程化入门》http://gitbook.cn/gitchat/column/59e065f64f7fbe555e479204。这篇入门也还是相当不错的。
虐狗文《从你的全世界悔过》https://cnodejs.org/topic/59a4102d9e95202d08c91d45,此文是七夕时给媳妇写的诗歌串起来的一篇文章,很多人说读了还挺感动,知乎上也收获不少赞。诗歌就不帖了,来一小段节选。
“喜欢一个人就是喜欢,不需要什么理由,你看到她第一眼的时候,就知道这个女人会注定陪我一生。我们也没什么物质追求,只是简简单单的,在一起,很开心,想结婚,想和她过一辈子。
很多人都知道我的网名是i5ting,这里的ting就是她,张婷的婷!我在很多公众场合都是这样自我介绍的:“大家好,我是i5ting,婷是我媳妇的名字”,然后大家就笑了。”
组织的活动
北京Node Party活动本想在年再举办一次,奈何太忙,放到2018吧。
付费学习
诗歌
个人诗集《春天的恐惧症》已付梓,由上海文艺出版社出版,168页,由著名诗人破破作序《物质时代的草甸之子》,在知乎上回复了《程序员可以培养的第二技能有哪些?》https://www.zhihu.com/question/264575890/answer/291053439
【很多人说写作,我想说你们那是码字。能高雅点么?】
今年诗歌写的少,只有20多首。
- 我的2017年总结
- 在22楼
- 儿子
- 星空漫想
- 好先生第三十五集观后感
- 《补身份证记》
- 我来的时候风景正好
- 谁说相见不如倾慕
- 节日
- 行走在阳光下
- 书签
- 相聚与相遇
- 媳妇发来宝宝的视频
- 从你的全世界悔过
- 春天的中午
- 大米
- 静静地看着他
- 梦魇
- 无题
- 烟囱与婴儿
- 初冬,一个干活的人
《补身份证记》的后2章节可为很精彩,很多人都非常喜欢。我是很不满的情绪,大概可见一斑。
这事儿也是有好处的
今天去厕所,无纸
一摸兜,一打还没来得及扔的临时证明
不就是一打纸吗?
虽然有点硬
虽然只有巴掌大小
我把大头照片一一取下
向辉煌抹去
那一刹那
我竟还忍不住感动
临时身份证上,姓名和身份证号码
深深地印在屁股上
其实,我个人最喜欢的诗歌是《星空漫想》。缺少的在补,想要的在继续。不知道能有多少人能够理解30岁之后的感谢。其实有很多人跟我一样。
《星空漫想》
像量天尺一样,鼓起勇气
向夜晚迈出大大的一步
我知道,离星空还远
我只是想给未来一个大大的拥抱
像烟花一样,一飞冲天
燃烧,绚烂,哪怕变成一缕青烟
我知道,生命和星星一样,可望而不可及
只能努力的,不错过每一颗
不知道自己拥有什么
也不知道自己想要什么
仿佛一切,只是向死而生
我们站在星空下,无限渺小
其实你还是你,夜还是夜,星空还是星空
缺少的在补,想要的在继续
在无限的找寻中,一直都是自己与快乐斗争
散落星空的战友,像极了无数个自己
总结
最后用《我的2017年总结》来结尾吧,元旦当晚,我和妻儿一起看电视,吃橘子,感慨一年过往。诗歌写的像故事一样,对比情景,还是比较温暖的。
这一年特别快
孩子已经快一岁了
我也出去了一年
许多心酸许多感谢
她觉得慢
她只做了一件事儿
照顾孩子,辛苦更多
感恩更多
媳妇给孩儿扒橘子
将橘子皮扒开
将橘子肉分几次
送到孩子嘴里
我给媳妇扒橘子
直接送她嘴里
宝宝拍拍我的肩
一定是嫌我送的快了
预告
极客时间App上,即将发表《Node.js全栈2018前瞻》专题
写这篇文章的原因是在2017年,我写了一篇《2017,我们来聊聊 Node.js》,单篇阅读量将近9万,效果还是相当不错的。但很多科普工作做的还不够好,比如在2017年底,被某些喷子在知乎上黑Node.js,当时我虽然回了一篇狼叔回复的《Node相比传统服务端技术栈好在哪里?》,但还是深感焦虑,很多人对Node.js理解的是不太正确的。
比如常见问题
- Node.js是js语法,能不能像java一样大规模开发?
- Node.js适不适合写后端?
- Node.js异步写法太麻烦,回调太恶心。。。
- Node.js性能到底和go相比如何,我要不要转go?
- 前端技术发展那么快,我该怎么应变?
故而,我打算在本篇文章里把2018年以Node.js为中心的主流趋势科普一下。希望为Node.js正名尽微薄之力。
大纲
- Node.js2017回顾和2018概览
- 不要异步,我们要同步流程控制:Async函数和更好的ES6模块模块
- 类型系统和面向对象的完美es6超集:TypeScript && flow && coffee
- 大前端、工程化与AI时代应变:Webpack && Weex & Electron
- 日渐成熟的Node.js企业级Web开发框架:Strongloop、Eggjs、Thinkjs
- Node.js生态、架构演进和商业案例再思考
【知乎Live】狼叔:如何正确的学习Node.js
Live 简介
你好,我是 i5ting ,江湖人称「狼叔」,目前是阿里巴巴技术专家,斯达克学院( StuQ )明星讲师, Node.js 技术布道者。曾就职于去哪儿、新浪、网秦,做过前端、后端、数据分析,是一名全栈技术的实践者。
现在,越来越多的科技公司和开发者开始使用 Node.js 开发各种应用。Node.js除了能够辅助大前端开发外,还可以编写Web应用,封装Api,组装RPC服务等,甚至是开发VSCode编辑器一样的PC客户端。和其它技术相比, Node.js 简单易学,性能好、部署容易,能够轻松处理高并发场景下的大量服务器请求。Node.js 周边的生态也非常强大,NPM(Node包管理)上有超过60万个模块,日下超过载量3亿次。但编写 Node.js 代码对新人和其它语言背景的开发者来说,不是一件容易的事,在入门之前需要弄懂不少复杂的概念。
我身边也有很多人问我:如何学习 Node.js ?作为一名 Node.js 布道者,我做过很多 Node.js 普及和推广的工作,对它的基本概念和核心模块都很熟悉; 此外,我还在撰写一本名为《更了不起的 Node.js 》的书,已经写了 2 年,积累了很丰富的资料,本次 Live 也将为你提供对 Node.js 更全面的解读。
本次 Live 主要包括以下内容
- 前言:学习 Node.js 的三个境界
- 准备:
- Node 用途那么多,我该从哪里学起?
- Node Web 框架那么多,我该怎么选?
- 关于 Node 的书几乎都过时了,我该买哪本?
- 延伸:大前端变化那么快,如何才能做到每日精进?
- 实践:从招聘角度来看, Node.js 开发需要具备哪些技能?
- 答疑:回答大家的问题
本次Live主要是科普,适用新用户和比较迷茫的Node朋友,参加地址
https://www.zhihu.com/lives/928687583372926976
时间是明天晚上哦