3 ms·
Controversial prediction: the web/applications will largely calcify around TypeScript/React/Node.js/Electron. Reasons: 1. It's...already happening. (See: job
by a_wild_dandan 2y ago
Controversial prediction: the web/applications will largely calcify around TypeScript/React/Node.js/Electron.
Reasons:
1. It's...already happening. (See: job listings, big web platforms, popular desktop apps.)
2. Deploying one unified codebase on the web, mobile, and all major desktops is a phenomenal value. Nobody cares that HN people hate the lack of native controls, slower performance, memory usage, whatever. Good enough is good enough.
3. Vastly less friction hiring from the world's largest dev pool and onboarding them to codebases written with familiar tech.
4. TypeScript's system blow away most other type systems, and sharing them between front/backends is a big deal.
5. Node.js can do nearly anything, is fast (enough), and pulls tools from the largest community of packages on Earth.
6. UI frameworks often heft around piles of heavy abstractions. Nobody wants to learn yet another awkward, shitty programming language that you invented with your templating system. Or the heap of classes needed to do basic things "properly." React avoids this junk and stays simple -- write everything in pure TypeScript (no templates!), declaratively, with a minimal lib. KISS.
To save time replying to common misconceptions: No, JSX is not templating; Yes, tech/tool competitor ABC exists -- TS/Node/React's momentum will slowly kill it; If you like kitchen-sink frameworks, plenty of extremely popular/polished/active ones exist for making SPAs, MPAs, and mixtures between using React; Yes, programming problem space XYZ won't adopt this stack due to particular constraints, you're missing the point;
There, hopefully I pissed off everyone with my overly snarky and opinionated position. I deserve the hate. (I'm still right, tho.)
- eYrKEC2 2y agoI'm liking the standardization in web. I think it's possible that you'll see something in web like you see with C/C++. D is better than C++, but it isn't compelling enough to jump. You need a very compelling set of features to leave the very comfortable, though dangerous, home of C/C++ for the domain that it excels in. With web, you'll need compelling features to leave the comfortable home of Typescript + React.
- Tommah 2y agoYou're right about D, but Rust is drawing some people away from C and C++. Something may emerge that will do the same on the JS front-end. In fact, I'd say that the TypeScript/React combo is more susceptible to being replaced than C and C++ are. There are many large C/C++ codebases that represent many man-years of work and won't be rewritten or thrown away any time soon. JS front-ends don't have that kind of longevity. Think about how many web startups just fizzle out, and their code just goes away.
- J_Shelby_J 2y agoAn actual controversial opinion: a big project will successfully use a Rust web framework like Dioxus rather than JS. People will take note that they can build their entire stack in a single language, and deploy it to any device that supports webview as a tiny binary. No electron. Slowly, the economics of this simplicity chips away at JS until one day rust can interact with the DOM directly and JS is relegated to legacy.
- yawaramin 2y ago> Controversial prediction:...It's...already happening This is not a controversial take, it is just the status quo. > Deploying one unified codebase on the web, mobile, and all major desktops is a phenomenal value. Yeah, except when it doesn't work because of fun cross-platform incompatibilities like 'React Native Toast library doesn't support web'. > Vastly less friction hiring from the world's largest dev pool and onboarding them to codebases written with familiar tech. Sure, if you don't have to think about legacy codebases full of class components, hooks, Flow.js, and other technologies, and only have to care about the latest and greatest React version, it's all good. > TypeScript's system blow away most other type systems, In complexity, and compile times, sure. There are simpler and more powerful type systems out there, eg ReScript. > Nobody wants to learn yet another awkward, shitty programming language that you invented with your templating system Agreed, and it's my opinion that everyone should use HTML rendering libraries in their chosen programming language. > React avoids this junk and stays simple -- write everything in pure TypeScript (no templates!) Sure, if you don't count JSX as a 'template' with some 'awkward' syntax, like `className` etc. > No, JSX is not templating ...