为什么比尔·盖茨认为自己最大的误判是给了谷歌推 Android 的机会？怎么理解软件世界的赢者通吃？
关于微软在手机市场失败的根本原因，网络上讨论很多，但绝大多数只接触到表象，却没能戳中实质。  2006年主流意见是移动平台微软胜券在握，虽然此时掌上智能设备市场总体份额里微软只有12%，而塞班高达54.4%。 在iPhone引发手机革命前，微软主要对手是塞班。两家公司有相同的商业模式，都是靠卖操作系统赚钱。而其他软硬件一体的公司，如黑莓、Palm，反而不构成直接竞争。一开始塞班占了上风。塞班手机授权费更低是一个重要原因。 塞班类似桌面端Linux，需要加上各家定制的界面，才算完整的系统，如诺基亚的S60，爱立信主导的UIQ，日本的MOAP。其中S60，随着诺基亚手机畅销，最为人熟知，几乎成了塞班的代名词。到2006年，从全球市场看，S60是无可争议的冠军。然而在美国市场，塞班缺乏存在感。诺基亚和爱立信都是GSM阵营大将，因此塞班与高通关系非常微妙。直到2005年才有第一款搭载S60系统的CDMA手机Nokia 6638问市。美国CDMA制式占大头，塞班自然打不进这块市场。当然美国也有一些采用GSM制式的运营商，可诺基亚自持身份，不愿把自家利润丰厚的音乐业务出让，那段时期诺基亚在美国仅与一家小运营商Cingular合作过，共推出过两款手机。因此，美国人没把塞班放眼里。 另一方面，诺基亚的S60一家独大，再加上塞班本身问题（这个得另外开一篇长文解释，此次从略），塞班阵营的厂商开始与微软眉来眼去。除了诺基亚紧抓S60，黑莓守着自家三分地，其他各大OEM都开始尝试做Windows Mobile产品，连浓眉大眼的Palm都叛变了。这段时期，智能掌上设备分为智能手机和PDA两大类。 PDA屏幕更大，一般配有触摸屏和触控笔，多采用qwert键盘，功能比手机更多，价格也更高。 PDA更接近现代手机，即使在当时人们也认为PDA是未来，也是微软、黑莓、Palm几家开发的重点。2006年第一季度，Windows Mobile虽然在手机市场份额仅有4%排名第三，但是在PDA市场有绝对优势，占据53%份额。2006年市场分析主流意见认为，大势在微软这一边。 Windows Mobile处于领跑位置,暂时的成功使得微软高层忽视了许多深层次问题。 人性原本如此，进入新领域总情不自禁地套用以前经验，试图复制成功。微软在商业上试图重现PC商业模式，靠出售操作系统赚钱。这一阶段，从盈利模式看，黑莓最健康。黑莓不光从硬件赚钱，还有电邮加密等各项服务收入。一台设备10美刀价格对BOM还是有冲击力的，微软内部也有对系统授权费这个商业模式提出忧虑。但是因为事情似乎一切顺利，高层没放心上，直到Android横空出世。 Android不是第一个基于Linux的移动操作系统。之前摩托罗拉、诺基亚、索尼都做过。结果嘛，跟桌面版的Linux系统一样，山头林立各自为战，碎片化严重。Android不同。谷歌当时不做手机，与OEM们没有竞争关系，系统由谷歌主导开发，形成了向心力。Android的开源对微软不致命，因为Windows Mobile是个开放的操作系统，OEM可以自行更改代码。而免费这一条，微软就没招了。谷歌作为一家广告公司，可以先给货后收钱，等用户用上Android手机后，凭搜索等各种业务把钱给挣回来。能够这么做，基于谷歌多年来在广告业深耕，打造了一整套基础设施。微软无法照搬，Bing刚刚起步，基础设施不是一时半会能建立起来的。一直要到2014年，微软才宣布Windows Phone系统免除授权费。 2011年，诺基亚宣布与微软达成战略伙伴关系。为了拉拢诺基亚这个当时最大的手机公司，微软给出了一系列非常优惠条件，使得原本与微软保持良好合作关系的OEM们纷纷出走，全心投入安卓阵营。前面有朋友说：“微软收购诺基亚之后，所有厂商都停止了做微软手机的计划”。这个不对。事实上WP手机最丰富是在诺基亚手机部门被微软收购后，2014~2015年WP 8.1时期。微软拉拢了一大批厂商，包括TCL（阿尔卡特）、联想、华为、中兴、金立、海信等国内手机生产商，以及印度和其他国家的厂商，发力了一把。参见Wiki WP7、WP8、WP8.1、W10M设备统计表。 随着其他厂商出走，Windows Phone生态实际上变成微软与诺基亚的共有资产，商业模式从原来的横向整合变成变相的垂直整合。如此一来，WP失去了横向整合通过竞争降低成本的优点，对安卓的成本劣势进一步扩大了。更糟糕的是，诺基亚位于高福利国家芬兰，早年好日子过久了，它恐怕是当时所有手机商里成本问题最严重的一家。 这是商业模式的问题，下面谈技术。 在Windows Mobile时代微软对系统UI策略是照搬PC设计，把台式机上的下拉菜单一套搬到手机上面，通过熟悉的界面和操作逻辑，减少用户学习成本。这个策略还是有成效的，与PC交互便利是WM一大卖点，正如现今与iPhone互动方便是推荐购买Mac的理由一样。缺点是，菜单选项紧凑，而人手指太粗，用户需要尖头的触控笔或手指甲在电阻屏上进行操作，十分不便。因此Jobs会吐槽Who wants a stylus？ iPhone出现后，微软第一步应对是对WM进行改进，修改系统UI设计使之更适合手指操作。我们可以明显看到Windows Mobile 6.5与前代相比，系统元素变大了，对手指更友好。 但是这依然无法应对电容屏。WM 6.5本身只支持电阻屏，HTC自己动手修改底层代码，做了两款电容屏手机：HD 2和HD Mini。我们不妨以HD2为样本，看看WM为什么在电容屏上水土不服。下图左侧是自带的电话簿，右侧是第三方软件“注册表编辑器”。 可以看到左侧应用专门为手指操作优化过，而右边应用没有，行列排列过于紧密。 操作系统本身微软可以修改，第三方应用则鞭长莫及。微软当然清楚问题所在，于是抛弃Windows Mobile及其软件生态，从头设计的全新系统Windows Phone 7。WM第三方应用既然不合时宜，强行留之只会成为新应用引入推广的阻碍，舍弃是正确的决定。 人们谈论到iPhone带来得手机革命时，常集中于系统UI改进操作简便人性化，很少提及更深层次的操作系统变革。2007年随着硬件性能不断提高，量变引起质变，计算范式引来了变革机遇。这个机遇，微软、塞班、黑莓等公司忙于竞争没注意到，反而被冷眼旁观的苹果捕捉到了。 iOS内核是Darwin，Android是Linux，两个都是现代的操作系统内核。Windows Mobile用的是Windows CE内核。从技术上看CE是个“落后”的内核，九十年代中期刚推出时，NT有严格的内存保护，CE基本没有；NT里单个程序最大能用2GB内存，CE里只有32MB；NT支持完整的Win32 API，CE只有残缺版的。随着时间推移，微软添添补补，CE有了与Windows 95一样的内存管理，但骨子里依然不足。CE专门为低配置嵌入式设备设计，而手机硬件发展到一定水平后，其弱点逐渐显露。CE一个重大缺陷是不支持多核处理器，这导致Windows Phone 7手机，包括旗舰机Lumia 900，搭载的都是单核处理器，而此时多核处理器时代已经来临。虽然2011年推出的CE 7.0版加入双核处理器支持，但显然，对一个先天不足的系统缝缝补补，无法跟使用现代的操作系统内核的iOS和Android竞争。内核必须得换！然而微软在执行上犯了巨大错误。 Windows Phone 7改变了UI，却依然使用CE内核。从事后诸葛亮的角度看，这是重大失策。然而在开发WP7时，人们对NT固有印象是吃资源，以当时的硬件水平NT跑不动。微软不是不知道切换成NT的好处，但是Longhorn开发失败殷鉴在前，微软保守了一把。直到微软研究院的项目Experiment 19在2009年成功证明NT不光能跑，而且跑得比CE更好，才着手考虑更换内核。 Windows Phone更换内核带来两个严重的负面影响: 但是不管责任是不是高通，这些问题是可以提前预料的，微软的应对简直算是教科书级的负面典型。微软高层说，WP8新增功能在支持各种新硬件，多核处理器、更高分辨率、NFC等，老手机本来就没有这些硬件，用不上WP8。这典型的工程师思维，情商为负值，丝毫不懂用户心理。大量WP早期用户，发现手机无法升级系统，弃之而去。原本能发展成铁粉的用户就这样流失了。Windows Phone整个发展势头严重受挫。 2000年Bill Gates宣布卸任微软CEO，把公司日常事务（在名义上）交给Ballmer，一边自封Chief Software Architect，主持代号Longhorn的下一代操作系统开发。Gates给Longhorn定下三个野心勃勃的目标，用托管代码C#写操作系统，基于关系数据库的文件系统WinFS，一个新的图形子系统Avalon。但是微软没有进行可行性论证就强行上马，在把大量人力投入Longhorn三四年后，微软终于不得不接受现实，整个开发计划推倒重来，重新开发Windows Vista。然而，Vista开发周期太长，又不巧碰上Dennard Scaling失效，微软严重误判了硬件发展方向和发展速度，导致Vista是按照根本不存在的硬件设备为目标来设计，被用户一致厌弃。Vista的失败，使得微软不得不全力救火，拼老命做出Windows 7，总算保住了基本盘。 2000s这十年，微软绝大部分人力被Longhorn/Vista/Win7吸走，mobile团队得不到重视，连零头都算不上。再看看同一时期苹果和谷歌在做什么。Vista上市同年，iPhone横空出世；着手重新设计WP时，第一款安卓手机问世；好不容易做出Windows Phone，苹果已经站稳脚跟，顺势推出iPad。 两千年伊始，微软在科技巨头里处于领跑位置。但是对未来科技发展方向的战略错判，使得微软跑进了一条死胡同，等发现后再赶回来，已经从领跑者变成了追赶者。微软在Windows 8时期，统一了PC、手机、Xbox三个平台的内核，Windows 10时期又进一步统一了核心组件功能OneCore和API，每一步举措都是对的，错就错在太迟，开发者和用户早就被其他平台抢走了。假如能早两三年推出Windows 10和UWP，假如能早两三年统一内核，假如能早两三年推出Surface，情况会大大不同。回过头看，初始原因在Longhorn上面。 此外，Windows开发模式也有问题，延续了九十年代三年一个大版本的开发速度。三年间隔太久，这意味着在设计系统时要对三年后的硬件水平和用户需求进行精确的评估。这种做法在如今变化激烈的时代行不通。而微软在Windows 10后，才改成一年两版本的新的开发模式。  最后，感兴趣的朋友可以再读一读我对为什么微软赢得了三十多年前图形界面革命的回答。 ps，可能会写一篇塞班失败原因，感兴趣请留言，没人看就算了。 