关于 FE 生态系统的一个(谦逊的)新提议
1 分•作者: laphilosophia•6 个月前
多年来,我一直默默专注于我的工作,但现在我感到有必要指出一个日益明显的问题。
1. 正确模型 ≠ 采用模型
历史事实:在前端生态系统中,胜出的不是那些创建最精确抽象的人,而是那些以最少摩擦提供“工作感觉”的人。
结果:正确的思维模型 → 采用率低,而错误但简单的模型 → 爆发式增长。
这并非巧合。
2. 为什么基于意图/确定性模型没有成功?
原因显而易见。
认知负担:
意图 + 有限状态机 + 时间线需要:
“我知道我在做什么”,“我正在设计生命周期”,“我正在有意识地产生状态。”
但对于当今的前端人群来说,这并非一个特性,而是一个障碍。因为生态系统奖励的是:快速演示、快速工作、快速简历加分
对于拥有这种背景的人来说:
有限状态机 = 恐惧,确定性 = 不必要,显式生命周期 = “过度工程”
UI 的容错率非常高:
在后端:错误的抽象 → 系统崩溃,金钱损失,数据损坏。
在 UI 中:加载指示器多转了一会儿,状态出现故障,用户刷新。
换句话说:前端错误可以被容忍很长时间。这使得糟糕的抽象得以生存。
React 的副作用:“隐藏,保存”文化:
React 做了这些:隐藏了生命周期,隐藏了并发,隐藏了协调。
结果:“即使你不理解它,它也能工作”的文化。
这种文化:培养了仪式性的死记硬背,而不是工程。
写一个 hook,如果它有效,那就好。但它为什么有效,它是如何工作的?没有人问。
“氛围编码者”的爆发不是原因,而是结果
因为这种情况并非始于 ChatGPT、Gemini、Cluade 或 Copilot。这些加速了现有的衰退。基础已经奠定。
已经有一群人不知道抽象是什么,不知道状态是什么,不知道并发是什么,但却记住了框架。
AI 只是做了这件事:它形式化了“我不需要思考”的感觉。
3. 不是框架,而是基础设施层
最大的错误是:“让我们构建一个新的 UI 框架。” 这会消亡,而且确实消亡了。
-> “https://dayssincelastjsframework.com/”
然而,如果创建了一个将自己定位为运行时层、意图引擎、状态协调器、提交解析器的结构,它就会成为 React、Vue 和 Svelte 等巨头之上的一个隐形层。
采用是这样的:“如果你想用就用”或者“如果你不想用就完全看不到它”。
4. 最重要的教训(也许是所有教训)
我清楚地写下这句话:“前端世界目前没有在产生工程,而是在产生类似传送带的行为。”
这就是为什么正确的抽象不会立即获胜,但它不可避免。
因为:UI 变得越来越有状态,AI 交互正在增加,并发是不可避免的。
在这一点上:“加载指示器 + hook”模型将会崩溃,人们将不得不再次问“为什么?”。
而且是的:“在这种混乱中呼吁标准是毫无意义的。”
但当从正确的层、正确的问题和正确的痛点入手时,这种模型不可避免地会创造价值。
这与炒作无关,而与耐心有关。
---
说了这么多,我意识到有抱怨,但解决方案在哪里?
我打开了一个 GitHub 仓库,并添加了一个“AI 支持的”RFC 提案。欢迎任何想加入的人参与。
谢谢。
https://github.com/laphilosophia/temporal-intent-resolution
查看原文
For many years, I focused quietly on my work, but now I feel compelled to point out a problem that is becoming increasingly apparent.<p>--<p>1. Correct Model ≠ Adopted Model<p>Historical fact: In the frontend ecosystem, the winners aren't those who create the most accurate abstraction; they're those who provide the “feel of working” with the least friction.<p>The result: correct thought model → low adoption and incorrect but easy model → explosion.<p>This is no coincidence.<p>2. Why Didn't Intent-Based / Deterministic Models Succeed?<p>There are several obvious reasons.<p>Cognitive Tax:<p>Intent + FSM + timeline requires:<p>“I know what I'm doing,” “I'm designing the lifecycle,” “I'm consciously producing the state.”<p>But for today's FE crowd, this isn't a feature, it's a barrier. Because the ecosystem rewarded: quick demo, quick job, quick CV line<p>For someone with this profile:<p>FSM = fear, determinism = unnecessary, explicit lifecycle = “overengineering”<p>Failure Tolerance is Very High in UI:<p>In the backend: wrong abstraction → system crashes, money is lost, data is corrupted.<p>In the UI: the spinner spins a moment too long, the state glitches, the user refreshes.<p>In other words: Frontend errors can be tolerated for a long time. This has allowed bad abstractions to survive.<p>React's Side Effect: The “Hide, Save” Culture:<p>React did this: hid the lifecycle, hid concurrency, hid reconciliation.<p>Result: a “it works even if you don't understand it” culture.<p>This culture: grew ritual memorization, not engineering.<p>Write a hook, if it works, fine. But why does it work, how does it work? No one asks.<p>The Vibe-Coder Explosion is Not a Cause, but a Consequence<p>Because this situation didn't start with ChatGPT, Gemini, Cluade or Copilot. These accelerated the existing decay. The groundwork was already laid.<p>There was already a crowd that didn't know abstraction, didn't know what state was, didn't know what concurrency was, but had memorized the framework.<p>AI just did this: it formalized the feeling of “I don't need to think.”<p>4. Not a Framework, but an Infrastructure Layer<p>The biggest mistake was: “Let's build a new UI framework.” This dies, and it did die.<p>-> “https://dayssincelastjsframework.com/”<p>However, if a structure is created that positions itself as a runtime layer, intent engine, state coordinator, commit resolver, it becomes an invisible layer above giants like React, Vue, and Svelte.<p>Adoption comes like this: “Use it if you want” or “Don't see it at all if you don't want to.”<p>5. The Most Important Lesson (Perhaps All of Them)<p>I'm writing this sentence clearly: “The frontend world is not producing engineering right now; it's producing conveyor belt-like behavior.”<p>That's why the right abstraction doesn't win immediately, but it is inevitable.<p>Because: UIs are becoming more stateful, AI interaction is increasing, concurrency is inevitable.<p>At this point: the “spinner + hook” model will collapse, and people will have to ask “why?” again.<p>And yes: “It's pointless to shout for standards in this mess.”<p>But when approached from the right layer, with the right problem, and the right pain point, this model inevitably creates value.<p>This isn't about hype; it's about patience.<p>---<p>After all these words, I realized there's complaint, but where's the solution?<p>I opened a GitHub repo and added an “AI-supported” RFC-Proposal. Participation is open to anyone who wants to join.<p>Thank you.<p>https://github.com/laphilosophia/temporal-intent-resolution