为何软件IT行业重视创新而不是稳定?

为何软件IT行业重视创新而不是稳定?用户为此受苦:用户体验差!

彼得-蒂尔有一句名言:"竞争是失败者的事"。

  • 如果没有必要,就不要把自己置于被迫竞争的境地。

我给年轻程序员的建议是,如果你想创建自己的编程语言,那么不要试图创建 Python 的子集,或者与现有语言表面上非常接近的语言。做你自己的事情。这样,您就可以按照自己的节奏和方向发展您的系统,而不会被您的语言必须与其他实现的性能、功能集或库生态系统相匹配的期望所束缚。

这篇文章讨论了创建软件系统替代实现的挑战和动态,重点是编程语言及其即时 (JIT) 编译器。作者从优化动态类型编程语言的个人经验出发,概述了替代实现经常陷入的陷阱,并就如何避免这些陷阱提出了自己的见解。

以下是文章的要点:

  • Crystal 语言:这篇文章讨论了 Crystal 语言,这是一种类似 Ruby 的语言,它选择与 Ruby 分道扬镳,并取得了有限的成功。作者指出,Crystal 与 Ruby 的相似性让用户感到困惑,因为它看起来像 Ruby,但却有很大的差异和不兼容性。
  • TruffleRuby 和 YJIT:作者将高性能 Ruby JIT TruffleRuby 与直接集成到标准 Ruby 实现 CRuby 中的另一种 Ruby JIT YJIT 进行了对比。YJIT 决定在 CRuby 中开发,这使其与 CRuby 的功能保持了 100% 的兼容性,从而得到了更广泛的采用。
  • PyPy 和 LuaJIT:文章以 Python 的 JIT 编译器 PyPy 和 Lua 的 JIT 编译器 LuaJIT 为例,指出这两个项目尽管在性能上有显著提高,但在应用上却遇到了困难。主要问题是这些项目难以跟上各自语言不断发展的标准,Python 的标准是 CPython,Lua 的标准是默认 Lua 解释器。

替代实现的挑战:作者指出,作为主流或典型系统的替代实现往往是一个失败的命题。这是因为替代方案总是在迎头赶上,试图在功能和性能上与典型系统相媲美。

作者认为,试图创建一个比经典实现更好的替代方案是一条艰难的道路,因为替代方案受制于经典项目设定的方向。作者建议,与其竞争,不如与规范系统集成,这样可能会更有成效。

这篇帖子提出了一个更大的问题:

  • 即该行业重视创新而不是稳定,我们都因此而受苦。

不幸的是,密码学 API 别无选择,只能随着缺陷的发现和修复而不断发展。

相关推荐
10年前端老司机1 分钟前
React 受控组件和非受控组件区别和使用场景
前端·javascript·react.js
夏晚星1 分钟前
vue实现微信聊天emoji表情
前端·javascript
極光未晚4 分钟前
TypeScript在前端项目中的那些事儿:不止于类型的守护者
前端·javascript·typescript
Rrvive6 分钟前
原型与原型链到底是什么?
javascript
極光未晚1 小时前
JavaScript BOM 对象:浏览器的隐形控制塔
前端·javascript·源码
天涯学馆1 小时前
网站秒变 App!手把手教你搞定 PWA
前端·javascript·面试
用户9272472502191 小时前
PHP + CSS + JS 数据采集与展示系统
javascript
小样还想跑1 小时前
axios无感刷新token
前端·javascript·vue.js
字节跳跃者2 小时前
为什么Java已经不推荐使用Stack了?
javascript·后端
字节跳跃者2 小时前
深入剖析HashMap:理解Hash、底层实现与扩容机制
javascript·后端