去犯错吧

Keep learning mindset, and keep feeding your curiosity.

去犯错吧
Photo by Lerone Pieters / Unsplash

从"stupid"代码中学到的

最近读到一篇文章,作者分享了一个有趣的观察:他发现自己越来越不敢写"愚蠢"的代码了。这让我深有共鸣,也让我开始反思自己在编程路上的变化。

我们都写过愚蠢的代码

回想起刚开始学编程的时候,那时的我们无所畏惧。不知道什么是"最佳实践",不懂什么叫"代码异味",更不会纠结于设计模式是否恰当。我们只是单纯地想要实现某个功能,然后就开始写代码。

那些代码可能:

  • 变量命名很随意
  • 逻辑结构很混乱
  • 没有考虑边界情况
  • 重复代码到处都是

但是,那些"愚蠢"的代码教会了我们很多东西。每一次debug,每一次重构,每一次"这样写为什么不行"的困惑,都在帮助我们成长。

随着经验的积累,我们学会了什么是好代码,什么是坏代码。我们开始在意代码的优雅性、可维护性、性能表现。这些本身都是好事,但不知不觉中,它们也成了我们行动的枷锁。

现在的我们可能会这样:

  • 想要尝试一个新的API,但担心写出的代码不够优雅而迟迟不动手
  • 有个小想法想要实现,但觉得"太简单了"、"没意义"而放弃
  • 看到新的工具或框架,但担心"不成熟"、"可能有坑"而不敢尝试

我们变得小心谨慎,这在工作中可能是好事,但在学习和探索中,这种小心谨慎可能会阻碍我们的成长。

当我看到一些资深程序员对AI编程工具的排斥时,我想到了一个类似的问题。他们的担忧是可以理解的——经过多年的历练,他们对代码质量有很高的标准。但这种排斥也让我们失去了一些机会。

AI工具确实可能生成"愚蠢"的代码,可能需要大量的调试和修正。但同时,它也能够:

  • 一分钟完成我们一天才能写完的功能框架
  • 让我们快速验证想法的可行性
  • 帮助我们探索不熟悉的领域
  • 给出我们没想到的解决思路

关键不在于代码是否完美,而在于它能否帮助我们更快地学习和迭代。

也许是时候重新拥抱那些"愚蠢"的代码了。不是说我们要降低标准,而是要给自己更多试错的空间:

允许自己写出不完美的代码

  • 先让它工作,再让它优雅
  • 有一个可运行的版本比完美的计划更有价值
  • 不完美的实现是改进的起点

允许自己尝试新工具

  • 即使它可能有bug,即使文档不完善
  • 通过实际使用来理解工具的优缺点
  • 在试错中积累真实的经验

允许自己做"没意义"的项目

  • 写一个简单的股票查看器来学习Streams API
  • 做一个励志语录生成器来尝试新的运行时
  • 这些"没意义"的项目往往能带来意想不到的收获

原文作者提到了一个重要观点:保持学习的心态,保持好奇心。这意味着:

不要让经验成为负担

  • 经验应该帮助我们更快地识别和解决问题,而不是阻止我们尝试新事物
  • 对自己宽容一些,就像对新手程序员宽容一样

享受编程的过程

  • 代码不一定要漂亮才有价值
  • 有时候最重要的是动手去做,去感受,去学习

持续迭代,持续改进

  • 写出"愚蠢"的代码 → 发现问题 → 改进优化 → 学到经验
  • 这个循环比永远不开始要好得多

借用原文的话:"没有愚蠢的代码,只有代码。"

每一行代码都是我们探索的足迹,每一次犯错都是我们成长的机会。不要因为害怕写出"愚蠢"的代码而停止尝试,不要因为担心不完美而永远不开始。

去犯错吧,去写那些"愚蠢"的代码吧。

在这个快速变化的技术世界里,保持好奇心和学习的热情比写出完美的代码更重要。让我们重新找回初学编程时的那份勇气,去尝试,去犯错,去成长。

毕竟,最愚蠢的代码,是你因为害怕愚蠢而永远不写的那些代码。