Claudio Valderrama C.的Interbase unofficial site(www.cvalde.com)是一个介绍Interbase的非常好的站点,里面有很多关于Interbase的故事。但不知什么原因,这个站点消失了。为了不让这些有趣的资料永远消失,我利用以前的存档,将一些资料翻译出来,和大家共享。
第一篇资料是How did Interbase appear?(Interbase是如何出现的?)
故事中的两个人物需要介绍下:Jim Starkey是Interbase的创造者,而Ann Harrison是他的妻子,现在是Firebird的头,而Firebird是Interbase的开放源代码项目的名称。
故事由Ann Harrison讲述,这是很久以前的故事了。
InterBase是在浴室,位于美国马萨诸塞州格罗顿市芦苇草地大街27号铺着蓝色瓷砖的一个大浴室里诞生的。 透过这个浴室的窗户,望着外面的树木,Jim Starkey“找到了”后来变成Interbase的东西。
七十年代中期,为了有机会写一个关系数据库,Jim来到DEC。但当时的高人都认为只有网络数据库才能支持商业应用。这个误解在四年后才被澄清。在这四年中Jim设计并编写了Datatrieve,一个在平面文件和DBMS-32上运行的关系查询语言。Datatrieve用户需要更大的灵活性、更好的并发控制和原子事务。
DEC终于张开双臂欢迎关系技术时,Jim仍然在负责Datatrieve。所以另外一个小组开始了设计,后来这个产品成了Rdb。这个小组开始争辩什么是关系、什么是数据库。他们查阅大量文献,开始了热烈的讨论,讨论一致性的程度、谓词锁和遮蔽技术。但是他们却并没有开始编码。
Jim不耐烦了,自己开始摆弄起遮蔽(shadowing,不知如何翻译为好,希望大家斧正。译者)技术来。他认为这是可以提供重复读而不会阻碍更新的方法。然后,一天早上在洗澡的时候,他意识到遮蔽也可以用来防止更新冲突并取消失败的事务。在一次洗澡时,这个multi-generational database(多代数据库)诞生了。
Jim私下开始了数据库的研制工作,他称之为Jrd。DEC的管理层发现公司里有两个关系数据库项目,正式的项目和Jrd。数据库大战爆发了。
这段时间简直是黑暗年代,充满了互相残杀的政治手腕和火爆的email。最后Jim, Don DePalma和我决定,应该可以找到更好的办法。我们得知阿波罗计算机,当地的一个工作站公司,想要一个单独的数据库产品。阿波罗的管理层喜欢Jrd的模型。因此Jim搬到了二楼的空房间里,开始编写代码。初始投资只有$243.50,买了一把舒适的椅子,和两个文件柜,这两个文件柜支着一个门板,然后当一个桌子用。
谈判开始8个月以后,我们和阿波罗签订了合同,资金才开始流入。Don和我加入了,一起到了二楼的非常热的房间。Jim编写代码,Don写手册,我做其他所有事情。猫会在计算机上睡觉,机器上到处的是猫毛和碎屑,阿波罗的现场维修人员一周要来一次,用真空吸尘器打扫。
Dave Root离开了阿波罗,成了第四个创始人。毕竟每个公司都必须有一个健全的成年人。空房间装不下我们四个人,所以公司一直扩展到了阳台上。
然后我们有了客户和潜在的客户,还有了会议和邮件。客房变成了复印中心和收发室,客厅用来开会。我们都在厨房做饭在饭厅吃饭,咖啡壶放在主浴室旁边的水槽里。我们已经不是在家工作了,我们是在工作中生活。
那个冬天,车道简直变成了Saab全天候截击机使用的雪道,冰冷、弯曲,旁边还有一排排的树木。我们的第一个非阿波罗客户是二月份从加利福尼亚圣巴巴来的,他几乎是滑到前院的,几乎不能站直。但无论如何,他签订了合同。
Groton Database Systems(Groton数据库系统)搬出了家,搬进了一个办公房,在一个干洗店的上面。我得回了我的浴室。
Groton Database Systems是一个突发灵感起出来的名字。其灵感来自于我们怎么也找不到一个能通过商标检索的名字。我们是幼稚的新企业家,因此,每当想到一个名字,我们就问我们的律师“这个OK吗?”。后来我们才知道,正确的问法应该是:“如果我们用这个名字,你能给我们做辩护律师吗?”后来我们将名字改成了Interbase。这个改变是一个人建议的,这个人接电话的时候将我们的名字听成了“Rrrrotten Database Systems(腐烂的数据库系统)”。
我们这么费力在干吗?创造一个不会挡路的关系数据库。一个安装容易,需要很少甚至不用管理,而且可以在应用程序内部工作。我们都有网络数据库的经验:IDMS, Seed, DBMS-32。要使用网络数据库,你真得必须热爱微调、调整,学习,并且还要喜欢你的数据库。InterBase是给我们这些不愿如此辛苦的人用的,我们想做我们真正的工作。
多代体系结构- Jim发现的遮蔽技术,消除了绊倒其他数据库的问题。一个读取者可以创建一个巨大的、一致的报告,而同时其他读者可以继续更新同一批数据。事务回滚也很简单;甚至崩溃恢复也是自动的。
崩溃恢复非常重要,因为我们用InterBase来使公司运作,从记账、销售、到代码管理,所有的事情。停电非常普遍:因为线路过载,八月的暴风雨,或者绊在电线上偶然碰掉了机器的插头,数据恢复对我们和我们的任何扔和客户一样重要。
InterBase是个好产品,我们的大多数客户都非常高兴。公司增加到了七个人,房间也变成了两套,以前在干洗店上,现在在油炸圈饼店上面。我们的保险公司一点也不喜欢油炸圈饼店,但它的味道比干洗店要好得多。
这个地方有自己独特的魅力。有些地方,地板下陷地非常厉害。如果有人踏了进去就会吱吱响。没有一个拐角是圆的。我们的计算机太多了,当然老的计算机比今天的机器要大得多也热得多,因此我们一年到头的开着空调。春天和秋天计算机会被冻住,因此我们在附近准备了几个吹风机来将冰融化。
冬天过了一两个月后,煤气公司给我们送来了一个估计的账单,金额是$350。我们以前的账单是一到两美金,这是因为我们用计算机而不是煤气来加热房间。煤气公司认为我们在偷煤气。他们换了两次表,但读数仍然出奇的小。最后抄表人来到我们的办公室,承认计算机发出了大量的热。
我们总是要和购买部艰苦奋战,让账单兑现。因为我们的客户一般都是大公司,他们非常不习惯和小公司打交道。如果我们送出一个盒子,里面有一个购物清单,上面标着“支持更新”,那么有些公司就只能为支持更新付款。我真搞不清楚,这些公司怎么变通它们的规矩支付电话账单。
我们的一个客户是美国陆军服务的一个分部门,既不清是什么部门了。他们的程序员想要一个课程培训。我们在本地的旅馆租了一个会议室,并让我们打扮得看上去还像个样子。这两个人来了,用旅行支票,还是国外旅行支票为培训付款。他们不愿意谈论他们的应用程序,甚至不愿意谈论在给军队喂食中扮演了什么角色。可能这两者他们都没做过。
看上去还像个样子这件事我们不经常作,也做得不好。Don终于说服Jim,我们应该“为成功而穿着”:Dudley(DDL utility的简称), Burp(备份和恢复程序),和Alice(all else(所有其他))等都不要再说了。有人要造访的时候,我们做了努力,但做得并不深入。有一个银行家来和我讨论我想安排的一项设备贷款。他精明的指出所有这些计算机,没有一个超过两年,“每一台都过时了”。哦,好了,还有其他银行。
支持是我们业务的关键部分;当一个公司购买了数据库时,它们的投资远比软件的价格要高得多。口碑相传是我们最好的广告,我们的工作就是帮助客户走向成功。大多数问题用电话就可以搞定。然而,加里福利亚的一家大航空航天公司出了问题,我们不能远程解决。
记录会从数据库里异常频繁地随机丢失。工程师非常确定不是他的程序的问题,他说可以拿他的性命打赌。Jim带着源代码包飞去了,开发了一个调试工具,将问题一直追溯到了一条删除语句。这个公司变成了一个主要客户,虽然它们的采购部的意见是:我们太小了,而且非常古怪。
今天可以开办一个象InterBase一样的公司吗?也许不能;开发关系数据库的公司就当然就更不行了。期望值增加了而价格却降下来了。我们可以在1986年将只有几个命令行工具的数据库卖上几千美元一份。今天,客户需要一套设计工具、分析工具、快速开发工具和管理工具,而且要有设计得很好的图形化用户界面。而且他们希望每份仅支付不到一百美元。
InterBase用自己的收入成长了五年,让我们在面对投资者之前获得了一些业务经验。虽然现在市场大了很多,但要引起足够客户的注意以避免饿死,需要的预算也增加了得多。从没有投资或者没有大的信托资金开始,在今天是不可能的。即使在那时,有金融资源的公司做的人仍然比自力更生的公司做得好。Sybase就是和Groton Database Systems差不多同时成立的,它有几千万的风险资金。他们在媒体上露的面多,迈出的软件业多。但我们有很多的乐趣。我想是因为运气吧。本文地址:http://com.8s8s.com/it/it21362.htm