语盒,开源主义者小试牛刀作品

移动开发 移动应用
语盒基本工作原理是:在网络服务器与用户之间架设一台语盒服务器(或提供一个端口),由语盒服务器代替用户手中的设备向网络服务器轮番查询新消息,并打包发送给用户。这个过程中,可以减少用户设备“轮询”工作量,减少电池消耗,压缩网络流量。

语盒的故事

“如果早一点知道语盒,我过年时就不会把 BB 9000 送人了。”这是田智之给我演示(下方视频)如何在黑莓手机上 Push Mail 式地收发邮件后,得出的感慨。

语盒是第二期爱创会宣讲项目,也是我们发布第二期爱创会活动消息后最早投递的项目。在 2 月 11 日活动现场,语盒的得票数是 24 票,排名第四。

语盒取自“传播语言信息的小盒子”,其中语言信息包括文字、图片、视频等。语盒基本工作原理是:

在网络服务器与用户之间架设一台语盒服务器(或提供一个端口),由语盒服务器代替用户手中的设备向网络服务器轮番查询新消息,并打包发送给用户。这个过程中,可以减少用户设备“轮询”工作量,减少电池消耗,压缩网络流量。

目前语盒集成的功能有邮件、微博、Gtalk。以上原理,以 Gmail 邮件为例:

语盒在 Google 邮件服务器和 BB 手机架设了一台服务器(或者服务器上的一个一对一端口),这个语盒服务器每隔 30 秒(查询间隔时间可修改)向 Google 服务器查询有无邮件,由于算法设定为“1”,那么只要有 1 封邮件,即由语盒服务器打包发送给 BB 手机上的语盒,人们打开语盒即可收发邮件。这里,如果 30 秒内收到了 10 封邮件,压缩率会更高。

在下方视频中,微博的使用存在一些延迟,是因为田智之把语盒服务器针对微博“@”功能的轮询周期设定为“每 30 秒,接收量大于 5”注1,如果 @ 微博数量较少,那么存在 150 秒延迟。“但轮询周期是可以更改的”。实测中,BB 手机端 Gtalk 与 Mac 端 iChat 对话几乎没有任何延迟。详见视频:

在问到语盒是否会侵害黑莓邮件业务利益时,田智之很坦然,“黑莓 Push Mail 在国内用户很少,语盒不存在所谓的‘冲击’或‘侵害’,因为没有对象嘛”。而说到与黑莓 Push Mail 的区别,“主要是网络联接性方面。黑莓的技术是‘移动基站寻找手机’,邮件永远在线;而语盒是通过手机给移动基站发‘心跳包’(keeplive),与基站(信号)保持联系”。

目前语盒在黑莓圈子里有一些付费用户,8 元/月费用,也能给田智之带来小笔收入——但他说更大乐趣来自与用户的互动,在这个过程中改进 Bug,提升产品体验。“以前是产品经理提需求,程序员为产品经理服务;现在直面用户,根据用户需求,直接为用户服务,很有趣。”

语盒也有 Android 版本,但由于 Android 应用多如牛毛,在没有推广情况下,语盒默默无闻。Android 用户对于邮件、Gtalk 也没有强烈的欲望,因为这两个服务都是 Android 系统自带的。田智之说“实际上可以有更好的体验,比如延迟更小、节省流量,减少手机本地刷新次数(交给语盒服务器),减少电量消耗”。但 Android 平台用户整体还没有进入“追求体验”的阶段。

开源主义者的故事

KK 在《失控》中写到“失控”对硅谷创业公司的指导:

在一个练达、超智能的时代,最智慧的控制方式将体现为控制缺失的方式。投资那些具有自我适应能力、向自己的目标进化、不受人类监管自行成长的机器,将会是下一个巨大的技术进步。要想获得有智能的控制,唯一的办法就是给机器自由。

给代码自由,是国外著名的 Social Coding 网站 GitHub 崇尚的精神。——GitHub 的开源精神,果合张宁在访谈中有提及,2011 年 1 月上线的果合产品,就直接受惠于 GitHub 开源代码。而作为程序员出身的田智之,对于自己辛勤劳动的成果,抱着极开放的态度。在语盒 Wiki 中,他前年 11 月写的一篇《为什么选择开源》文章中,陈述了这种想法。

开源是一种开放的态度,与其说是 Open Source,还不如说是 Open Mind,一种愿意把自己的思想毫不保留地拿出来与大家分享的精神,也可以说是愿意把自己思想中的不足暴露给千千万万的人,对,毫不保留地暴露。

开源带来的好处,田智之说,“一些做程序员的朋友看了我的代码,会说‘你怎么那样写,这样写会更好一些’,这对于我来说,是改进产品的重要途径”。

而对于常人(包括我)所担心的“产权保护”,《为什么选择开源》中也有明晰表述:

开源不是魔鬼,而是选择。

可能是竞争的残酷性,让很多人如同警惕的羚羊,听到开源,就像发现狮子一样,拼命飞奔。他们战战兢兢地将核心竞争力放于保险箱中,划地为牢。

我的观点是,某些方面来说这是有道理的,因为专利、认证等等,都是保障发明者的利益,鼓励继续创新,同时又能保护唯一性,实现权威。但是它不并适用于 Language,语言——程序也是一种语言,是人与计算机交流的语言,程序员与程序员交流的语言,它只有纯粹的思想,本身不存在任何的价值实体,而真正的价值,是“说”出这些语言的人,以及这些人用语言作为工具,进行的劳动和劳动获得的成果。

说白了,就是代码不值钱,服务才是最终体现价值的地方

我想,那些觉得自己写出的代码就是自己最终劳动成果的人,是对这个没有搞清楚。我从事的行业,有很多人跳过很多公司,手里有很多软件的代码,整套整套的,可是他们仍然碌碌无为,生活平淡,其中有些甚至将其作为商品,到处去卖,而不是以此为基础,通过自己的再改造而获得报酬。结果可想而知,买去的人读不懂代码的构架、精髓,实现不了服务于人的过程,最终造成损失。

田智之还在这篇文章中提到一个小故事:曾在大学里参加一个技术讨论会,初学 Windows 开发的他被 Linux 高论者鄙夷为“小白”。他反问:为什么不主动、开放一些呢?

2010 年 10 月田智之开始从 C++ 转为关注 Java 程序开发,由于 C++ 技术积淀,Java 开发对于他来说易如反掌,一个月学会 Java,半个月搞定黑莓“小工程”语盒,2011 年 4 月正式推出 1.0 版本。后来 Android 版本也是由田智之自己开发的,学习 Android 开发知识也不是问题,一个月搞定。

“难度可能来自推广方面,很费精力”,田智之说,但他也补充:“技术方面没有任何问题,而且在与同行、用户的交流中乐此不疲”。

语盒最初是田智之为了满足自己使用黑莓手机邮件的需求而开发的,目前在黑莓平台已经非常成熟。而 Android 版本也已经推出,iOS 开发过程中经历过一些波折,暂时还没有推出。我问他对黑莓平台怎么看,他回答得很现实:“作为国内开发者,我不会选择黑莓,而是优先考虑 Android 和 iOS 平台”。我让他从开发者的角度,来点评几大手机平台,他的回答是:

  • 黑莓平台:非常牛逼的开发者,只能做出普通的产品
  • Android 平台:非常牛逼的开发者,可以做出非常牛逼的产品
  • iOS 平台:普通的开发者,可以做出非常牛逼的产品

谈到将来的打算时,田智之说,希望能为中国开源事业做一些贡献。“我还不到 30 岁(1983 年),可以做很多事情,中间也会遇到很多困难,比如生存之类的问题。但希望能把这个事业(开源)往前推一推。”我问他如果语盒商业化受阻,是否会开始做其他的项目。田智之给出的是肯定的回答。

注1:轮询 5 次,每次接收 1 个量;或轮询 1 次,一次性接收 5 个量;或者 2 +3 ,等等,条件满足“5 个量”即可。

责任编辑:景琦 来源: ifanr
相关推荐

2017-05-04 21:15:30

Android分辨率

2021-01-08 09:07:19

Scrapy框架爬虫

2021-05-20 07:56:35

Bean容器Spring

2023-10-07 08:59:02

2022-07-04 23:24:28

sql优化监控

2011-06-23 08:40:27

2018-09-19 09:05:54

Linux桌面开源

2012-06-02 01:24:33

程序员

2024-01-18 23:42:31

鸿蒙鸿蒙星河版

2022-04-26 13:08:09

LXQtLinux桌面

2023-04-20 17:41:38

开源清华

2012-05-03 10:24:02

ApacheMINAJava

2014-06-06 13:42:26

iOS 8QR CodeWWDC2014

2012-09-25 13:32:34

Deepin

2011-10-21 09:16:36

云计算虚拟机安全虚拟化

2013-08-14 10:18:45

UbuntuUbuntu Edge

2022-09-25 23:00:03

人工智能机器人深度科技化

2011-03-31 15:35:04

C++

2010-03-05 17:25:07

sharepoint

2021-03-08 08:21:19

词云数据可视化大数据
点赞
收藏

51CTO技术栈公众号