我的技术投资策略:如何决定学习哪一个新技术的?

软件开发不是一份稳定的工作:每年都会涌现一个又一个新的技术,每隔几年都会出现一些革命性的技术。尽管从代码、表现及差异上来看,新技术和旧的技术有一些概念上的相似,但是在使用的过程中,仍然是需要花费时间去学习的。

除了,加深自己对现有一些语言、技术、软件工程的领域深度。为了保持一定的技术洞见,每年我们都会学习一些新的技术,使用一些新的技术栈。因此,这篇文章就是介绍一些我对于新技术的感受,以及在这一年学习中的一些经验。

本文主要包含以下内容:

  • 回顾前端:超越交互
  • 回顾移动开发
  • 技术投资策略
  • 物联网与去中心化
  • AI 与技术成熟度
  • Serverless 与事件驱动
  • 区块链评估

(PS:本文的阅读时间大概 10 分钟)

回顾前端:超越交互

年初,我在写电子书《我的职业是前端工程师》的时候,已经 “钦定” 了 React、Angular(没有.js)、Vue 作为未来前端开发的主流趋势。在国内来说,还是以 Vue 为主,Vue 好上手,但是不都是所有的用户都是小白 :) 。但是作为一个前端开发人员,你把时间投资在 React 和 Angular 上,在未来你会有更大的赢面。

Facebook 一系的 React,还有 React Native 和 React VR,未来可能还会有 React Game。Angular 受奥斯本效应的影响,采用程度受到一定的影响。在目前来看,对于开发人员的主要成长得益于 TypeScript,对于项目的优势主要静态类型使得代码更加强壮。

可是这一年 AI 的火热,让我开发思考 AI 带来的一些交互上的变化。现在,我们所指的前端多数是一些 Web、移动端相关的 UI 开发,其本质就是与用户交互。诸如前几年火热的虚拟现实、智能音箱,都是一个交互的新入口。

可视化仍然是人类最好的获取数据的方式。可当用户大量的日常工作,被 AI 自动化之后,有些工作就变得有些多余。如你出门前要看的天气,以决定穿什么衣服,它都可以由计算机算出来。带不带雨伞,都可以由雨伞提醒你。如 Amazon 设计的 Dash Button,可以让你不需要任何的 UI 就可以购买日常用品。

回顾移动开发

今年,我在工作上主要做的都是移动开发相关的工作,从基于 Ionic 与 Cordova 的混合应用,到嵌入 WebView 到 React Native,再到年底的 Android 原生应用,中间写了一些 Cordova 和 React Native 的 Android、iOS 插件。也算是见证了移动应用的不同技术选型,成为了 3/4 个移动应用开发,对整个移动端的技术有所了解。

在最近几年里,原生移动应用开发没有像过去那么火热。一来是,受到混合应用和 React Native 的影响;二来是,移动端的开发技术已经趋于成熟;

尽管在年初,看到越来越多的原生应用开发人员正在转向 React Native。过去,我们认为的操作系统市场份额是这样的:

但是实际上,在讨论市场份额的时候已经是这样了:

以 VR、AR 和 AI 的技术趋势来看,移动平台才是未来的重点——除非有更好的平台出现。触手可及的技术,拥有更多的可能性,也拥有更多的数据及美好的未来。

技术投资策略

(PS:在这里,所谓的技术投资是指,在一定时期内向一定的新领域投放时间来学习新技术。)

新的技术每天都在不断地涌现,很多就是黑天鹅一样看不出。并且,一来我们已经习惯了新的轮子的产生,二来我们也没有那么多的精力去关心每一个新技术。可是当有一些技术在不断被提及被应用的时候,你就差不多应该关注、学习、采用了。

如我在年初看到那一本《灰犀牛》:灰犀牛体型笨重、反应迟缓,你能看见它在远处,却毫不在意,一旦它向你狂奔而来,定会让你猝不及防,直接被扑倒在地。你明明看得见,新的趋势在那里,却固执的不肯去了解。那么,未来你就轻松地进入了中午危机。

在 Gartner 的技术曲线上,定义了五个阶段:科技诞生的促动期、过高期望的峰值、泡沫化的底谷期、稳步爬升的光明期、实质生产的高峰期。对于个人来说,这个技术曲线就没有那么复杂。

成为早期投入者

对于一个技术人员来说,这个流程就比较简单了。通常来说,作为一个初入这个行业几年的 “新人” 来说,我们是没有经验、能力去开扩一个新的领域。这时成为早期投资者,可能就是最早期的选择了。

在新技术的早期就采用它,是一件相当有风险的事,也可能会有相当大的收益。新技术在早期充满了不确认性,如果你押错了,那么你在这段时间的时间可能就白费了。因此,一般是到一个新的技术、概念出现一段时间后,去填这些相关的坑。

如我在这一年进入 Serverless 的坑一样,虽然有一些晚,但是好在国内的云服务产商的服务还不怎么行。通过使用感受、社区及 Google Trends 来看,来看看是否押错地方。

在光明期前采用

通常意味着,这个新技术栈还有很多坑。但是,大家都认可它是一个有前途的技术。如在今年被大规模采用(淘宝、QQ 等,有一些因为版权已经换坑了)的 React Native 就是一个很好的例子。

一般来说,经历了一些大公司的踩坑,以及网上的一些踩坑经验,那么就意味着采用它已经没有多少问题了——前提是你已经做好了技术储备。这个时候你就可以为了今年的 KPI,去说服你的领导了。我们应该这么做,xx 公司都已经上线了,而且这些 blabla 的优势很明显。

跟随项目使用

当一个新技术的采用,已经在市场上达成共识。那么,也不要再采用旧的技术了。

到了今天,前端的单页面应用已经是 React、Angular、Vue 的天下了。这时要开发一个复杂的前端应用,那么你应该从这些主流的框架中去选择,而不是采用早期、过期(已经不维护)的技术了。除非,你们是一家大公司,有自己的轮子。

当然,只在该用某技术的时候,才在项目上使用新技术。对于一些简单的页面,jQuery + Bootstrap 还是万能的。为了使用新技术,而在项目上使用,有时候容易造成问题。

物联网与去中心化

在这一年里,为 InfoQ 编写《物联网周报》的时候,我花费了大量的时间在索引互联网上的 IoT 相关内容。随之也翻译了一系列的文章,也有了 “玩点什么” 网站 、APP和小程序,其目的主要用于储备技术。通过翻译一些物联网及前沿的技术实践——持续关注某一领域,可以通过翻译相关的文章来投资。将一些国内没有的,又可能在未来用到的技术翻译成了中文,再增加一些提升 SEO 提名的文章。(PS:因为在我的技术博客)上,650+ 的博客大部分都是原创的技术笔记,所以不打算放在我的博客上——同时,也可以避免版权带来的问题。)

除了,我大学学的电子信息工程;还有一点,硬件是虚拟世界与现实世界的接口,而物联网则可以让我们真实的、从远程访问世界的各个角落。于是,在年中的时候,我花费时间去研究各式各样的智能家居系统,也有了我的 smart-home 项目。

当自己擅长的技术,有一些新的突破,那么就应该去学习它。

2017 年里,IoT 领域的技术趋势,已经在不断地结合各种时髦的技术,如:

  • Serverless Framework 与 AWS IoT 构建 Serverless 的花园监控系统
  • Raspberry Pi 教程:在 Docker 上使用 Go 点亮 LED
  • Raspberry Pi 与 OpenFaaS 构建 Serverless Kubernetes 集群
  • Raspberry Pi 自动驾驶:使用 Keras 与 Tensorflow 构建车道跟踪自动汽车

他们解决了一些嵌入式设备的自身缺陷,不过在一年里,安全仍然是这方面的主流考虑

当一个流行的技术能在 PC 上运行,它也终将在智能手机、Raspberry Pi 这一类小型计算设备上运行。

在数字化浪潮不断扩张的今天,物联网作为一个底层的技术合集,越来越受关注。但是,这不意味着它会马上火爆起来,只是我们可以看到它在不断地被应用

在这上面花时间,不一定有收益,但是总觉得自己改变了什么

AI 与技术成熟度

AI 火热的这一年,在为玩点什么做应用的过程中,便想结合一些机器学习的技术。所以我又复习了一下机器学习,顺便打算 GET 一下深度学习的技能。也就有了玩点什么的推荐系统 ,也应用上了 jieba 分词,加上之前对于朴素贝叶斯、聚类等的研究。发现一般的机器学习,对于我这种已经远离高等数学的人来说,还不算太难,概念上基本能理解得差不多——主要是这些算法,都能应用到一些真实的场景。

于是,我打算试水一下深度学习。然后,我发现我 TM 的数据都没有,下载个数据都要半天。再看看书上的理论,我发现我抽不到足够的空余时间来学习——我的意思是,足够集中的学习时间。还有一个问题是,没有数据——尽管网上已经有大量的公开数据,但是这些公开数据多数是英语的。这些基于英语语言的数据,会导致出现的算法以英语为主,导致算法本身难以采用,这一类问题最常见于 NLP(自然语言学习)。

假使我将一个周末的两天 + 每天三个小时的晚上时间都投在上面,那么从短期来看收益太少——我可以花这些时间,强化我在其它领域的知识。

好在深度学习的 API,也很容易上手。这一点与我之间在试水智能音箱有点类似,实现一个简单的智能音箱本身并不需要太多的新算法——利用一些现有的公开 API、公开算法,我们可以轻松也用深度学习做一个音箱。但是我们缺乏足够的音频数据,它将会导致我们无法进入下一步。

这就是为什么 Mozilla 会推出 Common Voice Project 项目的原因,没有足够的财力就不会有足够的数据;同理于,今年阿里在双 11 送的大量 99 元的天猫精灵一样,只有大量的数据才能造出 AI。只能有足够的数据或者财富,才能拥有与之匹配的人工智能

Serverless 与事件驱动

在第四个季度里,我花费了大量的时间在学习 Serverless 系统,编写大量的 Serverless 应用。有兴趣的同学可以了解 花了 1000G,我终于弄清楚了 Serverless 是什么,以及基于 Serverless 架构的 简单日志系统 molog、表单系统 moform,这些 Serverless 应用都可以在一天内开发、上线。

Serverless 事件驱动的特性,使得它适合物联网、人工智能、数据分析等场景。其按需付费,又能让我愉快地(毕竟穷)各种 Serverless 应用。

如上所示,Serverless 将是一种新的技术架构趋势。而 Serverless 本身算不上一个新的技术,只是 FaaS 结合一堆现有的技术组成的技术架构。因此我将学习 Serverless 的行为,定义为一种 “短平快” 的学习投资

由于国内的内容匮乏,我采用的策略是:边写 DEMO,边写文章、编写自己的 Serverless 应用、写一系列的总结文章、整理成电子书。这样一来在 2018 年,我的博客可能就会受长尾效应的影响,带来额外的更多流量。

区块链评估

我对区块链采用的是评估,也就是还没有进入我的采用、Demo 期——主要是因为区块链技术采用的领域有限。早期我在思考在边缘计算、物联网领域引入,但是场景有限。不过,在未来我应该会尝试引入这个技术的。

常规的物联网系统都是中心化的,采集数据、加工数据、存储数据、可视化数据、预测数据,它也不需要担心中间的数据修改。如果以一个传感器采集点,作为一个节点,采用区块链的存储成本过高。如果以一个区域作为结点,它也不需要担心其它结点的数据的修改问题。

只当每一个节点自身需要记录变更的时候,那么这个物联网应用才适合采用区块链技术,如物流场景等等。

又或者是,在你的智能家居系统的每一个控制节点上,都记录每一次控制的变化。如你使用手机控制了台灯的开和关,这个数据就会同步到你的手机上。问题是,控制个灯都需要记录一下的场景,这可能是监狱吧?

或许,我还需要一个区块链的 markdown 同步工具,而不是使用 GitHub 或者各种云笔记。这样我的 markdown-improve 计划,又多了一个新的成员了。

结论

从上述的学习经历来看,学习技术的期限主要是:

  • 短期学习未来将采用的技术
  • 中期了解一些新的技术知识
  • 长期接触自己喜欢的技术

不过,简单的来说,这一年的经验就是:

  • 持续关注某一领域,可以通过翻译相关的文章来投资
  • 当自己擅长的技术,有一些新的突破,那么就应该去学习它。
  • 如果一个与自己工作相关的技术是未来的趋势,那么请拥抱它。
  • 如果有一个新的技术可以影响到你的生活,不妨去学学它。

你说呢?

来,明年一起开黑。

原文发布于微信公众号 - phodal(phodal-weixin)

原文发表时间:2017-12-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏知晓程序

无广告弹窗,清爽看新闻,就用这款小程序 | 亲儿子 #4

随着微信团队的不断努力,小程序也变得日益完善。小程序以其方便的使用条件、更低的开发门槛吸引了很多人。

782
来自专栏腾讯大讲堂的专栏

确认过眼神,这是技术人最不能错过的武林大会

2292
来自专栏新智元

人机对话的浪潮:语音助手、聊天机器人、机器伴侣

语音助手 2011年10月,乔布斯临终前在iPhone4S中加入了Siri功能,用户可以用语音对手机发号施令了,国内厂商随即跟进,当时国内一位企业家对我说,以前...

3738
来自专栏鹅厂网事

2014年度五大不容错过的文章

鹅厂网事”由深圳市腾讯计算机系统有限公司技术工程事业群网络平台部运营,我们希望与业界各位志同道合的伙伴交流切磋最新的网络、服务器行业动态信息,同时分享腾讯在网...

1916
来自专栏云计算D1net

关键要素:成功搭建私有云

最近几年,云计算的大潮日渐澎湃,大有席卷全球,颠覆传统IT的趋势。公有云与私有云都受到了大家的关注,甚至还有人发表了“私有云无用论”的观点。然而,事实情况真的是...

50311
来自专栏web前端教室

学习前端不存在跟不上进度的情况

经常有人问我,老师,我想参加先行者计划,但我担心学习跟不上进度,怎么办? 学习跟不上进度,这句在过去只存在于学校老师嘴里的话,现在随着各种学习班、组织、机构的...

2705
来自专栏华章科技

美国首席数据科学家DJ·Patil亲授:打造数据产品必知秘籍

原文:Everything We Wish We'd Known About Building Data Products

934
来自专栏网站设计制作、数字营销

网站SEO自然排名做上去了但没咨询电话是什么原因

不少的公司网站在做SEO自然快照排名提升,有的公司网站做SEO做的自然快照排名上去了,结果却感到没有什么咨询电话,这是怎么回事呢?下面,就由美耐思来综合分析解答...

1290
来自专栏知晓程序

首个微信小程序,这一年过得怎么样?

到 2018 年 1 月 9 日,小程序就上线一周年了。为此,知晓程序推出小程序上线一周年系列文章。

1252
来自专栏达摩兵的技术空间

以用户为中心的设计理论

体验的价格远超过日用品本身。我们无法预知科技会进步到什么状态,但是只有把科技转换成体验的,收费才会非常高。如果只是应用就收费低。比如说指纹识别,在苹果手机出现指...

792

扫码关注云+社区

领取腾讯云代金券