DHH:我为何退出科技运动


二十多年前,当 Ruby on Rails 推出时,我还是一个二十多岁的年轻程序员,深信任何尝试过我的堆栈的人都会接受它在解决 "Web问题 "方面的普遍优越性。于是,我走上了改革之路,试图用尖锐的论点说服未开化的大众。

在很长一段时间里,我都认为这是行之有效的方法。这就是为什么 Ruby on Rails 一飞冲天,成为有史以来最受欢迎的全栈Web框架之一,激发了无数的克隆,并为基于它的公司创造了数千亿的企业价值。

但我错了。这并不是这场科技运动想要的结果。

从早期开始,我和成千上万采用 Ruby on Rails 的程序员交谈过,你知道他们每个人都提到了什么吗?

  • 是那段最初的15 分钟博客视频
  • 视频中没有任何与其他解决方案的比较,也没有任何反对替代方案的具体论据。它只是展示了你能用 Ruby on Rails 做什么,A/B 对比自动在每个接触过它的程序员脑海中运行。
  • 视频中展示一些很棒的东西,让那些对现状不满意的人受到启发去看看。因为无论如何,只有这些人才能转变为你的支持者。

我从未见过一个对函数式编程等深爱不已的人被面向对象编程的论点所折服。

你根本无法让别人屈服,而且如果你尝试这样做,通常会适得其反。但是,你绝对可以吸引那些对现状不满意的人,让他们给另一种选择一个机会,只要你向他们展示如何操作,让他们自己总结如何让他们的编程生活变得更好。

我还认识到,程序员有许多不同的智力形态和规模:

  • 其中有些人会对函数式编程情有独钟,这就是他们的激情之路。
  • 另一些人则会喜欢虚幻的 JavaScript,放弃构建流水线也就释然了。
  • 还有一些人会在 Go 中找到自己的灵魂。这真是太棒了。

事实上,Web工作允许有如此多样化的生态系统选择,这是一个令人难以置信的功能,而不是一个错误。

我在 Ruby 中找到了我毕生的工作和激情。我有朋友在 Python、Elixir、PHP、Go 甚至 JavaScript 中找到了自己的工作和激情。这真是太好了!这就是我对你的全部期望。我希望你快乐。我希望你能找到最合适的语言,用最合适的构思模式,像 Ruby 一样,打开你的心扉,享受编码的美妙游戏。

这与仅仅说 "凡事有得有失,使用最有效的方法 "是不同的。在我看来,这有点逃避现实。并不存在一套普遍适用的权衡标准,能让某件事客观上 "最有效"。编程难题的一半在于如何与持久的动力源泉建立联系。如果我不得不整天为 Rust 编程,我也不会感到快乐(但我非常喜欢该社区中那些喜欢编程的人所开发的工具)。

这也并不意味着我们应该放弃对优缺点的技术讨论,但我认为,以这种方式进行讨论通常更有效:

  • 这是我喜欢的东西,为什么我喜欢它,看看我的代码,我的成果,看看它是否也能勾起你的兴趣 。

编程是一项美丽的游戏。如果让我在豪车和编程之间做出选择,我会毫不犹豫地放弃我拥有的所有豪车。

智力上的刺激,偶尔 "进入状态 "后的兴奋,都是对可可-香奈儿 "生活中最好的东西是免费的,其次才是非常昂贵的 "这句话的具体诠释。

编程是 "最好的东西 "之一,对西方世界的每个人来说几乎都是免费的(其他地方也越来越免费)。

因此,让我们尽己所能,以最能体现我们概念能力的姿势来玩这个美丽的游戏,并创造出一些美妙的代码。