终场哨响过之后,屏幕上的数字还停在那里。人没有立刻去睡,是因为第二天要聊的不只是谁赢了——控球率掉在哪里、射门都落在哪个区域、点球那一下到底该不该判,这些都要有出处。
2016 年前后,我们就是被这种没出处的感觉折腾出来的。几个人轮流记比分、记射门,再用一张表拼起来给同一个看球群里的人看。做得久了才发现,让人留下来的其实不是数据多,而是不换地方:一场比赛从赛前怎么排、踢的时候什么走势、踢完哪里能问,都在同一条线上。
亚洲顶级联赛 · 赛程与数据同一站走完
赛季阶段 · 数据每轮赛后更新
品牌故事 · 第 8 赛季观察周期
一场球结束之后留下来的问题,往往比赛果本身更磨人:控球差了几个百分点、角球谁多、点球判在第几分钟。我们把这些问题连同换设备之后的登录麻烦,收进了同一条路径里。
终场哨响过之后,屏幕上的数字还停在那里。人没有立刻去睡,是因为第二天要聊的不只是谁赢了——控球率掉在哪里、射门都落在哪个区域、点球那一下到底该不该判,这些都要有出处。
2016 年前后,我们就是被这种没出处的感觉折腾出来的。几个人轮流记比分、记射门,再用一张表拼起来给同一个看球群里的人看。做得久了才发现,让人留下来的其实不是数据多,而是不换地方:一场比赛从赛前怎么排、踢的时候什么走势、踢完哪里能问,都在同一条线上。
八个赛季走下来,我们几乎不按月份记事,而是按赛季记事。每个阶段只解决一个最扎眼的问题,解决完再往下一段挪。
起步阶段只盯一轮联赛。开球时间、主客关系和轮次对齐是全部工作,因为错一次,当晚就有人拿着截图问过来。这一段的收获很朴素:赛程错了,后面的数据再准也没人信。
控球率、射门、角球与点球记录改成比赛进行中约每 30 秒刷新一次。快只是结果,真正的改动是把采集和校对分成两条线:一边往上看,一边往回核,谁都别替对方拍板。
赛程中心铺到亚洲 12 个顶级联赛,单个赛季跟住 260 多场赛程节点。同一时期上线历史交锋查询,可以往回看 8 个赛季,任意两支球队直接摆在一起比。看球的人终于不用凭印象争论去年那场谁占优。
V3 架构上线后,首页换成更直接的入口,加载也更快。同一年我们把换手机登录不上、V3 首页打不开这类事从「用户自己的问题」挪进了服务范围:先给步骤,走不通再进人工。数据看得好、麻烦处理得掉,才算完整的一晚上。
把这件事撑住的是轮班的队伍,不是熬夜的一个人。全站三十多人里,有九个人只干一件事:盯口径。比分、控球率、射门和角球在上屏之前至少过两遍,一遍负责采,一遍负责核,谁也不能替谁签字。
点球记录单独走一条线,因为它最容易引起争论,写错一次就会有人拿着录像来对时间。用户支持是第三条线,负责的人天天看的不是比分,而是「换了手机以后进不去」这类问题。三类职责之间不互相帮忙做决定,但会互相通知结果。
开球时间和轮次要靠长期对接的官方口径,比分和过程数据要靠采集端往回传,不同设备上看到的还得是同一版界面。这四件事我们没法全部自己扛,于是和 8 家生态伙伴分了工:谁提供原始信号,谁保证传输稳定,谁负责在新旧系统上跑通,各自只碰自己那一段。
分工清楚之后,我们对数据的态度也变得简单:说得清来源的才上屏。比赛进行中约每 30 秒刷新一次,不是为了显得快,而是看球的人边看边聊的时候,不该拿到一个已经过期的数字。
做久了会收到各种各样的请求。有些我们一直在守,有些看一眼就知道不能接,也一并写在这里,省得来回试探。
第 8 个赛季的观察周期里,赛程中心覆盖亚洲 12 个顶级联赛,一个赛季跟住 260 多场赛程节点;历史交锋能往回看 8 个赛季,任意两支球队直接摆在一起比。执行标准一共十条,分成赛程编排、数据校对、订阅推送、账号迁移四组,什么算合格、什么时候复核,都写在明面上,随时能翻。
下一步我们不太想去堆数据量,而是想让路更短:从首页进去,第一步就是当轮赛程;看完顺手核对数据,碰到登录或者访问的问题,就在原地按步骤处理,不必为一件小事换三个地方。