苹果II上着名的电子表格软件就是VisiCalc,开发者是丹·布里克林(DanBri)和他的好友鲍伯·弗兰克斯顿(BobFrankston)。
VisiCalc设计想法的萌芽是发生在1977年,当时布里克林已经离开之前工作的DEC公司,正在哈弗商学院攻读工商管理硕士。这期间,最令布里克林痛苦的是导师布置的一些课外作业,都是一些单调而乏味的填写单据、账目和统计表格的事情,不但毫无乐趣可言,而且一不小心还容易出错。会玩计算机的布里克林自然不愿意忍受,他很快就瞄上了学校的小型机,打算把这些麻烦的工作交给来计算机来处理,可是他发现不同的财务问题需要不同的计算方法,需要常常重新编程,于是讨厌重复的布里克林有了编写一个通用程序的想法。
1978年春季,布里克林学会了流行的BASIC语言,充满创作激情的他决定开始自己的程序设计,这次他想先从微机上开始。当时流行的微机主要有克摩多的PET、唐迪的TRS-80、苹果公司的苹果II,由于彼此之间不能兼容,所以初期的选择很重要。最后布里克林选中了苹果II,倒不是苹果II性能好到哪去,只是可怜的布里克林当时只能借到一台苹果II。微机到手以后,布里克林的程序编制工作正式开始,第一个版本是用BASIC语言编写,虽然速度慢得可以在运算期间泡咖啡喝,但已初步具备了电子表格的基本特征。
再想让程序运行速度有较大的改善,只能考虑用汇编了,可是布里克林在这方面并不擅长,这时他想起自己的好友弗兰克斯顿来。布里克林把自己的想法告诉了弗兰克斯顿,早就有意创业的弗兰克斯顿欣然同意,两人在1979年初成立了一间名叫软件艺术(SA)的小公司,共同改进布里克林手上的程序。两人分工协作,努力了两个多月,总算写出软件艺术公司的第一款商业软件。软件编写出来之后,两人给这个软件起了个“VisiCalc”的大名,“Visible”是“可视的”而“Calcute”是“计算”,两单词斩头去尾再叠加,所谓VisiCalc”,即“看得见的计算”也。
不久之后,VisiCalc在个人软件公司的老板费斯特拉(D.Fylstra)帮助下正式推向商业市场,经过初期销售的平淡,VisiCalc很快在众多公司财务人员之间流行了起来,连带着促进了苹果II的销售,到1980年已经有超过两万五千台苹果机被主要用来运行这种电子表格。
……
当然这些都是存在于IT史话之中的情况,张乐行并不太清楚,他只知道VisiCalc是苹果II上最流行的电子表格软件,当年研究苹果II模拟器时也分析过这款软件,现在有了真实的苹果II,张乐行忍不住想重温一次。
试用过随机的电子表格软件VisiCalc后,张乐行感觉和自己印象中差不多,软件功能比较简单,他曾经构想过的改进方案有了用武之地。张乐行曾见识过不少电子表格软件,从最早的CCED、Louts1-2-3,到之后差不多一统天下的MS-Execl,虽然这些软件对系统的要求远超过眼前这台苹果II,但是它们设计中的一些人性化考虑还是很有参考价值的。利用反汇编重温了一遍VisiCalc的源代码,回想着用过的众多电子表格软件,张乐行的心中慢慢有了一款电子表格软件的设计框架。软件设计开始……
两个多星期后,电子表格程序已经初步完成,大部分设想中的功能都基本完成,没实现的功能都是因为苹果II性能不够的缘故,每当这时张乐行就无比怀念尚在襁褓之中的IBM-PC机,当然他更怀念的是酷睿2双核。接下来就是软件的调试优化阶段,排排错、优化优化,过了差不多快两个星期,电子表格软件已经基本调试到最佳状态,在花上几天时间补上软件使用帮助后,终于大功告成,最后他随手给软件起了个名字叫做VisualForm。
完成VisualForm设计之后,张乐行又对随机的VisiCalc进行了简单改造,当然他最主要的想法是搞个软件来探探路,看看厂里对待电脑的态度。VisiCalc本身是不支持双字节的,再加上这台苹果II没有汉卡,当然没办法直接显示出汉字。好在张乐行当年研究苹果II模拟器时,看过一些有关苹果机软字库的设计资料,对他很有启发,里面很多代码现在都还记得一清二楚。
花了三天时间,张乐行设计出一个可拆卸式汉字处理模块,利用挂钩技术接管了VisiCalc的输出处理,成功将其主要界面中文化,并按照他了解到的一些有关厂里财务管理的情况作了适当的调整。只是由于缺少全面的字库和输入法,当然主要是张乐行实在没精力去一个点一个点的画汉字,光是把界面上显示的汉字画出来就把他累得半死,那几天眼睛看东西都好像是点阵组成的,所以只能显示固定的中文提示,还不能输入中文。
中文显示VisiCalc一出,当时就把赵叔给震住了。看着电脑屏幕上陌生又有些熟悉的文字(汉字点阵比较少,有些字的笔画只能做些调整),赵叔的嘴张得能塞下鸡蛋。
“天哪,乐行,你……你这是怎么搞出来的?”回过神来的赵叔马上抓着我问道。
“我没事做着玩的,从这些资料里面看到一些程序处理办法,试了试,没想到还真能显示出汉字来,就是汉字画起来太麻烦,就为了这几个字我差不多画了大半天。”张乐行又熟练地把赵叔的疑问推到不能说话的资料上,反正也厂里也没人能搞懂这个英文资料。