找回密码
 立即注册
搜索

AI和大数据下,前端技术将如何发展?



概览

由于长期在做跟阿里云飞天大数据平台相关的前端工作,也不断在思索一个成绩:“大数据的前端跟其他业务的前端有什么不一样”,详细来说就是,在大数据和人工智能的浪潮下,到底对前端技术的发展带来了什么影响。

以团队在担任在做的阿里云飞天大数据平台为例,从在 2009 年写下第一行代码,如今曾经是阿里大数据发展的第 11 个年头。我是 2011 年加入阿里的,之后就不断在担任做大数据相关的前端工作,基本上参与了阿里绝大部分大数据发展的历史进程。如今回头看,很庆幸本人在一个历史的变革时期入行,更有幸见证了一些划时代意义的数据产品的诞生,以及它们对前端技术带来的变革。



假如我们把 2010 年当做大数据 Web 产品运用的元年,会发现它是一个风趣的年份,为什么这样讲?
回看前端的发展历史,在 2005 年前后有一波大的技术变革,就是从 Web1.0 到 Web2.0 的过渡。
在此之前,前端更多地是做纯内容的静态展现,比如下图中的那个时期的苹果和雅虎的官网。



之后前端末尾逐渐做成复交互的动态网页,这其中一个重要的历史性标志就是 Gmail 对 Ajax 等新技术的运用。



而在 2010 年前后,各种大数据运用进入一个迸发时期,阿里很多知名的运用基本都在那段工夫崭露头角,如今回头再来看那段历史,这其中很大的一个缘由,随着互联网的大发展,特别是 Web2.0 之后,数据的有了大迸发的增长。
下图就很好地展现了这个趋向,假如说之前的 Web 运用更多在“产生”数据阶段,那在 2010 年之后如何更好的“展现”数据被提上了新的高度,很多前端技术也因之打开了新的篇章。



后面会结合本人的实际,以三条主线来讲讲数据智能浪潮对前端技术发展的影响,分别是数据可视化,软件泛 Web 化和交互多样化。
数据可视化

大数据浪潮下,最分明的一个特征就是数据的指数型增长,从上图中就能看到这个趋向,随之而来的应战就是如何更笼统地展现数据并停止交互展现,也就是我们通常讲的“数据可视化”。
回到技术本身,那数据可视化对前端最大的影呼应该是大大促进了 SVG,Canvas 和 WebGL 的发展。



而这当中,除了阅读器底层技术的晋级,在下层可视化库和可视化运用也涌现了大量优秀的作品,其中佼佼者包括:
    开源技术组件层面 AntV Echarts HighLights



    重数据可视化的产品 阿里云大屏可视化产品 DataV 阿里云的 Quick BI BI 分析工具 Tebleau 特征范畴的分析产品,比如 Plantir



在专业的细分范畴,比如地理,安防,新批发,等范畴中不同场景就有很多机会。详细比如在我们阿里云的一站式大数据开发管理平台的 DataWorks[1] 产品就有用于做流程编排的 DAG,图分析[2],数据的血缘分析等有意思的可视化。



软件 Web 化

大家最近应该留意到一个现象那就是:Web 系统做得越来越复杂,很多原先桌面端的复交互运用逐渐 “泛 Web 化”,甚至很多运用一下去就是 Web 的技术做第一版。
这里说的泛 Web,从表现中又可以分为两种:
一是直接用前端技术去做桌面软件,其中标志性事情就是 NW.js 和 Electron 在 2013 起步后的蓬勃发展;大家熟习的 IDE VSCode 就是这当中的典型代表;阿里的桌面版钉钉 UI 层大量用到的 Web 的技术。



另外一种就是直接在 Web 上完成,比如 大家最近能看到各种 Web'X' 系统( Google Docs )。
这背后推进力,一是随着阅读器相关逐渐走向一致,用它的技术可以更便捷地完成跨端,另一个就是云计算大数据的兴起,特别云端的存储和算力逐渐打破了原先的本地 PC 的功能边界,因此重塑了原祖先机交互的入口。
关于跨端的好处自不用多讲,我想想重点讲讲第二点。要讲这个逻辑,我又得简单讲讲计算机的发展,从占地 170 平方米的世界上第一台通用计算机 “ENIAC”,到苹果和微软时代的个人 PC,移动时代的 iPhone 和 Andriod,再到云计算时代的大型计算集群。



对开发者工具而言,之前前很多软件很多都是本地,由于它往往用本地 PC 的计算力就够了,但大数据的场景下计算本地算力一定是不够的,它是依赖云端的计算集群(以我们阿里飞天大数据平台而言,我们曾经 10 万台计算集群的规模),如何在用户侧用上更方便和灵敏地运用这些算力就是我们前端重点要做的,而这是原先软件的架构要不不能让你做定制,要不定制的成本很高(有时分甚至超过了重新做一套的成本),因此很多系统会选择重新起航做一版。
这其中,我们担任阿里云的 Dataworks 中的两大件:WebIDE 和 WebExcel ,就非常典型的例子。



Dataworks 从一末尾就是根据云原生的思绪设计开发的,后端需求经过云计算提供弱小的算力交换原先的本地算力,前端需求完成更精巧的架构设计来对应日益复杂的交互才能;详细到我们的运用,它包括但不限于:
    架构层面 形状管理 插件化 ...

    复交互的组件 Editor Form/Excel Tree Logivew ...
交互多样化

最近往年在以数据驱动的人工智能的大力发展下,特别在图像辨认,语音辨认,自然言语处理方面获得了很大的打破,让前端的新交互也获得了长足的提高。

UX
在面向运用者(UX)产品由 GUI(Graphical User Interface)变成 XUI,用户不只可以用经过鼠标键盘方式操作图形界面,更可以经过面部表情,身体动作,语音交互等方式提供新的交互形状。
下图就是在 2016 年左右,我们在阿里云ET中一些人机对话,互动游戏中的一些实际,详细可以看这里[3]。



这一轮的技术变革,有两个大的宏观的背景。
AI 技术的第三波潮起
随着 2010 年前后,深度学习技术的成熟,计算力的提升,以及互联网时代积累的大数据财富,人工智能技术末尾一段与以往大为不同的复兴之路;分别在语音辨认,图像辨认,自然言语处理等相关技术上获得根本的打破。
例如, 2012 年到 2015 年,在代表计算机智能图像辨认最前沿发展程度的 ImageNet 竞赛(ILSVRC)中,参赛的人工智能算法在辨认准确率上一日千里。2014 年,在辨认图片中的人、动物、车辆或其他常见对象时,基于深度学习的计算机程序超过了普通人类的肉眼辨认准确率。
下图就摘自李开复教师的《人工智能》就表现了这个趋向:



WebRTC
对于前端来讲,另一个必备条件就是 WebRTC (Web Real-Time Communication)技术的成熟,它于 2011 年 6 月 1 日开源并在 Google、Mozilla、Opera 支持下被归入万维网联盟的 W3C 引荐标准。经过它,前端可以便捷地处理图像,视频,语音等内容。大家目前看到很多有意思的交互底层就是依赖他。




DX

在面向前端开发者(DX):智能化手腕可以提升我们的研发效率和体验,以我们阿里和蚂蚁本身的完成看,Imgcook(D2C:Desgin to Code),代码智能提示[4],智能可视化 AVA[5],前端机器学习 pipcook[6] 都是挺有意思的尝试。




总结

以上就是我在实际中关于数据浪潮下前端技术发展的一些思索。当然前端技术技术这几年能获得这么长足提高,除了数据智能,其他大趋向(比如移动互联,5G,IoT)也深入影响了前端技术的走向,但这些就不在本文讨论的范围内,无机会再跟大家讨论。
不断很喜欢吴军在《智能时代》一书中提到的一个观点:“2% 的人将控制将来,成为他们或者被淘汰”。希冀各位前端同窗都能在这波数据智能化的浪潮中找到本人的定位。



本文为阿里云原创内容,未经允许不得转载。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

大神点评4

[祷告]
回复

使用道具 举报

@Xizi_cA31Zj19 2020-11-30 22:28:54 显示全部楼层
赞一个!
回复

使用道具 举报

前排支持下
回复

使用道具 举报

幸远星 2020-12-2 10:21:19 显示全部楼层
元芳你怎么看?
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies