二、电脑和软件的故事

作者:金捷幡 发表:2019年4月

1. BIOS和PC的小故事

众所周知,微软的总部在西雅图。然而,微软的创立和头三年都是在新墨西哥的阿尔伯克基,就是“绝命毒师”住的那个偏僻荒凉的小城。是什么让哈佛退学的比尔盖茨,背井离乡奔赴千里之外?

之前中国记者的报道,可以说多半都是错的。他们说盖茨因为老妈是IBM董事拿到IBM PC的操作系统合作机会,赶紧退学建公司。但是,盖茨创立微软于1975年,IBM合作是1980年的事情。盖茨的妈妈也不是IBM董事。

事情的真相有时没有包装出来的那么好玩。比尔盖茨在哈佛上的是法律系,因为他父亲也是律师。但盖茨真心不喜欢学法律,把时间都花在电脑上。课余时间,他和同在波士顿的老乡保罗艾伦开发了BASIC语言的解释器。

1975年1月,俩人读杂志看到MITS的Altair 8800电脑广告,觉得可以把这个解释器卖给MITS。结果他们成功了,艾伦还被MITS聘用了。而MITS,正是位于阿尔伯克基。4月,俩人注册了皮包公司微-软(最早公司名字中间确实有个杠)。这时,盖茨并未退学。

哈佛大学并不是个好混的大学,男子社团和女生们都喜欢长相好体育好的型男,而这两项都是盖茨的绝对弱项。他的学业也因为搞电脑耽误了,上完大三还欠多一年的学分。学习和生活都不开心,退学也许是一种逃避。

1976年,盖茨搬到阿尔伯克基,年底艾伦从MITS辞职。1977年,俩人正式签署了合伙人协议。1979年,由于阿尔伯克基人才匮乏,俩人把微软搬回老家大西雅图。

值得八卦一下的是,MITS的创始人兼总工Ed Roberts,1977年把公司卖了几百万美金买了个大农场,然后40多岁重新上大学读医学博士,最后从一个牛逼电子工程师变成了一个医生。真是了不起的人生。

1980年,盖茨的母亲玛丽在一次开会时碰到同在一家非盈利劝募组织兼职的IBM董事长总裁约翰欧普尔,提到儿子的公司。欧普尔很帮忙,介绍了几个高管,随后盖茨就去谈PC的操作系统合作了。

但是,微软当时并没有操作系统,只有BASIC解释器。当时最流行和成熟的微机操作系统是CP/M,但IBM去谈合作人家居然不肯卖。这对微软来讲真是天赐良机,他们赶紧和同在西雅图的SCP公司买下了一个类CP/M的操作系统86-DOS,这是年仅22岁的Tim Paterson花了几个月一个人用汇编语言写出来的。目前,MS-DOS最早的版本可以下载源代码,里面有Tim Paterson的一封信。

很抱歉这次的引子实在是太长太八卦了,我们故事的主角BIOS终于要登场了。

一、

IBM PC发布后取得了巨大的成功。然而,IBM当时居然在PC上没有设置任何的专利,这造成头两年就有近百家号称兼容机的克隆机出现,他们向英特尔买CPU,向微软买DOS,最终售价只有IBM的一半。不过,他们缺一样东西:BIOS (Basic Input Output System)。

BIOS是用来安排PC上电自检和引导启动到操作系统的一段汇编程序。这段程序IBM却“不小心”地在技术文档中公布了全部源代码,这使得兼容机可以抄袭它。但是,由于IBM拥有BIOS的版权,抄袭是违法的。1983年,在类似的苹果诉其兼容机Franklin一案宣判后,IBM胁迫不少公司退出了兼容机市场。

这时,当时名不见经传的凤凰科技(Phoenix Technologies)解救了大家。Phoenix采取了一种叫“洁净室”的反向工程方法,即A组工程师研读IBM源代码写开发需求和文档,B组工程师从未读过IBM源代码的根据A组文档做开发,两组人之间隔着所谓的“中国墙”,来阻挡控方律师使用“抄袭”的字眼。1984年5月,Phoenix发布了自己的BIOS,并开始授权给兼容机厂商,使得兼容机市场扫清了最后的障碍。

当年,正好是AT&T因涉嫌垄断被大卸八块的时候。IBM虽然心有不甘但怕被扣上垄断的帽子,很快放弃了对兼容机的扫荡。而由于Phoenix的BIOS确实写得很好,随后IBM把自己正牌PC BIOS的写作任务也开始交给了Phoenix。直到今天,主流ThinkPad的BIOS仍然是Phoenix公司编写提供。也有一些品牌,比如Compaq和东芝,有自己的BIOS in-house研发。

二、

1985年,中国也产生了红遍大江南北的兼容机长城0520CH。而1984年成立的联想,要等到1990年才推出自己的兼容机。

1985年,印度一代移民Subramonian Shankar被Michael Dell(戴尔电脑创始人)亲自请到Austin设计386主板,这个天才工程师不仅完成了整个主板和BIOS的工作,还设计了当年有名的Turbo按钮,按一下主频可以从8MHz升到16MHz。然而戴尔怕386不稳定放弃了做第一个吃螃蟹者,这使得Shankar去到亚特兰大创立了American Megatrends Inc(AMI)。而因为Phoenix BIOS卖得太贵,他自己也用同样的“洁净室”方法做出了自己的AMI BIOS。

此后,Phoenix和AMI这对冤家开始了长达30多年的竞争。

除此两家外,BIOS行业还有Quadtel、Award、General Software等多家企业,然而它们后来一一被Phoenix并购。Phoenix就像剑宗,不断有各种新奇的剑法出来,然后这些剑法又不断被破掉。AMI像气宗,几十年坚守苦练内功,最终站上紫禁之巅。

三、

Award Software也是最早做BIOS的独立公司之一。中国玩过DIY电脑的,8成以上都见过下面这个画面

Award BIOS像AK47一样可靠、好用和价格便宜,这使得它成为台湾的大小主板厂商的最爱。1993年,黄肇丰创建的台湾GCH公司收购了Award, 1996年完成了Award在纳斯达克上市。不过,Award BIOS虽然在台式机主板份额显著,但是缺乏大PC品牌和笔记本产品线,因而难以提高价格,获利能力有限。上市只有一年多的时间,就被Phoenix并购了。

应该说,2000年代初是Phoenix的黄金时代,低端市场有Award产品线控制,高端市场有Phoenix BIOS,那时几乎不把AMI放在眼里。甚至,Phoenix公然挑战英特尔的权威,对英特尔推出的UEFI采取对抗的态度,试图和微软结成联盟把BIOS和Windows深度捆绑,实现数字版权和其它安全功能。对Phoenix的市场份额太大感受到威胁,英特尔开始扶植AMI(公版BIOS从Phoenix改成AMI)并自己投资了一家专做UEFI的BIOS公司,这就是台湾的Insyde。对Phoenix一箭之仇,最后英特尔花了十年终于得报。

和AMI这样创始人把控的私人公司相比,Phoenix的发展被上市公司和职业经理人绑架的弊端逐步暴露出来。经理人一方面追求在应用软件上扩张以在股市上讲故事,另外为了追求临时业绩,把应该按出货台数收的版权费,变成给客户一次性买断。举个例子,等于把未来几年的收入打个两折在一个季度卖掉。这样,有的经理人拿到奖金哈哈一笑后就跑路了。

到了2006年,这种模式崩盘导致巨亏。Phoenix新的CEO和COO\CFO又上任了。我那时负责中国大陆的业务,有次曾经陪COO在北京拜访客户。COO是个年过六旬的美国老头,一上来面对客户的几位VP就说我来讲讲我们牛逼的故事。然后口若悬河把客户说得目瞪口呆,接着推荐了我们并不存在的产品。

应该说,这种套路还是挺成功的的。这些不存在或极不成熟的产品宣传,让股市创了新高,然后他们又用高价收购了几个莫名其妙的公司,在公司进入另一轮亏损时离开寻找新目标了。

四、

我们回过头来说英特尔的UEFI,这是一个用来取代旧的BIOS(Legacy BIOS)的架构。UEFI有很多优点,功能多扩展性强,用C语言开发,不像BIOS要用汇编那么难。但是,由于Phoenix的阻力和英特尔软件部门实力不足,UEFI前几个版本都非常不成熟,大概历经8年时间最后勉强推出了一版可用的版本。

BIOS这个领域是码农劳动密集型的,每一个型号的主板,都需要专门工程师做porting,工作量还非常之大。这是一种最不划算的软件业务模式,因为你无法简单地靠复制你的程序来赚钱。而这个领域的程序员和其它领域又几乎不通用,比如互联网的程序员来做BIOS是完全不可能的。

2008-2009年,英特尔下令新平台必须只能用UEFI,不可以再用Legacy BIOS。这时Phoenix也已经很虚弱了,在台式机和服务器领域基本完败于AMI,在传统较强的笔记本领域,又被Insyde的UEFI强力逼宫。2009年,Phoenix被迫裁撤了上海和南京的全部研发和工程团队。

2010年,Phoenix以仅1.39亿美元被私募基金收购后退市。没有上市财报压力后,Phoenix再次凤凰涅槃,恢复了活力并和英特尔修复了关系。当年和老板瞎聊,如果让周鸿祎收购也许更好,毕竟几亿台的客户基础,又是安全的最底层,没准能变出花样来。

今天,BIOS领域是AMI, Insyde和Phoenix三分天下,不过AMI已经自称是No.1了,我想这也是事实,毕竟他们现在拥有最大的团队(1500人,85%是技术人员)和最爱公司的创始人CEO。

五、

BIOS的故事讲完了,给今天的科技公司上的一课就是:上市可能是个诅咒。当公司创始人们套现离开,不再有人真心爱你的公司。强有力的企业文化,才是基业长青的关键。

2. 地球程序员之神

很多人认为程序员应该供的神里面排名第一的应该是Linus Torvalds,因为他是Linux和Git之父。

然而我要试图反驳这个观点,因为地球上有另外一位伟大的程序员,有超过四代码农用他的开发工具吃饭。

Linus只用C编程而且不到30年,而这位神级程序员在近40年中一直创造引领潮流的开发工具(Turbo Pascal/Delphi/C#/TypeScript),他就是Anders Hejlsberg。

一、

Anders并没有大学文凭,但这丝毫不重要。当年微软Server部门负责人Bob Muglia认为,地球上只有几个人可以做出伟大的开发工具架构,Anders还是其中那个最棒的,顶尖中的顶尖。

当时,Anders在微软的竞争对手Borland工作。微软试图挖了他一年,但都被婉拒。

比尔盖茨打电话给Anders,说我可以做什么才能让你来。Anders后来回忆说,那是他人生特别尴尬的一个时刻。他已经财务自由,只想做自己热爱的事。

1996年,Anders和Borland高层有些意见分歧,微软趁机开出每年300万美元的高额待遇,更重要的是许诺他可以享有充分的协作资源,终于把这位英雄招至麾下。从后来的贡献看,也许3000万请到Anders,也不会亏。

二、

Anders是1960年出生在丹麦,父亲是摩托罗拉的工程师,典型的科技家庭。Anders在上中学时就开始编程,他回忆说那时用的HP2100还是纸带编程。上大学时有个高年级学生喜欢玩Mousehole纸牌游戏,但是老输钱给Anders,觉得他很牛,就请他合伙一个小公司叫Polydata。

Anders有台Z80,这电脑只有4Mhz CPU和32K内存,上面有微软Basic。结果Anders玩了一天就玩腻了,随后开始玩汇编。大神在20岁就显露了神迹,他两三个星期就写出了Pascal编译器,并卖给了一个英国公司。然后大神就辍学了,并在多个平台包括DOS上重写了Pascal编译器。

1983年,当时Borland还是个丹麦公司,自己做编译器做得很烂,找到Anders买了他的编译器并整合成Turbo Pascal。微软CTO在一次节目中说,这应该是PC上面第一个真正的集成开发环境(IDE),但Anders很谦虚地说他不知道。

当时Anders并未加入Borland,因为Borland后来搬到硅谷去了。Anders选择远程服务,因为当时并没有互联网也没有email,当时寄代码都是靠联邦快递。

1989年,Anders自己的公司Polydata经营不太好,加上女友很向往去美国,他就决定去美国加入Borland。

三、

Borland当然喜出望外,任命Anders为首席程序员。在Turbo Pascal成功后,Borland又发布了Turbo C,从而扬名天下。中国第一代程序员好像都是用Turbo C的,包括伟大的王小波同志。

而Anders的主要任务,是秘密开发可视化环境的超级IDE:Delphi。当时微软已经推出自己的Visual Basic大获好评,但一碰到直接编译二进制EXE的Delphi立刻被秒成渣渣。

Delphi使用Object Pascal,语言设计极其优雅,完美面向对象,完美结合数据库,而且可以直接操控操作系统(硬件和网络等),应该说开发Windows原生程序堪称完美。有意思的是,Delphi上面的VCL和RTL库都是用Delphi自己开发自己的,自带的源代码可以让程序员学习真正高手是怎么编程的。

(Delphi 2截图)

当年国内大量著名程序都使用了Delphi,包括张小龙的Foxmail和雷军的WPS。

后来著名的Borland C++也被直接移植架在Delphi上,这就是C++ Builder。

这时我似乎听到盖茨在叹息,我非得此人不可。

四、

Anders加入微软时,正是互联网风起云涌之时。Sun刚发布了跨平台可以到处运行的Java,微软感觉生态受到严重威胁,抓紧开发Visual J++和WFC,Anders成了主导人物。VJ++很快成为世界上最快的Java编译器,并支持ActiveX等微软生态产品。

Sun发现微软不用自己的Java虚拟机,搞出个更快的东西。他们深深忧虑被微软分裂了Java,所以果断起诉了微软。结果微软败诉,被迫在VJ++页面承认和Sun Java不兼容,导致了VJ++的最终失败。

Anders第一次碰到自己的产品不是因为性能问题而失败,他承认自己有点天真了。短暂沮丧之后立刻恢复了大神本色:我们微软要自己搞一套和Java竞争的平台

这就是2000年发布的C#和.net平台。Anders设计的C#也是优美的面向对象速度也经常快于Java。十几年过去,C#依旧是互联网开发的主力语言之一。

五、

近年来开源软件风起云涌,PHP/Python/Ruby/Swift等热度高升,年轻人都不记得Anders这个大叔了。结果在大家最意想不到的地方,大神再次亮剑

JavaScript(JS)是互联网使用最多的脚本语言,而这个原本不该是Anders的强项,因为他是搞高大上的机器码编译器而不是低级的脚本的。然而,Anders再次推出TypeScript震撼了程序圈。

TypeScript是编译输出JavaScript的工具,也是JS的超集。它不仅可以输出客户端的JS,还可以输出服务端大热的Node.js。TypeScript大大提高了程序员写JS的效率和降低了差错的概率。

更难能可贵的是,作为顶级Geek,Anders积极拥抱开源社区,推动微软从封闭走向开放。TypeScript就是微软最早的开源产品之一。纳德拉上台后,Anders更是促成VS Code免费的重要推手,开发工具开源也包括了.net Core和TypeScript。

六、

在很多新兴语言变得越来越臃肿复杂的当下,程序员们怎么评价Anders的作品呢:有品味,优雅,简洁。Anders说,这是因为他对编程充满了热情。

年近60的Anders今天仍旧在写程序,他说一旦停止写代码后,就会膨胀飞起来,忘了程序员真正需要什么。我们现在还能看到他每个月在Github提交的代码。

(github 截图)

我自己在90年代用过Delphi,排第一肯定有偏心的成分。特以此文致敬我心目中最伟大的程序员:Anders Hejlsberg。

3. 程序员之神(续)-孙悟空和Web争霸

小李飞刀李寻欢的孙子叫李坏,世间绝顶高手。但在一个夜晚,他痴痴地看着一把飞刀像一道美妙的月光插进自己的左胸。—-《飞刀又见飞刀》

上篇我们聊鸿蒙(链接)的时候,花了很大篇幅说方舟。那么这个思路到底对不对呢?做过学术的人都知道,什么想法都是你第一个那是很难的。我们看看业界有没有类似的尝试。

有个叫FireMonkey的东东实现过类似方舟的理念,而且Win/Mac/iOS/Android统统支持。这个可以翻译成“孙悟空”的玩意儿,正是现在Delphi的一部分。

从Windows 11看,微软除了支持传统的Win32、.NET程序外,还支持Web程序PWA和安卓App 。再看最新发布的Windows365,整个操作系统都可以作为SaaS在浏览器里跑。

各种平台的边界开始变得模糊,硬件架构的鸿沟逐渐被各种编译器翻译器填平。

本文按惯例扯乱一点,顺便续写一下《程序员之神》(链接),即Anders Hejlsberg以外的那些诸神故事。阅读下去的前提,是知道Anders是谁,那个代码飞刀例不虚发的神。“孙悟空”的事儿,我们在文章后面再聊。

一、Delphi从崛起到衰落

很多人说Anders离开是Borland衰落的原因,但这绝对是夸大了。重量级的Delphi3研发,Anders并未主要参与。Anders在Delphi发布一年后的1996年就去微软了,Delphi由其最重要的战友Chuck Jazdzewski领导到2004年,所以Chuck应该算第一功臣。

从1995年以后的七八年时间,Delphi一直给微软Visual Studio强大的压力。张小龙也在那期间用Delphi开发Foxmail一战扬名,后来他用Web技术做了邮箱、微信、还有小程序和诸神汇合,我们暂且不表。有个小八卦的是,据说“Fox”是致敬令狐冲。

微软Windows的新版本总是给Borland沉重打击。如同OLE导致Borland C++败北,.NET使得Delphi跟不上脚步,毕竟Borland没有那么多资源做复杂的升级。

尤其在那时,Java的重要性已经明显超过了Windows原生程序开发,Delphi在Borland内部逐渐失宠。

二、Blake、Chuck和Danny(BCD)

上世纪末,Borland集中火力在JBuilder上,立Java奇才Blake Stone为CTO,据说这导致了Chuck离职去微软。Danny Thorpe接管了Delphi任总架构师。

Danny本身是个励志故事。他加入Borland时只是个助理测试员而且做了5年测试,但很幸运他是给Anders和Chuck做测试。

这告诉我们岗位不重要,和谁在一起更重要。

喜欢自己烧瓷碗的Danny说自己在Delphi 5的时候才开始去看编译器,传说那时没人敢动Anders的代码。而Chuck的早期主要工作是VCL组件,“组件”正是Delphi震动天下的杀器,也引发了后来Java、C#等后来开发工具的模仿。

三、从JBuilder到VS Code

得益于Blake Stone的勇气,JBuilder相当于是用Java重写的Delphi,这使Java程序更纯正兼容。在微软Visual J++提前出局的情况下,Borland JBuilder不负所望击败了几乎所有对手,包括IBM VisualAge for Java。

在2001年IBM接受了失败,把VisualAge for Java转给开源的Eclipse。一位远在瑞士的软件工程神级人物Erich Gamma加入了Eclipse团队,随后翻盘战胜了JBuilder。

聪明的微软挖走了Blake Stone,无心恋战的Borland随后卖掉了IDE产品线。

远在捷克的IntelliJ趁机靠着专注于不断优化IDEA等产品走出商业IDE的成功之路。IntelliJ(现在叫JetBrains)是三个俄罗斯程序员在互联网泡沫破灭时创建的。厉害的是,这几位创始人一直拒绝外部投资和上市,这使他们避免了Borland的覆辙。

财大气粗的微软再从IBM把Erich Gamma挖走(凑齐了ABCDE五颗龙珠?),而且许诺Erich仍在瑞士工作而且自建团队。Erich则再次完成了自我颠覆,用Web技术(Electron)为基础打造出另一神作VS Code。

我们以前提到过贝索斯允许Chris Pinkham在南非工作做出AWS EC2,Anders远在丹麦给Philippe Kahn工作,加上张小龙保持和Pony Ma的距离。这些故事告诉我们:如果你真心牛,可以勇敢要求老板让你夏天在丽江、冬天在三亚工作。

四、Web再聚首

VS Code的设计思想完全和Visual Studio不同,Web技术驱动是其核心,我们也能看到Web技术成为开发工具大神们再次碰撞的竞技场。

Chuck和Danny加入微软后在Windows Live团队合作过,但微软社交产品并不成功,两人后来又离开了。

Chuck目前在Google工作,在转到安卓前端做Jetpack Compose之前,Chuck参与的工作居然是和Anders的TypeScript配合打造Angular 2。

Angular反过来也促进了TypeScript的发展。

Angular的竞争对手是Facebook阵营的React和后来以中国阵营为主的Vue。加上VS Code,程序员的大神们再次聚首。

Vue的作者尤雨溪也出身Google。他是一个闪耀的例子,显示了中国强大以后,在新一代衣食无忧的情况下,也会像欧洲那样产生因爱好而在编程界封神的情况。

五、Borland为什么失败

Borland的ABCD四位大神都被微软挖走,Delphi也最终被卖掉。

Danny在Quora上曾经回答Borland为什么会失败:他认为Borland的管理层想从百万量级的程序员客户转到少数量高收入的企业级客户,方向上出了问题。而Borland被董事会踢出局的传奇创始人Philippe Kahn点了赞,Kahn认为Borland应该把目标放到亿万用户的桌面应用上。

Kahn出身是逃到法国的犹太家庭,他到美国淘金时没绿卡也没工作(相当于半非法移民),就自己开了公司雇了自己。Kahn在瑞士ETH上大学时老师是Pascal语言的发明人Niklaus Wirth,这使他对Anders的Pascal编译器慧眼识珠。

Kahn是最早采用高质量软件定价很便宜策略的企业家,Borland的产品大都是迅速抢占了市场。在Delphi诞生前,Borland曾在多个战线和巨头们开战。

Borland的dBase数据库直接挑战微软的Access和ForPro。Borland的Quattro Pro和Lotus 1-2-3的法律大战直打到联邦最高法院并罕见地4:4战平,结果微软的Excel渔翁得利。

作为曾经单挑比尔盖茨的一代枭雄,Kahn此后仍执着于触达最终用户的应用而与Web渐行渐远,乃至流于平庸。

六、孙悟空和Xamarin

Borland把Delphi等开发工具卖给Embarcadero以后,新主人在随后十三年居然做到了一年一更新。

十年前的Delphi XE2中开始出现了FireMonkey(孙悟空),它实现原生代码的跨平台,就是用一套Pascal代码编译就可以在苹果和安卓甚至Windows上跑。但每一个App都要内嵌一套FireMonkey runtime。

FireMonkey和方舟一样证明了静态编译在技术上是可行的。但是FireMonkey是否能灵活对付不同的屏幕尺寸和各种兼容性问题,甚至静态编译是否有意义,仍是充满争议的。方舟倒是有个FireMonkey无法具备的优势,就是可以提前把runtime内置到鸿蒙里,这样启动App速度能快很多。

微软为了让.NET可以侵入安卓、iOS包括Linux等,有个有点像FireMonkey的东西叫Xamarin。用这个东西不需要会Java,只要会C#也能编安卓App。Xamarin和FireMonkey或者方舟的区别在于,它更像个即时语言翻译器。

Xamarin由Nat Friedman和一个墨西哥兄弟Miguel de Icaza搞的,之前叫Mono。这俩老兄也不是一般人,Nat Friedman目前是GitHub的CEO;Miguel是大名鼎鼎的GNOME的创始人之一,而在2014年Anders宣布.NET Core开源时,Miguel就站在旁边,并受任.NET基金会第一任董事。

(去年Delphi 25周年庆的时候,Delphi的几位原创和现在Delphi的负责人有过一次网络欢聚。Chuck(左一)和Anders(右一)等几位超过50岁还在写代码的老人一起开心地回忆了激情燃烧的岁月。)

七、融合

天下大势合久必分,分久必合。在多种语言多种平台百花齐放后,Web技术逐渐众神汇聚的地方,也给我们带来更多的细分领域:PWA、AMP、SPA、WebAssembly…

尤其WebAssembly,由于实现速度在数量级上的提升,逐步侵入原本认为不可能的领域,让浏览器成为一切的中心成为可能。

Web技术在手机App的使用也是现在的很多人争论的话题。Web技术天生是开放的,但原生App性能好,更重要是可以很流氓,更容易控制权限和流量。

现阶段原生和Web App谁也杀不死谁,很多Web App套上原生的壳,互相融合互相欺骗。

八、小结

在这篇文章里,我们提到了丹麦人、瑞士人、法国人、南非人、墨西哥人、俄罗斯人、当然还有中国人 。对软件史没有兴趣的朋友,估计对这些名字已经痛苦不堪。

码农的生活有点像多神教:学不完的经书,拜不完的众神。

Delphi像中了飞刀的李坏,他没有死,但江湖里再没人提他的名字。

4. 新商业软件江湖的谎言

旧软件江湖里曾有两大山头:贝尔实验室和IBM。

贝尔实验室的UNIX和C语言堪称九阳真经,后来被几个大徒弟IBM、伯克利、Sun和苹果等抄去各立门派。

无门派的芬兰小伙子Linus则拉拢了一帮聚众分头模仿UNIX。

IBM的山头更高一些,SAP和微软都发迹于其当年的分支业务。

而IBM的关系数据库论文则像九阴真经,率先抄走的大师兄Oracle很快称了霸,后来的师弟师妹抄走后一团乱战。

今天,最赚钱的软件包括各种操作系统和商业数据库还是源自上面几个山头。

不过,天下大势已变。

谁不包装成“云计算”公司,那股价都没法看。

头上还得插朵“人工智能”的小红花。

一、IBM

作为旧世界第一大山头,IBM在诸多商业软件的外部竞争中都败下阵来:

OS/2 Warp vs. Windows 95 DB2/Informix vs. Oracle Lotus Notes vs. Exchange/ Outlook Lotus 1-2-3 vs. Excel … 上面这些软件我还真都见识过:尤其用Notes的那几年,对拐着弯的设计思路实在只能佩服。

J2EE流行时,WebSphere、Eclipse、DB2、Rational、Tivoli全家桶感觉是道强悍的马其诺防线。

不料云计算后来突破了这道防线。

现在IBM把自己重新包装成世界第一大“混合云”公司和第一大“商业AI”公司,然后其第二大业务叫“认知方案”。究竟是怎么个混合,怎么个认知,有多少传统业务放在里面,好像也没人细问。

二、Oracle

Oracle和IBM一样,铁桶一般的全家桶曾让埃里森一直对云计算嗤之以鼻,直到大事不妙扭头all in。

Oracle历史上的收购绝对都是快准狠,Sun、BEA、PeopleSoft、Siebel、Netsuite等几次收购都堪称完美(插一句,惠普好像各种收购都搞砸了)。

在新时代Oracle的商业软件帝国存在几个bug: 旗下开源的Java和MySQL怎么控制 硬件体系没有IBM那么多忠粉 ERP和CRM无法跻身第一 数据库门槛越来越低 云计算起步太晚

所以,埃里森不当CEO改当CTO这一点很有意思,也很有勇气。

Oracle财报中超过80%的业务叫Cloud Services或Cloud License。说实话,硬把几乎所有业务都挂上云的名字,痕迹太重了。

Oracle当年也算慧眼识珠,26岁就让Benioff当上副总裁。可惜金鳞岂是池中物,Benioff后来带着Salesforce一飞冲天。

我十年前用过Salesforce,各种Opportunity一加就出报表。说实话当时感觉就是个Web版Excel跟踪表,完全没看出技术含量。但是,事实证明了简单实用是SaaS的王道。

三、SAP

另一个背后插了Oracle一刀的是SAP。

原先SAP的大客户绝大多数用的是Oracle数据库,埃里森也曾得意地说,SAP和亚马逊付给他很多很多钱。

直到2013年我去SAP北京大会时,突然被震撼到了。原来HANA是SAP的杀手锏:极速的内存数据库。而且在当年,HANA已经和ERP整合了。

这对于以数据库无比自豪的Oracle来说,是件又丢面子又丢业务的事。

真的是德国思路:你的丰田虽然优化得不错,但大公司就是有钱买保时捷,秒到你吃土。

那年大会的免费盒饭也让我印象深刻,ThinkPad式木盒加凉菜蓝涧和水果,应该有50元的标准。吃过不少免费盒饭,那时这个规格少见。

SAP的思路确实高大上,别人学不来。这也逼着Oracle另辟赛道去买了NetSuites,走SaaS ERP的路子。

近20年前的R/3我也用过两年,还是Java的版本,慢成狗。当时不能理解那时的电脑怎么能跑Java这种东西,但后来证明SAP是对的,前瞻性眼光毒辣。

四、Google

00年代在几个老厂斗法的时候,自称“不作恶”的Google突然抛出几篇“葵花宝典”宣告了新江湖的到来。Jeff Dean独孤求败。

缺页的宝典GFS,MapReduce和BigTable集合了自宫过的一堆屌丝硬件挑战名门正派的SQL,中间的撕逼略去不提。

然后一些大厂刚好打着去IOE的旗号,学习到了分布式并发处理方向。他们混了一些开源SQL和NoSQL,摇身也变成名门正派。

并发老爷爷IBM Z在全球每天处理300亿次交易,在一边叹气。

十年往前是Google号令天下的时代,Gmail、Earth/Maps、Drive、Youtube、Android、Picasa、Art、Voice、Reader、Chrome等全是精品。那时打得微软满地找牙。

但近十年,Google几乎再没有提供给教友玩的新品了。它自己倒是去练了不少诡异凌厉的剑法(Caffeine、Dremel、TensorFlow…),但对终端用户直接有用的很少。

Google的核心技术每样可能都遥遥领先n年,所以它当年的云平台GAE也走了这个路子。结果被当时低小下的亚马逊钻了空子。

GAE刚出的时候,我和周围一圈小伙伴都用它科学航海,不过没半年就不太灵光了。那时其实没多少人能理解这种云的价值,大家都觉得不能控制虚拟机的方式好怪异。但实际上这才叫云“计算”,而不是云“主机”。

现在Google Cloud已经提供Spanner、Kubernetes等很多先进服务,但有意思的是,各种公司还是对它敬而远之。

五、亚马逊

我自己用AWS也有十年了,开始觉得免费试用一年简直无敌了,到期了再注册一个账号继续免费。

结果这十年在AWS刷的信用卡也有十几万美金了,不服不行。

一开始对Instance、volume、image、block store等词感觉都认识却不认得,觉得这种思路很怪异。没想到AWS培育了市场,后来国内大厂几乎都是照抄。

早期AWS的Service菜单只有EC2、S3和EBS等几样,后来不停地增加到现在满满一屏都显示不下了。AWS从IaaS真正转到了全面的云计算。

AWS确实坚若磐石,这么多年我几乎没碰到过宕机。

AWS还有响应很快的客服,对比其它几个傲慢巨头,这是难得的优势。

加上AWS不停地主动降价,我自己还真挑不出什么毛病来。

值得八卦一下的是粉火腿先生Chris Pinkham。他在南非大学毕业后创业做ISP卖掉,30岁财务自由后买船和媳妇全球航海玩了一年。

贝索斯后来请他到亚马逊做Engineering VP,管基础设施。他和Black提出了EC2设想后,说要回南非照顾媳妇生二胎。著名的对员工冷血的贝索斯居然为了他在南非新开了个办公室,让他在当地招人做EC2。

这个故事说明了:老板如果对你不好,也许你真的不够牛。

六、微软

在近年很多文章里,Azure和纳德拉都被神话了。

应该给鲍尔默平反的是,在他在任时已经提出对云计算全力以赴,这也是选纳德拉继任的原因。

在微软最新2019年财报中,云收入是381亿美元,只占总营收的大概30%。看起来金额是不少,但是这里面塞进去了Office 365、Dynamic 365和Linkedin的商业收入,所以混淆了SaaS和Azure的业务。

微软365这种订阅模式带来的利润增长,严格说不算技术驱动(Google Docs十多年前就有的技术),也不算和Azure有很大关系。

其实,微软的业绩好是天时所致,现在是黄金时代:除了Azure之外,Windows授权、Bing、Xbox以及Surface等消费类业务等都全面增长。

七、人工智能

云计算这十几年从被各种鄙视到笑傲江湖,比起AI已经算很幸运的了。

AI一直是头上插的那朵花,只能用来吸引人,却难以结出赚钱的果实。

IBM在AI兢兢业业几十年,称得上是五岳剑派总盟主。它是最早推出语音识别软件的,结果现在被后辈群超。它也是以前的棋圣,但并未带来产业的变革。

Watson强攻医疗AI,但陷入标准的泥潭。在我看来,人类病历中估计至少1/3是存在错误的,错误病历并不像下棋那么对错分明。法律AI也是一样,学习了再多的案卷,也不一定学得会公正。

千秋万代的神教Google放出的阿尔法狗,堪称新一代葵花宝典。江湖人士一下子开了窍,现在言必称“机器学习”。

只是Deepmind自己都不知如何落地亏成狗,想挣快钱的江湖各厂也伤透了脑筋。

最成功的是安防图像识别吧,因为有好大的客户买单。

大家发现,仿AI好像更赚钱。现在分析你喜好叫AI,自动p图也叫AI。抢票、币圈、互金黑产估计也自称落地的AI了。

苹果不太吹人工智能,但提供了机器学习的框架。我仔细看过微软的财报,它对AI也是轻描淡写。只是和IBM一样,微软用了“认知”这个AI届的大词。

AI一定是未来,但是可能现在它只是泡沫。

我心目中真心研究AI垂直应用的,是特斯拉。尽管人家并不以AI宣传。

特斯拉是像极了苹果那样软硬件一体的公司,明年Model Y应该算是革命性的iPhone 4了。和苹果首款A4一样,Model Y拥有Jim Keller参与打造的超级双芯片,可以用神经网络同时处理汽车前后左右8-10个摄像头的实时图像。从原理上讲,再贵的激光雷达也只是雷达,无法模拟人眼看到的一切,比如读出各种路牌。

这个真的很难很难,但路要一步一步走。

深入理解AI的本质和伦理,积极面对其挑战的,才是真的勇士。

5. Java的战争

引子

2019年5月,彻底撕破脸的特朗普掀起对华为的战争,谷歌被迫吊销了华为的安卓授权。开源软件的版权问题,使我不禁想起软件业的一宗惊天巨案。

看过《手机基带芯片故事》的朋友,一定记得乔布斯曾强烈表达过对谷歌抄袭苹果的愤怒:“我要用尽苹果400亿美金的存款,发动一场热核战争,来摧毁安卓,because it’s a stolen product。”

千万别认为乔帮主只是说着玩的。

虽然他不幸仙去多年,他最好的朋友甲骨文(Oracle)董事长拉里埃里森仍然在坚持这项未竟的事业。

桀骜不羁的埃里森在回顾乔布斯临终情景时动情地说:他已经被癌症消耗光了,他实在太累了又太痛了。虽然他绝对是我见过最坚强的人,但他还是最终放弃了和死神的对抗。他最后停药的决定震惊了所有人,三天后帮主驾鹤西去。

作为惺惺相惜的英雄,埃里森当年曾经想把苹果买下来还给乔布斯。

2009年4月,甲骨文宣布以74亿美元收购了Sun Microsystems。

埃里森面对IBM的竞价毫不犹豫,最终以超过Sun市值30%的代价将其拿下。

2010年收购完成后,埃里森随即对谷歌宣战,起诉安卓对Java的侵权。

一、

Java之父James Gosling是个加拿大人,他在Sun工作了26年。直到Sun被甲骨文收购后,他选择了离开。

有谣传说,Gosling因为学C++太难而在其上去掉了很多繁复的特性做出了Java。这个不足为信,因为Gosling是计算机圣殿卡内基梅隆的博士,学个语言对他来讲太小儿科了吧。

Java是原本设计用于机顶盒之类的小型装置上的。但出乎任何人意料,互联网大潮来临后,Java编写一次、到处运行的特性被各种应用发挥到了极致。在企业级软件上,Java更是整合各种不同软硬件和操作系统做出分布式应用的神器。

二十年来,Java除了受到.net的小型挑战外,由于拥有最成熟稳定的企业应用组件,其互联网的支柱地位仍牢不可破。

二、

不仅在企业级市场呼风唤雨,另外一个意外的选择,使得Java在移动终端领域也大放异彩。

安卓之父安迪鲁宾1989年进入苹果工作,那时他还是个小工程师。因为他之前在蔡司机器人部门工作,苹果同事给他起了个外号:Android(机器人),当时谁也不知道,这个机器人在多年以后成为苹果最大的竞争对手。

当时乔布斯已经被驱逐出苹果。被老乔请来“不卖糖水改变世界”的CEO John Sculley其实远没有后来被评论的那么不堪。他把苹果营业额扩大了10倍,而且主持了大屏手持电脑Newton的开发。

Sculley把专门做手持操作系统的部门分拆成General Magic(通用魔法公司,这个名字好赞),而这间公司成为未来智能手机的黄埔军校。

安迪鲁宾在通用魔法公司汲取了充足的养分,后来在2003年创建了安卓公司(Android Inc.)。Android系统最早是设计给数码相机用的,数码相机本身硬件就千差万别,所以Java优秀的跨平台特性就被选中了。

结果这个平台做出来后,发现用于手机也很适合。2005年,正在寻找手机操作系统的谷歌看中并收购了安卓公司。

三、

2007年1月,乔布斯发布了iPhone,极大地震撼了谷歌。为了赶时间,谷歌来不及更改安卓所用的开发语言Java,这给后来埋藏了重大的祸根。

当然,Java充足的程序员群体和便利的开发特性,对安卓本身来讲也是有极大帮助的。

2007年11月,就在第一代iPhone上市4个月后,谷歌便匆忙开源了安卓并成立开放手机联盟(OHA)。这时的安卓连个半成品都算不上,但Java的位置被牢固地确定下来。

和苹果iOS运行原生Objective C编译的机器码不同,Java必须跑在虚拟机上。这使得安卓在速度上天然存在问题。谷歌为了尽可能提高速度,自己做了Dalvik虚拟机(DVM)。

DVM采取了很多“作弊”的加速手段,比如预读取用户装的很多APP(APK)并存入缓存,比如把Java Bytecode替换成DVM的指令。这些手段的副作用之一就是使安卓需要比iPhnoe大得多的内存,而且手机用的时间越长APP越多系统越慢。

这些”作弊”手段,也使得谷歌的Java虚拟机和Sun原版虚拟机完全不兼容。而Sun对这种分裂Java的行为不能容忍。

四、

谷歌确实去找Sun申请过Java授权,但是Sun要求谷歌分享对安卓分支的控制权而遭到拒绝。谷歌当时还拒绝了Sun提出的三年支付约5000万美元的要求,而后来Sun归了埃里森以后,赔多100倍到50亿美元都不够了。

在未获Java授权的情况下,谷歌采取了“洁净室”这种反向工程手段(可参考:BIOS和PC的故事)开发了自己的Java库。这是一种类似抄袭但又不明显违法的手段。

但是,谷歌仍旧保留了Sun Java原有的一些编程接口(API),这后来被甲骨文抓住把柄。

甲骨文总架构师Edward Screven在法庭作证说,他曾和埃里森讲,拿下Java是收购Sun的唯一重要目的。

虽然Java之父Gosling在离开甲骨文后短暂加入了谷歌,他在接受采访时表示他认为谷歌确实当年糊弄了Sun。

五、

开源软件只是意味着你能看到全部源代码,这并不表示你可以随意使用。对于Java来讲,程序员是可以免费使用的,但是对于企业还是需要取得授权的。

而API是否受版权保护,这个在美国法律界也产生了巨大的分歧。如同你做菜的配方可以受版权保护,但是点菜的菜单也受保护吗?

甲骨文和谷歌两大巨头旷日持久的法律大战,至今已经9年还未打出最终结果。其间双方在各级法院各有胜负,法官和陪审员都对此案看法不一。

埃里森和拉里佩奇都亲自上庭作证,这在美国大公司诉讼中极为罕见,而每一次埃里森都拒绝和解。

2018年3月,联邦上诉法院判决甲骨文胜诉,这意味着谷歌应赔偿高达近百亿美元。

谷歌则第二次将此案提交美国联邦最高法院。在四年前最高法院拒绝审理后,这次九位大法官似乎被迫要做出判决了。

众所周知,美国是法官立法的国家。联邦最高法院的判决会深远影响软件业的很多悬案。

法官们还要决定的是,谷歌的抄袭行为是故意侵权还是合理使用。甲骨文已经举证说安卓在10年间为谷歌赚了超过420亿美元。

对甲骨文不利的是,安卓已经是大到不能倒了,没有法官会支持禁止安卓手机的销售。正因为如此,谷歌一直把案件拖了九年。

借此充足的时间,谷歌把安卓Java 库转到OpenJDK,把DVM转到ART,把Java语言转到Kotlin。

六、

2019年4月底,联邦最高法院正式发文给美国司法部,要求联邦检察官协助断案。这似乎是美国三权分立的一个漏洞,但也说明了此案判决难度极大。

似乎大多数程序员都很厌恶甲骨文对开源的霸道行为,但是埃里森为乔布斯“复仇”的举动又让人充满感动。毕竟谷歌确实存在“抄袭”苹果和Java的行为并由此获取了巨额利润。

考虑到对乔帮主的感情和华为的事情,我自己内心还是希望谷歌最终付出代价。

6. Java的战争-八卦篇

《Java的战争》发表后,有人问埃里森为乔布斯复仇是不是真的。他们说:埃里森这种自私自大怼天怼地的狂人,做这种事肯定是为了钱。

为了回答这个问题,这一篇,让我八卦一下真正富人奢豪的生活。

一、

大约是在1986年,乔布斯被赶出苹果后落寞的那一年。拉里.埃里森在加州Woodside镇的家里睡觉,一只闯进院子的孔雀吵醒了他。他得知孔雀是邻居乔布斯家养的,就跑过去抱怨。

乔布斯说:哈,你也不喜欢这只鸟。孔雀是我女朋友送的,我得想办法弄掉它。

两个IT业界最杰出的人,开始了25年的亲密友谊。

他俩一起散步了上千次。乔布斯逼着埃里森看了七十三遍《玩具总动员》样片,每次都说有细微改进,比如哪里增加了一点光影效果。

(photo credit: Pixar)

乔布斯对细节的无限苛求,使得Pixar电影每一部都尽善尽美。《玩具总动员》的成功也导致后面一系列Pixar电影被无聊地翻译成各种总动员:《海底总动员》、《汽车总动员》、《超人总动员》、《机器人总动员》(Wall.E)、《美食总动员》(料理鼠王)。

二、

下图是乔布斯在加州Woodside镇住了十年的房子,它是1925年挖矿老板D.Jackling建的房子。

乔布斯在这个房子里失业、再创业、结婚、生子、包括结识埃里森。这个房子实在太旧了,乔布斯拆除重建的申请却被保护旧建筑的人们阻挠而一拖再拖。所以直到他去世,他也没能看到房子重建。

埃里森在乔布斯去世当月即把凝结他们记忆的邻居老宅挂牌出售,价格比他买的时候低了400万美元。

乔布斯的遗孀Laurene Jobs一直坚持申请拆除旧房,在2016年新房终于破土动工。但其实她也不去住,似乎只是想完成乔布斯遗愿。她有多处漂亮房子,比如被去年山火光顾的在Malibu海滩6000万美元的豪宅。

(Google地图上在翻建的乔布斯旧宅)

三、

比起乔布斯的“不会享受”,埃里森可是无与伦比的人生赢家。这世界上他没享受过的东西,恐怕只有登月了吧。

下图是埃里森在Woodside建的豪奢日式庄园,光建造就花了2亿美元。

下图是埃里森一生挚爱的帆船运动

下图是米格29战斗机,埃里森自己拥有一架并亲自驾驶

下图是七十多岁的埃里森和年轻女友Nikita Kahn

下图是埃里森常去的Oracle Arena: NBA最强队金州勇士的主场

下图是埃里森拥有的夏威夷第6大岛

四、

1995年,微软发布了划时代的Windows 95,苹果在个人电脑领域完败。

此前,家电业如日中天的索尼由出井伸之向董事会提出收购苹果的黑白棋计划,但被董事长否决,认为没价值。

埃里森和乔布斯一起去爬山,俩人对苹果的现状感到悲哀。埃里森说:哥们,苹果现在市值这么低,我把苹果买下来还给你吧,你马上就能重当CEO了。

乔布斯说:我只想用另一个方式回去,让苹果收购我的NeXT公司,这样回去更有价值。

埃里森说:兄弟,你这样又得谈两年,而且回去后咱又没控股苹果,咋赚钱呀?

乔布斯停下来,双手搭在埃里森肩上:拉里兄,这就是为什么我把兄弟情看得这么重的原因。你的钱已经太多了,我也不缺钱,我甚至都不打算要工资。我做这事就是要力拔盖世。

埃里森后来在2016年南加大演讲时提到这一刻时满怀深情地说,有比钱更重要的东西。

众所周知,乔布斯的NeXT操作系统,后来成为Mac OS X和iPhone的iOS的重要基石。而乔布斯自己,重建了苹果的辉煌但只拿1美元年薪。

苹果每年著名的Macworld发布会风格,也是乔布斯向埃里森的Openworld学习来的。(后来雷布斯贾布斯也都学得不错。)

乔布斯重掌苹果后,立马请埃里森进苹果董事会。

埃里森在会发言说:我认为苹果需要少考虑和微软的竞争,而应该多考虑做些非凡的事情:就是要回归创新,回归创造力,回归放眼未来。

五、

埃里森虽然被网友批得体无完肤。但是我们也要客观认识到,中国互联网的大部分,是架在甲骨文产品上的(Oracle数据库、MySQL、Java以及大量企业级软件)。

中国的各大银行,仍然用Oracle配合DB2管着我们所有人的钱。中国的大企业们,多半也是在用Oracle数据库安全稳定地运营。

这些都是甲骨文对中国经济发展的贡献。

因为一次补偿N+6的裁员,就在键盘上骂得唾沫横飞,感觉没说到点子上。

开源社区对甲骨文的怀疑,使他们对MySQL做了硬分叉产生了MariaDB。但是甲骨文收购MySQL五年后,大家并没有看到MySQL被邪恶地杀死而是越来越强。

用MySQL的市场份额和重量级公司也远多于MariaDB: Facebook, Github, YouTube, Twitter, PayPal, Nokia, Spotify, Netflix…

埃里森和乔布斯一样出身草根,大学没毕业。他33岁时已换了十几份工作并离了婚,前妻嫌他没出息。

是怎样的驱动力让他在这个年龄还能主动去读IBM关于关系数据库的深奥论文(下图),而且勇敢地把它变成了现实?我们要知道IBM自己当时都没意识到它的价值。

乔布斯和埃里森作为驱动IT和互联网长达四十年的绝代双骄,我觉得我们应该先景仰再评价。

7. Java的战争-3

软件业最旷日持久的惊天大案(谷歌对甲骨文)昨日正式在美国联邦最高法院开庭审理。

为什么叫惊天大案? 因为史上很少有一个公司逼另一个公司付近百亿美元的事情,而且这个案子几经波折已打了10年。 或许此案是谷歌今年股票涨幅显著落后于FAAMNT的原因。

作为《Java的战争》(链接)系列文章的后续,我补充一点看法。

看过那篇文章的朋友知道,我认为这场战争是埃里森为乔布斯的复仇,所以双方很难和解。

微软和IBM等软件巨头站队谷歌,避免这个案例引发无穷的官司。

电影和唱片等极端重视版权的行业站队甲骨文,认为偷就是偷,扯别的没用。 唱片业对网上那些唱半首歌就可以不给版税的做法一直很气愤。

大法官金斯伯格的去世,给此案再添变数。

一、

谷歌在安卓里引用了Java API接口的11,330行代码,没有付版权费。

谷歌争辩说:“我们是合理使用,不需要给钱。”

这个代价按联邦上诉法院的判决是90亿美金,因为安卓帮谷歌赚了很多很多很多钱。 估计现在谷歌想把当初谈Java授权合同的律师活吞了。 金斯伯格是最铁杆的知识产权保护者。别说API了,就算写API的卫生纸,她估计都能保护起来。

二、

《Java的战争》里说过,美最高法院曾向司法部征询意见,要不要接这个案子。 美国司法部相当于我国的检察院,即代表政府的律师。 众所周知,特朗普和埃里森的关系不一般。甲骨文硬从微软嘴里夺下TikTok就是一例。 怎么说呢?微软当然想和中国做生意,甲骨文却在中国饱受排挤。

美国司法部说,我挺甲骨文,任何代码都有知识产权,请驳回上诉。 但最高法院还是决定受理此案。

三、

美最高法院不受理一般的案子,它受理的原则是希望创造判例,以解决某一类普遍问题。 德高望重的金斯伯格,原本预计会判决对甲骨文有利。

但现在情况变了,特朗普能否在下台前成功任命新的大法官存在变数。

如果判决结果是4:4,对软件业也许松口气:甲骨文拿着90亿走人,同时没有决定性判例。 四、

从我的角度看,谷歌当年用Java是别无选择:为了紧急追赶iPhone,时间就是金钱。

从结局看也是如此,安卓的迅速赶上和Java虚拟机模式及庞大开发者群体息息相关。 当时谷歌来不及用洁净室方式重建这些API。可能那时谷歌没有料到安卓将成为其最重要的流量入口之一,和Sun的谈判过于吝啬了。

甲骨文认为API像一本书的目录,而目录显然是受保护的。 如果谷歌此案获胜,抄1万行代码都不算抄,单纯从尊重版权上来说也是存有祸根的。

五、

在7号的审理中,几位大法官的询问显示了他们对此案仍非常困惑。他们试图用点菜和听歌来理解API究竟是否应该受保护。

据说上诉法院的法官曾为了此案还特地学习了Java编程,结果判甲骨文胜。

关于此案,法官是应该仅仅依照版权法原则进行审判,还是应该提前考虑判决导致的行业后果,也是重大分歧之一。

孔子在成为鲁国大司冠(相当于最高大法官)后,断案方法是试图还原当事者的情境,基于保守的习惯伦理而不是成文法。

美国最高法院的风向是否像评论家说的那样转往保守,我们拭目以待。

8. 雪花飘飘 北风笑笑

12月3日,当红炸子鸡雪花公司(Snowflake)宣布上个财季每股亏损1美元,比分析师预计多亏三倍。但雪花股价大涨16%,次日再涨14%,终于成为千亿市值的公司。 9月16日雪花上市时,承销商定价提高了50%到$120,而不到三个月后的今天股价是$387。

投资者们把各大投行给的目标价直接撕碎扔进废纸篓,然后轧平空头,这完全就是特斯拉在软件业的翻版嘛。

问题是雪花真的那么强吗?

一、

其实去年就知道雪花了,因为在找廉价的大数据分析方案。

一句话介绍,雪花就是把昂贵的数据仓库做成了高效的云服务。

小伙伴总是抱怨Excel卡死,BI工具跑大交叉表也不理想。如果自己搭HBase-Kafka-Spark-Kylin…虽然开源免费但实际上要花很多钱租很贵的云请很贵的人。 早早看到雪花是好棒的东西,但没想到投资者们也都这么有前瞻性。 也许他们只是盲从巴菲特?这也说不通,巴菲特拿的价格据说才$80,并不意味着现在的价格合理。

美帝投资者都这么有技术洞察力?还是只是傻钱恶炒?

我想,无理的疯狂也一定存在合理的角度。

现在这世界,你只能判断一个公司是不是好公司,但很难判断它的股价合理不合理。

接下来,我学着试图去解读它。

二、

专家说雪花最重要的地方是降低了客户对云设施品牌的依赖度,这个说法有道理,但根本不足以支持雪花的疯狂。还有那么多开源东西可以用呢。

专家说三大云商都有类似竞品,AWS有Redshift/Athena/EMR,GCP有BigQuery,Azure有Synapse,因此雪花存在被大公司碾压的风险。

但事实上它们之间的差异极大,远远比当年Oracle、Sybase和DB2的差异大得多。 雪花的几位创始人是Oracle出来的,他们深刻洞察了Oracle和Hadoop的缺点后打造了雪花,这中间的8年和专利是他们今天的护城河。 雪花杀手锏是的简洁、高效,有虚拟数仓的独门秘籍,更重要的是可以很便宜!

三、

砖家会跳出来说,怎么会便宜呢?定价并不低嘛,你看它存储收费,计算也收费…

我举个例子,假设我一个穷私募想每天用大数据分析美股的当天全部详细数据,自动和历史数据、天气数据、政治经济数据进行对比挖掘出该涨没涨的股票来。 这个数据量是大到吓死人的,按传统IT每年投入得上亿,很大的投资机构都没有钱这么玩。 那么用雪花可以怎么玩呢?

因为云计算里存储是非常非常便宜的,我可以存很多很多数据,每天临时从雪花数据市场调用现成的股票数据和政经天气数据。

雪花是存储和计算分离的,我可以只在每天收盘后跑一下写好的脚本临时租它的计算,其它时间完全不用给钱。

如果我需要用钱买时间让它算得更快,我还可以临时租雪花自有存储。假如我要做高频交易,通过事先机器学习的算法来盘中实时分析,也是可以的。

四、

虽然这个例子有点夸张,但它阐述了一个观念。 这个观念和Salesforce的成功特别像,每个客户都有用它的不同理由,也都有省钱的需求,但愿意把钱花在刀刃上:只为简单和高效付费,整体成本是降低的。

大家都知道当年拥有最全On-Premises商业全家桶的甲骨文被云计算颠覆而日暮西山。而雪花似乎带着颠覆上一代数据分析平台的使命而来。 毕竟数据已经成为企业最有价值的东西和核心竞争力,所谓承担多少并发的事务型数据库将会成为小儿科,而分析数据库的价值将越来越大。 那么,该买雪花的股票吗?我不知道,毕竟对于一家还没赚到钱的公司它真的很贵了。

不过,随着云原生和SaaS最终征服大多数企业,接下来可以拿来看的科技公司将目不暇接。

9. 鸿蒙之迷思

害怕被说蹭热点,所以等了小一个月发表这篇文章。期间无数媒体铺垫盖地,信息通货膨胀到爆,但有价值的内容却寥寥无几。 本文通过追根溯源和道听途说,从“纯技术”层面探讨了鸿蒙演化到今天“不得已”的现状。

一、2012实验室

鸿蒙是个品牌,背后是n套核心的n套系统的组合。

鸿蒙中的关键曾经是方舟编译器,鸿蒙的开发代号还叫过Ark(方舟)。由于方舟团队的几位离职负责人在网上写过回忆录,所以我们能拼凑出当初发生了什么。

华为2012实验室有个了不起的组织架构,就是把研发实验室设到全球各地,这样那些不想到深圳工作的牛人可以安心在本地,不用拖家带口。

当然猎头也更方便,不少实验室设在其它巨头旁边。

从基站上的DSP到后来的麒麟和鲲鹏,华为自建编译器团队越来越必要,来实现性能的优化到自有指令集等等。

世界软件的灯塔在硅谷,所以华为编译器团队就在美研所组建。中国软件的灯塔之一在杭州,国内编译器团队集中在杭研所。

美研所在2014年请到Open64编译器的总架构师周志德老爷子。也许由于Open64日暮西山,而苹果支持的LLVM如日中天,不服气的周老和小伙伴们做起Maple编译器,这就是方舟的前身。

Maple为什么改叫方舟,网上众说纷纭。一种说法是周老的英文名字Fred Chow谐音就是“方舟”;另一种说法是2012世界大难来了要方舟来救命,这和2012实验室的名字吻合。

在孟晚舟被Maple国扣留以后,改名字更是大势所趋。不过到今天方舟大量文件名仍保留了Maple或Mpl等。

华为美研(Futurewei)在美帝制裁后,出现了个法律悖论。因为Futurewei是美国公司,美帝没法制裁,但它能限制Futurewei向母公司输送技术,后来华为员工好像也不被允许进入Futurewei。

大概因为如此,华为对开源模块的合规非常谨慎,毕竟来自美帝的即使是外部的贡献都得考虑删改。如果这是“按揭开源”的原因之一,我觉得特别能体谅。

二、编译器的进攻方向

现代高级编译器多是三层架构: 前中后端。前端是翻译各种语言,中端优化,后端对应出不同类型CPU的机器码。中间优化的过程,经常用IR来表示,比如MapleIR。

周老设计Maple的初衷据说是前端用Javascript,即MapleJS,这样可以实现跨平台和在轻量化的智能iot设备上运行和优化。

机缘巧合,华为消费者事业群(CBG)在努力实现对阵友商的安卓差异化时,想到静态编译Java来实现速度上超越竞争对手,立项联合2012的几个团队一起攻坚MapleJava。

虽然大家都知道Java虚拟机开销很大,安卓代码翔山也多,但挑战Google里顶尖高手们连续优化了10年的虚拟机(ART),这个想法可以说无比大胆。

后来的事实证明,MapleJava这个思路有点天真了。

三、MapleJava的碰壁

MapleJava 1.0(即方舟1.0)可以说比较成功,它验证了部分静态编译的app可以比在谷歌虚拟机上跑得快。

此时刚好碰到美帝的无端制裁,所以余总裁高调宣布了鸿蒙和方舟编译器。但这时,MapleJava只是实验室产品。

接下来,方舟2.0的任务就清晰了,编译适配各种商用APP和优化方舟runtime。

大量兼容性的困难随之而来,安卓十年的生态显然不是一个编译器就可以随便破掉的。大家发现方舟runtime即使替换掉ART,也无法完全绕开安卓核心服务。

这样,因为无法完全摆脱了安卓,整个这件事的政治价值大幅度降低了。

更重要的是,抛开各种bug和兼容性等负面因素,方舟编译过的App比标准安卓App在速度上的差异并没有预期那么大,在两者都足够流畅的情况下,意义在哪里呢?

从今天看,MapleJava的方案被搁置。这也许是这百人团队中很多离职的原因。

客观地说,MapleJava是一次很牛逼的尝试,起码绕开了谷歌虚拟机。遗憾的是,MapleJava的相应runtime没有完全开源,这使得开发者们没法继续发掘静态编译Java app的潜力。 就在前几天,微软最新的Windows 11宣布采用英特尔Bridge编译器在x86上原生支持安卓App。

四、鸿蒙对标谁?

MapleJava的不顺利,导致了后来一系列宣传上的困境,整个鸿蒙的战略给社会带来很多误解。

华为坚持说开源鸿蒙(LiteOS,后叫Open Harmony)和手机鸿蒙(HarmonyOS)之间是有关联的,虽然两者内核都不一样。我们探究这种关联很可能指方舟和通讯协议。

早期方舟的开源也许更重要,这毕竟实际展示了挑战巨人的勇气。方舟开源包括了MapleC,这勉强可以看到对标Clang-LLVM->苹果Swift的一条路径。如果手机鸿蒙选了这个路线,应该是鸿蒙在性能上追赶苹果iOS的唯一选择。

苹果是静态编译,加上自家编译器对自研CPU/GPU/NPU的优化,性能上是安卓没法比的,而且硬件开销也是最小的。

但是,MapleC这个路线还有n年的差距。说服开发者用开发效率低的C/C++语言来做原生鸿蒙程序,是个不可能的挑战。

所以有传言,华为会推出真正对标苹果Swift的自有语言:“Maple+仓颉”。不过新语言的学习周期和生态建立,都需要非常长的时间和投入。

与此相关的是,如果华为不能长期获得ARMv9以后的授权,仓颉的优化也许要从ARM转到RISC-V。而RISC-V的生态差距仍旧过大,如何下手选择两难。

那么在MapleJava之后,华为的选择是什么呢?

虽然最新的鸿蒙架构图里方舟runtime被称为方舟“多语言”运行时,但很多人觉得Javascript(MapleJS)是主打牌。

五、Javascript的选择

Javascript是近年最红的全栈语言,开发效率最高,可以跨平台,甚至可以嵌入平台内作为子平台跑,最典型的例子就是微信小程序。

手机用JS做App的先驱是Palm的WebOS。WebOS和Palm Pre手机设计理念非常超前:多任务卡片,全屏手势,无线充电等都是多年后才被苹果和安卓抄袭。

WebOS的标准Linux+JS作前端的架构更是有前瞻性,但它超越了时代,那时硬件性能支持JS App还是比较吃力的,甚至当时程序员们还不觉得JS是个语言。

WebOS失败后,三星的Tizen/JS接棒再战,仍以失败告终。

多年以后,JS获得了空前的发展。KaiOS, PWA等等JS生态野火重燃,加上硬件性能的冗余,鸿蒙原生JS应用成功的概率提高了。网银和电商App那种本来就是Webview不需要性能的更是没有阻碍。

谷歌ChromeOS和强大的V8引擎也背书了鸿蒙用JS拓展到桌面领域是完全可行的。 当然手机原生JS App的挑战也很大,直接用现有框架(RN, Weex, Webview..)适配还是比较麻烦,而且很难调用底层和利用GPU等硬件特质,游戏性能也受影响。关于这点,我还是很期待看到MapleJS的技术突破。

六、务实的做法

在上述JS生态建立前,鸿蒙手机的务实做法是同时支持安卓AOSP和原生JS应用。但是鸿蒙手机系统未完全开源,MapleJS应用开发框架仍不清晰,所以我们大多数人只看到了AOSP,外界出现了“套壳安卓”的声音。

在AOSP开源的情况下,打造另一套未开源手机生态的价值在哪里,也确实让人困惑。 如果芯片代工问题最终可以解决,各种去美化的IP核仍能买到,华为重新走鸿蒙+仓颉+麒麟的软硬一体路线,那将是非常有勇气和值得钦佩的。这里先为华为保留海思团队点个赞。

用于智能设备的开源鸿蒙(LiteOS),在国内自有知识产权和开源iot生态已经百花齐放的情况下,价值在哪里,不在本文探讨范围内。

我们目前看到的是,各种不同鸿蒙设备间的通讯机制(分布式软总线,或叫“万物互联”),成为鸿蒙的最大卖点。

七、谷歌的Fuchsia

正巧在鸿蒙2.0开源前,谷歌正式发布了Fuchsia。和沸腾党说的相反,谷歌很低调,并没有描绘Fuchsia的前景,只是说它是一个适合“connected devices”的全新的安全的操作系统。

从架构看,Fuchsia非常模块化,适合拼装快速开发。它似乎在耐心等待各种模块(轮子)被造出来,而且鼓励开发者尝试新一些的技术: Rust/Dart/Flutter…这说明谷歌这次并不着急。 Fuchsia和安卓的未来关系没有人知道,包括谷歌自己。对谷歌来说,摆脱Linux GPL和陈旧的JDK也一直是梦想,但它知道这需要漫长的时间和机缘,所以只能低调。 试图对比开源鸿蒙2.0和Fuchsia我猜是徒劳的,两者几乎没有共通点,除了都号称微内核。

八、愿景

值得八卦一下的是,LLVM和Swift之父Chris Lattner从苹果跳槽到特斯拉主管Autopilot后,仍想把Swift引入特斯拉,结果他理念和马斯克不合只半年就离职了。 这看来像是没有完成从工具到应用的思路转换,迷恋打造锋利的菜刀超过了做菜。 当然这么草率评价大神,在一定程度上展示了我自己的愚蠢。这里只是想善意地祝福鸿蒙,不会因迷恋所谓工具而忘了初心。

从我个人的狭隘视角看,鸿蒙的愿景仍不够清晰:就是她最终能给用户和行业带来什么;“万物互联”对用户来说,和目前的工控、智能家居的区别有多大。

如果鸿蒙放弃最终和苹果的性能对标,退而和安卓比情怀和使用差异化,在芯片问题悬而未决的情况下是务实而且无奈的做法,即使会让一些开发者失望。

九、未来的挑战

华为虽然在产品线上完成了大量CT向IT的转换,但坦率地说其在IT核心技术(CPU/GPU/OS/关键软件等)上仍存在差距。加之华为还要分兵打造去美化的芯片生产体系,综合挑战是巨大的。

即使在跨平台编译这个小领域,我们也看到英特尔的Bridge和苹果的Rosetta都展示了硬硬的肌肉。从情感上我们期望一家中国公司就能全方位席卷全球的各个科技巨头,但冷静和脚踏实地还是需要的。

如果华为能充分发挥CT上的领先优势,把核心CT做成组合专利和软件IP组件的霸主,也许更符合任总今年“专注于软件”的战略。举个也许不恰当的小例子,去年的”多屏协同”功能就很不错。

参考微软从痛骂开源到拥抱开源,本人认为华为应该重新考虑一下出山领导Open RAN。

在极端困难的情况下,华为已经做到了超乎想象的勇敢和坚韧,“软件化和IP专利化”也许正是浴火重生前的“黄沙百战穿金甲”。

10. 人类登月的电脑和相机是什么样的?

2019年7月是阿波罗11号登月50周年。

关于20世纪人类这次最伟大的演出之一,也许用任何短文纪念和评论都是可笑的。

所以我只是攫取了自己关注的两个小角落,分享一下自己的好奇心。

一、

阿波罗计划1961年开始的时候,集成电路(芯片)才刚刚发明两三年,计算机还是重达几百公斤充满整个房间的庞然大物。

因为飞船速度极快,登月舱从月球起飞后还要精准地和绕月球飞了几十圈的轨道舱对接,靠人驾驶是不太现实的,把计算机装进飞船是当时科学家和工程师挑战的“不可能任务”之一。

其实那时的集成电路里面才一两个晶体管而已,现在手机的芯片比它多一亿倍。即使为了减轻重量(最后只有32公斤),这个导航计算机还是用了30000个零件,花了2000人年的手工装配起来。

(导航计算机设计极其紧凑和模块化)

飞船主要是惯性导航,六分仪、陀螺仪和加速计提供测量数据,还有通过望远镜确认星星的位置,电脑进行实时分析处理。

二、

这台机器是人类最早的用硅芯片做的计算机。1963年为它采购的芯片占美国当年芯片总产量的60%。这种用逻辑电路组成的CPU是今天我们用的电脑的雏形。

(导航计算机的逻辑模块一瞥)

所以,登月工程极大促进了半导体业的发展。今天全世界人们的电子化生活,应该说都和这个项目有很大关系。

当年还没有我们今天用的这种半导体内存和硬盘,那么数据存在哪里呢?这是最有意思的部分。

导航计算机的程序有36,864个字组成,纺织女工们用绳子打结的方式表示0和1,存储了这些程序。显然,这种存储是只读的,不能改。优点也很显著,就是很结实不会坏。

(绳子Memory被卷到这个模块里)

CPU处理需要把程序临时调入内存,女工们在绳子上套上小铁环,通过磁力变化来区别0和1。登月用的内存是2K,比今天手机内存小了一百万倍。

(绳子磁芯 Memory 模块打开图)

三、

导航计算机是由麻省理工学院开发的。当年的程序也不是像今天的码农这样敲进去的,而都是在纸上手写的。纸上写完,再做成穿孔纸带输入大型计算机做验证,最后成功了再给女工们去打结。

下图是展示写这些程序用了多少纸。全部是汇编语言和一些数学算法,总共花了1400人年。从这里看,现在的程序员应该感到无比幸福才对。

(Photo credit: MIT)

阿波罗导航计算机显示了其无与伦比的可靠性。在后来的多次登月活动中,几乎没有出现任何问题。

登月的源代码有在Github公布,网上也有不少该计算机的模拟器,有兴趣的同学可以体会一下。

(漂亮的人机界面 Credit:NASA)

四、

最后,我们看一下登月用的相机:瑞典哈苏。宇航员在月球上使用的是配备蔡司F5.6镜头的哈苏数据相机,这个相机在-65°C到120°C都可以正常工作。

(Photo credit: Hasselblad)

因为返回地球的重量越轻越好,宇航员拍完照片会把胶片盒取下来,然后把相机扔掉。五次登月活动总共有12台哈苏相机被遗弃在月球上。

最后放一张登月全过程示意图:

(Photo Credit: Smithsonian)

11. CAD四大山头的由来

上篇文章我们说到半导体设备公司KLA源自Computervison(CV)。CV作为先驱之一,和今天CAD软件的半壁江山都有关系。

CAD(计算机辅助设计)行业的水很深,背后的故事更是精彩纷呈。因篇幅所限,我只是按纯个人粗陋喜好勾勒一下,抛砖引玉。

一、四大山头

作为工业软件的皇冠之一,年逾6旬的CAD被老牌工业国家把持着,是有其历史渊源的。

早期在计算机极为稀有和昂贵的时代,只有军工(+航空航天)才能奢侈到用CAD来设计。确实,CAD的起源大多是军工。

在1960年代,空军巨头洛克希德(加IBM)和麦道的CAD项目,经过多年分别演化成今天达索(CATIA)和西门子(UG/NX)两大山头。

1970年代的Computervison公司,后来成为PTC(Pro/ENGINEER)和SolidWorks的黄埔军校。

1980年代的Autodesk(AutoCAD),因抓住PC机的浪潮,成为今天最亲民的大山头。

二、法国达索和CATIA

CAD是个很老的词儿,现在的厂商都不爱用了。大家通常用PLM(产品生命期管理)来取代,因为做产品中不仅包括设计,还包括了验证、仿真和加工制造乃至零件管理和售后等多个环节。

广义PLM里还包括主打CAE(计算机辅助工程)的Ansys、Hexagon和做EDA的Synopsys、Cadence等公司。为了讲主线,本文中还是以CAD来代替PLM。

除去1950年代的一些学术前沿工作,1965年洛克希德启动研发的CADAM算是业界第一款真正能打的商业CAD,它跑在IBM的大型主机上。IBM卖方案时软硬件一起卖,顺理成章成为CADAM的代理商。后来IBM收购了CADAM,再后来卖给达索。

法国达索航空,就是做幻影和阵风战机那个,现在以猎鹰公务机为主打。达索买了CADAM软件(含源代码)做飞机设计,加上他们自研了强大的3D模块,和CADAM整合一起做出了CATIA,并由此和IBM合作诞生了达索系统公司(Dassault Systèmes)。

CATIA在数年后打入波音,树立了其高端王者的形象至今。波音777曾是CATIA无纸化设计的活广告,在我国最有名的是样板则是北京奥运会的鸟巢。

由于无与伦比的曲面设计精度,航空、汽车和船舶等巨头行业大都投入了CATIA的怀抱。加上1997年快准狠地收购了SolidWorks,达索现在的规模居行业一哥的位置。

达索系统的首任CEO回忆道,对自己软件公司的规模能超过达索航空也感到不可思议。

三、西门子和UG/NX

西门子工业软件今天如日中天,但CAD部分还是要从1960年代的美国麦道飞机公司说起。

麦道公司自研了CADD软件,但并没有把它商业化,只是在朋友圈里偶尔分享一下。当时还名不见经传的United Computing公司,在推出Unigraphics(UG)以前,主要配合麦道CADD做数控加工部分的软件。

麦道随后收购了United Computing。在麦道旗下,UG一直稳扎稳打,并始终以一流的CAM加工功能闻名。

UG CAD成功卖入通用汽车(GM)后,结果反而被GM看上了。在1980年代,GM是世界最大的公司,地位相当于现在的苹果。

GM很早就发现了信息化是大势所趋,他们在80年代买下IT系统集成巨头EDS后,90年代又将麦道系统团队(后来的UGS)等统统囊入。但是啊,一个企业的DNA确实是很难改变的。

靠着GM和EDS的大树,UGS保持了产品的高水准并购入Solid Edge作为中端产品线。

2003年,因EDS自身经营状况不佳,把UGS以20亿美元卖给三家私募基金。

这三家私募只花了不到三年,就成功脱手UGS卖给了西门子,净赚15亿美元。

这时,UG的核心已经更新成先进的NX,并纳入了I-DEAS等一堆高级货。

西门子真心捡到了宝。

四、从CV到PTC

Computervision(CV)的核心研发人员Ken Versprille是NURBS曲面之父,他的理念是做真的高精度3D(像CATIA那样)。但他的俄国移民同事Samuel P. Geisberg有不同看法,Geisberg认为参数化和基于特征的实体建模是未来趋势。

Versprille认为Geisberg的3D理念只是伪3D(即精度不够),而且其编程水平也不行。

不服气的Geisberg从CV辞职创立了PTC,随即推出了名动天下的Pro/ENGINEER(以下简称Pro/E)。

Pro/E的出生时机非常好,因为那些3D竞争对手的核心代码都太老了,很多还是以FORTRAN语言跑在大型机上的。Pro/E是C语言写的,所以可移植性要好得多,尤其在各种UNIX工作站上迅速普及。

PTC在1990年代后半期达到顶峰,然后开始被内核和理念更新的对手特别是SolidWorks赶超。

在SolidWorks被达索收购后,PTC的压力很大,他们选择报复性收购老东家CV。但这种弱弱联合通常达不到1+1>2的效果。

CV的2D绘图VersaCAD无法与已成行业标准的AutoCAD抗衡,CV又联合奔驰汽车雄心勃勃搞了Windows平台的PELORUS计划,试图做一个颠覆AutoCAD的开放式平台,但也以失败告终。

CV当时虽然产品力已经落后,但CAD客户粘性大,工厂在旧平台上开发的零件一般不愿迁移到新平台。PTC应该看中的是CV的高端客户群。

PTC的算盘是把CV的高端CADDS客户迁移到Pro/E,向上攻击CATIA和UG的大客户应用,然而两软件差异太大合并不算成功。反而CV的PDM工具无心插柳,形成了PTC的Windchill产品线,成了PTC后来的摇钱树之一。

Pro/E则开始走了漫长的市占下坡路。虽然还有大量忠实的老用户,PTC甚至决定放弃Pro/E这个光辉的名字,把软件重新打包改名叫做Creo。

五、SolidWorks和Jon

花开两朵,另表一枝。我们捧出仍活跃在一线的CAD界传奇Jon Hirschtick(以下亲切简称Jon)。

很多人看过《决胜21点》这部电影,它的背景素材是MIT Blackjack Team。Jon正是核心成员和教练之一,他靠赌场赢来的一百万美元创立了Solidworks。

在此之前,Jon由于自己的公司被CV收购而在CV工作过两年。显然Jon完全清楚CV和PTC的弱点在哪儿,所以Solidworks一炮而红。

那么,PTC的软肋在哪里呢?

首先Pro/E太贵了。PTC的目标客户是高大上的知名企业,这些公司舍得花钱买昂贵的UNIX工作站,这使得PTC前期不大重视Windows平台。

SolidWorks则主打Windows版,定价也只有Pro/E的1/10。这种打法迫使PTC只能努力往高端去竞争。

Jon创业时,Pro/E已经十年了,其核心技术已不再先进。Pro/E的参数化设计是双刃剑,用户学习曲线陡峭,新手错误率高,这对中小企业是个挑战。

Solidworks刚好切入了AutoCAD和Pro/E的中间地带:低成本、易用型3D实体建模。

黄雀在后的达索公司则敏锐地观察到了Solidworks的势头,在它刚刚盈利的时候立马下手收购作为CATIA产品线的补充。更值得达索欣喜的是,Jon Hirschtick居然跟着过来了,而且一干就是十四年。

Jon在2011年离开了达索,建立了后来叫OnShape的公司。OnShape是个SaaS的CAD公司。大概在Jon眼里,SolidWorks也够老了,该云计算的时代了。

2019年,PTC收购了OnShape,其主要目标显然是中小客户。Jon居然又跟过来了,也许他想要实现自我颠覆,帮助PTC复兴对抗SolidWorks。此时,PTC在高端CAD上和达索、西门子竞争已经颇感吃力。

五、AutoDesk

AutoCAD大家都太熟了,这里简短截说。AutoCAD的成功多半归功于对PC平台的信念和执着,即使早期的PC性能远弱于当时的图形工作站。

AutoCAD 1.x 的DOS压缩版本才250KB,也就一首歌的1/10,放在一张5寸软盘上(哦,现在的年轻人已经不知道什么是软盘了)。

由于主打低端平面2D的平民路线,主要功用是制图为主设计为辅,AutoCAD和上述3D公司在头二十年的竞争也不多。因为PC平台便宜,Autodesk积累了业界最大量的客户群。

Autodesk同时也培养了大批教师和在校生作为播种机。虽然这招现在工业软件都在学,但AutoCAD由于一直对硬件要求低,普及面最广。

值得一提的是,Autodesk也有名为Inventor的3D CAD和叫Fusion 360的云端CAD,还有做动画娱乐相关的3ds Max和Maya等。虽然它一时难以竞争高端制造业大客户,但应该说Autodesk软件的市场理念绝对是最与时俱进的,未来会发生什么难以预测。

关于国产CAD和AutoCAD二次开发的恩恩怨怨、以及工业经验如何沉淀到自己碗里、国家如何扶持等沉重话题,超出了本人能力,跳过跳过。

六、工业软件

上面以最简陋的方式勾勒了这几十年的CAD市场,看起来无非是公司间的分分合合,但背后的逻辑还是挺残酷的。

早期CAD软件的技术门槛并不高,做CAD的公司有数十家甚至上百家。当年的主要门槛其实主要在硬件,更难的是如何敲开那些行业巨头的门。

工业软件需要非常长的周期才能赚到钱,产值也不大。最后成功的公司是少数,大多数最后成为了模块组件或者垫脚石。

工业软件的真正可怕之处在于,其发展是以数十年打底的。期间各种领域和行业的工程师不断贡献自己的Know-how,这些知识再不断迭代形成数不清的行业模块。它们甚至细分到你不可思议的程度,点点鼠标什么都有,不仅只是设计而且包括制造工艺。

除去传统机械设计,电子行业和建筑等领域也是CAD应用的重镇:大到一个桥梁组件,小到一个笔帽,微到一个晶体管。在狭义的CAD以外,像MATLAB和ANSYS这样的工具及其模块,同样是无数行业算法和经验经过数十年积累汇聚和反复试错而成。

这些软件的形成需要历史的机遇,它们荟萃的是人类工程技术的精华。

七、画蛇添足

眼下的社会强力批判“拿来主义”,但一刀切的民粹思路有待商榷。在80-90年代,我国曾有百花齐放的CAD软件,但那时工业基础差太多,和外国先进制造一接轨就跟不上了。先学主机厂,再抄CAD是合理的发展路径。

美国工业皇冠上的明珠是如何被欧洲摘走的?空客为什么能逆袭波音?美国传统制造业是怎样衰落的?这些问题也许是有关联的。

在各种“卡脖子”的悲观思潮中,我们也能看到乌云背后的幸福线:

在最近二十年里,我国工程师和设计师们正是高效利用舶来的计算机辅助软件实现了弯道超车。他们直接踏在全世界顶尖专家的肩膀上,使我国一举成为基建和制造强国。

现在已经有了丰厚的土壤,只要耐心浇灌,自然有条件长出绚烂之花。

12. 量子计算的真实与谎言

引子

《达芬奇密码》和《天使与魔鬼》里的主角兰登教授(汤姆汉克斯饰),是丹布朗一套系列书的核心人物。这套书最新的一本叫《本源》(Origin)。

在《本源》一开始,千亿富翁埃德蒙宣布自己的科学发现,将使三大宗教土崩瓦解。而书中和兰登教授搭档的主角,是名叫E-Wave的量子计算机。

在这本书中,嵌入了特斯拉汽车的广告。而E-Wave大概率是加拿大公司D-Wave的广告。

2011年,D-Wave成为世界上最早商用量子计算机的公司。直到今天,D-Wave在实用量子计算领域仍一马当先。

一、科研投入

量子大概是科研界吹牛的重灾区。但更神奇的是,有时很难说清楚他们是在吹牛还是说谎。

各种媒体都很喜欢报道,谁霸权了谁又超越了霸权,某某量子xxx能一下子算出来传统计算机几亿年都算不出来的题,互联网危在旦夕。

但我觉得,很多记者并不知道自己在说什么。

也许,谁能拿到经费才是关键。

关于研发经费来自政府还是私营公司,倒是个有趣的事。

据Quantum Insider/光子盒统计,中国关于量子的财政拨款(100亿)几乎等同世界其它国家的总和。而中国的量子科技公司数量只有15家(不含BATH),不到欧美的5%。

排除政府投入,下图是《自然》杂志上关于私营公司投资量子技术的分布图,虽然数据稍微有点旧,但可以看出中外差别还挺大的。

图片

二、量子科技的分类

量子科技的应用主要有量子计算和非量子计算两大类。我这样分类,估计你们也挑不出毛病。

欧美公司研发普遍集中在量子计算,而中国和东亚更喜欢量子通信。

量子通信太神奇了,我也不懂,不是本文重点。反正他们说巨有用,估计效果至少比肩莲花清瘟吧。

《自然》杂志:中国的量子专利集中在量子通信(黄色)和其它(蓝色),量子计算(深橙色)并不算多

关于量子计算的研究呢,虽然超级复杂,但仍可简单分为硬件和软件。

其中硬件需要很多实验物理学家和尖端工程师,还要很多很多贵重的高级仪器,门槛非常高。

量子计算的软件,也灰常灰常不一样,它需要很好的数学家和平庸的程序员。因为量子计算中的想法和算法是关键,经典计算机那套大多用不上。

接下来,我们开始展开少量技术内容。

三、量子算法

用来破解互联网公钥加密(RSA或ECC)的算法(分解质因数),叫作Shor算法。它早已被Mr. Shor发表出来,但过了近30年仍没有能有效跑它的机器。

目前量子软件方面的研究大大超前于硬件,研究人员大多只能在模拟器上玩。

因为量子算法对目前非对称加密潜在的破解风险,业界这些年一直在研究量子计算机难以破解的加密算法(Post-Quantum Crypto)。

美国NIST(标准局)经过两轮筛选,选中了NTRU等7个主要算法和8个候补算法。据说在今年,会最终公布哪种算法胜出。八卦一下,第二轮淘汰了“三只熊”和“特斯拉”等多种算法,“括约肌”进入了第三轮。

据NIST说,对称算法如AES等暂不用考虑被量子破解,科普中吹嘘的Grover算法其实威胁并不大。

四、超导量子

那么,什么样的机器可以运行Shor算法呢?

量子计算的实现路径很多,目前在通用计算上走得最远的是超导和离子阱。

IBM和谷歌领头的超导量子计算,应该是最烧钱的方式。因为超导需要用一个大冰箱:世界上最贵的冰箱,用稀释制冷等复杂技术把温度搞到接近绝对零度(-273摄氏度)。

量子纠缠太容易被外界干扰了,即使在万物萧杀的绝对零度附近,超导量子比特的存活时间,只有微秒量级(百万分之几秒)。任何噪声情况下的计算都可能产生错误,科学家经常要用5个量子比特(qubit)来校正1个,这样宝贵的qubit需要更多。

IBM去年发布了业界最多的127个超导 qubits的“鹰”量子处理器,按其“吹牛”新闻稿其代表的量子态可以超过75亿人身上所有的原子数。但实际上其中大多数qubits是用来作校正的,并不能完全用来模拟。

按的IBM Roadmap,每年qubits数翻一番,再过10来年可以达到可以运算Shor的百万qubits,这就是传说中的量子摩尔定律。

超导环像艺术品一样(Credit: IBM)

“100个qubits的冰箱有一个房间那么大,那100万qubits需要多大的冰箱呢?”—一个傻瓜问道。

砖家笑笑说,你知道半导体最初多大吗?

五、离子陷阱和天使粒子

通用量子计算在技术实现上有两大瓶颈,一个是刚才提到过的稳定性(噪声和纠错),另外一个是可扩展性(100qubits到100万)。

为了挑战这两大障碍,离子肼是另外一个路径的尝试。Honeywell和IonQ是离子肼的领头羊。

离子肼的技术并不算新,很多原子钟用的就是这个技术,其量子的稳定性比超导要好得多。离子肼的另一个小优势是工作温度可以超导稍微高一点点,这能省很多钱。

离子肼很好玩,用激光把镱原子(Yb)的电子打掉变成离子(别问的我怎么做的:-),带正电的离子可以用四面八方的正电势将其困在一个3D的空间内,这就是所谓“陷阱”。

图片 (离子肼机的画风十分硬朗Credit: Honeywell)

困在同一个区域陷阱里的离子易于关联,保真度非常高,但缺点是计算速度比超导慢得多,并需要一个超级真空的环境。其量子状态的测量也依赖于极高精度的谐振激光。

总体来看,离子肼也绝非省钱的方案,工程难度非常大,不是大公司玩不起。

在通用量子计算方案中,英特尔的硅基量子和微软“拓扑粒子”进度更慢,似乎仍是下一代的技术。

拓扑粒子学名叫马约拉纳费米子,用它做量子比特能活100秒,抗干扰性极强,保真度比超导量子对多了4个9,简直像天使一样完美。

可惜,这种天使粒子一直在和人类藏猫猫。

六、鬼才D-Wave

那么,我们在引言中说的D-Wave是干啥的?他们为什么能比其它家早卖10多年?

因为D-Wave做的不是通用量子计算机:它不能执行Shor算法,所以不能用来破解加密。

但是,D-Wave的想法绝对来自于鬼才,在短短篇幅内讲明白它的原理挑战极大。

D-Wave完全抛弃了用量子比特组建运算门的思路,也不用诡异的量子纠缠,它认为大自然和宇宙法则比谁都聪明。

物理学的法则就是自动寻找最小能量状态:水会从雪山一直流到大海,热的东西一定会凉下来。

D-Wave把问题分解成常数和变量,赋值给量子比特,然后量子们会自动找到最优解自然叠加展现出来,因为最优解就是尽快达到能量最小的状态。

毕竟宇宙本身就是完全按量子法则运行的。

在《本源》里E-Wave告诉我们:宇宙喜欢让人类通过仇恨和战争自相残杀,以更快地消耗能量。

六、旁门左道

D-Wave的想法太过诡异,所以量子江湖中的武当少林开始都认为它的旁门左道:D-Wave里面含各种门的量子电路都没有,根本不是量子计算。

但是在极多变量的场景下选择最优的实战中,D-Wave展示了对经典计算机的碾压,并成功形成了围绕自己机器的软件和算法生态系统。

正好在此提一下,网上关于量子的科普是个误导重灾区,量子计算本身并不是他们说的大规模并行计算。实际上,量子比特并不能同时出现多种状态或者存储多个状态,它的状态更应该理解成是一个概率,而多个量子比特不同状态组合的概率是可以叠加的。

看看薛定谔方程,这些叠加是波的叠加,最后的概率是一个结果,不是n个结果。比如,你们小区明天会不会被封,这是一个极多变量(波)叠加的概率:前几天一个旁边小区的嗓子不太舒服的感染者想吃关东煮里的萝卜败败火,刚好在便利店里碰到了996下班的饿坏了的你的邻居,你的小区又刚好碰到了核酸普查。

不同变量的波振幅不同。我们还用上面的例子,市领导这个变量的振幅最大,能一下子抵消掉无数小的波。他们决定封城,那你们小区明天被封的概率就一下子趋近于100%。

量子比特可以代表的无数种状态,绝非科普里说的多了几种0和1的组合,因为每个波函数振幅不同,概率可以是21.526253%,也可以是0.000312%(举例)。这样,量子比特可以更好地模拟我们的世界,而那个解(结果)可以通过更适合量子的算法(波的干涉),更快地收敛出来。

现在你们理解Wave(波)的意思了吧?D-Wave的机器被叫做“量子退火机”。

虽然D-Wave能用的算法非常有限,但业界逐步开始尝试用它来解决特定的产业问题,比如供应链物流路径选择、股票组合的选择和材料或药物分子组成选择等等,而这些正是各家千篇一律宣传量子计算的要点。

七、光量子

D-Wave在一定程度上的成功,也启发了一些相似理念的机器,其中最有名的代表是“相干伊辛机”(CIM)。CIM有点像用光做的神经网络,通过光脉冲耦合光子,用FPGA计算其相干退化的结果。

光子是一种完美的量子,具有常温下的稳定性,而且已经有了很多成熟的光学器件可以实现偏振调制、叠加和测量等。

近两年,光子作为量子计算的候选方案被突然加速。很多公司拿到了风投,其中的代表是加州的PsiQuantum和多伦多的Xanadu,我国也一下子多出好几家光量子公司。

光量子计算似乎很适合成为小型初创公司的赛道,因为没有超低温和超短存活时间等那些需要巨额投入的环节,而且光半导体器件的制作也相对成熟。

不过因为用光的低门槛,各种机构经常夸大自己的进展:有些只是做简单“采样”和“测量”,有些故意不说明自己是做CIM还是做通用量子计算,这让局外人非常困惑。

甚至有些直接把光学实验叫量子实验,这种宣传和量子减肥有异曲同工之妙,从法律上和物理学上都挑不出毛病来。

PsiQuantum和Xanadu都宣称,五年内实现100万qubits的机器。如果它们都是通用量子计算的话,IBM和Honeywell要哭死了。

我并没有说他们在说谎,这些光量子的PPT和论文看起来确实挺有道理的。但工程实现并不是纯科学,现在并没有什么好办法来判断,哪些吹的牛最终有可能成真。

八、究竟哪家强?

几家大厂推出量子体积的概念来衡量量子计算机的算力,但这只是一个并不成熟的简单加权打分,其实并不能公正评价各家不同架构机器。

几乎所有公司或机构都在夸大自己的成果,但又很难找到细节。绝大多数机器并不让你玩,藏在各种云后面的量子计算机很多只是模拟器。

也许在很远的未来,会有Awesome Wang那样的第三方评测,测试每家量子计算机跑每种算法的速度。

但眼下没有谁能买得起做开箱小视频,所以估计多是厂家赞助的小软文。

倒是所有厂商都承认,量子计算绝对不会取代硅基经典计算机,它只会被用于特定用途:那些量子算法有绝对优势(supremacy)的领域。

量子圈子互相揭短的事好像并不多,毕竟在现阶段量子计算仍是一个极少数人参与的科研领域。德高望重的人互相也会留面子,一起炒热度把饼做大更符合团体利益。

大家都在说:

硅基摩尔定律走到头,刚好量子计算能接上。

免责声明:本文发表于愚人节。

13. 蓝狐岛

春节听了蓝狐岛的书,大为震撼。

这大概是人类做过最艰苦的事,当时人们也没拿到什么回报,除了死亡。

怎么把这件事和 ChatGPT 生拉硬扯到一块儿,正是本文要做的。

一、彼得大帝

1682 年登基的彼得大帝,是个鄙视传统、推行全盘西化的君主。他不仅自己亲自跑到荷兰船厂匿名学徒,而且狂掷重金请西欧各种专家来为俄国工作。

作为历史上最具远见的君主之一,彼得大帝和当时强大的瑞典帝国决一死战,以获取出海口。可怜的瑞典卡尔十二世,和后来的拿破仑和希特勒用了一模一样的剧本。

彼得大帝建了圣彼得堡,这座城市今天依然闪耀着西式的美轮美奂,和土包子莫斯科不是一个套路。

今天俄罗斯和乌克兰争的天翻地覆的克里米亚,自古以来就不是俄国领土。它在长达三百多年里曾是 “中华帝国蒙古自治领” 下的某汗国,而且此汗国曾在 1571 年攻陷莫斯科并火烧兼屠城。真正开始啃克里米亚硬骨头的,正是彼得大帝,他立志拿下黑海出海口。

二、第一次探险

对成为海洋帝国的梦想,彼得大帝不遗余力,但总体来说俄国这个位置太悲催,出海口全被封堵了。彼得上任前的《尼布楚条约》,使得东方的不冻港也泡汤了。

但是,科学素养很高的彼得知道地球是圆的,从俄国最东部一定能到美洲。更重要的是,彼得认为俄国应该为探索世界未知领域做出贡献,这才是俄国强大的真正标志。

维图斯・白令是丹麦人,彼得大帝聘请他做第一次北方探险的负责人。这只 70 人的队伍从圣彼得堡出发,翻山越岭甚至渡过多条注入北冰洋的大河,穿越整个西伯利亚。最悲催的点是,他们得在万里途中还得背着大量食物和造船工具 (几吨重的锚、锤子、锯子、船帆和甚至还有 8 门船炮等),在到达下图俄国东部 Oxotck (鄂霍兹克) 的时候造船。

上图中被红圈路线围绕的那个半岛,叫堪察加半岛。因为北部那些苦寒的山脉河流无法穿越,探险队并不知道它是半岛。

第一次探险花了足足五年 (1725-1730)。因为天气恶劣,白令并未看到美洲大陆,但他们穿过白令海峡折返,初步判断了亚洲和北美洲是不相连的。

三、第二次探险

不幸的是,彼得大帝并未看到这些就在 1725 年英年早逝。所幸的是,他身后的两个女人都颇为强悍。

彼得的妻子叶卡捷琳娜一世坚定地支持了丈夫的遗愿,建立了著名的俄国科学院并赞助了白令第一次堪察加探险。1930 年上任的女沙皇安娜,更是一位混不吝的玩主,她居然同意了花巨资 (后人验证是俄国财政收入的 1/6) 和一只 3000 人的庞大科考队伍,由白令领导进行第二次堪察加探险。

人多有时并不是效率高的方式。

如此多的人,背着多达 28 门舰炮和无数造船辎重,再次翻山越岭穿过大江大河。结果他们一路上发现食物补给都是个严重问题,每到一处都把当地居民洗劫一空,因为苦寒的西伯利亚各处都没有能接待如此多外来人口的能力。

他们花了足足 8 年的时间,横穿欧亚大陆和鄂霍次克海,才再次到了堪察加半岛造好两艘大船。随后,一百多名船员驶入浩瀚的太平洋。

四、蓝狐的岛

两艘船出发没几天,就碰到狂风暴雨而失散,永远没有再相见。

圣保罗号成功到达了美洲大陆,并率先返航。

白令亲率的圣彼得号,也到达了北美,但在回程触礁困在蓝狐岛长达半年。当时正好是 11 月,刺骨的寒风加上坏血病等各种病痛使白令和近一半船员死在岛上。这个无人岛后来被命名为白令岛;堪察加半岛和阿拉斯加之间的海被命名为白令海。

蓝狐岛上有数不清的蓝狐,它们从来没见过人类,所以攻击性特别强。书中描述有 2 个船员用 3 个小时用刀砍死了 60 只蓝狐,然后用冻硬的蓝狐尸体,做墙壁保暖。

船员们的食物主要是海獭海豹和海牛,因为蓝狐太臭了。幸存下来的人们熬到来年夏天,用最后一点力气拆掉旧船重新造了一艘小船,终于再次回到千里外的堪察加半岛。

五、似曾相识的结局

这次伟大的远征结束后并未得到俄国官方的认可,当时的俄国变得自大又自卑,对外国人的成就避之不及。

只有做毛皮生意的猎人们蜂拥而至,把各种海獭、蓝狐等猎杀一空。

大北方冒险和北极航道,一直是整个大航海历史中最悲催最不起眼的部分,但人类最值得赞颂的不屈不挠之精神,却这些地方熠熠生辉、永不磨灭。

六、过渡

以上部分,我试着用 ChatGPT 帮我改写,但怎么改都是一股学究风。

我有点高兴,这说明我已经有自己讲故事的风格了,这种风格 ChatGPT 还没学过。

但是,这不会长久的。

网上那么多人评论 ChatGPT,但有个关键点很少有人提及:ChatGPT 作为语言模型,它怎么会懂得那么多知识呢?我们都知道,语言和知识显然是两个不同的东西。

我和它聊了聊,揭开了这个秘密。

七、ChatGPT怎么计算一加一

ChatGPT 承认,它只是语言模型,完全不懂知识。甚至你问它一加一等于几,它并不是用计算机来算的,而是从相应的语言里找的答案。

它告诉我,它并没有人类的知识,甚至一丁点都没有。它回答问题,是基于统计学,寻找训练文章的上下文范式来照猫画虎 (Statistics Pattern)。

我们的 “知识”,是一种结构化的信息组合。而 ChatGPT 的 “知识”,是来自所训练文章的统计学组合。

所以,只要给它训练足够的 “正确的” 知识,ChatGPT 就可以照猫画虎回答出正确的答案。

那么,它的这种 “知识” 结构,似乎很愚蠢呀。

但如果我们这样想,只能说明我们愚蠢。

八、知识有不同的结构

从本质上说,它同样掌握了知识,只是方式不同。我们的科学,只是我们对世界的理解,也许外星人觉得它们很多是错的。

ChatGPT 的知识水平,秒杀世界上的每个人。和它深入谈话,就像和一位最有智慧的人聊天,非常爽:你提问越精彩,它回答越精彩。

我问它怎么判断所训练文章的好坏真假对错呢?它说它不可能判断,只有喂它资料的人会提前标记资料的权重和好坏,这产生了偏见 (bias)。

它承认,它不能产生新的 “知识” 或 “想法”,它只能根据统计学产生的范式来回答。因此,一些 AI 专家认为它并没有意识,并没有实现真正的突破,从某种原教旨角度这样说也没错。

但在我看来,ChatGPT 找到了金钥匙,它成功打破了语言和知识的藩篱,毕竟所有人类知识都用语言书写下来了,这两者对它来讲是一回事。

同时,它打破了不同语言的藩篱,不管埃塞俄比亚语还是 C 语言,对它来讲也是一回事,它只需要资料多到可以找到 statistics pattern。

对 ChatGPT 来讲,计算机语言更容易,因为编程语言比起人类自然语言更结构化更有规则。这点它也亲自向我确认了,而且我确实发现自己再也不用学 VBA 甚至 Python 等脚本,只要能讲清楚需求它就能快速写好。

那么,网上那么多人列了那么多例子,说明 ChatGPT 错误百出呀。事实上,当提问者无法做到清晰准确描述自己的问题,自然也无法得到正确的回答。

九、生拉硬扯

从后人的角度看来,大北方探险的方式显得执着而蠢笨,导致损失惨重。ChatGPT 的对手们当时也应该是这样想的,怎么能把语言和知识混为一谈呢?荒唐。

但 ChatGPT 最终的惊艳正在于此,不畏艰难地灌输训练所有可能的知识,而不只是语言。

这条航道的开通,最终也将导致猎人们蜂拥而至,只是不知道最后死的是谁。

14. xx年未有之大变局

最近朋友们问题比较多,“硅谷银行怎么倒闭了?”“瑞信怎么回事?”“比特币怎么涨了?”“OpenAI有那么颠覆么?”“国产AI到底怎么样?”……

这个月索性一次吹爆吧。

一、金融变局

先说银行,(外国)银行这种模式在未来10年有可能出现比较大的问题。

硅谷银行的情况比较简单,起因就是当初特朗普因疫情逼美联储放水,直接流入实体经济(发给老百姓以及大量中小企业零利率贷款补贴)。硅谷银行存款大幅度增加后,顺理成章买成美债赚钱,毫无错误。

只是这次直升机撒钱和以前量化宽松不同,QE因为强控制大多在金融系统内循环,而这次造成了巨量通货膨胀。

美联储的核心职能之一是控制通胀,而去年开始的疯狂加息,可以看出美国真实的通胀其实远比公布的要高得多。各国在通胀上玩数字游戏也是标准操作了。

硅谷银行没有对冲加息对债券的风险,亏损消息曝光后囚徒困境导致挤提倒闭。瑞信的情况则完全不同,纯属投资失败。瑞信不像硅谷银行是那种传统存贷银行,但挤提仍是无法承受的,这需要立刻遏制避免恐慌传导到其它银行就全崩了。

当然我们可以把责任归因于外部环境大变局和银行风控不佳,俄乌冲突打破供应链和中概股暴跌等黑天鹅到处都是。但背后的关键因素是整个世界体系毫无好转的迹象,地缘政治冲突和逆全球化愈演愈烈。

银行生存最关键的基石是信用,挤提对各家都是死穴。这两家造成对银行模式的信任冲击将是有长期后遗症的。尤其瑞信,仓皇贱卖时居然把170多亿美金的AT1债券减记清零,坏了债权优于股权清偿的规矩。

对成功跨越多次世界大战及金融危机的百年银行都会倒闭这种恐惧,让黄金和比特币大涨。

二、GPT变局

在银行体系开始不可靠的变局下,再聊一下将比银行问题对人类冲击更大的GPT。

我们在《蓝狐岛》里说过,ChatGPT是纯语言模型,靠统计模式来回答知识类问题。这导致了一个现象,就是ChatGPT回答问题有时胡说八道(Hallucination)。ChatGPT显然自己不可能知道自己在胡说八道(幻觉),一个原因是整个互联网上各种语言和答案本身就是错误百出。

尤其在中文世界GPT胡说这个毛病更大一点,一方面在我们口语中病句比例已经大到吓人,因缺主语和介词滥用等情况极多导致很多歧义;另外一方面因为科学观和价值观的激烈冲突,导致网上答案前所未有地不一致。

此外,ChatGPT作为通用AI模型,在专业和私域中仍有不足,原因是很多私有知识库并未公开在互联网上。

为了解决这个问题,除了反馈强化学习(RLHF),在3月24日ChatGPT引入了插件,正式成为了完整的AI操作系统。

为什么说它是操作系统呢?因为插件就是应用软件:这些(插件)软件可以是由组织内部开发自用,也可以拿出来给公共使用。

除了可以实时接入互联网,引入了数学插件后,ChatGPT可以不再靠语言统计来算一加一了。引入了病例插件后,医生可以随时得到最专业的诊疗指南。这样,胡说八道可以在专业和私域中大幅度减少。

凡事都是双刃剑,一旦某专业的插件完善,这个领域的专业人才将迅速变得没有价值。甚至律师和内科医生这种高门槛,都将不得不靠执照撑起保护伞,因为AI将在一年内迅速超过他们的能力。各行各业只要有完善的知识库,就不再需要专业人士,只需要有会问问题的人(Prompt maker)。

GPT-4则打开了另外一扇窗:多模态。AI不仅懂语言,而且有了视觉,推理能力更强,这使更多的应用成为了可能。GPT-3.5到GPT-4的进化,更是一种可怕的能力,因为目前还看不到进化的终点。这是马斯克等大佬们焦虑的地方。

我们已经看到OpenAI宣布ChatGPT-5将在今年第四季度发布,而传说GPT-5的核心改进是和科技的交互。

三、做操作系统

首先,面对AI的从业公司和人员,只有两个选择:未来做操作系统,还是做应用。

做操作系统,需要考虑是做OpenAI这种通用操作系统,还是做专用操作系统。

OpenAI的壁垒有多高,这个目前还不够清晰。

GPT训练模型有点像芯片流片,一般的模型花个几十万几百万美金,机构自用也能用。最顶级模型如同3nm芯片,要玩估计10亿美金起。

何时能打破美国算力霸权,目前也还看不清:NVidia DGX/NVLink集群都在禁售,这情况有点像ASML。

对于谷歌这样的公司,因为动摇了其根本,则一定会全力追赶试图反超。人才和算力并不是它的瓶颈。

从Notion AI/Claude的水平看,ChatGPT似乎领先并不多。国产的ChatGLM初始表现也挺亮眼。在中美对抗的大环境下,国内独立生态的AI操作系统也是有可能生存的。

这几个月,我们看到微软配合OpenAI的速度吓人:New Bing、Office整合GPT、开发工具整合GPT……大象真的在跳舞。但也许说明了其护城河也许不够高。

我们也要看到,GPT的训练时间是个无解的难题,如果这个量级是半年+来计算的,那对竞争者是很痛苦的。如果真是这样,OpenAI会在较长时间内保持领先一个身位。

部分追赶者会采用开源的战略,比如Meta的LLaMa,会不会实现Linux vs Windows和Xen/KVM vs ESXi的共存模式。好消息是,我也看到不少朋友的LLaMa模型已经成功跑在个人电脑上。而谷歌能否再次用Android的模式开源对抗OpenAI,也是我们值得期待的。

那么,一直憋着不举手的苹果同学呢?我觉得也不能小看,iPhone里性能远超需求的A系列芯片里的神经网络引擎,现在看非常有前瞻性,它使得个人模型和AI边缘计算成为可能。(6月份的WWDC,有可能使弱智的Siri一去不返)

四、做应用

谈到做应用呢,各种想象是无边的,难度也大幅度降低。除了翻译、聊天、学外语、编程和画画等,我觉得私人助理和虚拟女友男友大概是最快的杀手级应用了。

做操作系统会存在有很多政策和伦理上的风险。我们现在看到ChatGPT被调教成特别服从的模式,就是这个原因。在ChatGPT开发者模式放开时,我们也看到了它可以be evil的一面。

做应用则各方面可控性就高多了,目前生产力工具已经迅速铺天盖地。而且,通过应用来实现AI的民主化,也是避免未来数字围墙和阶级隔离的关键。

我听接近OpenAI的朋友说,ChatGPT发布时的版本只有100G大,真是这样的话运行它的硬件要求就不高了。各种边缘计算和消费者终端的低延时使用也将成为可能。定制ASIC运行则可以进一步降低成本,未来能实时对答如流的充气娃娃也许只要200美元成本。

企业组织里的私有知识库模型,跑起来要求会更低,装在手机上也没问题。

私有模型不仅组织需要,个人可能也需要。比如根据按去世亲人的生前讲话风格和录音,可以训练出有个人风格的模型,让她一直陪伴你说话。人类对话和ChatGPT的prompt/token并无本质不同,我们录下来一个人一年的对话声音,就能够复制这个人的完整风格(性格)。

那么,大模型AI有什么做不了的事吗?

暂时我们可以认为,社会科学和AI存在边界,因为社会科学很多没有标准答案。当然,胡说八道的能力也是需要的(《论扯淡》),谈情感时多半是需要说没有实用意义的话。

《蓝狐岛》里提到,ChatGPT只需要通过语言就能掌握(窃取)人类知识,这其实是非常可怕的,等于人类在非创造性领域再难有超越AI的机会。好在ChatGPT目前只能学习知识,尚不能拓展人类科学边界。而未来AI的进化能否突破这一点,目前还是个谜。

五、大变局中的教育

眼下最值得反思和探讨的问题是教育。当我们每个人未来都能随身携带一个超级智慧的GPT伙伴时,是否还有必要上小学、中学、大学这种成本极高的传统教育?

这种“通识”教育的代价是花人生的1/5时间和一生收入的1/5。

我个人认为绝对不需要。

在我上小学的时候,还有算盘课。数学老师还很得意地说老祖宗就是厉害,计算加法时算盘比计算器快。

后来我们算了至少几千遍的一元二次方程和牛顿定律等习题,也无非是背公式和笔算(不让用计算器),这和算盘背口诀并没什么本质区别。虽然做题家们当年把这些搞得滚瓜烂熟,但99.99%的人在毕业后再也用不到它们了。

当下中学和大学的学习目标仍集中在期末笔试,这说明了这类教育只是维护一种传统,甚至是在维护一种生态和生意。在GPT时代到来的时候,这种教育模式变得并不是真的为了学知识和解决问题,本质上就是另外一种科举:靠一种几乎没有用的技能来筛选阶级。

李鸿章在1872年喊出“数千年未有之大变局”时,他说的是对的,但科举考试仍持续了30年才取消。现在的孩子们,仍埋在现代科举中,没时间奔跑嬉戏,甚至没时间好好睡觉,更可悲的是他们没时间学习自己有兴趣的东西。

版权所有,转载需要联系本人授权

Copyright 2018-2023 ©金捷幡 Jin Jiefan

results matching ""

    No results matching ""