TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Node.js Is a Salad Bar: On Boilerplate, Frameworks and Usability

11 点作者 modernserf大约 9 年前

1 comment

tomdale大约 9 年前
I think modernserf made some great points here, but didn&#x27;t take the argument to its logical conclusion: just use a (non-bespoke) framework.<p><pre><code> We might not be able to provide novice users with One True Framework, but we need to do better than boilerplate, both for their sake and for our own. If we can’t find a higher level abstraction to work with our own frameworks, how are we sure that we understand it ourselves? </code></pre> While competition is good, I think modernserf too quickly accepts that there can&#x27;t be a One True Framework for the web, or at least a handful. Windows, Mac OS, iOS and Android all have One True Framework, and their app ecosystems are doing well. We would be lucky to elevate the caliber of the average web app to that of the average iOS app.<p>In fact, it&#x27;s exactly this received wisdom—that the web is open, and therefore each app should handpick its own bespoke stack—is, in my opinion, the very thing setting us back. We spend so much time integrating pieces that were never designed to work together that we both waste time and hit a limit in the capabilities of the browser we can take advantage of.<p>The browser now supports offline storage, Service Worker, WebGL and more. But taking advantage of those things requires <i>code</i>. But not too much, because you need to preserve the instantaneous the web is known for. To balance this constraint, we&#x27;re going to need even more tools that help us parcel up our application into little pieces that can be delivered on demand, then cached as aggressively as possible on the user&#x27;s device. All of this requires code, and more importantly, it requires code that can <i>reason about the entire system</i>. At some point, we&#x27;re going to get to a place where bespoke frameworks simply don&#x27;t let you build the caliber of app that you can with Ember or Angular 2—there&#x27;s too much to do, and too much of it relies on a shared understanding of the entire system. When that happens, I hope the web community can finally accept that shared solutions are the only way to compete with native apps.