专栏名称: 码农翻身
工作15年的前IBM架构师分享好玩有趣的编程知识和职场的经验教训, 不容错过。
目录
相关文章推荐
程序员的那些事  ·  趣图:当女程序员晒新染的发色后 ·  5 天前  
程序员的那些事  ·  一个国外小老头,用被淘汰的编程工具,开发了一 ... ·  1 周前  
51好读  ›  专栏  ›  码农翻身

世界上最厉害的协作软件,让程序员痛不欲生,最后被印度人搞走了

码农翻身  · 公众号  · 程序员  · 2024-11-18 08:55

正文

1989年,美国人发明了一个超越时代的软件 。


这个软件不但可以收发邮件,查看日程,它还是一个文档管理系统,你可以写一个像Word那样的文档,把链接发给同事,同事打开后也可以在这个文档上编辑,实现协作。


你可能觉得着没啥特别啊,现在很多工具像飞书啊,Slack也能做类似的事情啊!


但是,这个软件它还支持“编程”,你可以用它迅速地开发一个请假系统、会议室预定系统、报销系统、项目管理系统、Bug追踪系统、工作流......


开发速度要比现在快好几倍!


更牛的是,这样的理念在80年代末就实现了!


没错,这个软件就是大名鼎鼎的Lotus Notes




01
Notes的诞生


没有产品是凭空出现的,Lotus Notes的概念起源于伊利诺伊大学,这个学校虽然没有CS四大天王那么知名,但它的计算机系也是美国顶级的。



伊利诺伊大学的最知名的校友可能是Marc Andreessen,大四时开发了Mosaic浏览器,引发了Internet革命,后来去硅谷又开发了网景浏览器,一度独霸江湖。


这里还走出了两位图灵奖,一个是华人姚期智,另外一个是发明哈明码的Richard Hamming。


雷·奥兹 (Ray Ozzie)是伊利诺伊大学计算机系的本科生,读书期间和小伙伴们一起参与了PLATO Notes这个产品的开发,PLATO Notes可以按照主题来组织私人笔记,添加评论,很受大家的欢迎。



到了80年代,IBM PC开始兴起,PLATO Notes所依赖的大型机不再流行。


于是奥兹就想着基于PC开发一个“Notes”产品,但是只有创意没有没钱,Lotus公司的创始人米奇·卡普尔看到了奥兹作品的潜力,做了投资,后来产品名称就叫做Lotus Notes。


Lotus Notes规划了电子邮件、在线讨论、文档数据库等功能,这些功能需要网络的支持,是典型的客户端/服务器产品


在PC还没普及,没多少人见过局域网的时候,这些功能可以说是远远超越时代。


当时的PC还很不成熟(想想MS-DOS吧),奥兹他们必须编写大量系统级代码来实现数据库的相关内容。


最早的Lotus Notes就像iPhone一样,只有一些内置的应用,如果一直这样,那么Lotus Notes只会成为一个平庸的产品。


但是,奥兹做出了开放架构的决定,让用户也能开发属于自己的应用,满足自己的需求,这样Lotus Notes就成为一个平台,无论行业如何变革,都岿然不动。


从1984年的概念开始,到1989年第一版发布,整整经历了5年。漫长的开发周期使得 Lotus Notes 成为一款非常可靠的产品,在市场上没有真正的竞争对手。



在正式发布之前,普华永道的负责人观看了 Lotus Notes 的演示,印象深刻,立刻购买了 10,000 份。这是有史以来单个软件产品在 PC 上销量最大的一次


作为 Lotus Notes 的第一位大客户,普华永道预测 Lotus Notes 将改变公司的经营方式。


02
先进的功能


Lotus Notes 有很多先进的功能,这里罗列几个:


强大的加密


Lotus Notes是世界上第一个使用RSA加密的商业产品,通过使用公钥技术进行加密、签名和身份认证,可以让文档的接收者确保在传输过程中未被修改。


Lotus Notes的加密是如此强大,以至于美国国家安全局要求Lotus削弱其加密技术,以便NSA能破解被Lotus Notes保护的文档和电子邮件。


Lotus Notes对静态文件也支持高强度加密,即使别人拿到了这个文件,也根本无法打开。



多重身份验证


我记得第一次用Notes时感觉非常古怪,为什么必须得拿到一个Notes用户的ID文件,然后输入密码才能进入Notes? 只用密码不行吗?


后来就明白了,这就是多重身份验证(MFA),那个ID文件就相当于银行发的U盾,是识别用户的数字证书。


现在多重身份验证(MFA)越来越受到重视,但从Lotus Notes第一版开始,就具备了MFA,非常先进。


强悍的定制开发能力


Lotus Notes最强的还是应用开发能力,2000年初的时候有个热门的概念就是“工作流”,用Web系统实现起来简直麻烦死了。


Notes有一个内置的工作流引擎,可以定义和自动化流程,因为Notes是基于文档的数据库,每个文档很自然地都可以看成是一个(审批)表单,工作流中的每一步(例如创建、审批、修改文档)都可以轻松跟踪、更新和归档。


再加上它灵活的脚本语言和强大的访问控制和权限管理,实现一个工作流那实在是太方便了。


所以Lotus Notes特别适合企业的办公自动化,请假系统、会议室预定系统、报销系统、项目管理系统......都可以轻松搞定。


Lotus Noes一个产品就可以满足一家公司的几乎所有需求。


正是这些特点,让Lotus Notes受到很多企业,尤其是大型企业的热烈欢迎,成了群件(GroupWare)的代名词,很长时间都没有对手。



03
盛极必衰


Lotus 在群件市场的主导地位吸引了蓝色巨人IBM,此时IBM正要向软件和服务转型,需要进入客户端/服务器计算领域,于是就斥资35亿美元收购了Lotus,这是当时最大的一笔软件收购。


借助IBM的销售渠道,Lotus Notes开始狂飙,在三年里卖出的License比前六年总和都多,进入了康柏、戴尔电、惠普、英特尔、强生、耐克、壳牌、福特等世界500强企业。


俗话说,盛极必衰,Lotus的危机慢慢地浮现。


首先是人才的流失,奥兹和几个主要程序员离职,奥兹去了微软,后来成了首席架构师,提出了微软云计算Azure的战略。


其次,一个强大的竞争对手Microsoft Exchange出现了,虽然Lotus一直嘲笑Exchange只是个电子邮件程序,无法协作,但是Exchange迅速赶上,它更加便宜,更加可靠,吸引了大量客户。


这些都不算啥,更要命的是时代的变化:Web浪潮来了!


Web应用所要求的关键技术如HTML、JavaScript、HTTP、关系数据库等,Lotus Note要么不具备,要么做得不好。


Lotus Notes引以为傲的文档数据库是非结构化与半结构化的,没法像关系数据库那样轻松地查询/分析/统计,其应用的范围非常有限。它的主要作用依然是公司内部的协同办公,很难拓展到互联网的其他商业领域。


真是成也萧何、败也萧何啊!


Lotus Notes是典型的上个世纪软件的代表,它理念领先,功能很强,但是历史包袱沉重,臃肿不堪,UI做得真是不敢恭维,“反人类设计”,“丑到爆”


Notes的UI、逻辑、数据之间耦合度较高,逻辑代码经常分布在表单、视图等各个地方,交叉引用复杂、难以跟踪依赖关系。


它的开发工具也有限,调试能力薄弱,很多现代IDE提供的代码提示、版本管理、重构、单元测试等功能,在Lotus Notes的开发环境中不够完善或直接缺失,代码维护起来非常困难,我记得在IBM时有个同事说“Notes开发简直是痛不欲生!”


在使用体验上也很差,比如说Notes一旦崩溃,你想关都关不掉,非得重启电脑,后来还有人还专门写了一个软件叫“Notes Killer”把Notes杀掉。


Lotus高昂的价格限制了它的普及,它只能在大型、超大型单位使用,中小企业无法触及,Lotus Notes开发人员比较难找,主要靠内部培训和培养。


Lotus Notes虽然也在不断发展,例如采用Eclipse架构,集成即时通信软件,文档编辑器,但是没能抓住最新的浪潮,又没有大量开发人员的支持,Lotus Notes的衰落是必然的。




04
落幕


2018年12月,印度公司HCL以18亿美元收购了Lotus Notes和其他几个软件工具,从此改名为HCL Notes


2021年HCL推出了Domino 12 (Notes的服务器端),表示“Notes和Domino已经转型”,已经变成了一个“云原生、低代码的产品”。“世界(仍然)由 Domino 驱动 ,依然有15000家客户在使用。”


Notes依然是个可以盈利的业务,但是它再也回不到原来的位置了,这个曾经超越时代的软件,被时代超越了。


全文完,觉得不错的话点个或者在看吧!


近期爆文

1970年以来技术的发展趋势,怪不得程序员35岁就被裁......

这个大学生写了个免费软件,全世界网民抢着给他送钱,每月10万美元

全世界流浪的程序员,用最原始的技术,每月赚17.6万美元!

开源软件的叛徒,加入了微软

这两个程序员要花100万,彻底重写世界上最复杂的软件

被哈佛扫地出门,他发明了让无数程序员痛不欲生的编程语言,获得了计算机最高奖!

这两个大龄程序员,打算搞垮一个世界软件巨头!