以下是精彩内容整理:
去年阿里做了一年的Weex开源,业界也有很多声音,一直到今天,大家都说移动到了下半场,我们也有很多感受,接下来移动技术应该怎样走?作为走在业界前沿的团队,我们和阿里云移动云思考怎样把更好的产品带给世界,以及移动未来会是什么样子?
移动十年总结
回顾过去移动10年,图为Gartner创新技术曲线,分为几个阶段:第一代产品出来以后是非常高的价格,很多消费者特别需要,之后有一个下降阶段;第二代产品有一个缓慢的攀升期;最后进入高原期。
今天来看,移动技术到底是走到了最右边的高原期,像过去PC技术或者PC上的桌面技术一样;还是在今天的低谷期,包括业界很多的技术人员和Gartner都说到明年创新技术、智能APP和统计是未来的趋势。移动技术到底在高原期还是低谷期,这是我们一直在思考的问题。
移动技术分为几个阶段:
第一,Less APP阶段,就是非智能机,空间很小,内存很小,都是WAP,那个时候没有什么应用,都是PC first。
第二,App First阶段,这个时代开始到移动互联网的转型,阿里整个集团All in 无线。
第三,Super APP阶段,2014年、2015年,很多公司喜欢把所有服务过一个超级APP提供给业界消费者,所有东西都放在一个APP中,在中国叫做超级App,线上流量获取成本很高,竞争态势非常激烈,包括微信小程序是这样思路下走到极致。
第四,AI First,大家都谈到AI,AI对移动开发影响怎么样?我们总结AI能不能很好的利用端上算力给消费者超出预期的体验,AI端上智能能否让大家觉得无处不在,就像苹果做到人脸识别,这个事情明年会非常快速,很多开发者利用阿里云的AI能力,利用手机端上AI框架,做智能的APP会更加简单。
技术之争本质是效率和用户之争。无论从移动、AI还是OS来说,包括框架、语言、工具、平台、生态、用户,无论做非智能机还是IOS、安卓到Weex、小程序,很多东西都被改变了,尤其是框架、语言、工具,在这10年不断成熟,像小程序、Weex的出现,中间一层框架基本上有一个范式,可以让大家拿去用,比较标准化。以前形容移动开发是一个汉堡包,所有框架都是耦合在一起的,大家这10年做了很多工作,就是把分层分的很清楚,不断提供具备效率和体验的框架。
这是这些年我们比较有特点的移动技术:
第一,网络连接,解决联网问题是优先问题。最早出现的时候是在互联网时代,大家都做长连接。
第二,插件化,热修复。
第三,Weex、小程序。
第四,美颜滤镜。
第五,直播、短视频。
第六,AR。
慢慢从效率为王到体验为王,甚至未来到AI First。
回到阿里
2011年-2013年探索期,到2014年-2016年高速发展期,我们觉得基础的移动技术趋向于成熟、有一定范式,甚至把它作为一个解决方案给业界,同时有一个比较大的变化,比如说今天怎样通过数据的技术,使端上一些架构的治理、性能问题的发现都更加简单和标准化。做APP开发的都知道,每一个APP,甚至稍微大一点的APP要投入很多人力解决性能问题,今天这个问题在阿里巴巴已经变的标准化了,甚至通过数据方式帮助大家发现问题。包括嵌入式AI能不能帮助大家构筑更好的体验?很多传感器结合一些新的交互创新、新的计算能力提升,今天整个APP体验形态、表现形式都有很大变化,直播就是很好的例子,连麦、AR直播等等一些新技术的出现引起很多东西的变化。
Mobile First Super APP 基本原则
最开始我们把所有东西都放在这里,但是有的东西不是人多就可以解决问题,逼着技术团队在架构上让移动开发变的可以被扩展和被搜索。大家知道,电商是低频的服务,如果低频服务把男装、女装拆开做一个APP,访问频次很难集中,把所有东西集中在一起,这个仗还可以往下打。
这是手淘的历程,最早是WAP,一直到Native APP,后来变成一个电商的超级APP,一直到今天既是一个电商的平台,也是一个内容的平台,甚至是媒体的平台,淘宝的内容越来越多向性、越来越好玩、越来越符合年轻人的品味。马老师上半年和我们管理者说了一句话,淘宝要像《王者荣耀》一样,大家都爱玩,所以我们都在努力做这个事情。
从过去运营驱动变成产品驱动,非常重视体验,技术上我们也做了长期的思考,比如说容器架构,2013年做的时候就已经定下来要做成这个样子,只不过中间不断突破,2013年到2014年全部做移动的时候,我们决定把技术做成什么样的,2013年一直到今天把这个事情慢慢做起来,那个时候定了很多在技术上长期投资的东西。一旦定了以后,我们决心比较大,我们所有东西都是希望被数据化的、被智能化,因为手淘、千人千面、技术都是数据化,甚至被个性化算法所驱动的,很多东西是平台化,这个平台化可以服务好很多公司的APP。
技术创新推动组织升级
淘宝组织架构技术驱动已经和业界不太一样了,业界很多公司做一个APP一定是有客户端团队,客户端团队有几个组,而阿里巴巴不是这样。
图为Atlas的组件化,今年上半年开源出来影响很好,它是业界首个支持超级APP业务并行开发的组件化框架,今天所有手淘中的一些模块,开发的时候都是单独开发,集成的时候也是单独集成,发布的时候可以自己动态部署,完全是每个业务模块关注自己的事情就可以了。
今天手淘iOS有 273个bundle,安卓有393个bundle,我们支持了大量的业务团队。我们有一个架构组,支持iOS和安卓上面快速开发,淘宝一个服务端团队调后端服务,移动的团队和PC团队是不在一起的,最早很多公司都是这样的,但是我们有一个横向的架构组支持客户端的同学快速开发,就是因为有Atlas。
我们这个团队叫做“基础平台”,一个技术平台光有端上的开发框架是不够的,一定在移动云端服务方面有哪些能力可以支持业务团队快速构建想要的功能。我们做了几个事情:
第一,长连接。怎样解决接入问题、体验问题。
第二,中间件服务,移动场景的中间件和PC是不一样的,我们有大规模订阅和广播,甚至IM等等,这中间能不能抽象出一些通用的服务出来。
第三,实时通讯、媒体通讯,有没有一些高效的中间件给用户快速构建,符合移动场景下的体验。这个中间件平台让业务基于服务很容易编排、组装就可以产生有价值的体系出来。
我们从架构组变成了一个Mobile Platform,移动基础的艺术平台,我们已经没有客户端的团队了,比如说有一些业务可能是做媒体的,是前端后端一体化的团队,是为业务目标负责,我们保证APP端到端高效稳定性,提供移动场景的中间件业务功能。我们在电商有很多基础的服务,这些服务是通的,这些组织架构都在发生变化。
我们定义的Weex是更适合移动应用跨平台的渲染引擎,大家做移动业务都是把移动功能做出来再复制到PC去,过去的浏览器还是PC的思路覆盖到移动,今天做Weex还是新一代的Mobile First的引擎。今天针对移动应用的特点能不能定义CSS和标准,所以我们今天在做这样一些事情,移动平台特性能否重新把实践和交互体系抽象出来,我们最终要打造一个东西把PC包袱甩掉,打造一个移动时代的包括Weex Mobile First的渲染引擎。
我们去年Weex开源走的很快,在双11的是有2000个页面。今年在集团内有几万个页面,我们在开源社区有150个自由的APP,这样一个项目在外面的生命力很强,最近看到腾讯的团队也参与到这个社区,包括网易严选、今日头条都在用Weex,有了Weex以后写一遍代码,安卓、H5、PC都可以搞定,让过去前端的同学只能写写H5写写活动,今天可以做很多产品,淘宝里很多用户产品都是Weex写的。我们变成一个基础设施,前端的技术平台都可以很快速的构建业务,整个阿里巴巴组织架构变成Mobile Platform可以越来越变成一个基础设施。
阿里云移动云Apsara Mobile
我们把过去这套东西总结成一套解决方案。
移动云的产品基本上覆盖了移动APP开发的整个域,从项目域,到研发域、构建域、运维域、运营域,我们发现过去一直秉承的理念,比如说容器化,包括网络和构建思路方面,甚至我们这个技术团队没有测试,Weex更加动态化非常灵活,我们秉承的理念就是原生,只不过在移动端落下来了,我们认为只有阿里巴巴、只有手淘联合移动云才能够把这个东西比较扎实的打造出来给整个业界。
我们今年将推出企业级的研发服务叫做EMAX,Enterprise Mobile APP X ,我们希望把整个解决方案给大家,希望大家不要为了解决开发效率再搞架构治理,再烦恼怎样做移动测试,大家都在谈体验、都在谈AI,这样一个东西真正能够帮助大家节省时间,帮助大家在竞争中跑的更快。
这是整个体系的完美呈现。第一,公有云;第二,专有云。我们提供的是一站式快速研发的概念、移动网络即服务、移动质量即服务。我们认为过去的移动测试单纯是发现一些兼容性的问题,但是这是不够的,今天谈一个移动的APP,不断筛功能,不论超级APP也好,里面东西塞了很多,质量就是很大的问题,移动质量不仅仅要发现兼容性的问题,另外能不能发现性能、卡顿、闪退的问题,能不能通过标准化的方案,通过数据搜集帮助你自动分析哪一个代码有问题,我们的移动云推出MQS,结合移动端高可用解决方案,加上移动测试。今天整个阿里巴巴所有的业务上、移动上的SaaS都是基于研发平台构建的,未来有很多SaaS服务我们愿意给出来到更多企业,比如说直播解决方案已经和阿里巴巴相关企业,比如输出到苏宁和其他地方,这套平台一旦部署到企业以后,今天这样一些SaaS大家可以拿去用,可以帮助互联网企业从过去解决开发问题,到今天变成很快速的具备运营能力的一家公司,我们未来会把智能化的服务,比如说OCR等等,通过这样一个平台一体化给整个业界。
展望未来
ATLAS是定义超级APP的框架,Weex真正把HTML5的 APPS超级框架定义出来,以前大家谈H5,未来对开发者来说,能不能基于移动云的解决方案,基于Cloud Native APP,加上云上的容器化架构,可以很快速的构建应用。这样一个Intelligent的APP能不能给业界,包括今天在端上AI的优化对计算要求很高,要做到指令级优化、网络压缩等等。
这是目前我们看到的趋势,移动端和PC端不一样,PC端有GPU,相当于一家独大,移动端的GPU干了很多事情,也没有一个非常集中的,移动端和PC端不一样,移动端都在研究一些专用硬件,大家看到华为、苹果很快跳过了GPU阶段,都谈专用AI芯片。华为今天已经把一些能力开放出来给开发者,可以快速构建AI的APP。
端上怎样做优化,上面是算法的模型,坦率来说它的成本通过阿里巴巴和业界的硬件公司(比如华为),这方面成本会降的越来越低。
过去在移动刚开始的时候,也是从底层的芯片和IOS一直到框架、语言、工具都会改变,包括未来的操作系统和AI框架,今天看到很多AI框架无论是编译、图计算、加速执行推力都是在一起的,我们自己感觉AI会把底层的编译器、计算机体系机构、框架层面、工具,甚至包括应用、应用场景和开发者生态都会被改变,这会冲击整个计算机体系结构的问题。AI正在改变过去熟知的一切。
未来已来,这个体系里还是有很多事情可以做,我们看一些框架、语言、工具,既有很多和以前不一样的东西,也有很多和过去一样的东西,行业在发生变化,阿里巴巴会和阿里云把工具也好、服务也好,在恰当的时候给业界,赋能整个业界的开发者。