React vs. Backbone in 2025

Toy Example and Validity of the Comparison

  • Many feel the article’s password-strength demo is too trivial; vanilla JS or jQuery would suffice, so it doesn’t illuminate real tradeoffs.
  • Critics argue it compares modern Backbone to modern React and then concludes “not much has changed in 15 years,” which they see as misleading.
  • Several point out that the Backbone snippet doesn’t even showcase its core strengths (models, collections) and duplicates markup, making it artificially weak.

Backbone at Scale vs React at Scale

  • Multiple commenters with experience on large Backbone apps describe them as hard to navigate, fragile, and prone to event spaghetti, memory leaks, and cascading state updates.
  • Backbone is seen more as a low-level utility layer that requires teams to invent their own architecture; without strong discipline, projects devolve quickly.
  • React is praised for making composition, state propagation, and refactoring large apps more predictable and approachable, including for new hires.

React’s Strengths: State, Unidirectional Flow, DOM Handling

  • Key wins cited: not manually touching the DOM, “view = function of state,” and unidirectional data flow (inspired by Flux/Redux) that avoids two-way binding loops Backbone apps often hit.
  • Virtual DOM diffing, batching, and reconciled updates are seen as major practical improvements over ad-hoc jQuery/Backbone DOM manipulation.

React’s Complexity and “Magic”

  • Others argue React merely trades one complexity for another: hooks semantics, stale closures, useEffect dependency pitfalls, and key-related bugs feel like framework-specific traps.
  • Some prefer Backbone’s explicit event handlers and DOM manipulation, claiming problems are easier to trace because less is hidden behind abstractions.
  • There’s consensus that many React footguns arise once projects move beyond basic components.

When Do You Need a Framework?

  • Several insist small widgets or mostly-static sites should use server-rendered HTML plus minimal JS (htmx, HTMZ, Web Components, or plain DOM APIs).
  • Others counter that small apps often grow, so starting with React (or similar) avoids rewrites and unifies the stack.

Performance, UX, and Native Behavior

  • A subthread compares undo behavior in controlled inputs: React preserves native semantics better than the Backbone example, which undoes character-by-character.
  • There’s recurring concern about shipping large JS bundles for simple pages, though others argue caching and app-like usage reduce the impact.

Ecosystem, Hiring, LLMs, and Alternatives

  • React’s dominance is attributed to ecosystem maturity, hiring ease, and now LLM support; some call it the “enterprise default” rather than the most elegant option.
  • Alternatives mentioned: Vue, Svelte, Solid, Preact, Mithril, Elm, Imba, Crank, LiveView-like systems, and Web Components-based approaches.
  • Several say these newer tools fix specific React pain points, but none yet surpass its overall “safe choice” status for complex, evolving apps.