2009年,N900的发布曾给Nokia带来短暂的希望,虽然这个希望很快就随着MeeGo破裂了。Nokia衰败前的最后时刻是什么样的呢?这篇文章以作者亲身经历反映出大厦将倾之前的芬兰科研界和工业界的状态。
注:作者谭苗青曾在芬兰诺基亚总部工作三年,现在在硅谷工作。
序幕
06年夏天,我从武汉大学软件工程专业本科毕业后,选择去芬兰的赫尔辛基理工大学留学。一是因为芬兰的教育免费,二是因为芬兰是诺基亚和Linux的发源地。
我给自己设定的目标很简单:硕士毕业后进诺基亚工作。但我那时对诺基亚所知甚少,对手机软件开发更是毫无概念。我当时最感兴趣的专业领域是Linux软件开发和互联网协议,但我并不明确这些知识如何能应用到手机行业。
幸运的是,我很快就找到了答案。06年底的一个晚上,一个在诺基亚研究中心实习的学长给我展示了一款诺基亚的新设备。它有一块触摸屏,比普通手机屏幕大很多,但依然还适合放进口袋里。它没有手机功能,而是一款上网用的掌上电脑,用户界面风格也和诺基亚的智能手机大相径庭。最有趣的是,这个设备的操作系统是Linux,所以很多桌面Linux程序可以轻松移植到上面。而诺基亚会给这个系统添加更多的互联网功能,比如聊天和语音通信(VoIP)。
这款设备是 770,是诺基亚研发的基于Linux的移动操作系统 Maemo 旗下的第一代产品。很难描述我在06年时看到它的兴奋感受。那是一个还没有iPhone,iPad和Android的时代。移动设备,Linux,互联网通信。这是我想要从事的领域。
07年夏天,我拿到学校实验室的暑假实习职位,课题是研究多媒体应用在不同设备间的实时切换。我们小组开发了一个流媒体视频点播应用,可以在一台电脑上中断,然后立刻切换到另一台电脑上继续播放。实习结束前,一个给诺基亚做外包的公司给了我一个Symbian软件开发的职位,但我选择留在实验室做硕士论文。我想做多媒体在移动设备和电脑间的实时切换。教授欣然同意我用诺基亚770,在Maemo平台上继续这个项目。
07年9月份,我的暑假实习同伴去了挪威,辅导我们的学长去了美国,整个项目只剩下我一人独自摸索。我想在桌面电脑和移动设备间切换VoIP通话。那时诺基亚已推出了第二代Maemo产品N800,系统里也有了基于SIP的VoIP功能。诺基亚开源了Sofia-SIP软件库,并附带了一个简单的命令行VoIP程序。四个月内,我在这个VoIP程序上实现了通话切换功能,并顺利的以此为题完成了硕士论文,最后凝炼发表成一篇国际会议论文。
2008年4月前后右,我顺利找到了一个做短信和彩信网关的软件公司的全职工作,以及一份诺基亚研究中心的实习工作。我已下定决心要去诺基亚参与Maemo设备的开发,所以虽然研究中心的实习工作和Maemo无关,我还是选择了诺基亚。我相信进了诺基亚的门,一定能找到机会去Maemo部门。
我的预想没错。
第一年N900 (2008–2009)
上
08年9月,结束诺基亚研究中心的实习后,我加入Maemo软件部门的实时通信组,正式成为诺基亚的员工。在推出三代掌上电脑后,部门正在研发基于Maemo的第一款触摸屏手机。
真正的工业界工作很快让我感受到其与学术界的不同。最开始的四个月,我并没有太多参与Maemo手机的研发,而更多的是学习之前的代码。即使手头上的任务不多,也不是关系重大的项目,比如改一个软件库里的bug,也得大面积地阅读源码去理解问题。有些软件模块没有完整的单元测试,不知道小小的改动会不会导致错误。
其次,我们组开发的即时通信软件用一个叫Telepathy的开源软件框架。因为这个框架和我们的项目一起发展,API时刻都在变化,又没有很好的文档,学习起来颇有难度。
另外,我在学校里没用过专业的软件开发工具,所以在调试代码,使用版本控制软件,Linux命令和脚本等等方面,与我们团队那些职业软件工程师,有着非常大的差距。
我那时最缺失的是对软件构架的理解能力。我们这个领域的商业开发,很少用到复杂算法,代码逻辑都比较简单。但大的软件项目有较为复杂的构架和抽象层次,如果没有文档和单元测试的支持,只能从大量代码中去理解设计意图。这是我跨过的首道门槛。
08年时,诺基亚已经宣布要转型成为互联网公司,对各类互联网应用和服务投入了很大的研发资源。但除了Ovi Share和Map,Maemo团队还没有和诺基亚其它互联网服务部门有正式的合作,Maemo设备上的客户端软件也以集成诸如SIP, XMPP/Gtalk和Skype等第三方服务为主。
到了11月,诺基亚研究中心的一个项目组找我们组合作。他们在N95上开发了一个基于SIP的多人视频聊天应用,在服务器端聚合视频,再发送给每个手机客户端。经理让我去测试他们的服务,并分析集成这个服务到我们软件体系的可能性。这个多人视频聊天项目的服务器后端只是原型开发,没有大规模负载流量的能力。我们组是个客户端软件研发团队,同样没有能力部署商用服务器。这个合作最终不了了之。那时公司内的许多互联网项目,诸如微博,地理信息签到,用GPS跟踪运动状态等,都没能得到商业化。那是在Facetime, Twitter, Fouraquare和Nike+风靡世界之前。
现在回头看来,08年底是诺基亚由盛转衰的开始。虽然公司还是全球手机市场的第一名,而且非常盈利,但由于迟迟不能推出能和iPhone竞争的高端触摸屏手机,股价一直在跌。大概11月的时候,我参加了针对新员工的培训。一个负责N系列的高管自信地说,诺基亚就像一艘大船,转向总是很慢,但一但转向,会势如破竹。他相信诺基亚已经完成转向了。在不到一个月后的诺基亚大会上,OPK和Anssi用一段华丽流畅的视频宣布了N97,第一款N系列触摸屏手机,诺基亚对iPhone的直接回击。在当时的诺基亚,大概很少人察觉到了衰落的迹象(N97在半年后上市,用户界面远不及视频里展示的那样流畅)。
▲图片说明:Maemo部门实时通信组合影
下
09年初,我的工作开始步入正轨。从掌上电脑发展为手机,我们组的工作是把Maemo系统的电信和VoIP语音集成到同一个电话程序,把短信和IM集成到同一个聊天程序,并提供统一的账号管理程序(SIP,Gtalk,Skype,MSN等)。我和一个俄罗斯人,一个乌克兰人,一个巴西人以及两个印度人组成了多国部队,专攻Skype集成。我主要是做Skype联系人信息导入电话本,注册新的Skype账号和Skype群聊。
那时在欧洲和中国,Facebook和Twitter这类社交网络尚未无处不在,而我在国内的同学们更流行用QQ和MSN的签名档来彰显个性或通告近况。我萌生把IM好友的签名档聚合成类似Facebook News Feed和Twitter Timeline的想法。利用我们组的即时通信软件框架,我开始在业余时间在Maemo手机上实现这个想法。
2,3月份的时候,周末加班开始了。这在诺基亚其他部门并不常见。我们Skype小组暂时停止项目,投入到聊天程序项目组中。Maemo使用的GTK+用户界面框架还不能轻易混合对话框,表情图片,文本以及超链接等聊天软件需要的元素,所以项目组决定用内嵌网
本文来源:不详 作者:佚名