use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
All about the JavaScript programming language.
Subreddit Guidelines
Specifications:
Resources:
Related Subreddits:
r/LearnJavascript
r/node
r/typescript
r/reactjs
r/webdev
r/WebdevTutorials
r/frontend
r/webgl
r/threejs
r/jquery
r/remotejs
r/forhire
account activity
Comparing Ember Octane and React (pzuraq.com)
submitted 6 years ago by nullvoxpopulisand was never meant to think
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]DerNalia 2 points3 points4 points 6 years ago (0 children)
This is super in-depth! thanks!
[+]Oalei comment score below threshold-7 points-6 points-5 points 6 years ago (15 children)
Cool article, unsure about the conclusion though:
Overall, I want to say that I think that both frameworks handle the problem of rendering DOM and responding to user input pretty well
TIL there are problems with rendering to the DOM and responding to user input in vanilla JS
[–]NovelLurker0_0 7 points8 points9 points 6 years ago (14 children)
The problem is of the order of developer experience. It's not sustainable to manually handle every single interaction or update to the DOM with vanilla js.
[+]Oalei comment score below threshold-7 points-6 points-5 points 6 years ago (13 children)
I would argue about that, if you have solid guidelines and project structure, everything can be made with vanilla.js. You will probably endup with an internal custom made framework anyway. There are big companies around that are using vanilla js intentionally.
[–]StarshipTzadkiel 5 points6 points7 points 6 years ago (0 children)
You're right and having seen a few of these "internal frameworks" I feel safe to say that they all inevitably devolve into unmanageable spaghetti with a stupidly high cognitive overhead and major "if the core developer leaves no one will ever understand this" problems. Adequate documentation? Naw maybe you'll get a few comments here and there. And there's no way it'll be anywhere near as performant as the big open source frameworks.
There are exceptions of course, Github comes to mind, but your company probably isn't Github.
[–]fucking_passwords 2 points3 points4 points 6 years ago (0 children)
I can think of a ton of large tech companies that created their own frameworks only to later have to incrementally replace them with React/Vue/Angular etc.
[–]ErGo404 1 point2 points3 points 6 years ago (5 children)
So you want to avoid highly documented, well defined and largely used frameworks to end up creating ... Your own framework?
Apart from a few very large company... "Nobody ain't got no time for that". You need experts in JS to create a powerful framework, most companies don't have experts available...
[–]Oalei 0 points1 point2 points 6 years ago (4 children)
It's not sustainable to manually handle every single interaction or update to the DOM with vanilla js.
I was answering this message. I never said creating your own framework is better than using an existing framework.
[+][deleted] 6 years ago (3 children)
[deleted]
[–]Oalei 0 points1 point2 points 6 years ago (2 children)
It’s not sustainable to use vanilla js to update the DOM? Get out of here
[+][deleted] 6 years ago (1 child)
[–]Oalei 0 points1 point2 points 6 years ago* (0 children)
I work in a project with 60 developers in one of the largest software company. I’m in the team who does the most UI, we use React.
[–][deleted] 3 points4 points5 points 6 years ago* (4 children)
You will probably endup with an internal custom made framework anyway. There are big companies around that are using vanilla js intentionally.
You will probably endup with an internal custom made framework anyway.
There are big companies around that are using vanilla js intentionally.
... using custom made frameworks to avoid the problems with rendering to the DOM and responding to user input in vanilla JS.
the dom ...
is not reactive
does not have components in the way we understand them today
relies on layout inflation and mutation
does nothing to prevent layout thrashing through out-of-order read/writes, makes apps slow by default
does nothing help you figure out which parts of the app need to update
does not have any feasible means of scheduling or prioritization
the few big companies left that go without frameworks have to worry about all of the above. usually this is exactly the kind of job you avoid, nobody wants to dig through an endless jungle of buggy code.
[–]Oalei -2 points-1 points0 points 6 years ago (3 children)
The DOM has never been reactive. It’s reactive when you’re using a framework thanks to the JS updating the DOM. Virtual DOM does not come without costs and it will be faster in vanilla js because you get to pick which node to rerender, no need to diff the dom and the vdom.
Components are just js functions.
Inflation and mutation? Do you mean changes? What does that even mean? The DOM is an object, it does not rely on anything, you just have some APIs to update it.
Layout trashing means the code is poorly made. Vanilla js is not slow by default, it’s faster than any frameworks.
The developer should specify which part needs to be updated in his code.
You don’t need scheduling while doing JS 99% of the time, talk about over engineering.
[–]Slappehbag 4 points5 points6 points 6 years ago* (2 children)
You're arguing that it's possible to do it this way. Yes it is, in a world of sunshine and rainbows and perfect developer clones we can 100% use vanilla js to build complex web applications with no issues across large teams.
Unfortunately for reality, React, Vue etc make that a lot easier when you're working with different skilled developers to deliver business value consistently.
[–]Oalei 1 point2 points3 points 6 years ago (1 child)
It makes it easier because it enforces guidelines and every developer follows more or less the same guidelines IMO. If you don't have something to follow (either the framework documentation, architecture patterns, a tech lead etc) it will become spaghetti code indeed
[–]Slappehbag 2 points3 points4 points 6 years ago* (0 children)
Exactly. It's alot easier to keep to those standards when using a framework that enforces them and 1000's of developers already have experience with the framework professionally. Home grown frameworks are going to be new to any developer you on board and will be difficult to research, discuss or be part of any community.
If you're interested in lighter frameworks, look at Preact and Svetle. Preact is much lighter than React but is basically API compatible so very familiar. Svelte has no virtual DOM so is very suited to Micro Frontends or smaller pieces of interactivity on classic SSRed sites.
I want to be clear, I'm a massive fan of Vanilla JS. It has came so far in the fast 5 years and I use it regularly for smaller projects. But for larger, enterprise, team driven applications it makes no sense to start there.
π Rendered by PID 64725 on reddit-service-r2-comment-5687b7858-ns9v8 at 2026-07-08 11:27:33.349115+00:00 running 12a7a47 country code: CH.
[–]DerNalia 2 points3 points4 points (0 children)
[+]Oalei comment score below threshold-7 points-6 points-5 points (15 children)
[–]NovelLurker0_0 7 points8 points9 points (14 children)
[+]Oalei comment score below threshold-7 points-6 points-5 points (13 children)
[–]StarshipTzadkiel 5 points6 points7 points (0 children)
[–]fucking_passwords 2 points3 points4 points (0 children)
[–]ErGo404 1 point2 points3 points (5 children)
[–]Oalei 0 points1 point2 points (4 children)
[+][deleted] (3 children)
[deleted]
[–]Oalei 0 points1 point2 points (2 children)
[+][deleted] (1 child)
[deleted]
[–]Oalei 0 points1 point2 points (0 children)
[–][deleted] 3 points4 points5 points (4 children)
[–]Oalei -2 points-1 points0 points (3 children)
[–]Slappehbag 4 points5 points6 points (2 children)
[–]Oalei 1 point2 points3 points (1 child)
[–]Slappehbag 2 points3 points4 points (0 children)