Loading... # 二十五年计算生涯回忆录 # 一、新闻概述 ## 1. 标题 二十五年计算生涯回忆录 ## 2. 发布时间 2026 年 2 月 6 日 ## 3. 来源 Susam Pal 个人博客 susam.net # 二、核心内容 ## 1. 事件摘要 ### A. 主要内容 Susam Pal 回顾自己从事软件开发 25 年来的经历,分享了七个富有启发性的技术故事。这些故事更关注人与技术的关系,而非技术本身。 ### B. 核心亮点 - 从大学实验室的第一次网页开发体验 - 处理器复位向量的探索如何改变了同学的思维方式 - 在银行系统开发中学习 PKI 和 MITM 防护 - 面对意大利面条代码时的技术成长 - 机顶盒动画开发的挫折与收获 - 职业生涯中的导师影响 - CTF 竞赛中的自我认知 ## 2. 关键信息 ### A. 职业跨度 - 从 2001 年大学时期到 2026 年 - 涵盖从学生到资深工程师的职业历程 - 经历多种技术栈:汇编、Java、C/C++、Python、Go ### B. 技术领域 - 网页开发 - 系统编程(8086 汇编) - 银行安全系统(PKI、数字签名) - 嵌入式开发(机顶盒) - 数据库系统 - 微服务架构 # 三、详细报道 ## 1. 查看网页源代码 ### 故事背景 2001 年,作者刚进入大学,在计算机实验室上网时偶然访问了 susam.com 网站。 ### 关键经历 - 一位高年级学生教会他使用 Internet Explorer 的"查看源代码"功能 - 十分钟的教程展示了 HTML 的基本原理 - 使用 FONT 标签(当时常见)编写了第一个网页 ### 影响 这次简短的 encounter 使网络世界变得不再神秘,激发了作者创建个人网站的兴趣。虽然最终无法注册 susam.com 域名(被一家土耳其餐厅使用),但获得了 susam.net 域名,开启了他维护个人网站的终身爱好。 ## 2. 处理器复位向量 ### 技术背景 作者在 Intel 8086 微处理器上编写电梯控制程序时,回想起课堂上学习的知识:当 8086 处理器复位时,CS:IP 被设置为 FFFF:0000。 ### 实验过程 ``` C:\>DEBUG -G =FFFF:0000 ``` 机器立即重启。这个简单的实验证明了复位向量位于物理地址 FFFF0。 ### 意外影响 一位每次都考第一名的同学观察到这个实验后,深受触动。他表示: - 自己虽然成绩优异,但缺乏作者那样的好奇心 - 从来不会想到将课堂上学的小细节亲自测试 - 决定不再追求第一名,而是像作者一样探索和实验 ### 结果 这位同学确实履行了承诺,此后虽然仍保持前十名,但从未再得第一名。这个故事展示了好奇心和实验精神对学习方式的影响。 ## 3. 中间人攻击 ### 职业转折点 2006 年,作者从技术支持团队转岗到架构团队(Archie),负责开发和维护电子银行产品的 Web 框架。 ### 面试经历 面试官询问如何防止 MITM 攻击。作者承认不知道 MITM 是什么。面试官解释是"Man in the middle"(中间人)后,立即指出: - 需要学习 PKI(公钥基础设施) - 需要了解 MITM 攻击 - 首个任务是为企业银行产品构建数字签名功能 ### 学习与成长 作者在接下来的几周内: - 阅读关于 PKI 的 RFC 文档 - 学习公钥密码学标准 - 使用 Bouncy Castle 开源库实现数字签名功能 ### 长期影响 - 这是作者的第一个真正的工程工作 - 遇到了一位优秀的导师 - 编写的代码被数百家银行和数百万用户使用 - 近二十年后,该产品仍在运行,作者偶尔作为客户还能看到自己编写的 HTML 代码痕迹 ## 4. 意大利面条代码 ### 问题背景 2007-2008 年,作者在为 OpenTV 机顶盒开发小部件时,遇到了难以调试的崩溃问题。代码充满了可疑的指针操作,典型的意大利面条代码。 ### 技术主管的帮助 - 作者将代码打包发送给技术主管 - 主管仅用五分钟就找到了指针 bug - 这个效率让作者感到敬畏 ### 职业反思 这次经历让作者意识到: - 虽然热爱计算和编程,但距离成为一名优秀的软件开发者还有很长的路要走 - 需要提高管理软件复杂性的能力 - 在后续年份中确实取得了显著进步 ## 5. 电视机动画小部件 ### 技术挑战 电信运营商希望在机顶盒上实现平滑的滑入滑出动画效果。机顶盒制造商断言:"不可能,我们的机顶盒不支持动画。" ### 技术实现 作者通过以下方式证明动画是可行的: - 清除小部件并略微不同的位置重复重绘 - 在模拟器上实现了流畅的动画效果 ### 合作冲突 - 机顶盒公司对这一成果反应愤怒 - 要求停止动画工作,因为这与他们的官方立场相矛盾 - 电信运营商代表介入,严厉批评机顶盒公司:"你们生产机顶盒,怎么可能不知道它的能力?" ### 现实检验 - 模拟器上的流畅动画在实际电视上明显卡顿 - 作者尝试了各种帧率、缓冲策略和渲染循环优化 - 最终,电信运营商决定宁可不要动画也不要糟糕的动画效果 - 机顶盒开发者最终被证明是正确的 ### 经验教训 这是一个关于硬件限制、技术乐观主义和工程现实的故事。 ## 6. 美好的祝福 ### 职业困惑 2009 年,作者在 RSA Security 工作约一年后,开始寻找更具智力刺激性的工作,特别是涉及数学和算法的项目。 ### 导师指导 RSA 实验室首席科学家 Burt Kaliski 博士与作者会面,提供了职业建议,帮助作者加入了一个非常合适的团队。 ### 六年成长期 - 在parser生成器方面工作 - 形式语言规范和实现 - PB 级数据库的索引和查询引擎 - 几乎每天都在学习新知识 - 与卓越的工程师共事,学到很多 ### 感恩与传承 多年后,作者写信感谢 Kaliski 博士。Kaliski 博士回复道: - "我的目标之一是能够为职业发展中的其他人提供鼓励,正如他人为我的成长投资一样,将美好的祝福从一代传递到下一代。" 这个故事展示了导师制度在技术职业中的重要性。 ## 7. CTF 积分榜 ### 竞赛背景 2019 年网络安全意识月,办公室组织了 CTF(夺旗赛)活动。挑战包括: - SQL 注入 - 不安全的密码学问题 - 二进制逆向工程 - 栈溢出利用 ### 意外表现 作者通常对限时竞赛感到紧张,但在同事劝说下参加了比赛,结果: - 在约八小时内解决了约 90% 的谜题 - 位居积分榜榜首 ### 自我认知的转变 两位年轻工程师同事讨论作者的表现时说: - "他当然做得很好。他有超过十年的 C 语言经验。" 这让作者意识到: - 在年轻时,解决难题被称为"聪明" - 现在,同样的表现被归因于"经验" - 技术成果现在自然地归因于经验,而非天赋 ### 未来展望 作者决定继续磨练技术技能,但希望通过: - 专业精神 - 职业道德 - 对同事的友善 来留下持久的印象。 # 四、影响分析 ## 1. 技术职业启示 ### A. 持续学习的重要性 - 从 HTML 到 PKI 到微服务,技术栈不断演进 - 好奇心比成绩更重要 - 实验精神推动技术理解 ### B. 导师制度的价值 - 一位好导师可以改变职业轨迹 - 指导与被指导是技术社区的传承 - Kaliski 博士的"传递祝福"理念值得学习 ### C. 技术现实的平衡 - 理论上可行的东西在实践中可能受限(如机顶盒动画) - 硬件限制是真实的工程约束 - 有时"不做"比"做得不好"更好 ## 2. 个人成长历程 ### A. 技能发展阶段 - 新手阶段:好奇探索,勇于实验 - 成长阶段:面对意大利面条代码的挫折,学习管理复杂性 - 成熟阶段:技术成果被视为经验的自然结果 ### B. 角色转变 - 从学生到资深工程师 - 从系统编程到应用开发 - 从被指导者到可能的指导者 # 五、技术时间线 ```mermaid timeline title Susam Pal 二十五年技术生涯时间线 2001 : 大学实验室首次接触网页开发<br>学习 HTML 基础 2001 : 处理器复位向量实验<br>影响同学思维方式 2006 : 加入银行架构团队<br>学习 PKI 和数字签名 2007-2008 : OpenTV 机顶盒开发<br>意大利面条代码教训 2008 : 机顶盒动画开发<br>硬件限制的现实检验 2009 : 在 RSA Security<br>Kaliski 博士的职业指导 2015 : 在数据库团队工作六年后<br>转向新的职业阶段 2019 : CTF 竞赛获得第一名<br>重新认识自己的技术地位 2026 : 回顾二十五年计算生涯 ```  # 六、各方反应 ## 1. 文章特点 - 没有提供智慧或教训 - 仅提供一系列故事 - 关注人而非技术 - 展示了技术职业生涯的真实面貌 ## 2. 核心主题 ### A. 好奇心驱动 - 查看 HTML 源代码的好奇心开启了网页开发之路 - 测试复位向量的实验精神 - 不断探索新技术的热情 ### B. 人际关系 - 高年级学生的十分钟教学 - 技术主管的五分钟代码审查 - Kaliski 博士的职业指导 - 同事之间的技术讨论 ### C. 职业成长 - 从天真好奇到成熟专业 - 从追求聪明到重视专业精神 - 从技术成果到人文关怀 # 七、相关链接 ## 1. 作者相关 - Susam Pal 个人博客:susam.net - GitHub:github.com/susam - 文章"Good Blessings"(关于 Kaliski 博士的故事) ## 2. 技术参考 - Bouncy Castle 加密库 - PKI(公钥基础设施) - MITM(中间人攻击) - OpenTV 机顶盒平台 - CTF(夺旗赛)安全竞赛 *** ## 参考资料 1. [Twenty Five Years of Computing - Susam Pal](https://susam.net/twenty-five-years-of-computing.html) 最后修改:2026 年 02 月 09 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏