娱乐性编程

娱乐性编程——为了内在乐趣而不是金钱或用户去写软件——依然是学习、创造力乃至职业机会的重要来源,但许多开发者正在 AI 时代重新审视它的意义。评论者描述了业余编码的不同“风格”,从把问题解决带入日常生活,到不断开启边项目,并讨论大型语言模型等工具究竟是通过去除琐碎工作来增强乐趣,还是通过削弱手艺感与个人成就感来破坏乐趣。也有人强调现实中的张力:业余编码既可能预防也可能导致倦怠,个人项目常常未完工,而当机器如此轻易地生成代码时,手工软件的社会价值或“厉害程度”似乎也会被削弱。

“娱乐性编程”的整体反响

  • 许多读者都强烈认同文中描述的风格,尤其是“问题解决者”“修补匠”和“捣鼓者”。
  • 有几位提到,允许自己把项目留在未完成状态后,重新找回了乐趣;对他们来说,“项目”是学习或玩耍,而不是交付。
  • 也有人认为,“问题解决者”更多是一种人生立场,而不是一种“风格”:代码变成了像木工或缝纫一样的通用工具。

个人经历与动机

  • 多位老程序员讲述了自己在 70、80 年代从杂志上抄代码开始、从稀缺文档中学习汇编,最终把业余项目做成产品和职业的经历。
  • 有些人回忆说,当编程变成工作后,最初那种“魔法”消失了,于是他们尝试通过游戏开发、复古硬件或小众语言来重新点燃它。
  • 也有人强调,自己只是为了自己而做东西(定制工具、模拟器、视觉实验、Common Lisp 项目),有时是在与编程无关的职业下班后完成。

AI/LLM 与存在性问题

  • 立场分歧明显:
    • 有些人说 AI “杀死了”业余编码的美感或意义,削弱了边项目的独特性或潜在用处。
    • 另一些人说 AI 让他们的娱乐性编程更上了一层楼:更快的原型、更雄心勃勃的项目、让旧代码重获新生,或把琐碎任务外包出去。
  • 有几位认为,如果 AI 的存在会毁掉你为了好玩而写代码的欲望,那么你的动机至少有一部分是外在的。
  • 提出的担忧包括:
    • 被错误归功(“别人以为是 AI 写的”)。
    • AI 生成的代码库让手工编码的人觉得难以维护。
    • 害怕自己被降格为一个指挥工具的“肉身中继”,而不是进行创造。

分享、价值与受众

  • 有些人喜欢纯粹私人的捣鼓;另一些人则需要人类的认可,并觉得在线空间在 AI 时代变得更敌对或更冷漠。
  • 有人打了个比方:独自做着好玩的项目 vs. 构建别人喜爱的软件(类似于自我满足与生成性之间的区别)。

网站与展示体验

  • 多位用户抱怨导航:滚动方式别扭、进度不清晰、缺少明显的上一页/下一页控制。
  • 有些人后来才发现,这其实是一个 reveal.js 幻灯片,带有键盘快捷键和概览模式。
  • 建议包括更柔和的配色方案和更传统的文章排版。

职业、招聘与倦怠

  • 从历史上看,娱乐性编码曾被视为很强的招聘信号;有些人现在认为,能否驾驭 AI 将更重要。
  • 也有人警告说,“要求的业余爱好”只是伪装成简历充数,并不是真正的娱乐。
  • 还有几位指出,即使是令人愉快的编程也会消耗“精力点数(spoons)”,并可能导致倦怠;他们已经有意识地减少业余编码,或把它重新定义为非恢复性的玩耍。