一位69岁美国老程序员的自述:使用Delphi开发了一款软件仅仅销售了半年赚够钱就退休了

news2024/12/1 0:28:08

我不确定谁会感兴趣,但你是点击按钮的那个人......所以我就说了。

我是一名 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++ 辩护,说它是最好的第一门编程语言,也没听说过有人要为上大学课程的好处辩护,因为大学老师的资质一般都不如高校教师。

有时候,少走弯路确实是有好处的。

加里-达比

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1159346.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Mojo::UserAgent模块做的一个快速爬虫项目

use Mojo::UserAgent;my $ua Mojo::UserAgent->new; my $proxy duoip:8000;# 使用爬虫IP $ua->proxy(http, $proxy) # 设置http爬虫IP->proxy(https, $proxy); # 设置https爬虫IPmy $res $ua->get(音乐网址); if ($res->is_success) {print $res->body; …

让企业的数据用起来,数据中台=数据治理?

加gzh“大数据食铁兽”,了解更多数据治理信息。 先说结论:数据中台是数据管理/治理的工具之一,数据治理是3分技术7分管理及运营。 数据中台的定义: 狭义的数据中台指在企业内部通过对数据半成品、算法、模型、工具等能力的积累&a…

apk反编译修改教程系列---简单去除apk联网权限 其他权限 无法自动更新等【四】

往期教程: apk反编译修改教程系列-----修改apk应用名称 任意修改名称 签名【一】 apk反编译修改教程系列-----任意修改apk版本号 版本名 防止自动更新【二】 apk反编译修改教程系列-----修改apk中的图片 任意更换apk桌面图片【三】 目前基本所有的apk都有联网设…

蚂蚁蚁盾发布实体产业「知识交互建模引擎」,最快10分钟定制AI风控模型

数字化起步晚、数据分散稀疏、专业壁垒高、行业知识依赖「老师傅」,是很多传统产业智能化发展面临的难题。2023年云栖大会上,蚂蚁集团安全科技品牌蚁盾发布“知识交互建模引擎”,将实体产业知识与AI模型有机结合,助力企业最快10分…

【C++】类的默认成员函数----const成员函数(超详细解析)

目录 一、前言 二、const成员函数 🍎const修饰类的成员函数 💦问题1 💦问题2 💦针对const成员函数的常考面试题(重点!!) 🍐取地址及const取地址操作符重载 三…

可靠的互联网兼职平台,平常可以做副业充实生活

在互联网时代,越来越多的人开始通过网络来寻找兼职副业的机会,能够更灵活地安排自己的时间,实现自己的收入增值。那么找到一个正规可靠的线上兼职平台就是一个比较重要的事情,这里分享几个正规靠谱的线上兼职副业平台,…

生物信息学 | 借助 AI 更高效地开启研究

生物信息学 (Bioinformatics) 是指利用应用数学、信息学、统计学和计算机科学的方法,研究生物学问题。 随着计算机科学技术的发展,AI 在解决复杂又颇具挑战的生物学研究问题方面,显露出极大的优势,进一步加速了传统研究范式的转变…

京东h5st逆向 h5st代码之拓展

知识点 node安装模块 crypto-js JavaScript 中的加密库 则更偏向于消息摘要算法、对称加密和简单的哈希函数,支持 AES、DES、SHA-1、HMAC 等诸多算法,适用于对客户端本地存储的数据进行加密、散列或签名处理等场景 axios 一旦安装成功,我们就…

uniapp原生插件之视频图片选择安卓原生插件

插件介绍 本地相册图片和视频多选Android扩展原生插件 插件地址 视频图片选择安卓原生插件 - DCloud 插件市场 超级福利 uniapp 插件购买超级福利 插件申请权限 存储卡读写权限 manifest.json权限列表 /* android打包配置 */"android" : {"permission…

python和java区别

1.java需要javac编译为.class文件,用java运行,定义的类需要与文件名相同;python能直接运行;不过,现在java的jdk中能直接使用java直接运行.java文件了! 2. java声明变量数据类型,使用int a 8&am…

k8s调度约束

List-Watch Kubernetes 是通过 List-Watch的机制进行每个组件的协作,保持数据同步的,每个组件之间的设计实现了解耦。 List-Watch机制 工作机制:用户通过 kubectl请求给 APIServer 来建立一个 Pod。APIServer会将Pod相关元信息存入 etcd 中…

Jetson NX FFmpeg硬件编解码实现

最近在用Jetson Xavier NX板子做视频处理,但是CPU进行视频编解码,效率比较地下。 于是便考虑用硬解码来对视频进行处理。 通过jtop查看,发现板子是支持 NVENC硬件编解码的。 1、下载源码 因为需要对ffmpeg进行打补丁修改,因此需要编译两份源码 1.1、编译jetson-ffmpeg …

Polygon MidenVM中的recursive STARK verification优化

1. 引言 本文主要参考Bobbin Threadbare 2023年9月在ZK Summit 10上的分享 ZK10: Optimizing recursive STARK verification in Polygon Miden VM - Bobbin Threadbare。 本文基本内容框架为: STARK递归方法Miden需求及目标递归verifier开销Miden VM优化措施结果…

YOLOv7优化:独家创新(SC_C_Detect)检测头结构创新,实现涨点 | 检测头新颖创新系列

💡💡💡本文独家改进:独家创新(SC_C_Detect)检测头结构创新,适合科研创新度十足,强烈推荐 SC_C_Detect | 亲测在多个数据集能够实现大幅涨点 收录: YOLOv7高阶自研专栏介绍: http://t.csdnimg.cn/tYI0c ✨✨✨前沿最新计算机顶会复现 🚀🚀🚀YOLOv7自研…

JS加密/解密之XX数据后台列表JS加密

目标地址 ZHkuZmVpZ3VhLmNu 需求 老朋友联系到我,希望能自己做一个方便读取的小工具给公司内部用,承诺绝不外传。但是获取接口数据的最后一步遇到了问题,响应回来的数据做了大量加密,无法识别。 代码分析 该站代码做了大量的…

MS-VS C# 简单开发记录(GUI)1 -从一个菜单点击打开新窗口

前言: C# 的使用,似乎在机器视觉的集成项目里面变得越来越多了,笔者无奈的熟悉起来这个环境,不过,据说,如果做界面的设计,C#的使用是异常方便的,有的不行了,做几个实例看…

如何在Linux命令行界面愉快进行性能测试?

本人在做性能测试的过程中,遇到一个问题,测试机选了一台Linux服务器,只有命令行界面。执行测试用例不是非常的灵活,有时候我需要改一两个参数添加一些日志,都需要重新打包部署,虽然自动化构建比较方便&…

坚持#第420天~阿里云轻量服务器内存受AliYunDunMonito影响占用解决方法

阿里云轻量服务器内存受AliYunDunMonito影响占用解决方法,亲测有效: Mobax好卡啊,那就直接在阿里云后台操作即可,阿里云后台也可以上传文件。 Navicat mysql好卡啊,那就直接在阿里云后台最上面帮助的右边有个数据库&…

vscode插件安装

Error Lens错误提示 One Dark Pro代码颜色主题

区块链与教育:颠覆传统,引领未来

区块链与教育:颠覆传统,引领未来 摘要:本文将探讨区块链技术在教育领域的应用及其潜在影响。通过介绍区块链技术的基本原理、教育领域的现状,以及区块链技术在教育中的实际应用案例,我们将展望一个去中心化、安全可信…