编程如工艺:重返旧时练功房
Coding as Craft: Going Back to the Old Gym

原始链接: https://cekrem.github.io/posts/coding-as-craft-going-back-to-the-old-gym/

Shopify首席执行官呼吁在编码中“反思性地使用AI”,引发了关于AI在软件开发中作用的辩论。虽然AI可用于自动化诸如生成样板代码和总结文档等日常任务,但依赖AI进行核心编程活动,例如设计架构和解决复杂问题,可能会阻碍技能发展。作者主张采取更有目的性的方法,将AI作为合作者,而不是批判性思维和解决问题的替代品。 他用洛奇回到“旧健身房”的比喻来强调认知斗争在编码中的重要性。这种斗争,包括沮丧、实验和最终“顿悟”的阶段,可以培养深刻的理解并增强认知技能。通过设定AI使用的界限、练习手动编码、理解底层原理和迎接挑战,开发人员可以在利用AI效率的同时,保留编码作为一项技艺的本质,确保持续的成长和真正的专业技能。简而言之,用AI来消除枯燥的部分,但要将技艺掌握在自己手中!

Hacker News 的讨论围绕着 AI 在编码中应用增加的影响展开。用户 cjs_ac 对“下意识的 AI 使用”(reflexive AI usage)这一说法提出质疑,认为“下意识的”(reflexive)可能指盲目自动化,也可能指深思熟虑的反思,这源于他们在教学中对“反思性实践”(reflexive practice)的理解。Handprint4469 解释说,“下意识的”(reflexive)通常指自动化,与“反思性的”(reflective)实践形成对比。lm28469 指出许多 IT 工作并不需要高级思考能力。shinycode 则担心过度依赖 AI 会消除宝贵的解决问题过程,而这个过程正是学习和深入理解的关键。他们担忧,如果开发者失去这些技能,而 AI 又变得过于昂贵或不可靠,未来复杂的代码库将难以维护。总的来说,大家对在软件开发中用自动化工具取代人类创造力持谨慎态度。
相关文章
  • (评论) 2025-03-28
  • (评论) 2025-04-05
  • (评论) 2025-03-14
  • (评论) 2025-03-26
  • (评论) 2025-03-22

  • 原文

    Recently, Shopify’s CEO Tobi Lütke shared his thoughts on AI’s role in coding, stating that “reflexive AI usage is now a baseline expectation at Shopify.” The gist of his message was that AI is revolutionizing how we work, and everybody should jump on board this train or risk being left behind. I’m paraphrasing a bit, but not much – check out the post for complete context and content.

    This struck a chord with me, but not in the way he intended. In a Slack conversation with fellow Elm engineers, I found myself typing:

    Interesting timing. I just switched back to vim to get further away from AI interference in my coding. My last talk about AI had the subtitle “automate the boring parts” (inspired by that classic Python book), and that’s what it’s for for me.

    Coding, however, is not the boring part, it’s my craft and I want to enjoy it and stay sharp. Sure, asking questions and discussing topics with an LLM if that’s all you’ve got at hand is fine. But “reflexive AI usage” sounds like a diagnosis I don’t want next to my name.

    If people stop the occasional deadlock of grinding teeth, looking at a problem, crying, going for a walk, praying and screaming until suddenly it makes sense (and you learn something!), I’d call it severe regression, not progress.

    The more I reflected on this exchange, as well as other comments from my betters, the more I realized it connects to something deeper about our relationship with technology and craft. It’s time to talk about going back to the old gym.

    In Rocky III, there’s a pivotal moment when Mickey confronts Rocky about how he’s lost his edge: “You used to be like supernatural, but the worst thing happened that can happen to any fighter: you got civilized!”

    Mickey’s solution? “Let’s get outta here, back to the old gym!”

    This scene has stayed with me because it captures something profound about mastery and skill development. The “old gym” represents the raw, essential conditions where real growth happens. It’s not comfortable. It’s not luxurious. But it’s where the authentic work gets done.

    In the context of coding, our “old gym” is the mental space where we wrestle directly with problems, algorithms, and architectures without the cushion of AI generating solutions for us.

    Let me be clear: I’m not anti-AI. In fact, I find it incredibly useful – for the boring parts.

    AI excels at:

    • Generating boilerplate code
    • Summarizing documentation
    • Explaining complex concepts
    • Helping debug tricky error messages
    • Drafting unit tests
    • Formatting data

    But the core of programming – the thinking, the designing, the architectural decisions – these are the parts I want to preserve as my craft. These are the muscles I want to keep strong by training in the old gym.

    The Value of Cognitive Struggle