专访 ECharts 团队:无 KPI 驱动如何做出成功开源项目

  • 徐川

2018 年 1 月 24 日

话题:语言 & 开发架构前端

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

近日,国内知名的数据可视化开源项目ECharts 发布了 4.0 版,InfoQ 记者采访了 ECharts 团队,了解团队的一些近况,以及在开源方面的一些经验。

InfoQ:目前 ECharts 团队情况是怎样的?

ECharts Team:目前 ECharts 主要还是由百度 EFE 团队的工程师在维护,也有少部分非百度的工程师在贡献代码。我们希望未来,ECharts 的组成能够更加开放,希望有更多的全世界的工程师来组成 ECharts 的维护团队。

InfoQ:ECharts 可以说是国内开源项目一个成功的代表,在新功能的推出和维护上力度非常大,能否向读者介绍一下团队在开源方面的经验?

ECharts Team:ECharts 其实是 EFE 团队众多开源产品中的一个,除了 ECharts,还包括像 San,Fontmin 等产品,我们的团队协作方式,通常是每个产品有一个或几个负责人,他们会定期根据 Github 的 issue 情况,公司内外的需求以及业务发展情况整理出每个阶段要做的事情,然后由团队所有成员根据自己的时间和兴趣来挑选要做的事情,整个过程都是一种无 KPI 驱动,开放的模式,大家利用主要业务之外的时间,凭着兴趣、热情以及对于自己所参与的开源产品的责任心来参与的。

当然,ECharts 因为产品影响力较大,所以我们还是会做定期的产品规划,我们目前是按照半年为一个规划周期,每半年参与过 ECharts 的所有同学会就自己的想法提一个草案,然后大家集中讨论两到三次,对于接下来半年大的几个方向和目标达成共识,然后就按照上面提到的方式逐步迭代。

ECharts 目前基本保证 1 到 1.5 个月发一个版本,保证稳定的版本迭代节奏对于开源产品是一个很重要的事情,这代表着产品的稳定,让用户能够对产品的长期存在有信心。不过像 4.0 这样的大版本其实筹备了有一年,投入开发也陆陆续续有半年时间了。

在一些日常工作方面,我们是每天安排值班的同学每天固定用 1-2 小时负责处理 issue 及邮件回复,但因为精力有限,所以我们没有办法做到每个问题都处理,所以很多时候还是希望有更多的开发者和社区用户能够一起帮助这个产品。

对外宣传方面主要就是国内的几个技术社区以及技术会议为主。

InfoQ:在过去一年里,ECharts 团队经历过哪些印象比较深刻的项目?

ECharts Team:第一个是去年春节,我们团队承担了百度春节活动的前端开发任务,在做业务之余,我们做了一块大屏,投影在封闭会议室里,当第一天流量入口放开时,大屏中的中国地图瞬间点亮,会场内惊呼一片,让我深深地感受到了可视化的魔力。

第二个值得说的是我们在 3 月份发布的日历图,这是由一个不是 ECharts 核心团队的同学开发的。对于工程师而言,最常见的日历图就是 Github 上的提交记录图了,之前一直陆续有用户有相关需求,所以,在扩展机制开发完成后,我们就内部发了一个日历图的 issue,希望能够通过一个新图表来实践一下扩展机制,正好有一位之前没接触过 ECharts 的工程师同学,出于对于 ECharts 的兴趣就承接了这个任务。在日历图开发过程中,我们也根据同学反馈,不断调整和增强扩展机制的能力及便捷程度。日历图发布后,收到了很多用户好评,从 Gallery 我们也能看到很多用户变着花样使用日历图,超出了我们的想象。这是我们扩展机制发布后,第一个由 ECharts 外部同学贡献的较大的图表类型,它也验证了我们的扩展机制是成功的。

InfoQ:之前了解到,阿里 DataV 在产品中引入了第三方开发者可以开发不同的图表组件,来丰富自己的可视化产品,ECharts 是否有往这方面发展的想法?

ECharts Team:首先,很高兴 ECharts 也是阿里 DataV 产品中的重要可视化组件之一,我们很早就认识 DataV 的工程师,彼此之间有非常多的交流与合作。

虽然产品形式和 DataV 不太一样,但是对于生态建设的认知我们彼此是有共同之处的,ECharts 在过去一年一个很重要的发展方向,就是扩展能力的增强。

在更早以前的发展过程中,我们在增加一个图表时,成本是相对较大的,主要一个原因就是一个之前深度接触 ECharts 不多的人,想给 ECharts 增加一个图表,那他首先要学习 ECharts 的成本就很高,为了改变这个现象,我们在 3.0 之后就着手针对扩展性的提升进行了改造。

在去年,这种改造已见成效,我们有多个图表是通过扩展的方式来实现的,新图表的开发成本极大降低。而且不仅仅是图表,我们的扩展能够做很多事情,比如我们基于扩展机制做了一系列的数据统计插件,用户可以使用这些插件来进行数据的大量预处理,开源产品搭配上一个良好的扩展机制设计,我们相信这会是一个良好生态的重要保证。

InfoQ:你们是从什么时候开始 Web3D 的研究的,3D 是否会成为 H5 动画和图表的主流?

ECharts Team:我们在 Web3D 领域研究其实已经非常久了,团队中有人是从 VRML,X3D 时代就在做这方面的研究工作,而团队在 4 年前就开始进行 WebGL 的技术积累。

Web3D 技术一定会成为用户界面技术中不可缺少的一个重要的技术,但能不能成为某个领域的主流还主要看具体业务领域的需求场景是什么样的。在 H5 方面,对于视觉、交互效果有强需求的运营营销的场景会是 Web3D 应用的主战场,而 H5 游戏也必然会大量用到相关技术。在数据可视化领域,3D 的应用的情况会相对复杂,目前我们在科学可视化、GIS、城市规划这样一些应用场景会做一些探索性尝试。

InfoQ:你们有没有调研过 WebVR/AR,能否谈谈它在数据可视化的现状和前景?

ECharts Team:之前有做过 WebVR 的营销产品,所以这块技术上有一些积累,但是目前还没有在数据可视化中有实际应用过,其实这也是我们今后想探索的一个方向,但这其中不仅仅是技术实现的问题,还涉及到可视化在 VR 中应用的理论基础研究、场景搭建、交互设计等等,是一个系统化的工程。可能的话,我们可能会和一些高校在学术层面先进行合作。WebAR 目前还没有尝试过,但我们觉得可视化和 AR 的结合可能会比 VR 爆发出更大的价值。

前端之巅

「前端之巅」是 InfoQ 旗下关注前端技术的垂直社群,加入前端之巅学习群请关注「前端之巅」公众号后回复 “ 加群 ”。投稿请发邮件到 editors@cn.infoq.com,注明 “ 前端之巅投稿 ”。

语言 & 开发架构前端