logo
people
本期封面人物:大漠穷秋

大漠穷秋:一个写代码的浪人

来源:码云封面人物 丨 2019-09-02

NiceFish(美人鱼)作者,11 年开发经验,其中 5 年后端、6 年前端。熟悉 Java 相关的技术体系,在前端技术方面尤其有深入的研究,曾任 Angular 框架在中国的布道师。

本期嘉宾
大漠穷秋 :11 年开发经验,其中 5 年后端、6 年前端。熟悉 Java 相关的技术体系,在前端技术方面尤其有深入的研究,曾任 Angular 框架在中国的布道师。近两年来几乎走遍中国所有软件园,为众多企业提供技术培训与咨询服务。
NiceFish :是一个系列项目,目标是示范前后端分离的开发模式:前端浏览器、移动端、Electron 环境中的各种开发模式;后端有 SpringBoot 和 SpringCloud 两个版本。NiceFish(美人鱼)已在码云收获 3.4K 个 star,并入选码云 GVP。

正文

大漠穷秋老师您好,先来做一下自我介绍吧。

我是大漠穷秋,一个写代码的浪人。写了 11 年代码,前端、服务端、移动端,都有涉及,虽然水平一般,目前能做到单兵状况下攒一套覆盖多端的业务系统出来。在机房里面装过机器拉过网线,在东北的深山里面调试过测控表,在网吧里面免费给人讲 JS 被老板嘲笑过。出过几本技术书籍,卖得都一般般。在 ZTEsoft 时担任过技术委员会常务委员,直接负责的 FISH 框架成为了全公司统一使用的前端框架,至今仍在大范围使用。2016 年到 2017 年,担任Angular框架在中国的布道师。最近 2 年,几乎跑遍了国内所有软件园,给超过 60 家各种类型的企业提供过技术培训和咨询服务。

来讲讲最新发布的 Angular 8.0 吧,有哪些新特性值得关注?未来的版本还会有哪些变化?

8.0 向下兼容性非常好,只有一处大的 breaking change,就是路由配置的写法变了,采用了最新的 import() 函数。未来最值得期待的就是 Ivy Renderer 渲染引擎,这是 Angular 内核里面第三个版本的渲染引擎,根据官方的说法,Ivy Renderer 将会带来极大的性能提升,社区也一直在期待这个特性。

很多人是通过 Angular 认识了您,也有很多人通过您的宣传开始使用 Angular,那么您是什么时候接触到 ng,又是什么时候决定成为它的布道者呢?这些年来,Angular 在您心中扮演着什么样的角色?

2013 年的时候开始跟进 AngularJS ,那时候我还在 ZTEsoft 写代码,当时公司想封装自己的前端组件库,我们那个小组就开始研究。那时候 AngularJS 的版本号是 1.3.5,国内跟进 AngularJS 的人非常少。我从来没有想过要成为官方的布道师,官方也不知道我的存在。我一直在写文章、做视频,翻译书籍等等,直到 2016 年官方通过网络上的资料找到我,这时候时间已经过去了 3 年。

2017 年辞去 Angular Developer PM in China 一职后,您主要在从事什么?

主要在到处玩,到目前为止基本上跑遍了国内大大小小的软件园,国内技术人员的生存状态我还是看得比较清楚的。然后在 GitChat 上写了《Angular基础教程》,前后改了 3 个版本,目前总共有 40 多个小节,卖得一般般,累计有五千多份。还写了其它一些代码,我看了码云上的代码提交记录,频率还可以,不过这些都不值一提。

跑了这么多软件园,见到了很多形形色色的技术从业者,您有什么特别的感受可以分享一下吗?

我看到了各种规模的企业,有大型国企也有初创企业。不同企业做事情的风格真的非常不同,每一个毛孔里面都透露出不同的气息。我接触到了各种行业,有搞美容行业信息化的小企业,也有搞容器私有云的外企,有搞金融理财的,有搞医疗的,也有炼钢厂。在跟他们接触的过程中修正了我的很多错误和偏见,比如我一直认为技术搞得好的肯定是那些明星互联网公司,其实并不一定。有一家做足疗行业信息化的公司,做了 12 年,情况蛮好的,真的小而美。还有一家做证券的老牌国企,他们非常重视 IT 技术,内部的技术团队非常强大!他们紧贴证券业务做了很多组件,专业化程度不比互联网差。

我们注意到您那段时间发布并开始售卖一些 Angular 课程,NiceFish 系列教学项目也是这个时期出来的吗?

2016 年 9 月,Angular 2.0 发布,因为是一个断代升级,所以国内外的社区批评声音都很大,我在 Medium 和 Quora 上面看到大量的帖子在吐槽这样的版本升级。官方的开发者自己也在看这些帖子,他们的压力也都很大。2016 年 10 月,我正式开始全职帮助 Angular 项目组在国内做推广,合同工。2016 年 12 月,上海 GDD 大会,EBay 中国的一个朋友在展台上当众质问我“为什么要做这样的版本升级,我们现有的 codebase 规模那么大,我们应该怎么办?” 说实话,当时我挺尴尬的,我哪儿知道为什么要这样升级啊,那时候我刚加入进去才 2 个月。所以 GDD 会议做完之后,我就想整理一些内容来帮助中文开发者进行学习和升级,所以就开始做 NiceFish 这个项目,同时还录制了一个 19 小时的视频,写了几十篇文章。

这个教学系列还会加入新的项目吗?

我会把 NiceFish 做成一个完整的小产品,前端、服务端、移动端都做好,有需要的人可以用它来学习,也可以在上面继续二次开发做成自己的业务产品。这个任务近期就会做完,和一直以来的做法一样,所有这些都开源免费。

NiceFish 实际上也是在对 Angular 进行推广,与之前全职做推广相比,目前您对 Angular 的贡献有了哪些变化?

不需要写冗长的报告,也不需要应对内外的勾心斗角,全神贯注工作的时间反而变长了。有很多朋友私聊跟我说,“我当年就是看了你的视频才搞 Angular,才做的前端开发,你可不能跑”,对于这些朋友,我感觉有一些道义上的责任。所以,请放心,我会继续对 Angular 在中国的发展提供力所能及的支持。如果你们需要技术支持,请随时联系我,继续免费提供服务。

无论是做教学还是提供咨询服务,其实都是为开源做贡献的一种方式。之前您也在各个地方发表过很多公益演讲,在这个过程中,最大的感受是什么?

国内技术人员的分化很严重,有一些人非常强,功力深厚,也有一些人已经被公司各种压榨,基本上没有自己的生活了。尤其在北京,生活压力真的很大。上回在深圳,有一个老师讲的观点非常有意思,他说“北京的技术人员目前已经呈现出了典型的游牧化、帮派化的倾向”。实际上不光是技术人员,很多企业里面的管理层,包括企业本身,都呈现出了这种现象,这件事蛮有趣的。

目前 Angular 在中国的社区可以说是生机勃勃,能否分享一下您观察到的 Angular 在国内的应用和发展情况?您对此有什么看法?

希望发展得更好一些。

您曾经建议“程序员应当有一定的英文水平,否则永远只能拿到过时的二手资料”。那么面对任何一个开源项目时,是完善的本土社区更重要,还是英语能力更重要?

我自己出过几本书,所以我对出版流程比较了解。按照目前国内正规的出版流程,如果真正三审三校的话,加上写作的时间,怎么说也要 6 个月的时间才能出一本书,翻译的书也一样。所以你看,这里面就有很长的时间差。很多东西在硅谷可能已经风起云涌,在国内可能还没有中文资料可以看。这样一来,对于那些英文比较好的开发者,他们的优势就出来了,因为他们在每一波浪潮里面都比其他人更早地获得信息。所以,目前来说,技术人员对英文的学习还是不能放松。目前中文是互联网上的第二大语言,但是在西半球,英语还是占绝对的统治地位。将来中国进一步强大了,中文成为互联网第一语言的时候,我们对英文的需求就没有那么强烈了。之前我看到有老外开着 Google 翻译在那边看 ECharts 的文档,就是一个例子。

2015 年您曾在开源中国的访谈中提到“下一个时代的开源精神不仅仅是把代码放出来免费给别人用,应该是人的开源、设计思想的开源,是一帮人构建一个生态圈”。如今四年过去了,您认为我们和这个设想还有多远的距离?

有很大进步,但是还很远,国内的生存压力太大了。

您最开始是做后端开发的,后来是基于什么样的考虑投身了前端?

这些完全是公司安排,不是自己的刻意规划。2009 年搞 Adobe Flex 是因为江苏移动需要在监控屏幕上展示一些 flash 图形,然后让我去搞,我师父开车带我去书城买了本很厚的 AS3 书,然后就搞起来了;2013 年研究 AngularJS 也是项目组安排;2014 年做 FISH 框架是公司技术委员会规划的项目;只有 2016 年跳槽去做 Angular 的布道师这件事是我自己的主观意愿,然后就玩砸了。我命由天不由我,长恨此身非我有。

目前“前后端分离”成为了主流,对多平台的支持有很大的需求,前端也演变成了现在的“大前端”,您对当下的前端领域有怎样的看法?

在移动端这一块,国内外的场景已经完全脱钩了。因为有微信这个巨大的平台,国内各种小程序越来越流行,老外们目前还是没有能很好地理解这件事。所以在移动端,国内应该有自己独立的技术体系了。至于桌面端,因为处于下降通道,而且微软已经放弃了 IE,所以将来桌面端的前端开发会逐步走向统一。实际上现在市面上的前端框架,大部分的设计思路都非常像了,很多人已经发现了这一点。

对刚踏入前端领域的同学有什么建议吗?

凭良心讲,只会前端不够的,职业发展肯定受限。如果不同意,您继续,当我没说就好了。

工作之余是怎么给自己充电的呢?

我没有大志向的,喜欢的东西就一直看。

您是怎么安排工作和生活的?

最近几年都是自由安排,一段时间很紧张,一段时间出去玩。

作为码云的老用户,有什么想对码云说的吗?

码云目前的路子很好,针对国内的场景多做一些本地化处理,很多事儿老外都不一定能理解为什么会这样。比如微信小程序这件事,欧美开发者很难理解的,为什么搞这么大个“巨型 APP”,码云是土生土长的平台,有本土优势的。另外,码云的服务响应速度很快,对优秀项目的流量扶持也有目共睹,继续加油干!搞大搞强!

写在后面

最后很抱歉,这段说明我必须写出来。因为有一些话题是绕不开的,既然如此,就啰嗦一些,希望能说清楚。

2017 年 8 月,我在网络上写的文章引起轩然大波。为了平息事态,我辞掉工作并且清理了历年来在网络上发布的所有内容。在过去的 700 多天里面,我从未在任何公共平台为自己辩解。想法很简单:自己说错了话,自己承担责任,任凭口诛笔伐,绝对打不还手、骂不还口。

然而很可惜,树欲静而风不止。迄今为止,在各种平台和群里面,有一些人还在假借我的名义对 Vue 的作者和社区展开攻击,也有很多人仍在对我进行各种攻击。

对于这些情况,我以私人名义,再次向 Vue 作者个人表示诚挚的歉意,也再次向 Vue 社区道歉。我也替那些假借我的名义进行攻击的人道歉,毕竟事情因我而起,给大家带来了困扰,非常对不起。同时我也需要为自己澄清一下,如上所述,我已经彻底闭嘴了 2 年,公开场合一句话都不说,所以那些攻击性言论并非出自我本人,也不是我的授意。

在所有的攻击言论里面,有一条特别过分,需要单独澄清。我在一些平台上看到有人一直攻击 Vue 的作者说他的告状导致我离职,从而对他进行道德批判,但事实并非如此。我的离职与 Vue 作者没有关系,告状的邮件来自国内 Angular 社区中的一些人。这件事非常有趣,让我亲身体验到了外企在中国的顽疾。所以,对于那些利用我的离职对 Vue 作者展开的攻击,我再次向 Vue 作者本人道歉,这件事与你无关,是 Angular 社区内部的人一直在搞鬼,你不需要有任何心理压力。

同时我想对国内 Angular 社区的一些人说一些话,请你们停止假借我的名义来攻击 Vue 作者和社区。你们的言论只代表你们自己,不能代表我。也请你们不要再引用我的言论,误导大众。你们喜欢私下搞事情,而我喜欢公开说,你们的朋友被 Angular 项目组踢出去不是因为我,是因为他在微信群里面当众跟 Manager 争吵。如果你们因为这件事来苛责我,是没有道理的。当年,你们在各种群里抹黑我,趁我出差时不断收集我的黑材料给 Angular 项目组写邮件,这些事情我从未对任何人提起,现在也不想再提,但是你们见猎心喜,以为我软弱可欺,表演得越来越过分了。我的沉默,不是因为惧怕你们,只是为了社区的平静,也是为了不让这件事再波及他人。我呼吁你们几个人停止这些行为,我们井水不犯河水,也希望你们把心思更多地放在做事情上面,多做一些实事。

顺便,我也公开呼吁 Google 和 Angular 项目组:

  • 请更加重视中文开发者的诉求,在整个东亚地区,大中华区的开发者数量占比超过 90%,开发者本身的素质也远远高于其它地区。无论是技术还是市场,谁赢得中国区,谁就成功了一大半。在这一方面,Vue 社区的组织和运作方式远远好过 Angular。
  • 请不要因为其它因素把中国区的推广预算合并在 CJK 里面,请给大中华区编列独立的预算。这样你们就可以设立正式的组织来进行推进(哪怕人数很少也行),而不是像现在这样单纯依靠社区。大陆地区的市场和技术环境并非是你们目前所理解的样子,这里面暗潮汹涌、波谲云诡。

我本人与 Vue 作者和社区并无恩怨,在 2017 年之前我帮多本 Vue 书籍写过推荐语,都是应出版社或者作者自己的邀请。在目前 2019 年的大环境下,作为中国人,看到国人自己编写的技术框架发展得这么好,我感到由衷的开心(熟悉我的朋友都知道,这个话我不是今天第一次说)。而且作者本人的背景和经历放在那里,既有国际化视野,又能充分本地化,未来一定能做出更多一流的产品,前途不可限量。希望不远的将来,我们不仅有自己的前端框架,还要有自己的 OS、自己的各种芯片、自己的编程语言、自己的编译器、自己的通讯协议、自己的开源平台,最终有自己完整的 ICT 技术体系和产业链。对于这样一个绵延数千年的文明,如此辽阔的疆域,如此众多的人口,如此庞大的市场,有一些东西确实是买不来求不来的,必须自己去做。

对于国内使用 Angular 的企业,我在这里也发一个声明,如果你们需要技术支持,请随时联系我,继续免费提供服务。

这是红薯哥第二次邀请我发表一些看法,说完之后我继续闭嘴,如果你有什么需要,你能找到我的,我们单聊。

谢谢你浪费时间阅读这一堆琐碎的东西。

封面人物小档案

  • 人物:大漠穷秋
  • 技能:Java、JS、Docker 等
  • 码龄:11 年
  • 技术界的偶像:一些看起来很小众实际上非常厉害的家伙
  • 最爱的电子产品:游戏主机(以后有钱了自己攒主机,水冷带各种灯的)
  • 最爱的开源项目:好多,特别喜欢 Spring 全家桶
  • 爱好:一边到处溜一边写代码
文章内容为受采访者独立观点,不代表官方立场。
本文版权属码云(Gitee.com)所有,转载或内容合作请联系 liuchen@oschina.cn , 未经授权不得转载、摘编或利用其它方式使用本文内容。违反上述声明者,将追究其相关法律责任。
bg

你可能感兴趣的封面人物

查看全部
发布评论前,请先 登录
精彩评论 ( 45 )

Help Search