写点什么

前哈佛教授、Google 工程师 Matt Welsh 谈移动开发趋势

  • 2013-02-27
  • 本文字数:2391 字

    阅读完需:约 8 分钟

已经展开预订的 Google Glass,无疑是目前最引人注目的移动系统。类似系统背后,Google 有很多有学术背景的人做出很扎实的研究,为技术的商业化筑好了根基。Matt Welsh 就是这些人中的一个范例。

Matt Welsh 现在是 Google 的一名软件工程师,从事移动开发相关工作。此前,他曾在哈佛大学担任计算机科学教授,再之前,他曾在 Intel 做研究。他主要感兴趣的技术领域是分布式系统和网络。

在最近的一篇博客中,他谈到了自己对于移动系统的研究发愿。

他首先指出:

在 Google 的移动系统研究部门工作,我得以深入了解这个领域中存在的没有答案而又困难的问题。有时候,学术研究者问我对这些问题的看法、他们应该从哪里入手。我有一个不断增长的项目清单,非常希望学术界能尝试解决。这不是说 Google 没有在解决其中的问题,只是学术界的限制更小,也许能得出一些更具新意的想法。

他提出学术界不应该研究的问题,包括:

  • 移动电话上的电源度量
  • Android 调优
  • Dalvik VM 调优
  • 构建新移动 App,支持某些特定领域的科学目标,比如医学或环境研究等

其原因在于:

它们不够前沿,无法对未来 5-10 年有深远影响。

他还指出:很多学术界中人在研究一些愚笨而无意义的问题,比如手机上运行 P2P 网络、云计算为移动网络降低负载等等。在他看来,视频流、Web 浏览和图片分享等等,这些流量的一半都来自移动互联网,那些项目在这样的流量占比中毫无必要。

接下来,他提出了自己的心愿列表。

1、理解移动应用和蜂窝网络之间的交互

蜂窝网络不是为 TCP/IP 这样的协议设计的,大部分移动应用也不知道蜂窝网络如何运作。这其中有很多值得研究的地方,包括理解它们之间的交互、协议与应用调优。

注意到在 3G 网络环境中播放流视频时的几秒延迟了吗?或是在浏览 web 的时候,偶尔出现好几秒才能加载的情况?背后十分复杂,其中的机制还没有得到深入了解。

与有线电信网络、甚至是 WiFi 相比,3G 与 4G 网络有很不同的属性,包括延迟、丢包率的影响、电量消耗、在不同发送状态之间传输时的消耗等等。传输层数据丢失在蜂窝网络中很少发生,因为有多层冗余存在,还有混合自动重传请求 HARQ,试图在网络栈底层解决丢失问题。这就让 TCP 的拥塞控制算法没有办法了,因为它主要依赖丢包计算信号拥塞。同时,在很短时间内,频道带宽可能发生巨大变化。(多说一句,任何想用大量下载之类的简单评测方法来理解这些,都是错误的,大量下载与真正的移动流量完全不同。)

一个蜂窝网络连接的寿命也很复杂。协商某个专用的蜂窝频道需要好几秒,而且有很多变量影响蜂窝网络如何决定设备应处于何种状态,是的,这是由网络决定。这些参数的选择,取决于设备上的电池寿命、网络中信号消耗、用户接受延迟、整体网络容量等多方面的平衡。只动动移动设备的固件,无法解决这个问题。

在不同市场中,移动运营商常常使用不同的网络调整参数,这要基于他们部署的设备种类、他们看到的流量大小和种类。因此,没有一站式解决方案。

2、理解应用表现的移动网络切换

这是对上一个议题的扩展。在蜂窝网络中,网络切换很复杂,没人深入研究这对于用户体验的影响。同时,由于 WiFi 和可用的蜂窝网络越来越多,何时以及如何切换网络,有很多东西可以调优。

当我离开家,试图找到行车路线时,发现我的手机还在费劲巴拉地用十分微弱、即将消失的 WiFi 连接,我讨厌这样!这个领域有很多有趣的问题。

3、为什么我的手机不能持续用一整天?

对此热门话题,Matt 认为应该从改变移动应用调用的 SDK 入手。但由于现在移动应用开发热火朝天,他认为这么做很难。

为应用开发者提供更多力量和灵活性,还是限制 API、让应用更高效,每次都是开发者获胜。很多导致应用耗尽电量的问题,都来自 bug,但是应用开发者们会继续有足够多的绳子把自己(或他们的用户)吊在上面。他们需要更底层的方法解决这个问题。

这可以在多个层面解决,包括 OS、虚拟机、编译器。

4、我的数据在哪儿?谁能访问?

Matt 认为,很多应用将手机变成了跟踪器,收集用户的大量数据:位置、网络活动等等。有些移动研究者甚至很不道德地收集数据做自己的研究。一旦数据“进入云中”,谁知道它们会跑到哪里去、跑到谁手里。有 Bug 的或是恶意应用很容易泄露敏感数据,目前还没有好办法可以知道哪些数据被收集、谁收集、处于什么目的。

对此已经有些出色的研究,包括 TaintDroid ,但我认为还是有很多事情要做,尽管我们处于比较悲剧的位置,要跟开发者赛跑,他们总能发现更新、更好的方式跟踪用户。

5、未来十年后的移动 web 平台应该是什么样子?

在 Matt 看来,学术界没有认识到:开发一个真正出色、快速的 web 浏览器,其背后需要很高的复杂度和创新。

很不幸,学术界和 Web 开发社区之间的互动很低,很多计算机科学家认为 JavaScript 就是个笑话。但是别搞错了:浏览器基本上本身就是一个操作系统,它将很快可以做所有原生应用能做的事,甚至更多。另外,我发现 web 开发社区太过短视,也不愿意研发出真正引人注目的全新 web 架构。

Matt 认为:未来十年,移动 web 的用户将在数量级上超过桌面 web 用户。因此,web 将会是主要的移动平台,这就等于提出诸多全新趋势:

  • 无所不在的地理位置
  • 用户同时携带并与多个设备交互
  • 语音输入取代打字
  • 使用摄像头和传感器作为首要输入方式
  • 口袋中拥有强大计算能力,完成诸如实时语言翻译和机器学习能力,预测你接下来会做什么

我想,我们对于“web”是什么,视角太窄了,我们现在还在讨论诸如“页面”和“链接”这些愚蠢的问题,然而现实中,web 充满具有各种出色特性的开发平台。我们应该想想,接下来的十年,web 会怎么演化。

作为横跨学术界与产业界的专家,Matt 的看法的确具有前瞻性,比如“使用摄像头和传感器作为首要输入方式”。PointGrab发布了移动设备的手势操控iOS SDK ,基于现有平面摄像头就能做手势识别。还有另外一款应用“ Hanson 相机”,也能用动作手势完成拍照操作。希望本文能为 InfoQ 中文站的读者们提供一些创业的思路和想法。

2013-02-27 20:481742
用户头像

发布了 479 篇内容, 共 145.5 次阅读, 收获喜欢 43 次。

关注

评论

发布
暂无评论
发现更多内容

架构实战营 模块八 作业

脉醉

#架构实战营

中秋晴朗夜,我们与星月相见

脑极体

作业8

柱林

消息队列数据存储设计案例-模块八

小牧ah

架构实战营

设计消息队列存储信息数据的MySQL表格

木云先森

架构训练营

架构实战营模块八作业

maybe

python学习笔记:day1——python入门了解

秦时明月

Python编程

消息队列:RocketMQ事务实现

正向成长

RocketMQ事务

分布迁移下的深度学习时间序列异常检测方法探究

云智慧AIOps社区

深度学习 异常检测 技术学习 智能运维 分布迁移

数据仓库的数据从哪来?

奔向架构师

数据仓库 9月日更

linux之dd命令

入门小站

Linux

带你学会区分Scheduled Thread Pool Executor 与Timer

华为云开发者联盟

线程 线程池 Timer 任务调度 JDK 1.5

zookeeper迁移实践

小江

zookeeper 迁移数据

机场做好这道题,才能万户千家共婵娟

脑极体

[架构实战营]模块八作业

xyu

#架构实战营

Confluence OGNL 注入漏洞的严重安全问题

HoneyMoose

老骥伏枥-network policy之iptables实现

Lance

研发管理工具 ONES 完成 C 轮5000万美元融资,半年内连续三轮总计融近1亿美元

万事ONES

项目管理 研发管理工具 ONES 软件研发

网络攻防学习笔记 Day143

穿过生命散发芬芳

9月日更 虚拟化技术

Prometheus PushGateway 0.9 和 1.0 的区别

耳东@Erdong

Prometheus PushGateway 9月日更

架构实战营1期模块八作业——中间件设计

tt

架构实战营

SpringMVC源码分析-HandlerAdapter(3)-RequestMappingHandlerAdapter请求处理

Brave

源码 springmvc 9月日更

21. AI会让人类大量失业吗

数据与智能

人工智能

模块八作业

king

Vue进阶(幺贰陆):表格复用 TypeError: _self.$scopedSlots.default is not a function解决方法

No Silver Bullet

Vue 9月日更

索信达控股:新一代金融知识图谱解决方案的落地应用和研究

索信达控股

金融科技 金融 知识图谱

你是一名技术管理者还是项目管理者?

菜根老谭

项目管理 技术管理

在线SQL(Insert/Update)语句转JSON工具

入门小站

工具

架构训练营 模块七

小卷儿

python 学习笔记:day2——基本数据类型

秦时明月

Python编程

模块八作业

VE

架构实战营

前哈佛教授、Google工程师Matt Welsh谈移动开发趋势_JavaScript_郑柯_InfoQ精选文章