一个国外小老头,用被淘汰的编程工具,30年间开发了一个了不起的软件!

就是他,David Vacanti。

图片

1974年,David从科罗拉多州立大学获得电气工程学位,随后加入波音公司,主要设计各种各样的雷达,一口气干了21年。

1998年跳槽到霍尼韦尔公司,还是研究雷达,又干了19年。

可以说,David 一辈子都在和雷达打交道。

更让人称奇的是,他在1983年,开启了自己的副业,开了一家叫做“Vacanti Yacht Design”的公司(美国允许在职的人这么做吗?),专门开发出售船舶设计软件:PROLINES

图片

这个软件不断被维护,升级,如今PROLINES 已经40岁了,已经是一个成熟、稳定、强大的3D CAD程序,几乎可用于设计任何类型的船舶。

用PROLINES可以设计这样的船:

图片

这样的(赢得多次赛艇竞赛):

图片

这样的:

图片

PROLINES有多牛呢? 

小型船只设计是个非常小众的市场,用户只是业余爱好者,专业游艇设计师,PROLINES在80年代后期推出,一直不断发展和升级,全世界有超过3000个 PROLINES 安装, 可以说在全世界范围内培养了一批追随者。 

PROLINES 第一个引入了参数化船体设计概念。通过选择船体类型并输入一些基本的船体尺寸,可以在几秒钟内创建一个船体,这种输入“船体参数”的概念已被整个行业采用。

PROLINES 在内部使用 NURB(非均匀有理 B 样条曲线),这就可以创建任何可以想到的船体形状,并将其导出为 STL、DXF、IGES、GHS GF1、VPP 和其他文件格式。

PROLINES甚至成为美国大学土木工程师的一个标准工具。

David用来开发PROLINES的工具就是老古董IDE Delphi

图片

上世纪80年代末,David用Turbo Pascal 和Metagraphics编写了PROLINES,在DOS时代,GUI编程是非常困难的,他必须得自己创建下拉菜单,检测窗口中的点击事件、创建对话框窗口,这让David不胜其烦。

当1995年,Delphi发布时,David非常激动,Turbo Pascal 升级成了Object Pascal,并且提供了对GUI快速开发的能力,他意识到Delhpi能极大地改进PROLINES,立刻把产品开发升级到Delphi,并且一直坚持用Delphi开发,直到30年后的今天。

图片

Delphi 是 Borland出品的快速开发工具,在上个世纪90年代非常火热,它学起来比VC简单,编译出的代码又比VB快,人送外号“VB Killer”。

很多人喜欢Delphi,甚至胜过VB。

Foxmail(张小龙开发)、Total Commander、Skype、WinRAR、BeyondCompare等知名软件都是用Delphi开发的。

Borland这家公司很可惜,以Turbo Pascal、Trubo C/C++起家,打造惊世之作Delphi,后来推出C++ Builder、JBuilder,可以说一代程序员是伴随着Borland成长起来的。

但是在桌面应用转向Web应用的关键时刻,Borland受到了微软、开源的Eclipse、Java的巨大冲击,最终陨落,Delphi也落到了Embarcadero公司手中。

虽然Embarcadero还在推出Dlphi的新版本(最近的版本是2025年3月发布的12.3),但使用它的人群恐怕只剩下两种人:

1.铁粉

2.需要维护Delphi开发的应用,例如David

我在上一篇文章《Bill Gates 和 Linus Torvalds 同时推崇的编程语言》中讲了VB的简单,有位粉丝留言,说“简单,意味着你在末端,最早毕业的就是你”。

其实并不是这样,VB和Delphi都是使用起来简单,但是一点也不缺乏开发复杂应用程序的能力,VB和Delphi的极限依赖于程序员的编程极限

David通过PROLINES就发挥了Delphi的极限:生成复杂的公式和计算,强大的3D CAD绘图渲染能力,支持高DPI的显示器,这对CAD应用程序的精细设计至关重要。 

像David这样的程序员,不仅没有毕业,反而在自己的赛道中发展得越来越好,是小而美的典型。

David现在的生活很舒服,时不时开船出去转转。

图片

回到“祖籍”意大利西西里岛寻根问祖。(PS:Redis之父也生活在西西里岛)

图片

我不是鼓励大家现在去学Delphi,它太古老了,应用程序已经从桌面转向Web和手机,它已经不是开发这些应用程序的最佳选择了。

我们要思考的是,能否像David这样,结合自己的专业优势和爱好,用自己擅长的开发工具去开发一个软件,长期维护,不断打磨,最终成为细分领域的领先者。

这样长期、稳定的副业才是程序员梦寐以求的、真正的副业。

当然,想完成这样的事情,首先得有业余时间,其次得有自己的爱好,能达到这两点的中国程序员太少了。

此外,现在AI编程宣传得这么厉害,能不能生成PROLINES这样的专业软件呢? 我表示怀疑......

【源码免费下载链接】:https://renmaiwang.cn/s/gbu02 grep命令是一个强大的文本处理工具,在Linux系统中被广泛使用。它能够有效地搜索文件中的特定模式,并提供灵活的匹配方式以满足不同需求。作为全名是Global Regular Expression Print的软件,grep采用基于posix标准的正则表达式系统,支持基本功能和扩展特性。 在实际操作中,用户可以通过调整选项来控制搜索结果的表现形式。例如,“-c”选项可以仅显示符合条件的结果数量,“-i”则能实现不区分大小写的匹配效果。“-n”帮助展示包含目标模式的具体行号,“-s”则用于隐藏错误信息,而“-v”则与之相反,只呈现不符合条件的行。 正则表达式的核心在于元字符的应用。这些特殊符号赋予了grep强大的搜索能力,从简单的字符匹配到复杂的模式构建都能胜任。例如,“^”和“$”分别标识文本的起始和结束位置;方括号内部的字符可以进行范围匹配;转义操作允许用户解除默认含义的影响。 实践过程中,用户会发现部分正则表达式功能仅限于grep的基本版本,而更复杂的扩展需要借助egrep或pcre库的支持。此外,结合perl语言风格的正则表达式接口也能进一步提升搜索效率。 值得注意的是,在使用这些工具时,开发者需特别留意特殊字符的转义规则以及括号内的范围限定。通过深入理解和灵活运用这些机制,用户可以充分发挥grep的强大功能,完成各种复杂的文本处理任务。 综上所述,熟练掌握grep命令及其背后的正则表达式知识将显著提升文本处理效率和准确性。希望本文能为您提供有价值的参考和指导。
【源码免费下载链接】:https://renmaiwang.cn/s/uc6y9 在现代生活中,路由器扮演着不可或缺的角色,整合了多项服务器功能以极大地方便了网络管理与维护。然而,这种集成也可能引入网络安全性和稳定性的潜在风险。当路由器无法正确分配IP地址时,可能导致网络故障并影响局域网的正常运作。本文将深入探讨如何解决此类问题。遇到多数客户端无法获取IP地址或登录速度缓慢的情况,建议首先运行该系统的`ipconfig`命令检查配置设置。如果发现客户端无法从路由器获得IP地址,并排除了基本故障后,应关注路由器的状态。若交换机指示灯正常且无拥堵或死机现象,则可能与路由器的 DHCP(动态主机配置协议)服务出现故障有关。 DHCP 作为局域网中自动分配IP地址的关键组件,确保网络设备正确连接上因特网至关重要。当客户端首次接入网络时,会向 DHCP服务器发送一个 DHCP discover广播包以获取IP地址。在Windows系统中,默认情况下,若1秒内未收到响应,客户端将在几秒后尝试(共4次)。如果始终无法获得响应,将显示错误信息并提示用户等待5分钟后重新连接。当DHCP服务器无响应或未被客户端接受时,也会导致IP分配失败。深入分析 DHCP工作流程可发现潜在问题可能源于服务器未能做出适当回应或丢失了部分响应包。在确认网络硬件配置无误(如网线连通)后,问题很可能与 DHCP 服务器相关。大量客户端请求可能导致服务器资源耗尽,从而降低响应速度并引发网络拥塞现象。为提升整体服务质量,理想做法是增强服务器性能或增加服务器数量,通过专设不同功能的服务器来优化负载分配。对于预算有限的机构(如学校),购买额外设备可能不切实际,在这种情况下需要对现有架构进行优化以避免过载问题。潜在解决方案包括限制客户端连接数、调整 DHCP 租约时间或升级路由器硬件和软件性能,同时建议定期维护服务器以确保其
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值