为何软件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 别无选择,只能随着缺陷的发现和修复而不断发展。

相关推荐
Whisper_Sy1 小时前
Flutter for OpenHarmony移动数据使用监管助手App实战 - 网络状态实现
android·java·开发语言·javascript·网络·flutter·php
新缸中之脑2 小时前
Weave.js:开源实时白板库
开发语言·javascript·开源
Amumu121382 小时前
Vue组件化编程
前端·javascript·vue.js
m0_637256583 小时前
vue-baidu-map添加了类型组件导致非常卡顿的问题
前端·javascript·vue.js
雨季6663 小时前
基于设备特征的响应式 UI 构建:Flutter for OpenHarmony 中的智能布局实践
javascript·flutter·ui
刘一说3 小时前
Vue开发中的“v-model陷阱”:为什么它不能用于非表单元素?
前端·javascript·vue.js
利刃大大4 小时前
【Vue】组件生命周期 && 组件生命周期钩子
前端·javascript·vue.js·前端框架
be or not to be6 小时前
JavaScript 对象与原型
开发语言·javascript·ecmascript
前端 贾公子6 小时前
Git优雅使用:git tag操作
javascript·github
她超甜i8 小时前
css省略号展示,兼容性强,js判断几行,不需要定位
javascript·css·vue.js