我不确定谁会感兴趣,但你是点击按钮的那个人......所以我就说了。
我是一名 69 岁(截至 2008 年)的退休程序员(译者注:Delphi社区的一位网友说本文主人公已经在前几年去世,但是主人公的网站依然还能访问DelphiForFun Home),对本网站出现的所有主题都情有独钟。 我们住在弗吉尼亚州西南部蓝岭山脉的几英亩土地上。
我之所以热爱数学和科学,主要是因为保罗-贝德(Paul Bader)先生和罗伯特-韦勒弗(Robert Wellever)先生,他们是我在密歇根州芬顿高中时代的两位好老师。 遗憾的是,我从来没有再联系过他们,告诉他们我的感受。 如果没有他们,我可能就不会在密歇根州立大学的第一门编程课上学习 "Miliac"。"Miliac "是一个真空管巨无霸,我们通过在纸带上打孔来编程(Fortran语言)。 我们把纸带带到 Miliac,第二天连同输出纸带一起送回--我们把输出纸带带到打印机前,这样就可以打印结果,找出错误,再试一次。 如今,大多数程序员可能从未听说过 "桌面检查 "这个词。 在 24 小时周转的情况下,我们会变得非常熟练!
时光荏苒--我从 MSU 毕业后,在加利福尼亚州的 Rocketdyne 公司工作了几年,编写用于光谱分析的 Fortran 程序,试图找出 F2 火箭发动机不断爆炸的原因。 (几年后,F2 为第一枚土星火箭进入太空提供了动力)。 后来,我在 IBM 工作了几年,开发了 BPS Card Fortran,可以在早期的 System 360 计算机上运行。 我们没能幸运地在拥有磁带驱动器和 32KB 或 64KB 内存(kb=kilobytes=1024 字节)的 "大 "系统上工作--我们的编译器只能在 16KB 的系统上运行! 编译器读入一副 80 列的打孔卡片,然后在另一副卡片上打出编译代码。 我记得,编译器由 13 副较小的扑克牌组成--每副扑克牌都是编译器的一个阶段--这些扑克牌堆起来大约有一英尺高。 Fortran 源代码牌必须在第 1 阶段和第 2 阶段之间放入这副牌中。 谁要是掉了这副牌,谁就有祸了! 编译器阶段必须来来去去,而程序则留在内存中。 当时还没有发明磁盘驱动器。 天哪,写到这里,我觉得自己老了很多、
之后的几年里,我先后在德国、弗吉尼亚州的福尔斯丘奇和里士满工作,最后在沙特阿拉伯的阿美石油公司工作了 10 年,直到海湾战争爆发。 在此期间,我学习并使用了 Fortran、汇编、RPG、Cobol、C、Pascal 和 SAS 等编程语言。
在沙特期间,我在为硕士学位撰写论文时学习了 Turbo Pascal(Delphi 的前身)。 我和一位工程师朋友合作开发了 TurboExpert--一个诊断旋转设备问题的专家系统外壳。 TurboExpert 后来转换成了 Delphi,为我赢得了学位,吉姆和我也与一家公司签订了版税合同,该公司将产品销售了 12 年。 开发 TurboExpert 6 个月的收入让我们俩提前退休。 因此,你可以理解Delphi在我的心目中占有重要的一席之地。
多年来,我编写了许多拼图和游戏程序,"只是为了好玩"。 现在我有 8 个孙子孙女,我决定将其中的一些程序保留下来,以备他们有机会利用编程来培养批判性思维(也就是解决问题)的能力。 编程无疑是培养这些技能的最佳途径之一(在我看来,坚持不懈和 "分而治之 "是两大要诀)Z-Gantt时间管理进度计划甘特图软件。
所以,现在你可以理解本网站的一些动机了。 我对目前大学先修课程强调 C++ 以及即将转向 Java 感到不安,但也能理解。 他们的工作是反映大多数大学所教授的内容,这样孩子们就可以在大学课程中获得学分。 我还没听说过有人试图为 C++ 辩护,说它是最好的第一门编程语言。 我也没听说过有人要为 C++ 辩护,说它是最好的第一门编程语言,也没听说过有人要为上大学课程的好处辩护,因为大学老师的资质一般都不如高校教师。
有时候,少走弯路确实是有好处的。
加里-达比