查看原文
其他

“原来我才探索了 0.0001742% 的世界。”

朱一君 未来预想图 2021-04-14


是时候抛开对程序员们的误解了。你会看到一个小团队如何开发出一款让你记录旅途脚步的 App。在空间维度上,它满足了人们探索世界的欲望,在时间维度上,它能珍藏一辈子的回忆。


“世界迷雾”(Fog of World)是一款简单到几乎零操作的应用程序,只需一次点击,就可以实现实时、准确的轨迹记录。当你打开 App 时,整个世界呈现出蒙上一层迷雾的初始状态,你在现实世界中的移动则会驱散地图上的迷雾。这款极简到几乎没有存在感的应用,却让用户常常忍不住对着它发呆或不停地缩放地图。在空间维度上,它满足了人们探索世界的欲望,在时间维度上,它能珍藏一辈子的回忆。


△ 这是作者一君君的东京探索路径。虽然比不上出租车司机,但也足够让人沉默。 图片来源 | 朱一君


这是“100 个有意思的人”系列的第 4 篇文章。我们采访了“世界迷雾”的开发团队 Ollix。是时候抛开对程序员们的误解了。在这一篇里,你会看到,有趣的 geek 如何努力守护用户们的梦想。它还谈到了现在人们常提的 work style,技术的进步给了人们选择更多工作方式的可能性,关键在于,你是否也足够努力,去跟上想象中的那个“天啦噜我好想做的事”。





这个名为 Ollix、来自台湾的小型独立团队是 App“世界迷雾”的开发者,它只有两个成员——王崇仁,以及他的妻子黄湘珺。他们从来不接 case,只做自己想做的 App。能不受其他人的意见影响,随心所欲地开发自己想要的功能是他们最快乐的事。“世界迷雾”看似简单而纯粹的概念,其底层架构设计却凝聚了 Ollix 对开发理念的坚持。


王崇仁比较喜欢用功能单一的 App,所以设计“世界迷雾”时,他并没有想要“包山包海”的功能,而是以记录及显示用户一辈子的路径为核心,辅以在全世界探索的数据分析,然后加上导入路径及备份数据到云端的功能。“仅此而已,我希望 App 的操作可以很简单不复杂。”


如今,“世界迷雾”诞生已有 6 年,总下载次数超过100万次,中国已成为全球范围内迷雾用户最多的国家。



未来预想图 ד世界迷雾”


(一)


Q:开发“世界迷雾”最初的想法是什么?为什么会开发这么一款应用呢?


A:我大学刚毕业时,去日本自助旅行了一趟,当年是 2008 年,iPhone 才刚起步,安卓手机也还没有问世,所以不像现在人手一台智能手机,可以随时查找地图,当时我们很多地图都是出发前在计算机上查好印下来的,可实际到了当地陌生的环境,免不了仍碰到许多走错路及迷路乱绕的情形。回到家我就一直在想,如果能把我这一辈子走过的路都给记录下来就太好了,特别是出门游玩的这些有趣探险过程,大部分地方可能这一辈子只会去这么一次,这就是“世界迷雾”概念最早的萌芽,虽然“世界迷雾”到 2012 年才正式公布,但它仍是全球第一个运用此概念的应用。


Q:消雾的过程很像实时战略游戏中的“开地图”,你们平时玩游戏吗?游戏带给你们什么灵感?


A:小时候比较常玩,“世界迷雾”开地图的概念也是取自小时候玩的实时战略游戏,这就是“世界迷雾”命名的来源,实时战略游戏里的迷雾原文叫作 Fog of War,我们把 War 改成了代表真实世界的 World,一方面读音相近,一方面也保留了开地图的精神。但随着年纪的增长及小孩出生,基本上我已经不太玩电动游戏了,而是陪小朋友玩他们的游戏或是带他们出门玩。


△ 世界迷雾的 icon 和 Ollix 的 Logo。 图片来源 | Ollix 


Q:这么多年的开发过程中碰到过哪些挑战?都是怎么解决的?


A:第一代“世界迷雾”应用是在 2012 年发表的,距离我最初有想法大约 4 年。一方面,2008 年手机应用的概念才刚起步,我们也是当年才开始摸索着学习,然后又先做了其他的应用,逐渐提升自己的技术能力;另一方面,当时的手机硬件还非常不成熟,根本跑不动像“世界迷雾”这类需要大量绘图的应用,而且 iOS 的开发者工具在早期也有很大的限制,当时的 iPhone 还不支持多任务,应用根本无法在后台记录轨迹。2012 年,软硬件发展到了比较成熟的阶段,我们才终于可以实现这个多年来的梦想。


我们开发时碰到了非常多的难题,像是希望能把一辈子走过的路径都记录在手机里,特别是在当时手机主流容量为 32 GB 的年代,最后我们花了很多时间设计自己的数据库系统来解决这个问题。


另外,“世界迷雾”会分析使用者在全球各个国家的探索面积及百分比,iOS 可以透过苹果地图的工具来查询,但问题是它只支持在线查询,且查询的时间也不可太近,否则就会被暂时封锁。不过更大的问题是,这个在线查询的机制在中国内地完全无法使用,因此,后来我们设计了自己的离线查询系统,目前大约可以涵盖全球 90% 以上的区域。为求精准,国家边境及靠海的区域仍需透过在线查询完成。我们目前正在努力将剩下的 10% 也全部纳入离线查询的系统,要知道,我们对精准度的要求非常高,所以数据量就非常庞大,要把如此庞大且精准的数据量塞进应用就不是一件容易事,而且,查询时的速度也必须非常快才行。


当时,受限于 iOS 原生开发工具,在放大、缩小地图时,迷雾图层会有不连贯的情况,我们一直希望“世界迷雾”有一天可以跨平台执行,因此,在开发二代时,我们完全不依赖 iOS 原生开发系统,推翻重做了整个应用。但因为没有经费支付现成的跨平台开发工具使用费,而且希望在开发时能保有完全的弹性,最后我们决定设计自己的跨平台开发架构,这又是一个漫长的学习及不断挫败的过程,所幸最后我们还是顺利提升了自身的技术能力,也终于在 2016 年推出了全新的二代迷雾。


其他还有像是在中国内地地图会有偏移的问题,因为我们人在台湾,很难实地测试,这真的就要感谢众多内地热情的使用者不吝提供协助及测试。


△ 以官网的虚拟用户“齐天大圣孙悟空”为例,用户每到一个国家或地区,就能开启一个洲或国家的图标。 图片来源 | Ollix


Q:按“世界迷雾”设定的“升级”标准,出租车司机和机长似乎应该是升级最快的那类人群,你们对自己的用户做过数据分析吗?


A:身为一个只开发自己想要的应用的独立开发者,和一般商业公司最大的差别就是:我们没有所谓的市场及财报压力,所以我们不像其他大公司那样,会去搜集用户的各种信息来想办法赚钱,“世界迷雾”用户所有的数据都保存在用户的手机及云端账户里,我们不会用任何方式去取得用户的数据来分析,用户可以保有完全的隐私。如我所述,“世界迷雾”是为了我自己所开发的应用,这些数据代表着我一辈子珍贵的回忆,而我自己并不希望这些数据被拿来做商业用途。


△ 这是一位东京出租车司机的“世界迷雾”。 图片来源 | Twitter


Q:《Pokémon GO》这类 AR 游戏给“世界迷雾”带来过什么影响和启发吗?


A:基本上“世界迷雾”和这些后来公布的 AR 游戏的核心概念是完全不同的,“世界迷雾”所着重的是使用者一辈子的回忆,把人生当成是一场真实游戏,而不是一般的虚拟游戏,所以我认为是不能模拟的。


Q: “世界迷雾”显然是一个重应用,很多发烧玩家为此随身携带 GPS 设备,从使用者体验看,它似乎会造成耗电量大、 CPU 使用量过高之类的问题。如果大家抱怨这些,你们有什么想法吗?

 

A:我也为了玩迷雾去买了独立的 GPS 设备来记录,甚至因为 iPhone 自带的 GPS 芯片准确度太低(大约 10 米),而去购买超高精准度、甚至可以后期优化准确度的记录器来记录(优化后精确度可达 1 米)。

 

“世界迷雾”对定位精准度的要求非常高,因此代价就是会比较耗电。对我而言,“世界迷雾”所记录的路径就是我一辈子的珍贵回忆,如果准确度太低的话,记录出来的路径就没有意义了。至于 CPU 或 GPU 使用量过高的问题,应该是移动地图时为了实时画雾才会发生,如果开启应用内的省电模式,移动地图时就不会画雾,处理器的用量就会少非常多了。如果只是要记录路径的话,只需要打开记录模式然后把应用放在后台可以了,这时耗电主要是来自于定位,而不是处理器。


△ “世界迷雾”里有不少有趣的“徽章”来帮你增添乐趣:初出茅庐、冰雪高原、80 天、空中飞人、冒险家、罗马帝国、君主制等等。拿“罗马帝国”举例,当你拜访了 10 个曾被罗马帝国征服的国家后,你便能获得一枚“罗马帝国”徽章。 图片来源 | Ollix


Q:你们有考虑对穿戴式设备的支持吗?为什么?


A:曾经想过要支持 Apple Watch,但考虑到定位的精准度并不会比 iPhone 更好,且“世界迷雾”对定位精准度的要求很多,以 Apple Watch 的电量而言很快就会没电了,实用性并不高。另一方面,目前我们的开发重心放在安卓平台的移植,占据了不少工作时间,因此暂不考虑。


Q:“世界迷雾”下一步的发展方向是什么?很多使用者一直在期待“世界迷雾”开发出更多数据可视化的可能性,虽然“每一步都不会被辜负”的概念很吸引人,但你无法得知何时造访该地,造访该地次数,无法区分航线和非航线。资深用户希望看到更多数据分析,比如每一年的历史记录、某一天的轨迹、海拔信息等等,这个未来会呈现吗?


A:首先,我还是希望先把基础的功能做到最好,像是 100% 支持精准的离线查询探索国家。然后把“世界迷雾”带到更多平台,像安卓、iOS、Windows,甚至网页版都有在考虑。未来也有计划推出可以记录独立迷雾轨迹的应用,不过现有的版本受限于数据库的设计,无法呈现更多的数据分析了。


Q:能和我们谈谈“世界迷雾”安卓版的开发吗?预计什么时候会面世?安卓版的开发过程中需要克服什么样的困难?


A:安卓版的开发进行了一段时间了,目前最大的问题还是卡在离线查询国家的机制,因为安卓手机中的 Google Maps 并没有办法像 iOS 的苹果地图那样免费、无限制地在线查询,如果采用 Google Maps 查询机制的话,每个月可能都需要缴一大笔授权费给 Google,也就是会造成安卓版无法像 iOS 版一样采用卖断的销售模式。另一方面,不管是苹果地图还是 Google Maps ,它们的在线查询机制在内地都是无法使用的,所以为了最好的使用者体验,我们仍希望先将 100% 离线查询系统先开发好,再想后续计划。


△ 用户可以在“护照”功能里,找到所到地区与国家的基本信息。 图片来源 | Ollix


Q:“世界迷雾”在苹果 App Store 里最初属于游戏部门,并与 Game Center 关联,之后又被分到旅行部门,这中间经历了什么?你们现在如何定位自己的这款 App?


A:我们把“世界迷雾”定位为一款“真实人生的游戏”(real-life game),是可以让使用者玩一辈子的游戏,使用者就是游戏的主角,所以最初在 App Store 上架时放在游戏部门,但游戏部门里基本上都是一般人所认知的“虚拟游戏”,而且有太多资本雄厚的公司在推,会让“世界迷雾”很难有曝光的机会,才决定转到旅游部门。


在二代取消与 Game Center 的关联主要是因为 Game Center 是苹果系统专属的,而二代一开始设计的时候就考虑到跨平台的问题,但很可惜目前市场上并没有像一套类似 Game Center 又跨平台的系统,所以才会取消掉这个设计。另外一个原因是,迷雾的使用者分为两派,一派是坚持只记录自己在陆地的探索面积,一派是会记录搭飞机的航迹,这两者的等级数据会有很明显的差距,放在一起排名并不公平。


Q:现在 GPS Tracker 甚至山寨迷雾的 App 很多,你觉得你们的核心竞争力是什么?


A:的确有越来越多 App 试图山寨我们的创意。不过作为一个软件开发员,我想说的是,一个 App 好不好,不是只看表面的设计,更重要的是底层的架构设计。迷雾是要用来记录一辈子的珍贵回忆,数据库的设计就必须极度可靠,而已使用的空间容量要越小越好。而在分析用户在各个国家的探索数据时,就必须要精准,而且最好可以离线完成。这些看起来很简单,可当你把要记录的数据量放到一辈子及全世界的规模,事情就会变得异常困难,即便我当初在设计迷雾一代的时候就考虑了这些问题,设计出来的效果仍不完美,所以我才会根据一代的经验,又花了两三年的时间来研究开发全新的二代。甚至你可以看到,“世界迷雾”是唯一在放大缩小地图时能无缝缩放探索路径的 App,至今没有一个山寨产品可以办到。另外,我们也支持内地的火星坐标(一种对真实坐标加密的保密插件),如果是国外的山寨作品,基本上都没办法在内地使用,否则会有路径偏移的问题。最后,“世界迷雾”大概也是唯一支持最多云端的应用, iCloud、Dropbox、Google Drive、OneDrive 都支持。



(二)


Q:什么时候开始对程序设计产生兴趣的?什么时候开始决定自己创业,靠这项技能来改变自己的生活甚至改变世界的?有什么建议给那些有志于程序开发的 ta 们?


A:其实我大学是念信息相关科系的,只是一直很混,成绩也不太好,直到大二大三的时候看到很厉害的同学自己写程序搞出来的东西,觉得好神奇,才开始有兴趣学习。在 App Store 出来后不久,我就开始自学手机应用的开发,因为算是早期第一批的开发者,当时竞争还没有很激烈,所以很幸运,第一个作品就有不少杂志来采访。因为发现写 App 的收入可以过活,时间又很自由,所以毕业后就一直做到现在了。


我觉得不管做什么工作,最重要的是有热情。以我来说,我只做自己想要的应用,因为是自己要用的,所以我总会设法去做到最好。在程序这条路上,不断精进自己的技术水平是很重要的,做 App 很简单,但要做一个质量好的 App 真的不容易,这个只能靠时间跟经验去累积,别无他法。


Q:最初你们的团队只有两个人,小团队给你们带来什么便利和困难?


A:我们的团队一直都只有两个人,另一位当年是我的女友,现在是我老婆。我老婆主要制作图片,其他的大小事则由我包办。小团队的困难就是什么东西都要自己来,像是开发 App、研究及学习技术,还要回客服信、带小孩等等,所以当我在专心开发之际(特别是卡关的时候),基本上就没什么时间去处理其他事情。小孩出生前,理想的工作模式就是到全球各地去 long stay,一边体验不同的生活方式一边工作,但有小孩后还要考虑医疗、就学等问题,情况变得困难许多。好处当然也有,基本上“世界迷雾”是非常小众的 App,收入十分有限,但也因为我只要能负担一个家庭的开销就够了,不用去养一个团队,所以生活水平算是还不错。


△ 王崇仁与他的妻子黄湘珺,以及他们的孩子。 图片来源 | Ollix


Q:你们从来不接 case,只做自己想做的 App,你觉得苹果所搭建的开发者平台对你们意味着什么?


A:很幸运,苹果在我大学毕业出社会前发表了 App Store 这个平台,让喜欢自由、不想有固定上下班时间的我有了成为独立开发者的机会。因为有了苹果带动的智能手机革命,我才能过着自己想要的生活,不受太多的限制。我可以每天陪着家里两个小孩成长,虽然有时候带小孩会很烦,但时间这种东西就是错过就没了。


我在看《星际穿越》这部电影的时候感触很深,电影中的男主角为了让小孩能够生存下去,前往太空寻找可以让人类生活的星球,他出发时小女儿才 8 岁,然而因为重力及相对论等因素,他要去的某个星球的一小时就相当于地球的好多年,又因为在该星球发生意外待了 3 小时,等到他回到太空时,在宇宙飞船上留守的人已经老了,地球上的时间已经过去 20 年了,男主角一下子就错过了他女儿 20 年的成长过程的那种绝望感,令我印象非常深刻——有点扯远了,我想说的是,如果没有 App Store 引发的这轮革命,我肯定无法像现在这样全天陪伴着小孩成长。


Q:你们还有其他正在进行中的开发项目吗?如何保证产品线的持续旺盛?如何保证原创性?


A:现在除了正在开发中的安卓版,未来也计划会推出新的“世界迷雾”附属 App,衍生出更多的应用。“世界迷雾”是第一款将实时战略游戏中开地图的概念结合真实人生的 App,未来我们仍会依据这个基础不断优化、加入更实用的功能。基本上如果我想用的 App 已经有做得不错的了,我就会直接用,不会去山寨别人的作品分一杯羹。当我要自己动手做的时候,就表示市场上同性质的作品并不符合我的需求,所以我做出来的作品都会针对我自己的需求设计,跟其他作品一定有所不同。


Q:你平时“刷雾”的方式有哪些?


A:单车、开车、火车、高铁、客运。原则上我不记录飞机的航迹。


Q:生活中你最享受的事情是什么?


A:陪小朋友成长。


Q:2018 年有什么新目标吗?你环游世界的计划进行到哪一步了?


A:我希望今年能顺利先把安卓版做出来,然后还有桌机版,及传说中的“世界迷雾”附属 App 可以动工,看起来要做的事还蛮多的。说来惭愧,这几年结婚生子,又忙于迷雾二代的开发,一直都没有机会出远门,下半年等小朋友满周岁了,希望可以顺利出国走走。


Q:你有上太空的梦想吗?据说在太空 GPS 是可以工作的,“世界迷雾”会支持太空模式吗?


A:上太空真是个遥不可及的梦想,虽然说有机会上去的话应该没人会拒绝。“世界迷雾”没办法支持太空模式,因为经纬度坐标只适用于地球,就算真的有一套太空坐标的标准定义出来了,要如何呈现又是一个大问题,要知道即使是现在,人类对太空的了解还实在是微不足道。



采访:朱一君 | 编辑:赵慧



更多阅读


想加入我们?点击“阅读全文”

#我们修改了转载说明,

请后台输入关键词“转载”或点击“阅读原文”#

如果你喜欢这篇文章,欢迎转发到朋友圈



    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存